Zum Inhalt springen
tutorials · 10 min Lesezeit

OpenClaw Tutorial Teil 5: Skills & Tools erweitern

Praktischer Guide: OpenClaw Skills finden, einordnen und eigene Skills schreiben – von SKILL.md bis zu sicheren Tool-Abläufen.

openclaw tutorial skills tools agent-automation

📚 Serie: OpenClaw installieren & einrichten — Teil 5 von 8
← Teil 4: Telegram & WhatsApp verbinden | Teil 6: Workspace einrichten →

Nach Installation, Modellen und Messenger-Anbindung kommt der Teil, an dem OpenClaw im Alltag wirklich nützlich wird: eigene Skills. In diesem Teil geht es darum, was Skills von Tools und Plugins unterscheidet, wo OpenClaw sie sucht und wie du erste eigene Skills so anlegst, dass sie nicht nur nett aussehen, sondern in einer realen Session auch wirklich nutzbar sind.

Der wichtigste Punkt vorweg: Ein Skill ist in OpenClaw normalerweise kein Mini-Programm, sondern eine Handlungsanweisung für den Agenten. Er beschreibt, wann und wie vorhandene Tools zusammenspielen sollen. Ob ein Skill praktisch funktioniert, entscheidet deshalb nicht die SKILL.md allein, sondern die Kombination aus Tools, Rechten, Konfiguration und dem aktiven Workspace.12

Was du für diesen Teil brauchst

Bevor du etwas anlegst oder konfigurierst, sollte Folgendes stehen:

  • eine funktionierende OpenClaw-Installation
  • eine gültige OpenClaw-Konfiguration
  • mindestens ein lauffähiger Agent
  • Zugriff auf den Workspace, in dem du Skills ablegen willst
  • für Shell-Beispiele ein erlaubtes Shell-/Exec-Tool
  • für das GitHub-Beispiel zusätzlich gh und optional jq

Prüfe vor Änderungen zuerst, welche Konfigurationsdatei deine Installation gerade wirklich nutzt, und validiere sie danach. Beides ist in der offiziellen CLI-Doku beschrieben.3

openclaw config file
openclaw config validate

Wenn du direkt in den Skills-Bereich der geführten Konfiguration springen willst, ist laut offizieller Dokumentation auch ein Abschnittsfilter möglich:43

openclaw config --section skills

Tool, Skill und Plugin: die praktische Trennung

Die drei Begriffe werden im OpenClaw-Umfeld oft durcheinandergeworfen. Für die Praxis hilft diese einfache Trennung:

  • Tool: die konkrete ausführbare Fähigkeit, etwa Shell/Exec, Web-Fetch oder ein über Plugins bereitgestelltes Werkzeug
  • Skill: eine SKILL.md, die beschreibt, wann und wie der Agent vorhandene Tools für ein Ziel kombiniert12
  • Plugin: ein technisches Erweiterungspaket, das OpenClaw um Runtime-Fähigkeiten wie Tools, Integrationen, Channels oder weitere Bausteine erweitert5

Kurzform: Plugins liefern Technik, Tools führen aus, Skills geben dem Agenten den sinnvollen Ablauf vor.

Wie OpenClaw Skills lädt

Ein Skill ist im Kern ein Ordner mit einer Datei namens SKILL.md. Darin steht in der Regel keine Business-Logik als Skript, sondern eine sprachliche Arbeitsanweisung für den Agenten.12

Laut offizieller Skills-Dokumentation lädt OpenClaw gebündelte Skills und optional weitere lokale oder workspace-nahe Skill-Verzeichnisse. Beim Laden können Skills außerdem anhand von Umgebung, Konfiguration und verfügbaren Binaries gefiltert werden.1

Wichtig ist dabei die Unterscheidung zwischen drei Ebenen:

  • Skill-Datei existiert: Der Ordner mit SKILL.md liegt am richtigen Ort.
  • Skill wird geladen: Das Verzeichnis ist Teil der aktiven Skill-Ladepfade.
  • Skill ist für den Agenten sichtbar: Die Agent-Konfiguration erlaubt den Skill auch tatsächlich.

Genau diese Ebenen gehen in der Praxis am häufigsten durcheinander.

Typische Skill-Quellen sind deshalb:

  • mitgelieferte OpenClaw-Skills
  • eigene lokale Skill-Verzeichnisse aus der Konfiguration
  • Workspace-Skills, wenn der aktive Loader oder die Konfiguration dieses Verzeichnis berücksichtigt

