Slash-Befehle
Erstelle benutzerdefinierte Slash-Befehle, um wiederkehrende Aufgaben zu automatisieren, integrierte Befehle auszuführen und die Funktionalität von Bob mit einfachen Markdown-Dateien zu erweitern.
Übersicht
Tippe / im Chat, um alle verfügbaren Befehle anzuzeigen, oder erstelle eigene, indem du eine Markdown-Datei in .bob/commands/ oder ~/.bob/commands/ hinzufügst.
Wesentliche Vorteile:
- Workflow-Automatisierung: Verwandle komplexe mehrstufige Prozesse in einzelne Befehle
- Team-Standardisierung: Teile Befehle mit deinem Team für konsistente Vorgehensweisen
- Kontexterhaltung: Füge projektspezifischen Kontext in jeden Befehl ein
- Schnellzugriff: Fuzzy-Suche und Autovervollständigung für sofortige Befehlserkennung
Integrierte Befehle
Bob enthält mehrere integrierte Befehle, die Kernfunktionalität bereitstellen:
/init
Initialisiere ein neues Projekt oder einen Workspace mit Bob. Dieser Befehl hilft dabei, die notwendige Konfiguration und Struktur für die Arbeit mit Bob in deinem Projekt einzurichten.
/review
Überprüfe Code-Änderungen mit umfassender Analyse. Dieser Befehl kann auf mehrere Arten verwendet werden:
/review– Überprüfe lokale nicht committete Änderungen in deinem Arbeitsverzeichnis/review <branch>– Vergleiche einen Branch mit deinem aktuellen Branch (HEAD)/review #<issue-number> --issue-coverage– Validiere lokale Änderungen gegenüber einem GitHub-Issue/review <issue-url> --issue-coverage– Validiere lokale Änderungen gegenüber einer GitHub-Issue-URL
Der Review-Befehl führt eine gründliche Code-Analyse durch, einschließlich Bug-Erkennung, Sicherheitsprüfungen, Performance-Problemen und Stilkonsistenz.
/create-pr
Erstelle einen Pull Request mit KI-generierter Beschreibung. Dieser Befehl analysiert deine Änderungen und generiert eine umfassende PR-Beschreibung basierend auf dem Diff zwischen Branches.
Benutzerdefinierte Befehle erstellen
Benutzerdefinierte Befehle erweitern die Funktionalität von Bob, indem Markdown-Dateien in bestimmte Verzeichnisse hinzugefügt werden:
- Projektspezifisch:
.bob/commands/im Workspace-Stammverzeichnis - Global:
~/.bob/commands/in deinem Home-Verzeichnis
Der Dateiname wird zum Befehlsnamen. Zum Beispiel:
review.md→/reviewtest-api.md→/test-apideploy-check.md→/deploy-check
Verarbeitung von Befehlsnamen
Beim Erstellen von Befehlen über die Benutzeroberfläche werden Befehlsnamen automatisch verarbeitet:
- In Kleinbuchstaben konvertiert
- Leerzeichen durch Bindestriche ersetzt
- Sonderzeichen entfernt
- Führende/abschließende Bindestriche entfernt
Beispiel: „Mein Toller Befehl!" wird zu mein-toller-befehl
Einfaches Befehlsformat
Erstelle einen einfachen Befehl, indem du eine Markdown-Datei hinzufügst:
Help me review this code for security issues and suggest improvements.Erweiterter Befehl mit Frontmatter
Füge Metadaten mit Frontmatter für erweiterte Funktionalität hinzu:
---
description: Create a new API endpoint
argument-hint: <endpoint-name> <http-method>
---
Create a new API endpoint called $1 that handles $2 requests.
Include proper error handling and documentation.Frontmatter-Felder
description: Erscheint im Befehlsmenü, um Benutzern den Zweck des Befehls zu verdeutlichenargument-hint: Gibt einen Hinweis auf erwartete Argumente bei der Verwendung des Befehls
Benutzeroberfläche zur Befehlsverwaltung
Bob bietet eine dedizierte Benutzeroberfläche zur Verwaltung benutzerdefinierter Befehle.
Klicke auf das Befehls-Symbol im Bob-Panel, um den Befehlsmanager zu öffnen.
Einen neuen Befehl erstellen
- Gib deinen Befehlsnamen in das Eingabefeld ein (z. B. „Beispiel-Befehlsname")
- Klicke auf die Schaltfläche +, um den Befehl zu erstellen
- Eine neue Datei wird automatisch erstellt und geöffnet (z. B.
beispiel-befehlsname.md)
Slash-Befehle verwenden
Tippe / im Chat, um ein einheitliches Menü mit beiden Befehlstypen anzuzeigen. Das Menü zeigt sowohl benutzerdefinierte Workflow-Befehle als auch Modusumschaltbefehle in der gleichen Oberfläche.
- Einheitliches Menü: Sowohl benutzerdefinierte Befehle als auch Modusumschaltbefehle erscheinen gemeinsam
- Autovervollständigung: Beginne mit der Eingabe, um Befehle zu filtern (z. B. zeigt
/bspbeispiel-befehlsname) - Fuzzy-Suche: Finde Befehle auch bei Teilübereinstimmungen
- Beschreibungsvorschau: Sieh Befehlsbeschreibungen im Menü
- Visuelle Indikatoren: Modebefehle werden mit speziellen Symbolen von benutzerdefinierten Befehlen unterschieden
Argument-Hinweise
Argument-Hinweise bieten sofortige Hilfe für Slash-Befehle und zeigen dir, welche Art von Information du angeben musst, wenn ein Befehl zusätzliche Eingaben erwartet.
Wenn du / tippst, um das Befehlsmenü aufzurufen, zeigen Befehle, die Argumente erwarten, einen hellgrauen Hinweis daneben an. Dieser Hinweis teilt dir mit, welche Art von Argument der Befehl erwartet.
Zum Beispiel:
/mode <mode_slug>– Der Hinweis<mode_slug>gibt an, dass du einen Modusnamen wiecodeoderdebugangeben solltest/api-endpoint <endpoint-name> <http-method>– Zeigt, dass du sowohl einen Endpunktnamen als auch eine HTTP-Methode benötigst
Nach der Auswahl des Befehls wird er gefolgt von einem Leerzeichen in das Chat-Eingabefeld eingefügt. Der Hinweis wird nicht eingefügt; er ist nur ein visueller Leitfaden, der dir hilft zu wissen, was du als Nächstes eingeben musst. Du musst das Argument dann manuell nach dem Befehl eintippen.
Argument-Hinweise zu benutzerdefinierten Befehlen hinzufügen
Du kannst Argument-Hinweise zu deinen benutzerdefinierten Befehlen über das argument-hint-Feld im Frontmatter hinzufügen:
---
description: Create a new API endpoint
argument-hint: <endpoint-name> <http-method>
---
Create a new API endpoint called $1 that handles $2 requests.Dies wird im Befehlsmenü als /api-endpoint <endpoint-name> <http-method> angezeigt.
Best Practices für Argument-Hinweise
- Sei spezifisch: Verwende beschreibende Platzhalter wie
<file-path>statt generischer wie<arg> - Mehrere Argumente anzeigen: Wenn dein Befehl mehrere Eingaben benötigt, zeige sie alle an:
<source><destination> - Konsistentes Format verwenden: Wickle Platzhalter immer in spitze Klammern ein:
<platzhalter> - Halte es prägnant: Hinweise sollten kurz und klar sein
Häufige Fragen
- „Was passiert, wenn ich das Argument nicht angebe?" Der Befehl funktioniert möglicherweise nicht wie erwartet oder fordert dich zur Eingabe weiterer Informationen auf. Der Hinweis soll dir helfen, es beim ersten Mal richtig zu machen.
- „Haben alle Befehle Hinweise?" Nein, nur Befehle, die für die Aufnahme von Argumenten ausgelegt sind, haben Hinweise. Befehle, die ohne zusätzliche Eingaben funktionieren, zeigen keine Hinweise an.
- „Kann ich einen Befehl verwenden, ohne den Hinweis zu ersetzen?" Der Hinweistext (wie
<mode_slug>) muss durch tatsächliche Werte ersetzt werden. Das Belassen des Hinweistexts führt wahrscheinlich dazu, dass der Befehl fehlschlägt oder sich unerwartet verhält.
Best Practices
Befehlsbenennung
- Verwende beschreibende, handlungsorientierte Namen
- Halte Namen prägnant, aber klar
- Verwende Bindestriche für mehrere Wörter
- Vermeide generische Namen wie
helpodertest - Hinweis: Namen werden automatisch slugifiziert (Kleinbuchstaben, Sonderzeichen entfernt)
- Die
.md-Erweiterung wird bei Bedarf automatisch hinzugefügt/entfernt
Befehlsinhalt
- Beginne mit einer klaren Direktive
- Verwende strukturierte Formate (Listen, Abschnitte)
- Füge spezifische Anforderungen ein
- Referenziere Projektkonventionen
- Halte Befehle auf eine einzelne Aufgabe fokussiert
Organisation
- Gruppiere verwandte Befehle in Unterverzeichnissen
- Verwende konsistente Benennungsmuster
- Dokumentiere komplexe Befehle
- Versioniere deine Befehle
- Teile Team-Befehle im Projekt-Repository
Fehlerbehebung
Befehle erscheinen nicht
- Überprüfe den Dateispeicherort: Stelle sicher, dass benutzerdefinierte Befehlsdateien in
.bob/commands/oder~/.bob/commands/liegen - Überprüfe die Dateiendung: Benutzerdefinierte Befehle müssen
.md-Dateien sein
Befehl nicht gefunden
Wenn ein Slash-Befehl nicht gefunden wird, sieht das LLM folgendes:
The slash command '/unknown-command' was not found. Please check the command name and try again.Befehlskonflikte
- Benutzerdefinierte Projektbefehle überschreiben globale benutzerdefinierte Befehle mit demselben Namen
- Verwende eindeutige Namen, um Konflikte zu vermeiden
- Beim Erstellen doppelter Namen über die Benutzeroberfläche werden Zahlen angehängt (z. B.
neuer-befehl-1,neuer-befehl-2)
Über Modebefehle
Das Slash-Menü enthält Modusumschaltbefehle (wie /code, /ask), die den Betriebsmodus der KI grundlegend ändern – sie fügen nicht nur Text ein, sondern wechseln den gesamten KI-Kontext. Benutzerdefinierte Modi, die du erstellst, erscheinen ebenfalls als Slash-Befehle (z. B. wird ein Modus mit dem Slug reviewer zu /reviewer). Diese Modebefehle können nicht durch benutzerdefinierte Workflow-Befehle überschrieben werden.
Mehr dazu unter Modi und Benutzerdefinierte Modi.
Bob-Tipps
Bob-Tipps erkennt Codequalitätsprobleme in Echtzeit und liefert KI-gestützte Refactoring-Vorschläge für komplexe Funktionen. Reduziere technische Schulden direkt beim Coden.
Code-Aktionen
Greife in Bob IDE direkt über Glühbirnen-Symbole und Kontextmenüs auf Bobs KI-gestützte Code-Aktionen für schnelle Korrekturen, Refactorings und Code-Erklärungen zu.