SKILL.md-Datei
mit YAML-Frontmatter und einem Markdown-Body enthält. OpenClaw lädt gebündelte
Skills sowie lokale Überschreibungen und filtert sie beim Laden basierend auf
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 Agent-Allowlists.ClawHub
Community-Skills durchsuchen und installieren.
Ladereihenfolge
OpenClaw lädt aus diesen Quellen, höchste Priorität zuerst. Wenn derselbe Skill-Name an mehreren Stellen erscheint, gewinnt die Quelle mit der höchsten Priorität.| Priorität | Quelle | Pfad |
|---|---|---|
| 1 — höchste | Workspace-Skills | <workspace>/skills |
| 2 | Projekt-Agent-Skills | <workspace>/.agents/skills |
| 3 | Persönliche Agent-Skills | ~/.agents/skills |
| 4 | Verwaltete / lokale Skills | ~/.openclaw/skills |
| 5 | Gebündelte Skills | mit der Installation ausgeliefert |
| 6 — niedrigste | Zusätzliche Verzeichnisse | skills.load.extraDirs + Plugin-Skills |
SKILL.md irgendwo unter einer konfigurierten Wurzel erscheint:
name (oder aus dem Verzeichnisnamen, wenn name fehlt).
Das native
$CODEX_HOME/skills-Verzeichnis der Codex CLI ist keine
OpenClaw-Skill-Wurzel. Verwenden Sie openclaw migrate plan codex, um diese
Skills zu inventarisieren, und anschließend openclaw migrate codex, um sie
in Ihren OpenClaw-Workspace zu kopieren.Agent-spezifische vs. gemeinsame Skills
In Multi-Agent-Setups hat jeder Agent seinen eigenen Workspace. Verwenden Sie den Pfad, der Ihrer gewünschten Sichtbarkeit entspricht:| Geltungsbereich | Pfad | Sichtbar für |
|---|---|---|
| Agent-spezifisch | <workspace>/skills | Nur diesen Agenten |
| Projekt-Agent | <workspace>/.agents/skills | Nur den Agenten dieses Workspace |
| Persönlicher Agent | ~/.agents/skills | Alle Agenten auf diesem Computer |
| Gemeinsam verwaltet | ~/.openclaw/skills | Alle Agenten auf diesem Computer |
| Zusätzliche Verzeichnisse | skills.load.extraDirs | Alle Agenten auf diesem Computer |
Agent-Allowlists
Skill-Speicherort (Priorität) und Skill-Sichtbarkeit (welcher Agent ihn verwenden kann) sind getrennte Steuerungen. Verwenden Sie Allowlists, um einzuschränken, welche Skills ein Agent sieht, unabhängig davon, von wo sie geladen werden.Allowlist-Regeln
Allowlist-Regeln
- Lassen Sie
agents.defaults.skillsweg, damit standardmäßig alle Skills uneingeschränkt bleiben. - Lassen Sie
agents.list[].skillsweg, umagents.defaults.skillszu erben. - Setzen Sie
agents.list[].skills: [], um für diesen Agenten keine Skills bereitzustellen. - Eine nicht leere
agents.list[].skills-Liste ist die endgültige Menge — sie wird nicht mit den Defaults zusammengeführt. - Die effektive Allowlist gilt für Prompt-Erstellung, Slash-Befehls-Erkennung, Sandbox-Synchronisierung und Skill-Snapshots.
- Dies ist keine Autorisierungsgrenze für die Host-Shell. Wenn derselbe Agent
execverwenden kann, beschränken Sie diese Shell separat mit Sandboxing, OS-Benutzer-Isolation, Exec-Deny-/Allowlists und ressourcenspezifischen Anmeldedaten.
Plugins und Skills
Plugins können eigene Skills ausliefern, indem sieskills-Verzeichnisse in
openclaw.plugin.json auflisten (Pfade relativ zur Plugin-Wurzel). Plugin-Skills
werden geladen, wenn das Plugin aktiviert ist — zum Beispiel liefert das
Browser-Plugin einen browser-automation-Skill für mehrstufige Browser-Steuerung aus.
Plugin-Skill-Verzeichnisse werden auf derselben niedrig priorisierten Ebene wie
skills.load.extraDirs zusammengeführt, sodass ein gleichnamiger gebündelter,
verwalteter, Agent- oder Workspace-Skill sie überschreibt. Begrenzen Sie sie über
metadata.openclaw.requires.config im Konfigurationseintrag des Plugins.
Siehe Plugins und Tools für das vollständige Plugin-System.
Skill-Workshop
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 sich etwas ändert.
Installation aus ClawHub
ClawHub ist die öffentliche Skills-Registry. Verwenden Sieopenclaw skills-Befehle für Installation und Aktualisierung oder die clawhub
CLI für Veröffentlichung und Synchronisierung.
| Aktion | Befehl |
|---|---|
| Einen Skill im Workspace installieren | openclaw skills install @owner/<slug> |
| Aus einem Git-Repository installieren | openclaw skills install git:owner/repo@ref |
| Ein lokales Skill-Verzeichnis installieren | openclaw skills install ./path/to/skill --as my-tool |
| Für alle lokalen Agenten installieren | openclaw skills install @owner/<slug> --global |
| Alle Workspace-Skills aktualisieren | openclaw skills update --all |
| Einen gemeinsam verwalteten Skill aktualisieren | openclaw skills update @owner/<slug> --global |
| Alle gemeinsam verwalteten Skills aktualisieren | openclaw skills update --all --global |
| Trust Envelope eines Skills prüfen | openclaw skills verify @owner/<slug> |
| Die generierte Skill Card ausgeben | openclaw skills verify @owner/<slug> --card |
| Über ClawHub CLI veröffentlichen / synchronisieren | clawhub sync --all |
Installationsdetails
Installationsdetails
openclaw skills install installiert standardmäßig in das skills/-Verzeichnis
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 Agent-Allowlists es nicht einschränken.Git- und lokale Installationen erwarten SKILL.md an der Quellwurzel. Der Slug
stammt aus dem name-Frontmatter von SKILL.md, wenn gültig, und fällt sonst
auf den Verzeichnis- oder Repository-Namen zurück. Verwenden Sie --as <slug>,
um ihn zu überschreiben. openclaw skills update verfolgt nur 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 ClawHub nach dem
clawhub.skill.verify.v1 Trust Envelope des Skills. Installierte ClawHub-Skills
werden gegen die Version und Registry geprüft, die in .clawhub/origin.json
aufgezeichnet sind. Bloße Slugs bleiben für bestehende installierte oder
eindeutige Skills akzeptiert, aber owner-qualifizierte Refs vermeiden
Publisher-Mehrdeutigkeit.ClawHub-Skill-Seiten zeigen vor der Installation den neuesten Sicherheits-Scanstatus
mit Detailseiten für VirusTotal, ClawScan und statische Analyse. Der Befehl beendet
sich mit einem Wert ungleich null, wenn ClawHub die Verifizierung als fehlgeschlagen
markiert. Publisher beheben False Positives über das ClawHub-Dashboard oder
clawhub skill rescan @owner/<slug>.Installationen aus privaten Archiven
Installationen aus privaten Archiven
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 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
Die Skill-Erkennung für Workspace-, Projekt-Agent- und Zusatzverzeichnis-Skills
akzeptiert nur Skill-Wurzeln, deren aufgelöster Realpath innerhalb der
konfigurierten Wurzel bleibt, es sei denn,
skills.load.allowSymlinkTargets
vertraut explizit einer Zielwurzel. Skill-Workshop schreibt nur dann über
diese vertrauenswürdigen Ziele, wenn skills.workshop.allowSymlinkTargetWrites
aktiviert ist. Verwaltete ~/.openclaw/skills und persönliche
~/.agents/skills dürfen symlinkte Skill-Ordner enthalten, aber jeder
SKILL.md-Realpath muss weiterhin innerhalb seines aufgelösten
Skill-Verzeichnisses bleiben.Installationsrichtlinie des Operators
Installationsrichtlinie des Operators
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, Update- und Dependency-Installer-Pfade und
schlägt geschlossen fehl, 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 nur
für diesen Agent-Turn in den Host-Prozess — nicht in die Sandbox. Halten
Sie Secrets aus Prompts und Logs heraus.SKILL.md-Format
Jeder Skill benötigt mindestensname und description im Frontmatter:
OpenClaw folgt der AgentSkills-Spezifikation. Der
Frontmatter-Parser unterstützt nur einzeilige Schlüssel —
metadata muss
ein einzeiliges JSON-Objekt sein. Verwenden Sie {baseDir} im Body, um auf den
Ordnerpfad des Skills zu verweisen.Optionale Frontmatter-Schlüssel
URL, die in der macOS-Skills-UI als “Website” angezeigt wird. Auch über
metadata.openclaw.homepage unterstützt.Wenn
true, wird der Skill als vom Benutzer aufrufbarer Slash-Befehl verfügbar gemacht.Wenn
true, hält OpenClaw die Anweisungen des Skills aus dem normalen Prompt
des Agenten heraus. Der Skill ist weiterhin als Slash-Befehl verfügbar, wenn
user-invocable ebenfalls true ist.Wenn auf
tool gesetzt, umgeht der Slash-Befehl das Modell und dispatcht
direkt an ein registriertes Tool.Tool-Name, der aufgerufen wird, wenn
command-dispatch: tool gesetzt ist.Für Tool-Dispatch wird die rohe Argumentzeichenfolge ohne Core-Parsing an das Tool
weitergeleitet. Das Tool erhält
{ command: "<raw args>", commandName: "<slash command>", skillName: "<skill name>" }.Gating
OpenClaw filtert Skills beim Laden mitmetadata.openclaw (einzeiliges
JSON im Frontmatter). Ein Skill ohne metadata.openclaw-Block ist immer
zulässig, sofern er nicht ausdrücklich deaktiviert wurde.
Wenn
true, wird der Skill immer einbezogen und alle anderen Gates werden übersprungen.Optionales Emoji, das in der macOS Skills UI angezeigt wird.
Optionale URL, die als „Website“ in der macOS Skills UI angezeigt wird.
Plattformfilter. Wenn gesetzt, ist der Skill nur auf den aufgeführten Betriebssystemen zulässig.
Jede Binärdatei muss auf
PATH vorhanden sein.Mindestens eine Binärdatei muss auf
PATH vorhanden sein.Jede Umgebungsvariable muss im Prozess vorhanden sein oder über die Konfiguration bereitgestellt werden.
Jeder
openclaw.json-Pfad muss truthy sein.Name der Umgebungsvariable, die
skills.entries.<name>.apiKey zugeordnet ist.Optionale Installationsspezifikationen, die von der macOS Skills UI verwendet werden (brew / node / go / uv / download).
Legacy-
metadata.clawdbot-Blöcke werden weiterhin akzeptiert, wenn
metadata.openclaw fehlt, sodass ältere installierte Skills ihre
Abhängigkeits-Gates und Installationshinweise behalten. Neue Skills sollten
metadata.openclaw verwenden.Installationsspezifikationen
Installationsspezifikationen teilen der macOS Skills UI mit, wie eine Abhängigkeit installiert wird:Installer selection rules
Installer selection rules
- Wenn mehrere Installationsprogramme aufgeführt sind, wählt der Gateway eine bevorzugte Option (brew, wenn verfügbar, andernfalls node).
- Wenn alle Installationsprogramme
downloadsind, listet 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. - Gateway-Präferenz für Installationsprogramme: Homebrew → uv → konfigurierter Node-Manager → go → download.
Per-installer details
Per-installer details
- Homebrew: OpenClaw installiert Homebrew nicht automatisch und übersetzt brew-Formeln
nicht in Systempaketbefehle. In Linux-Containern ohne
brewwerden nur-brew-Installationsprogramme ausgeblendet; verwenden Sie ein eigenes Image oder installieren Sie die Abhängigkeit manuell. - Go: OpenClaw erfordert Go 1.21 oder neuer für automatische Skill-Installationen und
bewahrt die vorhandenen Einstellungen
GOBIN,GOPATHundGOTOOLCHAIN. Wenn die konfigurierte Toolchain die erforderliche Go-Version eines Moduls nicht erfüllen kann, gruppiert das Onboarding den Skill nach dem Installationsversuch mit manuellen Go-Voraussetzungen. Wenngofehlt und Homebrew verfügbar ist, installiert OpenClaw zuerst Go über Homebrew und setztGOBINauf dasbinvon Homebrew. Unter Linux kann OpenClaw stattdessenapt-getals root oder über passwortlosessudoverwenden, wenn der aktualisiertegolang-go-Kandidat die Mindestversion erfüllt. - Download:
url(erforderlich),archive(tar.gz|tar.bz2|zip),extract(Standard: auto, wenn Archiv erkannt),stripComponents,targetDir(Standard:~/.openclaw/tools/<skillKey>).
Sandboxing notes
Sandboxing notes
requires.bins wird beim Laden des Skills auf dem Host geprüft. Wenn ein Agent
in einer Sandbox läuft, muss die Binärdatei auch innerhalb des Containers vorhanden sein.
Installieren Sie sie über agents.defaults.sandbox.docker.setupCommand oder ein eigenes
Image. setupCommand läuft einmal nach der Containererstellung und erfordert
ausgehenden Netzwerkzugriff, ein beschreibbares Root-Dateisystem und einen root-Benutzer in der Sandbox.Konfigurationsüberschreibungen
Schalten Sie gebündelte oder verwaltete Skills unterskills.entries in
~/.openclaw/openclaw.json ein und konfigurieren Sie sie:
false deaktiviert den Skill, selbst wenn er gebündelt oder installiert ist. Der gebündelte
Skill coding-agent ist opt-in — setzen Sie skills.entries.coding-agent.enabled: true
und stellen Sie sicher, dass eines von claude, codex, opencode oder eine andere unterstützte CLI
installiert und authentifiziert ist.Komfortfeld für Skills, die
metadata.openclaw.primaryEnv deklarieren.
Unterstützt eine Klartextzeichenfolge oder ein SecretRef-Objekt.Umgebungsvariablen, die für den Agent-Lauf injiziert werden. Sie werden nur injiziert, wenn die
Variable nicht bereits im Prozess gesetzt ist.
Optionale Sammlung für benutzerdefinierte Konfigurationsfelder pro Skill.
Optionale Allowlist nur für gebündelte Skills. Wenn gesetzt, sind nur gebündelte Skills
in der Liste zulässig. Verwaltete und Workspace-Skills sind nicht betroffen.
Konfigurationsschlüssel entsprechen standardmäßig dem Skill-Namen. Wenn ein Skill
metadata.openclaw.skillKey definiert, verwenden Sie diesen Schlüssel unter skills.entries. Setzen
Sie Namen mit Bindestrichen in Anführungszeichen: JSON5 erlaubt Schlüssel in Anführungszeichen.Umgebungsinjektion
Wenn ein Agent-Lauf startet, führt OpenClaw Folgendes aus:Reads skill metadata
OpenClaw löst die effektive Skill-Liste für den Agent auf und wendet dabei Gating-Regeln,
Allowlists und Konfigurationsüberschreibungen an.
Injects env and API keys
skills.entries.<key>.env und skills.entries.<key>.apiKey werden für die Dauer des Laufs auf
process.env angewendet.Builds the system prompt
Zulässige Skills werden in einen kompakten XML-Block kompiliert und in den
System-Prompt injiziert.
claude-cli materialisiert OpenClaw denselben
zulässigen Skill-Snapshot außerdem als temporäres Claude Code Plugin und übergibt ihn über
--plugin-dir. Andere CLI-Backends verwenden nur den Prompt-Katalog.
Snapshots und Aktualisierung
OpenClaw erstellt Snapshots zulässiger Skills beim Start einer Sitzung und verwendet diese Liste für alle nachfolgenden Turns in der Sitzung wieder. Änderungen an Skills oder Konfiguration werden bei der nächsten neuen Sitzung wirksam. Skills werden mitten in der Sitzung in zwei Fällen aktualisiert:- Der Skills-Watcher erkennt eine Änderung an
SKILL.md. - Ein neuer zulässiger Remote-Knoten verbindet sich.
Skills watcher
Skills watcher
Standardmäßig überwacht OpenClaw Skill-Ordner und erhöht den Snapshot, wenn sich
Verwenden Sie
SKILL.md-Dateien ändern. Konfigurieren Sie dies unter skills.load:allowSymlinkTargets für absichtlich per Symlink verknüpfte Layouts, bei denen ein Skill-Root-Symlink
außerhalb des konfigurierten Roots zeigt, zum Beispiel
<workspace>/skills/manager -> ~/Projects/manager/skills.
Aktivieren Sie skills.workshop.allowSymlinkTargetWrites nur, wenn Skill Workshop
Vorschläge auch über diese vertrauenswürdigen Symlink-Pfade anwenden soll.Remote macOS nodes (Linux gateway)
Remote macOS nodes (Linux gateway)
Wenn der Gateway unter Linux läuft, aber ein macOS-Knoten mit erlaubtem
system.run verbunden ist, kann OpenClaw macOS-only Skills als zulässig behandeln, wenn
die erforderlichen Binärdateien auf diesem Knoten vorhanden sind. Der Agent sollte diese
Skills über das Tool exec mit host=node ausführen.Offline-Knoten machen remote-only Skills nicht sichtbar. Wenn ein Knoten nicht mehr
auf Binärdatei-Probes antwortet, löscht OpenClaw seine gecachten Binärdatei-Treffer.Token-Auswirkung
Wenn Skills zulässig sind, injiziert OpenClaw einen kompakten XML-Block in den System- Prompt. Die Kosten sind deterministisch:- Basis-Overhead (nur bei ≥ 1 Skill): ~195 Zeichen
- Pro Skill: ~97 Zeichen + 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 ≈ 24 Tokens pro Skill vor den Feldlängen
Verwandte Themen
Creating skills
Schritt-für-Schritt-Anleitung zum Erstellen eines benutzerdefinierten Skills.
Skill Workshop
Vorschlagswarteschlange für von Agenten entworfene Skills.
Skills config
Vollständiges
skills.*-Konfigurationsschema und Agent-Allowlists.Slash commands
Wie Skill-Slash-Commands registriert und geroutet werden.
ClawHub
Skills in der öffentlichen Registry durchsuchen und veröffentlichen.
Plugins
Plugins können Skills zusammen mit den Tools ausliefern, die sie dokumentieren.