Funzionalità

Slash commands

Crea slash commands personalizzati per automatizzare attività ripetitive, eseguire comandi integrati ed estendere le funzionalità di Bob con semplici file markdown.

Panoramica

Per iniziare, digita / nella chat per vedere tutti i comandi disponibili, oppure crea i tuoi aggiungendo un file markdown in .bob/commands/ o ~/.bob/commands/.

Vantaggi principali:

  • Automazione del workflow: Trasforma processi complessi in più fasi in singoli comandi
  • Standardizzazione del team: Condividi comandi con il tuo team per pratiche coerenti
  • Preservazione del contesto: Includi contesto specifico del progetto in ogni comando
  • Accesso rapido: Ricerca fuzzy e autocompletamento per la scoperta istantanea dei comandi

Comandi integrati

Bob include diversi comandi integrati che forniscono funzionalità di base:

/init

Inizializza un nuovo progetto o workspace con Bob. Questo comando aiuta a configurare la struttura e la configurazione necessarie per lavorare con Bob nel tuo progetto.

/review

Rivedi le modifiche al codice con un'analisi completa. Questo comando può essere usato in più modi:

  • /review – Rivedi le modifiche locali non committate nella tua directory di lavoro
  • /review <branch> – Confronta un branch con il tuo branch attuale (HEAD)
  • /review #<issue-number> --issue-coverage – Valida le modifiche locali rispetto a un issue GitHub
  • /review <issue-url> --issue-coverage – Valida le modifiche locali rispetto a un URL di issue GitHub

Il comando di revisione esegue un'analisi approfondita del codice includendo rilevamento di bug, controlli di sicurezza, problemi di performance e coerenza dello stile.

/create-pr

Crea un pull request con descrizione generata dall'IA. Questo comando analizza le tue modifiche e genera una descrizione completa del PR basata sul diff tra i branch.

Creare comandi personalizzati

I comandi personalizzati estendono le funzionalità di Bob aggiungendo file markdown in directory specifiche:

  • Specifico del progetto: .bob/commands/ nella radice del tuo workspace
  • Globale: ~/.bob/commands/ nella tua directory home

Il nome del file diventa il nome del comando. Ad esempio:

  • review.md/review
  • test-api.md/test-api
  • deploy-check.md/deploy-check

Elaborazione dei nomi dei comandi

Quando si creano comandi tramite l'interfaccia, i nomi dei comandi vengono elaborati automaticamente:

  • Convertiti in minuscolo
  • Spazi sostituiti da trattini
  • Caratteri speciali rimossi
  • Trattini iniziali/finali rimossi

Esempio: "Il Mio Comando Fantastico!" diventa il-mio-comando-fantastico

Formato base del comando

Crea un comando semplice aggiungendo un file markdown:

Help me review this code for security issues and suggest improvements.

Comando avanzato con frontmatter

Aggiungi metadati usando il frontmatter per funzionalità avanzate:

---
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.

Campi del frontmatter

  • description: Appare nel menu dei comandi per aiutare gli utenti a comprendere lo scopo del comando
  • argument-hint: Fornisce un suggerimento sugli argomenti attesi quando si usa il comando

Interfaccia di gestione dei comandi

Bob fornisce un'interfaccia dedicata per gestire i comandi personalizzati.

Fai clic sull'icona dei comandi nel pannello Bob per aprire il gestore dei comandi.

Creare un nuovo comando

  1. Digita il nome del tuo comando nel campo di input (p. es., "Nome comando di esempio")
  2. Fai clic sul pulsante + per creare il comando
  3. Un nuovo file verrà creato e aperto automaticamente (p. es., nome-comando-di-esempio.md)

Usare gli slash commands

Digita / nella chat per vedere un menu unificato contenente entrambi i tipi di comandi. Il menu mostra sia i comandi workflow personalizzati sia i comandi di cambio modo nella stessa interfaccia.

  1. Menu unificato: I comandi personalizzati e i comandi di cambio modo appaiono insieme
  2. Autocompletamento: Inizia a digitare per filtrare i comandi (p. es., /ese mostra esempio-di-comando)
  3. Ricerca fuzzy: Trova comandi anche con corrispondenze parziali
  4. Anteprima della descrizione: Vedi le descrizioni dei comandi nel menu
  5. Indicatori visivi: I comandi di modo sono distinti dai comandi personalizzati con icone speciali

Hint degli argomenti

Gli hint degli argomenti forniscono aiuto immediato per gli slash commands, mostrandoti che tipo di informazione fornire quando un comando si aspetta input aggiuntivo.