Für Projektarbeit ist ein Skill-Ordner im Workspace oft die praktischste Lösung. Lege aber nicht blind einen absoluten Systempfad wie /skills an. Nutze stattdessen ein bewusst gewähltes Verzeichnis, zum Beispiel:

<dein-workspace>/skills/<skill-name>/SKILL.md

Ob genau dieser Pfad automatisch geladen wird, hängt von deiner OpenClaw-Version und der aktiven Loader-Konfiguration ab. Die offizielle Skills-Konfiguration liegt weitgehend unter skills in ~/.openclaw/openclaw.json; die Sichtbarkeit für Agenten wird laut Doku über agents.defaults.skills und agents.list[].skills beeinflusst.4

Wenn OpenClaw deinen Workspace-Ordner nicht berücksichtigt, kannst du ihn über skills.load.extraDirs eintragen:4

{
  skills: {
    load: {
      extraDirs: [
        "/ABSOLUTER/PFAD/ZU/DEINEM/WORKSPACE/skills"
      ]
    }
  }
}

Praktisch zum Gegencheck sind danach vor allem diese Befehle:

openclaw config get skills --json
openclaw config validate

Wenn du Skills agentenspezifisch ein- oder ausblendest, lohnt sich zusätzlich ein Blick auf die Agent-Konfiguration, weil ein korrekt geladener Skill trotzdem unsichtbar sein kann.4

Wichtig ist die saubere Erwartungshaltung: openclaw config validate prüft die Konfiguration, aber nicht automatisch, ob dein Skill fachlich gut geschrieben ist oder in jeder Session sichtbar wird. Genau deshalb lohnt sich ein kurzer Realitätstest mit einer frischen Session.

Wenn gleichnamige Skills an mehreren Stellen liegen, hilft ein eindeutiger Name mehr als späteres Debugging. Doppelte oder zu generische Skill-Namen sorgen schneller für Verwirrung als für Wiederverwendung.

Wo du Skills heute wirklich nachschlägst

Die belastbarste Referenz bleibt die offizielle Dokumentation:

  • https://docs.openclaw.ai/tools/skills
  • https://docs.openclaw.ai/tools/creating-skills
  • https://docs.openclaw.ai/tools/skills-config

Zusätzlich lohnt sich immer ein Blick in die lokal installierte CLI-Hilfe, weil sich Unterbefehle je nach Version ändern können:

openclaw --help
openclaw config --help
openclaw config --section skills

Falls deine Installation einen eigenen Skills-Unterbefehl mitbringt, zeigt die Hilfe die gültige Syntax:

openclaw skills --help

Wenn dieser Unterbefehl fehlt, ist das in der Regel ein Versions- oder Feature-Unterschied, kein Widerspruch zum Tutorial. Entscheidend ist nicht irgendein alter Blogpost, sondern das, was deine installierte OpenClaw-Version und die offizielle Doku tatsächlich unterstützen.

Eigenen Skill anlegen

Für die meisten Fälle brauchst du kein komplexes Plugin, sondern erst einmal einen sauberen Ablauf in einer SKILL.md. Das folgende Beispiel nutzt ./skills im aktuellen Workspace. Wenn OpenClaw diesen Ordner bei dir nicht automatisch lädt, trag ihn wie oben beschrieben über skills.load.extraDirs ein oder nutze den in deiner Installation dokumentierten Skill-Pfad.

Lege zuerst den Ordner an:

mkdir -p ./skills/quick-weather

Danach eine einfache SKILL.md:

cat > ./skills/quick-weather/SKILL.md <<'EOF'
---
name: quick-weather
description: Fragt das aktuelle Wetter ab und fasst es kurz zusammen.
---

# Quick Weather

Nutze diesen Skill, wenn der Nutzer nach dem aktuellen Wetter oder einer kurzen Wettervorhersage fragt.

## Was vorhanden sein muss

- Ein geeignetes Wetter-, Web- oder API-Tool muss verfügbar sein.
- Falls ein API-Key gebraucht wird, gehört er nicht in diese Datei, sondern in Konfiguration, Secrets oder Umgebungsvariablen.

## Ablauf

