OpenClaw verwendet AgentSkills-kompatible Skill-Ordner, um dem Agenten beizubringen, wie er Tools verwendet. Jeder Skill ist ein Verzeichnis, das eineDocumentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
SKILL.md mit YAML-Frontmatter und Anweisungen enthält. OpenClaw lädt gebündelte Skills sowie optionale lokale Überschreibungen und filtert sie zur Ladezeit basierend auf Umgebung, Konfiguration und Vorhandensein von Binaries.
Speicherorte und Priorität
OpenClaw lädt Skills aus diesen Quellen, höchste Priorität zuerst:| # | Quelle | Pfad |
|---|---|---|
| 1 | 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 | Zusätzliche Skill-Ordner | skills.load.extraDirs (Konfiguration) |
$CODEX_HOME/skills der Codex CLI gehört nicht zu diesen OpenClaw-Skill-Roots. Im Codex-Harness-Modus verwenden lokale App-Server-Starts isolierte Codex-Homes pro Agent, daher werden persönliche Codex CLI-Skills nicht implizit geladen. Verwenden Sie openclaw migrate codex --dry-run, um sie zu inventarisieren, und openclaw migrate codex, um Skill-Verzeichnisse über eine interaktive Checkbox-Eingabe auszuwählen, bevor sie in den aktuellen OpenClaw-Agent-Workspace kopiert werden. Für nicht interaktive Läufe wiederholen Sie --skill <name> für die exakt zu kopierenden Skills.
Agent-spezifische und gemeinsam genutzte Skills
In Multi-Agent-Setups hat jeder Agent seinen eigenen Workspace:| Geltungsbereich | Pfad | Sichtbar für |
|---|---|---|
| Agent-spezifisch | <workspace>/skills | Nur diesen Agent |
| Projekt-Agent | <workspace>/.agents/skills | Nur den Agent dieses Workspaces |
| Persönlicher Agent | ~/.agents/skills | Alle Agenten auf dieser Maschine |
| Gemeinsam verwaltet/lokal | ~/.openclaw/skills | Alle Agenten auf dieser Maschine |
| Gemeinsame zusätzliche Verzeichnisse | skills.load.extraDirs (niedrigste Priorität) | Alle Agenten auf dieser Maschine |
Agent-Skill-Allowlists
Skill-Speicherort und Skill-Sichtbarkeit sind getrennte Steuerungen. Speicherort/Priorität entscheidet, welche Kopie eines gleichnamigen Skills gewinnt; Agent-Allowlists entscheiden, welche Skills ein Agent tatsächlich verwenden kann.Allowlist-Regeln
Allowlist-Regeln
- Lassen Sie
agents.defaults.skillsweg, um Skills standardmäßig uneingeschränkt zuzulassen. - Lassen Sie
agents.list[].skillsweg, umagents.defaults.skillszu erben. - Setzen Sie
agents.list[].skills: [], um keine Skills zuzulassen. - Eine nicht leere Liste
agents.list[].skillsist die endgültige Menge für diesen Agenten - sie wird nicht mit Defaults zusammengeführt. - Die effektive Allowlist gilt über Prompt-Erstellung, Skill-Slash-Command-Erkennung, Sandbox-Synchronisierung und Skill-Snapshots hinweg.
Plugins und Skills
Plugins können eigene Skills mitliefern, indem sieskills-Verzeichnisse in openclaw.plugin.json aufführen (Pfade relativ zum Plugin-Root). Plugin-Skills werden geladen, wenn das Plugin aktiviert ist. Dies ist der richtige Ort für tool-spezifische Betriebsanleitungen, die zu lang für die Tool-Beschreibung sind, aber verfügbar sein sollten, wenn das Plugin installiert ist - zum Beispiel liefert das Browser-Plugin einen browser-automation-Skill für mehrstufige Browser-Steuerung mit.
Plugin-Skill-Verzeichnisse werden in denselben Pfad mit niedriger Priorität wie skills.load.extraDirs gemischt, sodass ein gleichnamiger gebündelter, verwalteter, Agent- oder Workspace-Skill sie überschreibt. Sie können sie über metadata.openclaw.requires.config im Konfigurationseintrag des Plugins sperren.
Siehe Plugins für Erkennung/Konfiguration und Tools für die Tool-Oberfläche, deren Verwendung diese Skills vermitteln.
Skill Workshop
Das optionale, experimentelle Skill Workshop-Plugin kann Workspace-Skills aus wiederverwendbaren Verfahren erstellen oder aktualisieren, die während der Agent-Arbeit beobachtet wurden. Es ist standardmäßig deaktiviert und muss explizit überplugins.entries.skill-workshop aktiviert werden.
Skill Workshop schreibt nur nach <workspace>/skills, scannt generierte Inhalte, unterstützt ausstehende Genehmigung oder automatische sichere Schreibvorgänge, quarantänisiert unsichere Vorschläge und aktualisiert den Skill-Snapshot nach erfolgreichen Schreibvorgängen, damit neue Skills ohne Gateway-Neustart verfügbar werden.
Verwenden Sie es für Korrekturen wie “beim nächsten Mal GIF-Attribution prüfen” oder hart erarbeitete Workflows wie Medien-QA-Checklisten. Beginnen Sie mit ausstehender Genehmigung; verwenden Sie automatische Schreibvorgänge nur in vertrauenswürdigen Workspaces, nachdem Sie seine Vorschläge geprüft haben. Vollständige Anleitung: Skill Workshop-Plugin.
ClawHub (Installieren und Synchronisieren)
ClawHub ist die öffentliche Skills-Registry für OpenClaw. Verwenden Sie nativeopenclaw skills-Befehle für Suche/Installation/Aktualisierung oder die separate clawhub CLI für Veröffentlichungs-/Synchronisierungs-Workflows. Vollständige Anleitung: ClawHub.
| Aktion | Befehl |
|---|---|
| Einen Skill im Workspace installieren | openclaw skills install <skill-slug> |
| Alle installierten Skills aktualisieren | openclaw skills update --all |
| Synchronisieren (Scannen + Updates veröffentlichen) | clawhub sync --all |
openclaw skills install installiert in das aktive Workspace-Verzeichnis skills/. Die separate clawhub CLI installiert ebenfalls in ./skills unter Ihrem aktuellen Arbeitsverzeichnis (oder fällt auf den konfigurierten OpenClaw-Workspace zurück). OpenClaw nimmt dies in der nächsten Sitzung als <workspace>/skills auf. Konfigurierte Skill-Roots unterstützen außerdem eine Gruppierungsebene, etwa skills/<group>/<skill>/SKILL.md, sodass verwandte Drittanbieter-Skills unter einem gemeinsamen Ordner gehalten werden können, ohne breit rekursiv zu scannen.
Gateway-Clients, die eine private, nicht über ClawHub laufende Bereitstellung benötigen, können ein ZIP-Skill-Archiv mit skills.upload.begin, skills.upload.chunk und skills.upload.commit bereitstellen und den abgeschlossenen Upload dann mit skills.install({ source: "upload", uploadId, slug, force?, sha256? }) installieren. Dies ist ein expliziter Admin-Upload-Pfad für vertrauenswürdige Clients, nicht der normale openclaw skills install <slug>- oder ClawHub-Installationsfluss. Er ist standardmäßig deaktiviert und funktioniert nur, wenn skills.install.allowUploadedArchives: true in openclaw.json gesetzt ist. Der Upload-Modus installiert weiterhin in das Standardverzeichnis skills/<slug> des Agent-Workspaces; der interne Ordnername des Archivs wird für das endgültige Installationsziel ignoriert.
ClawHub-Skill-Seiten zeigen vor der Installation den neuesten Sicherheits-Scan-Status an, mit Scanner-Detailseiten für VirusTotal, ClawScan und statische Analyse. openclaw skills install <slug> bleibt ausschließlich der Installationspfad; Publisher beheben falsch positive Ergebnisse über das ClawHub-Dashboard oder clawhub skill rescan <slug>.
Sicherheit
- Workspace- und Extra-Dir-Skill-Erkennung akzeptiert nur Skill-Roots und
SKILL.md-Dateien, deren aufgelöster Realpath innerhalb des konfigurierten Roots bleibt. - Private Gateway-Archivinstallationen sind standardmäßig deaktiviert. Wenn sie explizit aktiviert sind, erfordern sie einen abgeschlossenen ZIP-Upload mit
SKILL.mdund verwenden dieselben Archivextraktions-, Path-Traversal-, Symlink-, Force- und Rollback-Schutzmaßnahmen wie ClawHub-Skill-Installationen. Sie werden durchskills.install.allowUploadedArchivesgesteuert; normale ClawHub-Installationen benötigen diese Einstellung nicht. - Gateway-gestützte Skill-Abhängigkeitsinstallationen (
skills.install, Onboarding und die Skills-Einstellungsoberfläche) führen den integrierten Scanner für gefährlichen Code aus, bevor Installer-Metadaten ausgeführt werden.critical-Befunde blockieren standardmäßig, sofern der Aufrufer nicht explizit die Dangerous-Override setzt; verdächtige Befunde warnen weiterhin nur. openclaw skills install <slug>ist anders - es lädt einen ClawHub-Skill-Ordner in den Workspace herunter und verwendet nicht den oben beschriebenen Installer-Metadatenpfad.skills.entries.*.envundskills.entries.*.apiKeyinjizieren Secrets in den Host-Prozess für diesen Agent-Turn (nicht in die Sandbox). Halten Sie Secrets aus Prompts und Logs heraus.
SKILL.md-Format
SKILL.md muss mindestens Folgendes enthalten:
metadata sollte ein einzeiliges JSON-Objekt sein. Verwenden Sie {baseDir} in Anweisungen, um auf den Skill-Ordnerpfad zu verweisen.
Optionale Frontmatter-Schlüssel
URL, die in der macOS-Skills-Oberfläche als “Website” angezeigt wird. Wird auch über
metadata.openclaw.homepage unterstützt.Wenn
true, wird der Skill als Benutzer-Slash-Command verfügbar gemacht.Wenn
true, hält OpenClaw die Anweisungen des Skills aus dem normalen Prompt des Agenten heraus. Der Skill ist weiterhin installiert und kann weiterhin explizit als Slash-Command ausgeführt werden, wenn user-invocable ebenfalls true ist.Wenn auf
tool gesetzt, umgeht der Slash-Command das Modell und wird direkt an ein Tool weitergeleitet.Tool-Name, der aufgerufen wird, wenn
command-dispatch: tool gesetzt ist.Für Tool-Dispatch wird die unverarbeitete Argumentzeichenfolge an das Tool weitergeleitet (kein Core-Parsing). Das Tool wird mit
{ command: "<raw args>", commandName: "<slash command>", skillName: "<skill name>" } aufgerufen.Gating (Ladezeitfilter)
OpenClaw filtert Skills zur Ladezeit mithilfe vonmetadata (einzeiliges JSON):
metadata.openclaw:
Wenn
true, den Skill immer einschließen (andere Gates überspringen).Optionales Emoji, das von der macOS Skills UI verwendet wird.
Optionale URL, die in der macOS Skills UI als “Website” angezeigt wird.
Optionale Liste von Plattformen. Wenn festgelegt, ist der Skill nur auf diesen Betriebssystemen geeignet.
Jeder Eintrag muss in
PATH vorhanden sein.Mindestens einer muss in
PATH vorhanden sein.Die Umgebungsvariable muss vorhanden sein oder in der Konfiguration bereitgestellt werden.
Liste von
openclaw.json-Pfaden, die wahr sein müssen.Name der Umgebungsvariable, die
skills.entries.<name>.apiKey zugeordnet ist.Optionale Installer-Spezifikationen, die von der macOS Skills UI verwendet werden (brew/node/go/uv/download).
metadata.openclaw vorhanden ist, ist der Skill immer geeignet (außer
er ist in der Konfiguration deaktiviert oder durch skills.allowBundled für gebündelte Skills blockiert).
Legacy-
metadata.clawdbot-Blöcke werden weiterhin akzeptiert, wenn
metadata.openclaw fehlt, sodass ältere installierte Skills ihre
Abhängigkeits-Gates und Installer-Hinweise behalten. Neue und aktualisierte Skills sollten
metadata.openclaw verwenden.Sandbox-Hinweise
requires.binswird 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).setupCommandwird einmal ausgeführt, nachdem der Container erstellt wurde. Paketinstallationen erfordern außerdem Netzwerk-Egress, ein beschreibbares Root-Dateisystem und einen Root-Benutzer in der Sandbox. - Beispiel: Der Skill
summarize(skills/summarize/SKILL.md) benötigt diesummarize-CLI im Sandbox-Container, um dort ausgeführt zu werden.
Installer-Spezifikationen
Regeln für die Installer-Auswahl
Regeln für die Installer-Auswahl
- Wenn mehrere Installer aufgeführt sind, wählt der Gateway eine einzelne bevorzugte Option aus (brew, wenn verfügbar, andernfalls node).
- Wenn alle Installer
downloadsind, listet OpenClaw jeden Eintrag auf, damit Sie die verfügbaren Artefakte sehen können. - Installer-Spezifikationen können
os: ["darwin"|"linux"|"win32"]enthalten, um Optionen nach Plattform zu filtern. - Node-Installationen berücksichtigen
skills.install.nodeManagerinopenclaw.json(Standard: npm; Optionen: npm/pnpm/yarn/bun). Dies betrifft nur Skill-Installationen; die Gateway-Laufzeit sollte weiterhin Node sein - Bun wird für WhatsApp/Telegram nicht empfohlen. - Die Gateway-gestützte Installer-Auswahl ist präferenzgesteuert: Wenn Installer-Spezifikationen verschiedene Arten mischen, bevorzugt OpenClaw Homebrew, wenn
skills.install.preferBrewaktiviert ist undbrewvorhanden ist, dannuv, dann den konfigurierten Node-Manager, dann andere Fallbacks wiegooderdownload. - Wenn jede Installationsspezifikation
downloadist, zeigt OpenClaw alle Download-Optionen an, statt sie auf einen bevorzugten Installer zu reduzieren.
Details pro Installer
Details pro Installer
- Go-Installationen: Wenn
gofehlt undbrewverfügbar ist, installiert der Gateway zuerst Go über Homebrew und setztGOBINwenn möglich auf dasbinvon Homebrew. - Download-Installationen:
url(erforderlich),archive(tar.gz|tar.bz2|zip),extract(Standard: automatisch, wenn Archiv erkannt),stripComponents,targetDir(Standard:~/.openclaw/tools/<skillKey>).
Konfigurationsüberschreibungen
Gebündelte und verwaltete Skills können umgeschaltet und mit Umgebungswerten unterskills.entries in ~/.openclaw/openclaw.json versorgt werden:
false deaktiviert den Skill, selbst wenn er gebündelt oder installiert ist.
Der gebündelte Skill coding-agent ist Opt-in: Legen Sie
skills.entries.coding-agent.enabled: true fest, bevor Sie ihn Agenten verfügbar machen,
und stellen Sie dann sicher, dass eines von claude, codex, opencode oder pi installiert und
für seine eigene CLI authentifiziert ist.Komfortfunktion für Skills, die
metadata.openclaw.primaryEnv deklarieren. Unterstützt Klartext oder SecretRef.Wird nur injiziert, wenn die Variable im Prozess noch nicht gesetzt ist.
Optionaler Container für benutzerdefinierte Felder pro Skill. Benutzerdefinierte Schlüssel müssen hier liegen.
Optionale Zulassungsliste nur für gebündelte Skills. Wenn gesetzt, sind nur gebündelte Skills in der Liste geeignet (verwaltete/Workspace-Skills bleiben unberührt).
metadata.openclaw.skillKey definiert, verwenden Sie diesen Schlüssel unter skills.entries.
Für Standard-Bilderzeugung/-bearbeitung innerhalb von OpenClaw verwenden Sie das Kernwerkzeug
image_generate mit agents.defaults.imageGenerationModel statt
eines gebündelten Skills. Skill-Beispiele hier sind für benutzerdefinierte oder Drittanbieter-
Workflows vorgesehen. Für native Bildanalyse verwenden Sie das Werkzeug image mit
agents.defaults.imageModel. Wenn Sie openai/*, google/*,
fal/* oder ein anderes providerspezifisches Bildmodell auswählen, fügen Sie auch den
Auth-/API-Schlüssel dieses Providers hinzu.Umgebungsinjektion
Wenn ein Agent-Lauf startet, führt OpenClaw Folgendes aus:- Liest Skill-Metadaten.
- Wendet
skills.entries.<key>.envundskills.entries.<key>.apiKeyaufprocess.envan. - Erstellt den System-Prompt mit geeigneten Skills.
- Stellt die ursprüngliche Umgebung wieder her, nachdem der Lauf endet.
claude-cli materialisiert OpenClaw außerdem denselben
geeigneten Snapshot als temporäres Claude Code Plugin und übergibt ihn mit
--plugin-dir. Claude Code kann dann seinen nativen Skill-Resolver verwenden, während
OpenClaw weiterhin Vorrang, Agent-spezifische Zulassungslisten, Gating und
skills.entries.*-Umgebungs-/API-Schlüssel-Injektion verwaltet. Andere CLI-Backends verwenden nur den
Prompt-Katalog.
Snapshots und Aktualisierung
OpenClaw erstellt einen Snapshot der geeigneten Skills beim Start einer Sitzung und verwendet diese Liste für nachfolgende Turns in derselben Sitzung wieder. Änderungen an Skills oder Konfiguration werden in der nächsten neuen Sitzung wirksam. Skills können in zwei Fällen während einer Sitzung aktualisiert werden:- Der Skills-Watcher ist aktiviert.
- Ein neuer geeigneter Remote-Node erscheint.
Skills-Watcher
Standardmäßig überwacht OpenClaw Skill-Ordner und erhöht den Skills-Snapshot, wenn sichSKILL.md-Dateien ändern. Konfigurieren Sie dies unter skills.load:
allowSymlinkTargets für beabsichtigte Layouts mit benachbarten Repositories, bei denen ein integrierter
Skill-Root einen Symlink enthält, zum Beispiel
~/.agents/skills/manager -> ~/Projects/manager/skills. Die Zielliste wird
nach Realpath-Auflösung abgeglichen und sollte eng gefasst bleiben.
Remote-macOS-Nodes (Linux-Gateway)
Wenn der Gateway unter Linux läuft, aber ein macOS-Node mit erlaubtemsystem.run verbunden ist (Exec-Genehmigungssicherheit nicht auf deny gesetzt),
kann OpenClaw macOS-exklusive Skills als geeignet behandeln, wenn die erforderlichen
Binärdateien auf diesem Node vorhanden sind. Der Agent sollte diese Skills
über das Werkzeug exec mit host=node ausführen.
Dies hängt davon ab, dass der Node seine Befehlsunterstützung meldet und ein Bin-Probe
über system.which oder system.run möglich ist. Offline-Nodes machen
Remote-exklusive Skills nicht sichtbar. Wenn ein verbundener Node nicht mehr auf Bin-
Probes antwortet, löscht OpenClaw seine gecachten Bin-Treffer, sodass Agenten keine
Skills mehr sehen, die dort derzeit nicht ausgeführt werden können.
Token-Auswirkung
Wenn Skills geeignet sind, injiziert OpenClaw eine kompakte XML-Liste verfügbarer Skills in den System-Prompt (überformatSkillsForPrompt in
pi-coding-agent). Die Kosten sind deterministisch:
- Basis-Overhead (nur bei ≥1 Skill): 195 Zeichen.
- Pro Skill: 97 Zeichen + die Länge der XML-escaped Werte
<name>,<description>und<location>.
& < > " ' zu Entitäten (&, < usw.)
und erhöht dadurch die Länge. Token-Zahlen variieren je nach Modell-Tokenizer. Eine grobe
Schätzung im OpenAI-Stil ist ~4 Zeichen/Token, also 97 Zeichen ≈ 24 Token pro
Skill plus Ihre tatsächlichen Feldlängen.
Lebenszyklus verwalteter Skills
OpenClaw liefert eine Baseline-Menge von Skills als gebündelte Skills mit der Installation aus (npm-Paket oder OpenClaw.app).~/.openclaw/skills ist für
lokale Überschreibungen vorgesehen - zum Beispiel zum Pinning oder Patchen eines Skills, ohne
die gebündelte Kopie zu ändern. Workspace-Skills gehören dem Benutzer und überschreiben
beide bei Namenskonflikten.
Suchen Sie nach weiteren Skills?
Durchsuchen Sie https://clawhub.ai. Vollständiges Konfigurationsschema: Skills-Konfiguration.Verwandt
- ClawHub - öffentliches Skills-Registry
- Skills erstellen - benutzerdefinierte Skills erstellen
- Plugins - Überblick über das Plugin-System
- Skill Workshop Plugin - Skills aus Agent-Arbeit generieren
- Skills-Konfiguration - Referenz zur Skill-Konfiguration
- Slash-Befehle - alle verfügbaren Slash-Befehle