Ich wollte eine Funktion zu OpenClaw hinzufügen, die es nicht gab: einen Digest von Hacker News, der jeden Morgen die besten Geschichten zusammenfasst und auf meinem Slack veröffentlicht. So etwas gab es nicht als Skill. Also habe ich einen gebaut.
Das erste Mal hat es vier Stunden gedauert, davon zwei Stunden, um die Skill-Spezifikation falsch zu lesen. Der zweite Skill, den ich gebaut habe, hat 45 Minuten gedauert. Beim fünften konnte ich einen in 30 Minuten erstellen. Hier ist der Prozess, bereinigt von allen Fehlern, die ich unterwegs gemacht habe.
Was ein Skill wirklich ist
Ein Skill ist ein Ordner mit Anweisungen und optionalen Skripten. Mindestens enthält er eine Datei SKILL.md — ein Dokument im Markdown-Format, das OpenClaw sagt, was der Skill macht, wann er aktiviert wird und wie man ihn verwendet.
Das ist wirklich alles. Keine Kompilierung. Kein Paket-Register. Kein Build-System. Ein Skill ist ein Dokument, das OpenClaw liest, wenn es eine spezifische Aufgabe durchführen muss.
Der einfachste Skill überhaupt:
Ein Ordner namens daily-hn-digest, der eine einzige Datei enthält, SKILL.md, mit Anweisungen wie: „Wenn der Benutzer nach einem Digest von Hacker News fragt, benutze das Tool web_search, um die wichtigsten Nachrichten auf Hacker News zu finden, jede in 2-3 Sätzen zusammenzufassen und das Ergebnis in Form einer Aufzählungsliste zu formatieren.“
Das funktioniert. Der Agent liest die Anweisungen, befolgt sie und erstellt einen Digest von Hacker News. Kein Code erforderlich.
Komplexität hinzufügen, wenn Sie sie benötigen
Der Basis-Skill behandelt einfache Fälle. Für komplexere Workflows fügen Sie hinzu:
Referenzdateien. Mein Hacker News Skill enthält einen Ordner refs/ mit Beispielen für Ausgaben — die dem Agenten zeigen, wie ein guter Digest aussieht. Das verbessert die Konsistenz erheblich. Anstatt „fass die Geschichten zusammen“ sieht der Agent „so sieht eine gute Zusammenfassung aus — halte dich an dieses Format.“
Skripte. Einige Skills enthalten Shell-Skripte oder Python-Skripte für Aufgaben, die die KI nicht direkt durchführen kann. Mein Digest-Skill umfasst ein Skript, das die Hacker News API abruft (schneller und zuverlässiger als Web-Scraping). Die Anweisungen des Skills sagen dem Agenten, das Skript auszuführen und seine Ausgabe zu verarbeiten.
Konfiguration. Skills können von Konfigurationsdateien lesen. Mein Digest-Skill hat eine config.yaml, die angibt, wie viele Geschichten einbezogen werden sollen (Standard: 10), welche Kategorien priorisiert werden sollen und das Ausgabeformat (Slack, E-Mail oder Klartext).
Die Struktur, die funktioniert
Nachdem ich ein Dutzend Skills gebaut habe, hier die Ordnerstruktur, auf die ich mich geeinigt habe:
my-skill/
├── SKILL.md — Hauptanweisungen (obligatorisch)
├── refs/ — Beispiele für Eingaben und Ausgaben (optional)
├── scripts/ — Hilfsskripte (optional)
└── config.yaml — Konfiguration (optional)
SKILL.md ist die wichtigste Datei. Sie sollte Folgendes enthalten:
1. Eine klare Beschreibung dessen, was der Skill macht
2. Wann der Skill aktiviert werden soll (Trigger-Bedingungen)
3. Schritt-für-Schritt-Anweisungen für den Workflow
4. Fehlerbehandlungsleitfaden
5. Beispiele für gute Ausgaben
Die Qualität Ihres SKILL.md bestimmt direkt die Qualität des Skills. Ein vages SKILL.md führt zu inkonsistenten Ergebnissen. Ein präzises SKILL.md führt zu zuverlässigen Ergebnissen.
Gute Anweisungen schreiben
Die größte Lektion, die ich gelernt habe: Schreiben Sie SKILL.md, als ob Sie einen neuen Mitarbeiter schulen, nicht als würden Sie Dokumentation schreiben.
Schlecht: „Holen Sie die Geschichten von Hacker News und fassen Sie sie zusammen.“
Gut: „Holen Sie die 10 besten Geschichten von der Hacker News API, indem Sie das Skript in scripts/fetch-hn.sh verwenden. Für jede Geschichte schreiben Sie eine Zusammenfassung von 2-3 Sätzen, die Folgendes abdeckt: was passiert ist, warum es wichtig ist und die Reaktion der Gemeinschaft (sofern bemerkenswert). Formatieren Sie es als nummerierte Liste mit dem Titel der Geschichte als Link.“
Die gute Version beseitigt Mehrdeutigkeiten. Der Agent weiß genau, was zu tun ist, welches Format zu verwenden und welche Informationen einzuschließen sind. Kein Raum für kreative Interpretationen, wo Sie es nicht wünschen.
Fehlermodi einfügen. „Wenn die Hacker News API nicht erreichbar ist, verwenden Sie web_search als Backup-Lösung. Wenn weniger als 5 Geschichten verfügbar sind, vermerken Sie das in der Ausgabe und fahren Sie mit dem fort, was verfügbar ist. Erfinden Sie keine Geschichten.“
Grenzen festlegen. „Keine Kommentare abgeben. Keine Meinungen zu den Geschichten hinzufügen. Keine Geschichten auslassen, weil sie unwichtig erscheinen. Präsentieren Sie alle wichtigen Geschichten neutral.“
Testen Sie Ihren Skill
Der Testprozess ist einfach: Installieren Sie den Skill, lösen Sie ihn aus und überprüfen Sie die Ausgabe.
Für meinen Hacker News Skill:
1. Kopieren Sie den Ordner in das Verzeichnis der Skills
2. Starten Sie OpenClaw neu (oder warten Sie, bis es den neuen Skill erkennt)
3. Geben Sie „Gib mir einen Digest von Hacker News“ ein
4. Überprüfen Sie die Ausgabe gegen die Erwartungen
5. Passen Sie SKILL.md an, basierend auf dem, was nicht funktioniert hat
Ich durchlaufe normalerweise 3-4 Überarbeitungszyklen, bevor ich zufrieden bin. Häufige Probleme: Der Agent überspringt Schritte (ausführlichere Anweisungen hinzufügen), inkonsistente Formatierung (ein Beispiel für die Ausgabe hinzufügen) oder Informationen einschließen, die Sie nicht wollten (explizite Grenzen hinzufügen).
Veröffentlichung und Teilen
Sobald Ihr Skill funktioniert, können Sie ihn über ClawHub teilen — den Community-Marktplatz für Skills. Laden Sie Ihren Skill-Ordner hoch, fügen Sie eine Beschreibung hinzu, und andere Benutzer können ihn mit einem einzigen Befehl installieren.
Bevor Sie veröffentlichen, reinigen Sie Ihren Skill: Entfernen Sie alle persönlichen Konfigurationen, fügen Sie eine README mit Installationsanweisungen hinzu und testen Sie ihn auf einer frischen Installation von OpenClaw, um sicherzustellen, dass er nicht von Ihrer lokalen Umgebung abhängt.
Die besten Community-Skills sind zielgerichtet (sie machen eine Sache gut), gut dokumentiert (klar SKILL.md) und stabil (sie gehen ruhig mit Ausfällen um). Die schlechtesten sind vage („benutzen Sie die KI, um Dinge zu tun“), schlecht dokumentiert oder instabil.
Meine bevorzugten benutzerdefinierten Skills
Über den Digest von Hacker News hinaus sind hier die benutzerdefinierten Skills, die ich täglich benutze:
Besprechungsvorbereitung. Vor einem Meeting sage ich „Bereite mein Meeting um 14 Uhr mit [Kundenname] vor.“ Der Skill holt aktuelle E-Mails, Projektupdates und laufende Probleme in Bezug auf diesen Kunden und erstellt ein einstufiges Briefing.
Code-Review-Assistent. Wenn ich Code pushe, überprüft der Skill diesen gemäß den Codierungsstandards unseres Teams (dokumentiert in einer Referenzdatei) und veröffentlicht Kommentare in unserem Teamkanal.
Wöchentlicher Rückblick-Generator. Jeden Freitag erstellt der Skill eine Zusammenfassung dessen, was ich diese Woche erreicht habe (basierend auf GitHub-Commits, Slack-Nachrichten und erledigten Aufgaben) und erstellt einen wöchentlichen Bericht.
Jeder dieser Skills hat etwa eine Stunde benötigt, um aufgebaut zu werden. Jeder spart 15 bis 30 Minuten pro Nutzung. Der Return on Investment ist offensichtlich.
🕒 Published: