SKILL.md-Datei mit YAML-
Frontmatter und einem Markdown-Textkörper. OpenClaw lädt gebündelte Skills sowie lokale
Überschreibungen und filtert sie beim Laden anhand von Umgebung, Konfiguration und
vorhandenen Binärdateien.
Skills erstellen
Erstellen und testen Sie einen benutzerdefinierten Skill von Grund auf.
Skill Workshop
Prüfen und genehmigen Sie vom Agenten entworfene Skill-Vorschläge.
Skills-Konfiguration
Vollständiges
skills.*-Konfigurationsschema und Agenten-Zulassungslisten.ClawHub
Durchsuchen und installieren Sie Community-Skills.
Ladereihenfolge
OpenClaw lädt aus diesen Quellen, beginnend mit der höchsten Priorität. Wenn derselbe Skill-Name an mehreren Stellen vorkommt, hat die Quelle mit der höchsten Priorität Vorrang.
Skill-Stammverzeichnisse unterstützen gruppierte Layouts. OpenClaw erkennt einen Skill, sobald
SKILL.md irgendwo unter einem konfigurierten Stammverzeichnis erscheint (bis zu 6 Ebenen tief):
name (oder aus dem Verzeichnisnamen, wenn name
fehlt). Agenten-Zulassungslisten (siehe unten) gleichen ebenfalls dieses name ab.
Das native
$CODEX_HOME/skills-Verzeichnis der Codex CLI ist kein
Skill-Stammverzeichnis von OpenClaw. Verwenden Sie openclaw migrate plan codex, um diese Skills zu erfassen, und anschließend
openclaw migrate codex, um sie in Ihren OpenClaw-Workspace zu kopieren.Auf Nodes gehostete Skills
Ein verbundener Headless-Node kann Skills veröffentlichen, die in seinem aktiven OpenClaw- Skills-Verzeichnis installiert sind (standardmäßig~/.openclaw/skills; Überschreibungen durch die Profilumgebung
gelten). Sie erscheinen in der normalen Skill-Liste des Agenten, solange der Node verbunden ist,
und verschwinden, wenn seine Verbindung getrennt wird. Bei einer Namenskollision behält ein lokaler oder Gateway-Skill
seinen Namen; der Node-Skill erhält einen deterministischen Namen mit Node-Präfix.
Bei auf Nodes gehosteten Skills der Version v1 muss der Verzeichnisname mit dem Frontmatter-Feld
name des Skills übereinstimmen.
Der Skill-Eintrag enthält den Node-Locator. Seine Dateien, relativen Verweise und
Binärdateien befinden sich auf dem Node; laden und führen Sie ihn daher mit
exec host=node node=<node-id> aus. Starten Sie den Node-Host nach Änderungen an seinen Skill-
Dateien neu. Informationen zur Kopplung und zu Deaktivierungsoptionen finden Sie unter Nodes.
Agentenspezifische und gemeinsam genutzte Skills
In Multi-Agenten-Konfigurationen verfügt jeder Agent über einen eigenen Workspace. Verwenden Sie den Pfad, der der gewünschten Sichtbarkeit entspricht:Agenten-Zulassungslisten
Der Speicherort eines Skills (Priorität) und seine Sichtbarkeit (welcher Agent ihn verwenden kann) sind getrennte Steuerungsmöglichkeiten. Verwenden Sie Zulassungslisten, um einzuschränken, welche Skills ein Agent sieht, unabhängig davon, woher sie geladen werden.Regeln für Zulassungslisten
Regeln für Zulassungslisten
- Lassen Sie
agents.defaults.skillsweg, damit standardmäßig alle Skills uneingeschränkt verfügbar bleiben. - Lassen Sie
agents.entries.*.skillsweg, umagents.defaults.skillszu übernehmen. - Setzen Sie
agents.entries.*.skills: [], damit für diesen Agenten keine Skills verfügbar sind. - Eine nicht leere
agents.entries.*.skills-Liste ist die endgültige Menge — sie wird nicht mit den Standardwerten zusammengeführt. - Die wirksame Zulassungsliste gilt für die Prompt-Erstellung, die Erkennung von Slash-Befehlen, die Sandbox-Synchronisierung und Skill-Snapshots.
- Dies ist keine Autorisierungsgrenze für die Host-Shell. Wenn derselbe Agent
execverwenden kann, schränken Sie diese Shell separat durch Sandboxing, Betriebssystembenutzer- Isolierung, Ausführungs-Sperr-/Zulassungslisten und ressourcenspezifische Anmeldedaten ein.
Plugins und Skills
Plugins können eigene Skills ausliefern, indem sieskills-Verzeichnisse in
openclaw.plugin.json auflisten (Pfade relativ zum Plugin-Stammverzeichnis). Plugin-Skills werden geladen,
wenn das Plugin aktiviert ist — beispielsweise liefert das Browser-Plugin einen
browser-automation-Skill für die mehrstufige Browsersteuerung aus.
Plugin-Skill-Verzeichnisse werden auf derselben niedrigen Prioritätsstufe wie
skills.load.extraDirs zusammengeführt. Daher überschreibt ein gleichnamiger gebündelter, verwalteter, Agenten- oder Workspace-
Skill diese Verzeichnisse. Steuern Sie die Eignung eines Plugin-Skills über
metadata.openclaw.requires in seinem Frontmatter, genau wie bei jedem anderen Skill.
Das vollständige Plugin-System ist unter Plugins und Werkzeuge beschrieben.
Skill Workshop
Der Skill Workshop ist eine Vorschlagswarteschlange zwischen dem Agenten und Ihren aktiven Skill-Dateien. Wenn der Agent wiederverwendbare Arbeit erkennt, erstellt er einen Vorschlag, statt direkt inSKILL.md zu schreiben. Sie prüfen und genehmigen ihn,
bevor Änderungen vorgenommen werden.
Installation aus ClawHub
ClawHub ist das öffentliche Skills-Register. Verwenden Sieopenclaw skills-Befehle für Installation und Aktualisierung oder die clawhub-CLI zum
Veröffentlichen und Synchronisieren.
Installationsdetails
Installationsdetails
openclaw skills install installiert standardmäßig in das Verzeichnis skills/
des aktiven Workspace. Fügen Sie --global hinzu, um in das gemeinsam genutzte
Verzeichnis ~/.openclaw/skills zu installieren, das für alle lokalen Agenten sichtbar ist, sofern Agenten-
Zulassungslisten dies nicht einschränken.Git- und lokale Installationen erwarten SKILL.md im Stammverzeichnis der Quelle. Der Slug stammt,
sofern gültig, aus name im Frontmatter SKILL.md; andernfalls wird der
Verzeichnis- oder Repository-Name verwendet. Verwenden Sie --as <slug>, um ihn zu überschreiben.
openclaw skills update verfolgt ausschließlich ClawHub-Installationen — installieren Sie Git- oder
lokale Quellen erneut, um sie zu aktualisieren.Verifizierung und Sicherheitsscans
Verifizierung und Sicherheitsscans
openclaw skills verify @owner/<slug> fragt bei ClawHub den
clawhub.skill.verify.v1-Vertrauensrahmen des Skills ab. Installierte ClawHub-Skills werden
anhand der in .clawhub/origin.json erfassten Version und Registry verifiziert.
Reine Slugs werden für bereits installierte oder eindeutige Skills weiterhin akzeptiert, aber
um den Eigentümer ergänzte Referenzen vermeiden Mehrdeutigkeiten beim Herausgeber.ClawHub-Skill-Seiten zeigen vor der Installation den aktuellen Status des Sicherheitsscans
sowie Detailseiten für VirusTotal, ClawScan und statische Analyse. Der
Befehl wird mit einem von null verschiedenen Status beendet, wenn ClawHub die Verifizierung als fehlgeschlagen kennzeichnet. Herausgeber
können Fehlalarme über das ClawHub-Dashboard oder
clawhub skill rescan @owner/<slug> beheben.Installation privater Archive
Installation privater Archive
Gateway-Clients, die eine Bereitstellung außerhalb von ClawHub benötigen, können ein ZIP-Skill-Archiv
mit
skills.upload.begin, skills.upload.chunk und skills.upload.commit bereitstellen
und es anschließend mit skills.install({ source: "upload", ... }) installieren. Dieser Pfad ist
standardmäßig deaktiviert und erfordert skills.install.allowUploadedArchives: true in
openclaw.json. Normale ClawHub-Installationen benötigen diese Einstellung nie.Sicherheit
Pfadbegrenzung
Pfadbegrenzung
Bei der Skill-Erkennung für Workspace-, Projekt-Agenten- und zusätzliche Verzeichnisse werden nur Skill-
Stammverzeichnisse akzeptiert, deren aufgelöster Realpath innerhalb des konfigurierten Stammverzeichnisses bleibt, sofern
skills.load.allowSymlinkTargets einem Zielstammverzeichnis nicht ausdrücklich vertraut.
Skill Workshop schreibt nur über diese vertrauenswürdigen Ziele, wenn
skills.workshop.allowSymlinkTargetWrites aktiviert ist.
Das verwaltete ~/.openclaw/skills und das persönliche ~/.agents/skills dürfen
über symbolische Links eingebundene Skill-Ordner enthalten, aber jeder Realpath von SKILL.md muss weiterhin
innerhalb seines aufgelösten Skill-Verzeichnisses bleiben.Installationsrichtlinie des Betreibers
Installationsrichtlinie des Betreibers
Konfigurieren Sie
security.installPolicy, um einen vertrauenswürdigen lokalen Richtlinienbefehl
auszuführen, bevor Skill-Installationen fortgesetzt werden. Die Richtlinie erhält Metadaten und den bereitgestellten
Quellpfad, gilt für ClawHub-, Upload-, Git-, lokale, Aktualisierungs- und
Abhängigkeitsinstallationspfade und verweigert den Vorgang, wenn der Befehl keine
gültige Entscheidung zurückgeben kann.Geltungsbereich der Secret-Injektion
Geltungsbereich der Secret-Injektion
skills.entries.*.env und skills.entries.*.apiKey injizieren Secrets ausschließlich für diesen Agentendurchlauf in den
Host-Prozess — nicht in die Sandbox. Halten Sie
Secrets aus Prompts und Protokollen heraus.SKILL.md-Format
Jeder Skill benötigt im Frontmatter mindestens einname und ein description:
OpenClaw folgt der AgentSkills-Spezifikation. Frontmatter
wird zunächst als YAML geparst; wenn dies fehlschlägt, wird auf einen Parser zurückgegriffen, der ausschließlich
einzelne Zeilen unterstützt. Verschachtelte
metadata-Blöcke (einschließlich mehrzeiliger YAML-Zuordnungen) werden
zu einer JSON-Zeichenfolge verflacht und erneut als JSON5 geparst, sodass die unter
Zugriffssteuerung gezeigte Blockform funktioniert. Verwenden Sie {baseDir} im Textkörper, um auf den Pfad des
Skill-Ordners zu verweisen.Optionale Frontmatter-Schlüssel
string
URL, die in der macOS-Skills-Benutzeroberfläche als “Website” angezeigt wird. Wird auch über
metadata.openclaw.homepage unterstützt.boolean
Standard:"true"
Wenn
true, wird das Skill als vom Benutzer aufrufbarer Slash-Befehl bereitgestellt.boolean
Standard:"false"
Wenn
true, nimmt OpenClaw die Anweisungen des Skills nicht in den normalen
Prompt des Agenten auf. Das Skill ist weiterhin als Slash-Befehl verfügbar, wenn user-invocable
ebenfalls true ist."tool"
Wenn auf
tool gesetzt, umgeht der Slash-Befehl das Modell und leitet
den Aufruf direkt an ein registriertes Tool weiter.string
Name des aufzurufenden Tools, wenn
command-dispatch: tool gesetzt ist."raw"
Standard:"raw"
Bei der Weiterleitung an ein Tool wird die unverarbeitete Argumentzeichenfolge ohne
Parsing durch den Kern an das Tool weitergegeben. Das Tool empfängt
{ command: "<raw args>", commandName: "<slash command>", skillName: "<skill name>" }.Zugriffsbeschränkung
OpenClaw filtert Skills beim Laden mithilfe vonmetadata.openclaw (einem in
das Frontmatter eingebetteten JSON5-Objekt; siehe den Parsing-Hinweis oben). Ein Skill ohne
metadata.openclaw-Block ist immer zulässig, sofern es nicht ausdrücklich deaktiviert wurde.
boolean
Wenn
true, wird das Skill immer einbezogen und alle anderen Zugriffsschranken werden übersprungen.string
Optionales Emoji, das in der macOS-Oberfläche für Skills angezeigt wird.
string
Optionale URL, die in der macOS-Oberfläche für Skills als „Website“ angezeigt wird.
("darwin" | "linux" | "win32")[]
Plattformfilter. Wenn festgelegt, ist das Skill nur auf einem aufgeführten Betriebssystem zulässig.
string[]
Jede Binärdatei muss in
PATH vorhanden sein.string[]
Mindestens eine Binärdatei muss in
PATH vorhanden sein.string[]
Jede Umgebungsvariable muss im Prozess vorhanden oder über die Konfiguration bereitgestellt sein.
string[]
Jeder
openclaw.json-Pfad muss einen Wahrheitswert ergeben.string
Name der mit
skills.entries.<name>.apiKey verknüpften Umgebungsvariable.object[]
Optionale Installationsspezifikationen für die macOS-Oberfläche für Skills (brew / node / go / uv / download).
Veraltete
metadata.clawdbot-Blöcke werden weiterhin akzeptiert, wenn
metadata.openclaw fehlt, sodass ältere installierte Skills ihre
Abhängigkeitsschranken und Installationshinweise beibehalten. Neue Skills sollten
metadata.openclaw verwenden.Installationsspezifikationen
Installationsspezifikationen teilen der macOS-Oberfläche für Skills mit, wie eine Abhängigkeit installiert wird:Regeln zur Auswahl des Installationsprogramms
Regeln zur Auswahl des Installationsprogramms
- Wenn mehrere Installationsprogramme aufgeführt sind, wählt das Gateway eine bevorzugte Option aus (brew, falls verfügbar, andernfalls node).
- Wenn alle Installationsprogramme
downloadsind, führt OpenClaw jeden Eintrag auf, damit Sie alle verfügbaren Artefakte sehen können. - Spezifikationen können
os: ["darwin"|"linux"|"win32"]enthalten, um nach Plattform zu filtern. - Node-Installationen berücksichtigen
skills.install.nodeManagerinopenclaw.json(Standard: npm; Optionen: npm / pnpm / yarn / bun). Dies wirkt sich nur auf Skill- Installationen aus; die Gateway-Laufzeit sollte weiterhin Node sein. - Installationspräferenz des Gateways: Homebrew → uv → konfigurierter Node-Manager → go → Download.
Details zu den einzelnen Installationsprogrammen
Details zu den einzelnen Installationsprogrammen
- Homebrew: OpenClaw installiert Homebrew nicht automatisch und übersetzt brew-
Formeln nicht in Systempaketbefehle. In Linux-Containern ohne
brewwerden Installationsprogramme, die ausschließlich brew unterstützen, ausgeblendet; verwenden Sie ein benutzerdefiniertes Image oder installieren Sie die Abhängigkeit manuell. - Go: OpenClaw benötigt Go 1.21 oder neuer für automatische Skill-Installationen.
Wenn
gofehlt und Homebrew verfügbar ist, installiert OpenClaw zunächst Go über Homebrew; unter Linux ohne Homebrew kann stattdessenapt-getals Root oder über passwortlosessudoverwendet werden, wenn der aktualisiertegolang-go- Kandidat die Mindestversion erfüllt. Das tatsächlichego installfür die Abhängigkeit zielt immer auf ein dediziertes, von OpenClaw verwaltetes Binärdateiverzeichnis (bei einer Neuinstallationbinvon Homebrew, andernfalls~/.local/bin) statt auf Ihr konfiguriertesGOBIN— Ihre eigenen UmgebungsvariablenGOBIN,GOPATHundGOTOOLCHAINwerden gelesen, aber niemals überschrieben. - Download:
url(erforderlich),archive(tar.gz|tar.bz2|zip),extract(Standard: automatisch, wenn ein Archiv erkannt wird),stripComponents,targetDir(Standard:~/.openclaw/tools/<skillKey>).
Hinweise zur Sandbox
Hinweise zur Sandbox
requires.bins wird beim Laden des Skills auf dem Host geprüft. Wenn ein Agent
in einer Sandbox ausgeführt wird, muss die Binärdatei auch innerhalb des Containers vorhanden sein.
Installieren Sie sie über agents.defaults.sandbox.docker.setupCommand oder ein benutzerdefiniertes
Image. setupCommand wird einmal nach der Containererstellung ausgeführt und erfordert
ausgehenden Netzwerkzugriff, ein beschreibbares Root-Dateisystem und einen Root-Benutzer in der Sandbox.Konfigurationsüberschreibungen
Aktivieren, deaktivieren und konfigurieren Sie gebündelte oder verwaltete Skills unterskills.entries in
~/.openclaw/openclaw.json:
boolean
false deaktiviert das Skill, selbst wenn es gebündelt oder installiert ist. Das gebündelte Skill
coding-agent muss explizit aktiviert werden — setzen Sie skills.entries.coding-agent.enabled: true
und stellen Sie sicher, dass claude, codex, opencode oder eine andere unterstützte CLI
installiert und authentifiziert ist.string | { source, provider, id }
Komfortfeld für Skills, die
metadata.openclaw.primaryEnv deklarieren.
Unterstützt eine Klartextzeichenfolge oder ein SecretRef-Objekt.Record<string, string>
Umgebungsvariablen, die für die Agentenausführung injiziert werden. Sie werden nur injiziert, wenn die
Variable nicht bereits im Prozess gesetzt ist.
object
Optionales Objekt für benutzerdefinierte Konfigurationsfelder pro Skill.
string[]
Optionale Positivliste ausschließlich für gebündelte Skills. Wenn festgelegt, sind nur gebündelte Skills
aus der Liste zulässig. Verwaltete Skills und Workspace-Skills sind davon nicht betroffen.
Konfigurationsschlüssel entsprechen standardmäßig dem Skill-Namen. Wenn ein Skill
metadata.openclaw.skillKey definiert, verwenden Sie stattdessen diesen Schlüssel unter skills.entries.
Setzen Sie Namen mit Bindestrichen in Anführungszeichen: JSON5 erlaubt Schlüssel in Anführungszeichen.Injektion von Umgebungsvariablen
Wenn eine Agentenausführung beginnt, führt OpenClaw folgende Schritte aus:1
Skill-Metadaten lesen
OpenClaw ermittelt die effektive Skill-Liste für den Agenten und wendet dabei Zugriffsschranken,
Positivlisten und Konfigurationsüberschreibungen an.
2
Umgebungsvariablen und API-Schlüssel injizieren
skills.entries.<key>.env und skills.entries.<key>.apiKey werden für die Dauer
der Ausführung auf process.env angewendet.3
System-Prompt erstellen
Zulässige Skills werden in einem kompakten XML-Block zusammengefasst und in den
System-Prompt injiziert.
4
Umgebung wiederherstellen
Nach dem Ende der Ausführung wird die ursprüngliche Umgebung wiederhergestellt.
claude-cli-Backend materialisiert OpenClaw denselben
Snapshot der zulässigen Skills außerdem als temporäres Claude-Code-Plugin und übergibt ihn über
--plugin-dir. Andere CLI-Backends verwenden ausschließlich den Prompt-Katalog.
Snapshots und Aktualisierung
OpenClaw erstellt einen Snapshot der zulässigen Skills, wenn eine Sitzung beginnt, und verwendet diese Liste für alle nachfolgenden Interaktionen in der Sitzung erneut. Änderungen an Skills oder der Konfiguration werden in der nächsten neuen Sitzung wirksam. Skills werden während einer Sitzung in zwei Fällen aktualisiert:- Der Skills-Watcher erkennt eine Änderung an
SKILL.md. - Ein neuer zulässiger Remote-Node stellt eine Verbindung her.
Skills-Watcher
Skills-Watcher
Standardmäßig überwacht OpenClaw Skill-Ordner und aktualisiert den Snapshot, wenn sich
Watcher-Ereignisse verwenden eine integrierte Entprellzeit von 250 ms. Verwenden Sie
SKILL.md-Dateien ändern. Konfigurieren Sie dies unter skills.load:allowSymlinkTargets
für beabsichtigte Layouts mit symbolischen Links, bei denen ein symbolischer Link des Skill-
Stammverzeichnisses außerhalb des konfigurierten Stammverzeichnisses liegt, beispielsweise
<workspace>/skills/manager -> ~/Projects/manager/skills.
Aktivieren Sie skills.workshop.allowSymlinkTargetWrites nur, wenn Skill Workshop
Vorschläge ebenfalls über diese vertrauenswürdigen Pfade mit symbolischen Links anwenden soll.Remote-macOS-Nodes (Linux-Gateway)
Remote-macOS-Nodes (Linux-Gateway)
Wenn das Gateway unter Linux ausgeführt wird, aber ein macOS-Node mit zugelassenem
system.run verbunden ist, kann OpenClaw ausschließlich für macOS verfügbare Skills als zulässig betrachten, wenn
die erforderlichen Binärdateien auf diesem Node vorhanden sind. Der Agent sollte diese
Skills über das Tool exec mit host=node ausführen.Offline-Nodes machen ausschließlich remote verfügbare Skills nicht sichtbar. Wenn ein Node nicht mehr
auf Binärdateiabfragen antwortet, löscht OpenClaw die zwischengespeicherten Binärdateiübereinstimmungen dieses Nodes.Token-Auswirkungen
Wenn Skills zulässig sind, injiziert OpenClaw einen kompakten XML-Block in den System- Prompt. Die Kosten sind deterministisch und skalieren linear pro Skill:- Grundaufwand (nur wenn mindestens 1 Skill zulässig ist): ein fester Block aus einleitendem
Text sowie dem
<available_skills>-Wrapper. - Pro Skill: ~97 Zeichen plus die Längen Ihrer Felder
name,descriptionundlocation. - XML-Escaping erweitert
& < > " 'zu Entitäten und fügt pro Vorkommen einige Zeichen hinzu. - Bei ~4 Zeichen/Token entsprechen 97 Zeichen vor Berücksichtigung der Feldlängen ungefähr 24 Token pro Skill.
skills.limits.maxSkillsPromptChars) überschreiten würde, behält OpenClaw zunächst so viele
Skill-Identitäten (Name, Speicherort und Version) bei, wie in das beschreibungsfreie
Kompaktformat passen. Anschließend wird das verbleibende Budget für gekürzte
Beschreibungen verwendet. Wenn kein Budget für Beschreibungen verbleibt, werden
sie weggelassen. Der Prompt enthält einen Hinweis auf openclaw skills check, wenn
eine kompakte Formatierung oder das Kürzen der Liste erforderlich ist.
Halten Sie Beschreibungen kurz und aussagekräftig, um den Prompt-Overhead zu minimieren.
Verwandte Themen
Skills erstellen
Schritt-für-Schritt-Anleitung zum Erstellen eines benutzerdefinierten Skills.
Skill-Workshop
Vorschlagswarteschlange für von Agenten entworfene Skills.
Skills-Konfiguration
Vollständiges
skills.*-Konfigurationsschema und Agenten-Zulassungslisten.Slash-Befehle
Wie Slash-Befehle von Skills registriert und weitergeleitet werden.
ClawHub
Durchsuchen und veröffentlichen Sie Skills im öffentlichen Register.
Plugins
Plugins können Skills zusammen mit den Tools bereitstellen, die sie dokumentieren.