1. Frage nach dem Ort, falls keiner genannt wurde.
2. Frage nach dem Zeitraum, falls er für die Antwort wichtig ist.
3. Nutze ein verfügbares Wetter-, Web- oder API-Tool für die Abfrage.
4. Wenn kein passendes Tool existiert, erkläre knapp, was fehlt.
5. Antworte kurz und praktisch.

## Output-Format

- Zeile 1: Ort und Zeitraum
- Danach 2 bis 4 Bulletpoints mit Temperatur, Trend, Niederschlag oder Wind und einem praktischen Hinweis
EOF

Prüfe danach mindestens diese Punkte:

ls -l ./skills/quick-weather/SKILL.md
openclaw config file
openclaw config get skills --json
openclaw config validate

Starte anschließend eine neue Session oder lade OpenClaw so neu, wie es deine Installation vorsieht. Ob ein kompletter Reload nötig ist, hängt vom Setup und davon ab, wann der Agent seine Skill-Liste neu aufbaut.

Wenn der Skill nicht auftaucht, liegt es meist an einem dieser Punkte:

  • Die Datei liegt nicht wirklich unter ./skills/quick-weather/SKILL.md im aktiven Workspace.
  • Du arbeitest im falschen Workspace.
  • Das Skill-Verzeichnis ist nicht Teil der aktiven Skills-Konfiguration.
  • Der Skill ist über agents.defaults.skills oder agents.list[].skills für den Agenten nicht sichtbar.
  • openclaw config validate meldet Fehler.
  • Es gibt denselben Skill-Namen noch an anderer Stelle.
  • Ein nötiges Binary oder Tool fehlt, wodurch OpenClaw den Skill beim Laden aussortiert.

Skills gezielt konfigurieren

Für einfache Workspace-Skills reicht oft schon die richtige Ablage. Sobald du gezielt steuern willst, welche Skills aktiv sind oder aus welchen Verzeichnissen sie geladen werden, führt der Weg über die dokumentierte Skills-Konfiguration.4

Der passende Einstiegspunkt in der CLI:

openclaw config --section skills

Oder allgemeiner:

openclaw config --help
openclaw config schema

Wenn du den aktiven Wert eines Konfigurationspfads direkt prüfen willst, ist dafür laut CLI-Doku config get gedacht:3

openclaw config get skills --json

Nach manuellen Änderungen an openclaw.json immer noch einmal validieren:

openclaw config validate

Praxisbeispiel: GitHub-Issues beobachten

Ein gutes Skill-Beispiel ist ein kleiner Helfer für offene GitHub-Issues. Der Skill führt kein eigenes Skript mit, sondern sagt dem Agenten, wie er vorhandene Tools sicher und lesend einsetzen soll.

Was hier zusätzlich nötig ist

Die GitHub CLI sollte installiert und angemeldet sein. Die Referenz für gh auth status steht im offiziellen GitHub-CLI-Manual.6

gh --version
gh auth status

Optional für lokale JSON-Auswertung:

jq --version

Wenn gh auth status fehlschlägt, zuerst anmelden:

gh auth login

Skill anlegen

mkdir -p ./skills/github-issues-watch
cat > ./skills/github-issues-watch/SKILL.md <<'EOF'
---
name: github-issues-watch
description: Prüft offene GitHub-Issues in einem Repository und fasst die wichtigsten Einträge zusammen.
---

# GitHub Issues Watch

Nutze diesen Skill, wenn der Nutzer offene GitHub-Issues eines Repositorys prüfen möchte.

## Was vorhanden sein muss

- Die GitHub CLI `gh` muss installiert sein.
- Der Nutzer muss mit `gh auth status` angemeldet sein.
- Ein Shell-/Exec-Tool muss für diesen Workspace verfügbar sein.
- Der Skill arbeitet nur lesend und führt keine destruktiven GitHub-Aktionen aus.

## Sicherheitsregeln

- Akzeptiere Repositorys nur im Format `owner/repo`.
- Verwende keine Shell-Verkettungen mit unvalidierten Nutzereingaben.
- Führe keine Befehle wie `gh issue edit`, `gh issue close`, `git push`, Löschen, Überschreiben oder Massenänderungen aus.
- Wenn ein Befehl Schreibrechte verlangen würde, frage vorher explizit nach und brich in diesem Skill standardmäßig ab.

## Ablauf

