Fähigkeiten schreiben
Vorhandenen Besitzer wiederverwenden
Durchsuchen Sie vorhandene Fähigkeitskataloge, bevor Sie ein Paket erstellen. Für Repository-Arbeiten durchsuchen Sie den Zielkatalog und jeden relevanten Quellkatalog im autorisierten Arbeitsbereich. Für autorisierte Live-Bibliothek-Arbeiten verwenden Sie den Katalog und die Fähigkeitslisten von Rundesk; öffnen Sie die Live-Bibliothek nicht, um die Zugriffsgrenze der Aufgabe zu umgehen. Lesen Sie die Beschreibungen plausibler Treffer, dann deren Texte und relevanten Referenzen, bevor Sie entscheiden.
Erweitern Sie den vorhandenen Besitzer, wenn die angeforderte Fähigkeit die gleiche Benutzerabsicht, den gleichen Arbeitsablauf und die gleiche Autorität teilt. Fügen Sie dort ein unterstützendes Skript, eine Referenz oder einen Test hinzu, anstatt eine zweite Routing-Oberfläche zu erstellen. Erstellen Sie nur dann eine neue Fähigkeit, wenn die Fähigkeit ein eigenständiges Routing, eigenständige Beurteilung, eigene Autorität oder einen eigenen Nachweis benötigt; dokumentieren Sie diese Unterscheidung, damit ein ähnlicher Name nicht allein als Rechtfertigung dient.
Das Artefakt auswählen
- Eine Fähigkeit ist die Instruktionsgrenze: wann zu handeln ist, welche Beurteilung anzuwenden ist, welches Verfahren zu befolgen ist und wie das Ergebnis nachzuweisen ist.
- Ein Workflow-Skript ist der deterministische Mechanismus für wiederholte lokale Transformation, Validierung oder Orchestrierung.
- Eine Integration fügt eine externe Servicegrenze hinzu: Anmeldeinformationen, Konten, Netzwerkfehler, Berechtigungen oder entfernte Effekte.
Behalten Sie einmalige Automatisierungen in ihrem Projekt und einen wiederholten privaten Befehl eines Agenten im Skriptbereich dieses Agenten. Verpacken Sie ein Skript nur dann in einer Fähigkeit, wenn zukünftige Schritte Routing oder Beurteilung benötigen, um es zu verwenden. Ersetzen Sie keinen deterministischen Code durch Prosa, die ein Agent neu interpretieren muss.
Lesen Sie Wiederverwendbare Workflow-Skripte, bevor Sie ein wiederverwendbares Skript ausliefern. Lesen Sie auch Externe Service-Integrationen, wenn es Anmeldeinformationen, Profile, OAuth, ein Netzwerk oder entfernte Effekte verwendet.
Sicher platzieren
Erstellen Sie eine private Fähigkeit in local nur, wenn die Live-Erstellung oder -Installation autorisiert ist. Für einen Entwurf, eine Überprüfung, eine Repository-Änderung oder einen isolierten Test bleiben Sie im benannten Arbeitsbereich oder temporären Verzeichnis; durchsuchen oder ändern Sie die Live-Bibliothek nicht, um herauszufinden, wohin das Ergebnis später gehen könnte.
Für eine autorisierte private Fähigkeit fragen Sie Rundesk nach der Bibliothek, anstatt sie von RUNDESK_HOME abzuleiten oder einen absoluten Pfad einzubetten. Ersetzen Sie den Beispielnamen:
skill_name=release-notes
skill_library=$("$RUNDESK_COMMAND" skills | sed -n '1s/^skills in //p')
test -n "$skill_library" || exit 1
mkdir -p "$skill_library/local/$skill_name"
Schreiben Sie <library>/local/<name>/SKILL.md und gewähren Sie es dann dem benannten Agenten:
"$RUNDESK_COMMAND" skills grant "$RUNDESK_AGENT" local/release-notes
Die Gewährung wird im nächsten Schritt des Agenten auffindbar, nicht im aktuellen. Lesen Sie Veröffentlichen eines Fähigkeitskatalogs, bevor Sie eine Fähigkeit für andere Installationen erstellen; veröffentlichte Fähigkeiten gehören in ein Katalog-Repository, nicht in local.
Nur die benötigte Form verwenden
<name>/
├── SKILL.md erforderlich: Routing und Kernverfahren
├── rundesk.json optional: erforderliche Umgebungswerte
├── scripts/ optional: wiederverwendbare Befehle
├── tests/ optional: Skriptverträge, wenn kein Katalogtestbereich sie besitzt
├── references/ optional: bedingt geladenes Detail
└── assets/ optional: kopiertes oder Ausgabematerial
Erstellen Sie optionale Pfade nur mit Inhalt. Lassen Sie README, Changelog, Installationsanleitung und Erstellungsverlauf weg.
Routing zuerst schreiben
Frontmatter hat nur name und description.
- Passen Sie
namean das Verzeichnis an. Verwenden Sie maximal 64 Kleinbuchstaben, Ziffern und einzelne Bindestriche. - Routen Sie nach Benutzerabsicht, einschließlich indirekter Anfragen, die die Fähigkeit möglicherweise nicht nennen. Beginnen Sie mit „Verwenden Sie, wenn“, „Anwenden, wenn“ oder einer gleichwertigen Anwendbarkeitssprache; Aufforderungsphrasen sind keine Auslöser.
- Zielen Sie auf zwei kurze Sätze: Anwendbarkeit, dann der spezialisierte Workflow oder das bereitgestellte Wissen. Fügen Sie „Nicht verwenden“ nur für einen wahrscheinlichen Fast-Treffer hinzu. Nehmen Sie nur Konzepte auf, die zum Routing benötigt werden, bevor der Text geladen wird. Lassen Sie Schritte, Tests, Nutzenbehauptungen und Implementierungsdetails weg; nennen Sie einen Dateityp, ein Werkzeug oder ein Format nur, wenn es bestimmt, ob die Fähigkeit ausgelöst werden soll.
- Verwenden Sie die kürzeste Beschreibung, die dennoch korrekt routet; 1.024 Zeichen sind eine Obergrenze, kein Ziel. Setzen Sie jeden Auslöser dort hinein, weil jeder Halter dafür in jedem Schritt bezahlt und der Text erst verfügbar ist, wenn das Routing erfolgreich war.
# Schlecht: Bettet Implementierung und Verifikation ein, die beim Routing nicht helfen.
description: Verwenden Sie, wenn Sie Versionshinweise erstellen. Es liest Git-Historie, schreibt Markdown, gruppiert Commits, prüft Links, führt Validierung aus und erzeugt präzise interne und öffentliche Versionen mit korrekter Formatierung.
# Gut: Gibt nur die Absicht, die bereitgestellte Beurteilung und die nächste Grenze an.
description: Verwenden Sie, wenn Sie Versionshinweise aus ausgelieferten Repository-Änderungen vorbereiten. Es liefert einen publikumsorientierten Arbeitsablauf, der auf geprüfter Historie basiert. Nicht für unveröffentlichte Pläne verwenden.
Nur Verhaltensleitlinien behalten
Verwenden Sie imperative Schritte in Ausführungsreihenfolge. Gehen Sie davon aus, dass der Leser argumentieren, bearbeiten und gewöhnliche Werkzeuge verwenden kann. Behalten Sie einen Satz nur, wenn er die Ausführung ändert, einen wahrscheinlichen Fehler verhindert oder benötigte Details routet.
- Behalten Sie Kernverfahren, eine starke Standardeinstellung und nicht offensichtliche Fallstricke in
SKILL.md. - Verwenden Sie exakte Befehle für fragile Operationen; verwenden Sie präzise Beurteilung, wo mehrere Ansätze funktionieren.
- Erklären Sie den Fehler, den eine Einschränkung verhindert, anstatt unerklärte Betonung hinzuzufügen.
- Führen Sie jede Referenz mit dem Zeitpunkt zum Lesen ein. Behalten Sie eine einzige Quelle der Wahrheit; verlinken Sie anstatt neu zu formulieren.
- Entfernen Sie Hintergrund, Prozesshistorie, datierte Behauptungen und Regeln, die bereits anderswo geladen wurden.
- Unterscheiden Sie beobachtete Verträge von empfohlenen Standardeinstellungen. Quellieren Sie technische Einschränkungen und lehren Sie echte Fallen als Symptom, Ursache, Ersatz und beobachtbaren Nachweis.
Halten Sie SKILL.md unter 500 Zeilen; verschieben Sie bedingte Details eine Ebene tief in verlinkte Referenzen.
Kontext budgetieren
| Teil | Kosten pro Schritt | Dort behalten |
|---|---|---|
description | jeder Schritt | kürzester vollständiger Auslöser |
SKILL.md | nach Routing | Kernverfahren, Standardeinstellungen, Fallstricke |
references/ | beim Lesen | bedingte Details und größere Beispiele |
scripts/ | Ausgabe kommt in Kontext | deterministische Arbeit mit begrenzter Ausgabe |
tests/ | nur Validierung | ausführbare Verträge und Randfälle |
assets/ | bei Verwendung | Vorlagen und Ausgabematerial |
Bevorzugen Sie kurze Beispiele. Begrenzen Sie die Skriptausgabe auf das, was die nächste Entscheidung benötigt.
Die gesamte Fähigkeit nachweisen
-
Validieren Sie Verzeichnisname, Frontmatter-Name, Beschreibungssyntax und Grenzen.
-
Wenn eine Gewährung benötigt wird, wenden Sie sie an und überprüfen Sie den nächsten Schritt:
"$RUNDESK_COMMAND" skills list "$RUNDESK_AGENT" "$RUNDESK_COMMAND" skills doctor "$RUNDESK_AGENT" -
Führen Sie jede referenzierte Randmatrix des Skripts und den direkten ausführbaren Einstiegspunkt aus.
-
Versuchen Sie in verschiedenen neuen Schritten eine direkte Anfrage, eine indirekte Anfrage und einen nahen Fast-Treffer. Bestätigen Sie, dass der Text und die erforderlichen Referenzen vor der Arbeit geladen werden; beheben Sie Routing nach Kategorie, nicht nach kopierten Aufforderungsphrasen.
-
Vergleichen Sie für eine umfangreiche Fähigkeit dieselbe Aufgabe mit einer frischen Basislinie ohne die Fähigkeit. Lassen Sie dann einen separaten Testagenten sie ohne die erwartete Implementierung verwenden. Überprüfen Sie Artefakte und Befehle direkt; die Zusammenfassung des Agenten ist kein Nachweis. Entfernen Sie Anleitungen, die keine materielle Verbesserung bewirken.
-
Überprüfen Sie generierte Schreibarbeiten getrennt von der ausführbaren Korrektheit: Routing-Präzision, Ausführungsreihenfolge, nützliche Beurteilung, Prägnanz, Duplikation und Referenzdisziplin. Grüne Skripttests beweisen keine Schreibqualität. Quellieren oder beobachten Sie faktische Versprechen; testen Sie ausführbare Behauptungen und schränken Sie Teilwahrheiten ein. Fordern Sie semantische Behauptungen mit einem adversarischen Gegenbeispiel heraus, das bequeme Aggregate bewahrt, während die tatsächliche Beziehung oder das Ergebnis geändert wird – Mutationsprüfungen können einen falschen Testorakel nicht reparieren. Überprüfen Sie die gesamte Schnittstelle, einschließlich leerer Erfolge, doppelter Beweise und jedes datenabhängigen Ausgabeabschnitts.