Quando digiti / per aprire il menu dei comandi, i comandi che si aspettano argomenti mostreranno un hint grigio chiaro accanto a loro. Questo hint ti indica che tipo di argomento il comando si aspetta.

Ad esempio:

  • /mode <mode_slug> – L'hint <mode_slug> indica che devi fornire un nome di modo come code o debug
  • /api-endpoint <endpoint-name> <http-method> – Mostra che hai bisogno sia di un nome endpoint sia di un metodo HTTP

Dopo aver selezionato il comando, verrà inserito nel campo di input della chat seguito da uno spazio. L'hint non viene inserito; è solo una guida visiva per aiutarti a sapere cosa digitare dopo. Devi quindi digitare manualmente l'argomento dopo il comando.

Aggiungere hint degli argomenti ai comandi personalizzati

Puoi aggiungere hint degli argomenti ai tuoi comandi personalizzati usando il campo argument-hint nel frontmatter:

---
description: Create a new API endpoint
argument-hint: <endpoint-name> <http-method>
---
Create a new API endpoint called $1 that handles $2 requests.

Questo verrà visualizzato come /api-endpoint <endpoint-name> <http-method> nel menu dei comandi.

Best practice per gli hint degli argomenti

  • Sii specifico: Usa segnaposto descrittivi come <file-path> invece di generici come <arg>
  • Mostra argomenti multipli: Se il tuo comando necessita di più input, mostrarli tutti: <source> <destination>
  • Usa un formato coerente: Avvolgi sempre i segnaposto in parentesi angolari: <segnaposto>
  • Mantienilo conciso: Gli hint devono essere brevi e chiari

Domande frequenti

  • "Cosa succede se non fornisco l'argomento?" Il comando potrebbe non funzionare come previsto, oppure potrebbe chiederti ulteriori informazioni. L'hint è lì per aiutarti a farlo correttamente la prima volta.
  • "Tutti i comandi hanno hint?" No, solo i comandi progettati per ricevere argomenti avranno hint. I comandi che funzionano senza input aggiuntivo non mostreranno hint.
  • "Posso usare un comando senza sostituire l'hint?" Il testo dell'hint (come <mode_slug>) deve essere sostituito con valori reali. Lasciare il testo dell'hint causerà probabilmente il fallimento del comando o un comportamento inaspettato.

Best practice

Denominazione dei comandi

  • Usa nomi descrittivi e orientati all'azione
  • Mantieni i nomi concisi ma chiari
  • Usa i trattini per i comandi composti da più parole
  • Evita nomi generici come help o test
  • Nota: I nomi vengono automaticamente slugificati (minuscolo, caratteri speciali rimossi)
  • L'estensione .md viene aggiunta/rimossa automaticamente se necessario

Contenuto del comando

  • Inizia con una direttiva chiara
  • Usa formati strutturati (elenchi, sezioni)
  • Includi requisiti specifici
  • Fai riferimento alle convenzioni del progetto
  • Mantieni i comandi focalizzati su una singola attività

Organizzazione

  • Raggruppa i comandi correlati in sottodirectory
  • Usa modelli di denominazione coerenti
  • Documenta i comandi complessi
  • Versiona i tuoi comandi
  • Condividi i comandi del team nel repository del progetto

Risoluzione dei problemi

I comandi non appaiono

  • Controlla la posizione del file: Assicurati che i file dei comandi personalizzati siano in .bob/commands/ o ~/.bob/commands/
  • Verifica l'estensione del file: I comandi personalizzati devono essere file .md

Comando non trovato

Quando uno slash command non viene trovato, il LLM vedrà:

The slash command '/unknown-command' was not found. Please check the command name and try again.

Conflitti tra comandi

  • I comandi personalizzati del progetto sovrascrivono i comandi personalizzati globali con lo stesso nome
  • Usa nomi univoci per evitare conflitti
  • Quando si creano nomi duplicati tramite l'interfaccia, vengono aggiunti numeri (p. es., nuovo-comando-1, nuovo-comando-2)

Informazioni sui comandi di modo

Il menu slash include comandi di cambio modo (come /code, /ask) che cambiano fondamentalmente la modalità operativa dell'IA — non si limitano a inserire testo ma cambiano l'intero contesto dell'IA. I modi personalizzati che crei appaiono anche come slash commands (p. es., un modo con slug reviewer diventa /reviewer). Questi comandi di modo non possono essere sovrascritti da comandi workflow personalizzati.

Per saperne di più, consulta Modi e Modi personalizzati.

Come valuti questo argomento?