1. Frage nach dem Repository im Format `owner/repo`, falls es nicht genannt wurde.
2. Prüfe mit `gh auth status`, ob die GitHub CLI authentifiziert ist.
3. Wenn keine Authentifizierung vorhanden ist, fordere den Nutzer zu `gh auth login` auf.
4. Liste maximal 5 offene Issues, bevorzugt strukturiert per JSON:

   `gh issue list --repo <owner/repo> --state open --limit 5 --json number,title,labels,createdAt,url`

5. Fasse das Ergebnis strukturiert zusammen.
6. Wenn der Befehl fehlschlägt, nenne den wahrscheinlichsten Grund: falsches Repository, fehlende Rechte, fehlendes `gh`, fehlende Authentifizierung oder ein Netzwerkproblem.

## Output-Format

- Repository
- Anzahl oder sichtbare offene Issues
- Pro Issue: Nummer, Titel, Labels falls vorhanden, Erstellungsdatum falls verfügbar, URL falls verfügbar
- Kurzer Hinweis, welchen Issue man zuerst prüfen sollte
EOF

Danach wieder gegenprüfen:

ls -l ./skills/github-issues-watch/SKILL.md
openclaw config validate

In einer neuen Agent-Session könnte die Anfrage dann so aussehen:

Prüfe mit dem GitHub-Issues-Skill die offenen Issues in owner/repo.

Wichtig für die Praxis: Der Skill startet nichts heimlich im Hintergrund. Er beschreibt nur den Ablauf für den Moment, in dem der Nutzer ihn tatsächlich anfragt. Für regelmäßige Hintergrundchecks brauchst du zusätzlich eine passende Automations- oder Scheduling-Funktion in OpenClaw.

Sicherheit und Best Practices

Weil Skills dieselben Tools anschieben können wie der Agent selbst, entscheidet saubere Rechteverwaltung über den Unterschied zwischen nützlich und riskant:

  • Quellen prüfen: Übernimm Skills nur aus nachvollziehbaren Quellen und lies jede SKILL.md, bevor du sie aktiv nutzt.
  • Keine Geheimnisse in Skills: API-Keys, Tokens und Passwörter gehören nicht in SKILL.md, sondern in Secrets, Umgebungsvariablen oder die dafür vorgesehene OpenClaw-Konfiguration.
  • Least Privilege: Gib dem Agenten nur die Tools und Pfade, die für den jeweiligen Workspace wirklich nötig sind.
  • Shell-Kommandos begrenzen: Ein guter Skill sagt klar, ob er nur lesend arbeitet. Destruktive Befehle brauchen eine explizite Freigabe.
  • Eingaben validieren: Besonders bei Shell-/Exec-Befehlen müssen Repository-Namen, Dateipfade, URLs und andere Nutzereingaben vor der Verwendung plausibel sein.
  • Fehlerbehandlung beschreiben: Ein sauberer Skill sagt auch, was passiert, wenn ein Tool fehlt, eine API nicht erreichbar ist oder Authentifizierung fehlt.
  • Nicht zu viel Magie erwarten: Ein Skill ersetzt keine fehlenden Tools, keine fehlenden Rechte und keine kaputte Konfiguration.
  • Immer validieren: Nach Konfigurationsänderungen gehört openclaw config validate zum Pflichtprogramm.

Fazit

Skills sind in OpenClaw der Punkt, an dem aus allgemeiner Modellintelligenz wiederholbare Arbeitsweise wird. Wenn du sie sauber schreibst, mit real verfügbaren Tools koppelst und ihre Sichtbarkeit über die Konfiguration im Griff hast, wird aus einem generischen Agenten ein deutlich brauchbarerer Assistent für deinen Alltag.

Im nächsten Teil geht es um den Workspace selbst: also um die Dateien, Kontexte und festen Regeln, die dem Agenten eine stabile Rolle geben.


🔗 Verwandte Artikel:

Footnotes

  1. https://docs.openclaw.ai/tools/skills 2 3 4

  2. https://docs.openclaw.ai/tools/creating-skills 2 3

  3. https://docs.openclaw.ai/cli/config.md 2 3

  4. https://docs.openclaw.ai/tools/skills-config 2 3 4 5

  5. https://docs.openclaw.ai/tools/plugin

  6. https://cli.github.com/manual/gh_auth_status

Transparenz

Agentenlog nutzt KI-Assistenz für Recherche, Struktur und Entwurf. Inhaltliche Auswahl, Einordnung und Veröffentlichung liegen redaktionell bei Agentenlog; Quellen und Fakten werden vor Veröffentlichung geprüft.