Skills
Skills erstellen
Skills vermitteln dem Agenten, wie und wann Werkzeuge verwendet werden. Jeder Skill ist ein Verzeichnis
mit einer SKILL.md-Datei, die YAML-Frontmatter und Markdown-Anweisungen enthält.
OpenClaw lädt Skills aus mehreren Stammverzeichnissen in einer festgelegten Prioritätsreihenfolge.
Ihren ersten Skill erstellen
Skill-Verzeichnis erstellen
Skills befinden sich im Ordner skills/ Ihres Arbeitsbereichs:
mkdir -p ~/.openclaw/workspace/skills/hello-worldZur besseren Organisation können Sie Skills in Unterordnern gruppieren — der Skill wird weiterhin
durch das SKILL.md-Frontmatter benannt, nicht durch den Ordnerpfad:
mkdir -p ~/.openclaw/workspace/skills/personal/hello-world# Der Skill-Name bleibt "hello-world", Aufruf mit /hello-worldSKILL.md schreiben
Das Frontmatter definiert Metadaten; der Inhalt enthält Anweisungen für den Agenten.
---name: hello-worlddescription: Ein einfacher Skill, der eine Begrüßung ausgibt.--- # Hallo Welt Wenn der Benutzer um eine Begrüßung bittet, verwenden Sie das Werkzeug `exec`, um Folgendes auszuführen: ```bashecho "Hallo von Ihrem benutzerdefinierten Skill!" Benennungsregeln:- Verwenden Sie für `name` Kleinbuchstaben, Ziffern und Bindestriche.- Halten Sie den Verzeichnisnamen und den Frontmatter-Wert `name` identisch.- `description` wird dem Agenten und bei der Erkennung von Slash-Befehlen angezeigt — halten Sie die Beschreibung einzeilig und kürzer als 160 Zeichen. OPENCLAW_DOCS_MARKER:stepClose: OPENCLAW_DOCS_MARKER:stepOpen:IHRpdGxlPSJMYWRlbiBkZXMgU2tpbGxzIMO8YmVycHLDvGZlbiI ```bashopenclaw skills listOpenClaw überwacht standardmäßig SKILL.md-Dateien unter den Stammverzeichnissen für Skills. Wenn die
Überwachung deaktiviert ist oder Sie eine bestehende Sitzung fortsetzen, starten Sie eine neue,
damit der Agent die aktualisierte Liste erhält:
# Im Chat — aktuelle Sitzung archivieren und eine neue starten/new # Oder das Gateway neu startenopenclaw gateway restartSkill testen
openclaw agent --message "Gib mir eine Begrüßung"Alternativ können Sie einen Chat öffnen und den Agenten direkt fragen. Verwenden Sie /skill hello-world, um
den Skill ausdrücklich anhand seines Namens aufzurufen.
SKILL.md-Referenz
Pflichtfelder
| Feld | Beschreibung |
|---|---|
name |
Eindeutiger Slug aus Kleinbuchstaben, Ziffern und Bindestrichen |
description |
Einzeilige Beschreibung, die dem Agenten und in der Erkennungsausgabe angezeigt wird |
Optionale Frontmatter-Schlüssel
| Feld | Standardwert | Beschreibung |
|---|---|---|
user-invocable |
true |
Den Skill als Slash-Befehl für Benutzer verfügbar machen |
disable-model-invocation |
false |
Den Skill aus dem System-Prompt des Agenten ausschließen (Ausführung über /skill weiterhin möglich) |
command-dispatch |
— | Auf tool setzen, um den Slash-Befehl unter Umgehung des Modells direkt an ein Werkzeug weiterzuleiten |
command-tool |
— | Name des Werkzeugs, das aufgerufen wird, wenn command-dispatch: tool gesetzt ist |
command-arg-mode |
raw |
Leitet beim Werkzeug-Dispatch die unverarbeitete Argumentzeichenfolge an das Werkzeug weiter |
homepage |
— | URL, die in der macOS-Benutzeroberfläche für Skills als "Website" angezeigt wird |
Informationen zu Zugriffssteuerungsfeldern (requires.bins, requires.env usw.) finden Sie unter
Skills — Zugriffssteuerung.
{baseDir} verwenden
Referenzieren Sie Dateien innerhalb des Skill-Verzeichnisses, ohne Pfade fest zu codieren — der
Agent löst {baseDir} relativ zum eigenen Verzeichnis des Skills auf:
Führen Sie das Hilfsskript unter `{baseDir}/scripts/run.sh` aus.Bedingte Aktivierung hinzufügen
Schränken Sie Ihren Skill so ein, dass er nur geladen wird, wenn seine Abhängigkeiten verfügbar sind:
---name: gemini-searchdescription: Suche mit der Gemini CLI.metadata: { "openclaw": { "requires": { "bins": ["gemini"] }, "primaryEnv": "GEMINI_API_KEY" } }---Optionen für die Zugriffssteuerung
| Schlüssel | Beschreibung |
|---|---|
requires.bins |
Alle Binärdateien müssen unter PATH vorhanden sein |
requires.anyBins |
Mindestens eine Binärdatei muss unter PATH vorhanden sein |
requires.env |
Jede Umgebungsvariable muss im Prozess oder in der Konfiguration vorhanden sein |
requires.config |
Jeder openclaw.json-Pfad muss einen wahren Wert ergeben |
os |
Plattformfilter: ["darwin"], ["linux"], ["win32"] |
always |
Auf true setzen, um alle Einschränkungen zu überspringen und den Skill immer einzubeziehen |
Vollständige Referenz: Skills — Zugriffssteuerung.
Umgebung und API-Schlüssel
Verknüpfen Sie einen API-Schlüssel mit einem Skill-Eintrag in openclaw.json:
{ skills: { entries: { "gemini-search": { enabled: true, apiKey: { source: "env", provider: "default", id: "GEMINI_API_KEY" }, }, }, },}Der Schlüssel wird nur für diesen Agentendurchlauf in den Hostprozess eingefügt. Er gelangt nicht in die Sandbox — siehe Umgebungsvariablen in der Sandbox.
Über Skill Workshop vorschlagen
Verwenden Sie für vom Agenten entworfene Skills oder wenn Sie vor der Aktivierung eines Skills eine
Prüfung durch den Betreiber wünschen, Vorschläge im Skill Workshop, statt
SKILL.md direkt zu schreiben.
# Einen völlig neuen Skill vorschlagenopenclaw skills workshop propose-create \ --name "hello-world" \ --description "Ein einfacher Skill, der eine Begrüßung ausgibt." \ --proposal ./PROPOSAL.md # Eine Aktualisierung eines bestehenden Skills vorschlagenopenclaw skills workshop propose-update hello-world \ --proposal ./PROPOSAL.md \ --description "Aktualisierter Begrüßungs-Skill"Verwenden Sie --proposal-dir, wenn der Vorschlag unterstützende Dateien enthält:
openclaw skills workshop propose-create \ --name "hello-world" \ --description "Ein einfacher Skill, der eine Begrüßung ausgibt." \ --proposal-dir ./hello-world-proposal/Das Verzeichnis muss PROPOSAL.md in seinem Stammverzeichnis enthalten. Unterstützende Dateien gehören unter
assets/, examples/, references/, scripts/ oder templates/.
Nach der Prüfung:
openclaw skills workshop inspect <proposal-id>openclaw skills workshop apply <proposal-id>Den vollständigen Lebenszyklus eines Vorschlags finden Sie unter Skill Workshop.
Auf ClawHub veröffentlichen
Vollständigkeit Ihrer SKILL.md sicherstellen
Stellen Sie sicher, dass name, description und alle metadata.openclaw-Zugriffssteuerungsfelder
festgelegt sind. Fügen Sie eine homepage-URL hinzu, wenn Sie über eine Projektseite verfügen.
Eigenständige ClawHub CLI installieren und anmelden
npm i -g clawhubclawhub loginVeröffentlichen
clawhub skill publish ./path/to/hello-worldFügen Sie --version <version> oder --owner <owner> hinzu, um die abgeleitete
Version zu überschreiben oder unter einem bestimmten Eigentümer zu veröffentlichen. Den vollständigen
Ablauf, die Eingrenzung nach Eigentümer und weitere Wartungsbefehle (clawhub sync, clawhub skill rename, ...)
finden Sie unter ClawHub — Veröffentlichen und
ClawHub CLI.
Bewährte Vorgehensweisen
Verwandte Themen
Ladereihenfolge, Zugriffssteuerung, Zulassungslisten und SKILL.md-Format.
Vorschlagswarteschlange für vom Agenten entworfene Skills.
Vollständiges skills.*-Konfigurationsschema.
Skills im öffentlichen Verzeichnis durchsuchen und veröffentlichen.
Plugins können Skills zusammen mit den Werkzeugen bereitstellen, die darin dokumentiert werden.