Zum Inhalt springen

Skills SDK

Eine Skill ist ein Paket, das deinem Companion etwas Neues beibringt: zusätzlichen Kontext, einen Satz Tools, die genutzt werden dürfen, optionale Sub-Agents, und Hooks, die nach Zeitplan oder auf ein Event hin auslösen. Über Skills wächst das Verhalten der Plattform, ohne die Kernidentität des Companions zu ändern.

Jede Skill wird durch ein Manifest beschrieben — ein JSON-Dokument, das gegen ein festes Schema geprüft wird. Das Manifest ist der Vertrag; der schwere Inhalt (Anweisungen, Referenzdokumente) liegt in Dateien, auf die das Manifest zeigt und die erst bei Bedarf geladen werden. Diese Schichtung hält eine ruhende Skill billig (etwa 50 Token Metadaten) und zahlt für das Detail erst, wenn die Skill wirklich genutzt wird.

Ein Manifest erklärt:

  • name, version, description, author — die Identität. name ist kleingeschrieben mit Bindestrichen, version ist semver (1.0.0).
  • context — ob es für die Skill eine SKILL.md gibt (die Anleitung, etwa 500 Token).
  • tools — Tools, die die Skill bindet, je core (ein eingebautes Companion-Tool) oder composio (eine externe Aktion), und ob sie required sind.
  • agents — optionale Sub-Agents, jeder mit eigenem Prompt und einer Whitelist der Tools, die er aufrufen darf.
  • hooks — wann die Skill von selbst handelt: on_schedule (Cron), on_event, on_before_model, on_after_model oder on_agent_complete, jeder mit einer config und einer action (eine Nachricht senden, einen Agent rufen, oder einen stillen Turn nehmen).

Eine Skill ist die Einheit wiederverwendbarer Companion-Fähigkeit. Das Manifest zu lesen sagt dir genau, was eine Skill anfassen kann — welche Tools sie bekommt, wann sie unaufgefordert läuft —, und zwar bevor du sie installierst. Es zeigt dir zugleich die Form, auf die du hinbaust, wenn du eine eigene schreibst.

Heute ist die Entwickleroberfläche Installation und Konfiguration, bereitgestellt über die REST API unter /api/v1/companions/{id}/skills:

Terminal-Fenster
# Skills auflisten, die auf der Plattform veröffentlicht sind
curl https://api.weside.ai/api/v1/companions/available \
-H "Authorization: Bearer $SUPABASE_ACCESS_TOKEN"
# Eine auf einem Companion installieren
curl -X POST https://api.weside.ai/api/v1/companions/{companion_id}/skills \
-H "Authorization: Bearer $SUPABASE_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"skill_definition_id": 42}'

Du kannst außerdem installierte Skills auflisten, die Konfiguration einer Skill ändern oder sie ein- und ausschalten, und sie deinstallieren — dieselben Vorgänge, die in der App über den Body-Space des Companions laufen.

  • Das Schreiben ist manifest-first, noch nicht selbstbedienbar. Das Schema oben ist echt und stabil, aber ein öffentliches SDK zum Veröffentlichen eigener Skills und ein Marktplatz sind noch unterwegs — die heute veröffentlichten Skills sind auf der Plattform hinterlegt. Bau gegen die Form des Manifests; der Veröffentlichungsweg ist die Richtung.
  • Tools müssen schon existieren. Ein Manifest kann nur ein core-Tool binden, das die Plattform offenlegt, oder eine composio-Aktion, die du verbunden hast — es kann keinen neuen Tool-Code definieren.
  • Hooks laufen nicht frei. Hooks nach Zeitplan und auf Events laufen unter den Regeln des Companions für Proaktivität und gegen Spam; eine Skill kann sie nicht umgehen, um dich zuzuschütten.
  • Skills gelten je Companion. Eine Installation auf einem Companion wirkt sich nicht auf einen anderen aus.