Funktionen

Skills

Erstelle wiederverwendbare Anweisungssets für spezialisierte Workflows. Definiere benutzerdefinierte Workflows, füge unterstützende Dateien hinzu und bringe Bob spezialisierte Aufgaben für konsistente Ergebnisse bei.

Skills sind wiederverwendbare Anweisungssets, die Bob neue Workflows und spezialisierte Aufgaben beibringen. Betrachte sie als Rezepte, die Bob befolgt, um bestimmte Arten von Arbeit konsistent und wiederholbar zu erledigen.

Warum Skills verwenden

  • Wiederverwendbarkeit: Definiere Workflows einmal und verwende sie in mehreren Gesprächen.
  • Konsistenz: Stelle sicher, dass Bob bei bestimmten Aufgaben jedes Mal denselben Ansatz verfolgt.
  • Spezialisierung: Erstelle domänenspezifisches Fachwissen für Code-Reviews, Tests, Dokumentation und mehr.
  • Team-Zusammenarbeit: Teile standardisierte Workflows über Versionskontrolle in deinem Team.
  • Flexibilität: Füge unterstützende Dateien wie Checklisten, Vorlagen und Referenzmaterialien ein.

Anforderungen

Skills sind nur im Advanced-Modus verfügbar. Dies stellt sicher, dass Bob Zugang zu allen notwendigen Tools hat, um skill-basierte Workflows effektiv auszuführen.

Wie Skills funktionieren

Wenn du einen Skill aktivierst, erhält Bob die Anweisungen des Skills und bekommt Zugriff auf alle unterstützenden Dateien im Skill-Verzeichnis. Bob folgt dann diesen Anweisungen, um deine Aufgabe gemäß dem definierten Workflow zu erledigen.

Skills werden einmal pro Gespräch geladen, um doppelte Eingaben zu vermeiden. Bob bestimmt automatisch, wann ein Skill basierend auf deiner Anfrage und der Beschreibung des Skills aktiviert werden soll.

Einen Skill erstellen

Grundeinrichtung

Erstelle einen Ordner in .bob/skills/ in deinem Projektstammverzeichnis oder verwende ~/.bob/skills/ für globale Skills.

Füge eine SKILL.md-Datei in diesem Ordner hinzu.

Beispielstruktur:

SKILL.md

SKILL.md-Format

Die SKILL.md-Datei verwendet YAML-Frontmatter gefolgt von den Skill-Anweisungen:

---
name: code-review
description: Review code for bugs, security issues, and best practices
---

When reviewing code, check for:
- Security vulnerabilities
- Performance issues
- Missing error handling at API boundaries
- Unused imports and dead code

Provide a summary with severity levels for each finding.

Pflichtfelder:

  • name: Der Anzeigename des Skills in der Bob-Oberfläche
  • description: Eine klare Zusammenfassung, die Bob hilft zu entscheiden, wann dieser Skill aktiviert werden soll – Skills ohne Beschreibungen werden ignoriert

Anweisungsabschnitt: Alles unterhalb des ----Trennzeichens wird zu den Anweisungen, die Bob erhält, wenn der Skill aktiviert wird.

Unterstützende Dateien hinzufügen

Du kannst zusätzliche Dateien und Unterordner neben SKILL.md einfügen, um Referenzmaterialien, Vorlagen, Checklisten, Skripte oder andere Ressourcen bereitzustellen. Bob kann diese Dateien automatisch lesen, sobald der Skill aktiviert ist.

Beispiel mit unterstützenden Dateien:

SKILL.md
checklist.md
severity-guide.md
analyze.sh
report-generator.py

Unterstützende Dateien und Ordner können enthalten:

  • Checklisten und Vorlagen
  • Referenzdokumentation
  • Konfigurationsbeispiele
  • Skripte und Hilfsprogramme in Unterordnern
  • Style Guides
  • Alle anderen für den Skill benötigten Ressourcen

Skill-Speicherorte

Skills können auf zwei Ebenen definiert werden:

SpeicherortUmfangAnwendungsfall
<project>/.bob/skills/ProjektspezifischWorkflows, die nur für dieses Projekt gelten
~/.bob/skills/GlobalPersönliche oder organisationsweite Workflows

Priorität: Wenn beide Speicherorte einen Skill mit demselben Namen enthalten, hat der Skill auf Projektebene Vorrang.

Skills genehmigen

Standardmäßig fragt Bob um Erlaubnis, bevor ein Skill aktiviert wird. Dies gibt dir die Kontrolle darüber, wann spezialisierte Workflows angewendet werden.

Um die Genehmigungsaufforderung zu überspringen:

Öffne die Bob-Einstellungen.

Navigiere zum Abschnitt „Automatisch genehmigen".

Aktiviere den Schalter für Skills.

Mit dieser Einstellung aktiviert Bob Skills automatisch, wenn es angemessen ist, ohne um Erlaubnis zu bitten.

Effektive Skills schreiben

Klare Beschreibungen

Schreibe Beschreibungen, die klar angeben, wann der Skill verwendet werden sollte. Bob verlässt sich auf diese Beschreibungen, um die Relevanz eines Skills zu bestimmen.

Gut: „Review code for bugs, security issues, and best practices"

Vermeiden: „Code review skill"

Fokussierte Anweisungen

Halte die SKILL.md-Hauptdatei auf den Kern-Workflow fokussiert. Verschiebe detailliertes Referenzmaterial, Beispiele und Checklisten in unterstützende Dateien.

Beispiel:

---
name: api-documentation
description: Generate API documentation following OpenAPI standards
---

Generate API documentation that includes:
- Endpoint descriptions
- Request/response schemas
- Authentication requirements
- Example requests and responses

Follow the style guide in `api-style-guide.md` and use the template in `api-template.md`.

Umsetzbare Schritte

Strukturiere Anweisungen als klare, umsetzbare Schritte, denen Bob systematisch folgen kann.

Beispiel:

---
name: feature-implementation
description: Implement new features following team standards
---

<Steps>
<Step>
Review the feature requirements.

</Step>

<Step>
Create a plan with file changes needed.

</Step>

<Step>
Implement the feature with tests.

</Step>

<Step>
Update documentation.

</Step>

<Step>
Verify all tests pass.

</Step>
</Steps>

Follow coding standards in `coding-standards.md`.

Beispiel-Skills

Code-Review-Skill

---
name: security-review
description: Review code for security vulnerabilities and best practices
---

Perform a security-focused code review:

<Steps>
<Step>
Check for common vulnerabilities:
- SQL injection risks
- XSS vulnerabilities
- Authentication/authorization issues
- Sensitive data exposure

</Step>

<Step>
Review security best practices:
- Input validation
- Output encoding
- Secure configuration
- Error handling

</Step>

<Step>
Provide findings with:
- Severity level (Critical, High, Medium, Low)
- Location in code
- Recommended fix
- Reference to security standards

</Step>
</Steps>

Use the severity guide in `severity-levels.md` for classification.

Dokumentations-Skill

---
name: api-docs
description: Generate comprehensive API documentation
---

Create API documentation that includes:

<Steps>
<Step>
Overview section:
- Purpose and use cases
- Authentication requirements
- Base URL and versioning

</Step>

<Step>
For each endpoint:
- HTTP method and path
- Description and purpose
- Request parameters
- Request body schema
- Response codes and schemas
- Example requests and responses

</Step>

<Step>
Additional sections:
- Error handling
- Rate limiting
- Pagination

</Step>
</Steps>

Follow the template in `api-doc-template.md` and examples in `api-examples.md`.

Tipps und Best Practices

  • Einfach beginnen: Beginne mit grundlegenden Anweisungen und verfeinere sie basierend auf den Ergebnissen.
  • Unterstützende Dateien verwenden: Halte SKILL.md prägnant, indem du detaillierte Inhalte in Begleitdateien verschiebst.
  • Gründlich testen: Stelle sicher, dass Skills wie erwartet funktionieren, bevor du sie mit deinem Team teilst.
  • Versionskontrolle: Füge Projekt-Skills in dein Repository ein, um Teamkonsistenz zu gewährleisten.
  • Klare Benennung: Verwende beschreibende Skill-Namen, die ihren Zweck angeben.
  • Einzelverantwortung: Erstelle fokussierte Skills für spezifische Aufgaben, anstatt zu versuchen, mehrere unzusammenhängende Workflows zu behandeln.
Wie ist dieses Thema?