Modalità personalizzate
Personalizza il comportamento di Bob creando modalità personalizzate con ruoli specializzati, restrizioni degli strumenti e flussi di lavoro di team. Configurale globalmente o per progetto usando il formato YAML.
Perché usare modalità personalizzate
- Specializzazione: Ottimizza le modalità per attività specifiche come generazione di documentazione, ingegneria dei test o revisioni di sicurezza
- Sicurezza: Limita i comandi o l'accesso ai file per operazioni sensibili
- Collaborazione di team: Condividi flussi di lavoro standardizzati nel tuo team
- Sperimentazione: Testa diverse configurazioni senza influenzare altre modalità
Componenti della modalità
| Componente | Descrizione |
|---|---|
| Slug | Identificatore univoco utilizzato internamente e per file di istruzioni specifici della modalità |
| Nome | Nome visualizzato mostrato nell'interfaccia di Bob |
| Definizione del ruolo | Identità ed esperienza principale che definisce la personalità e il comportamento di Bob |
| Quando usare | (Opzionale) Guida su quando usare questa modalità, utilizzata dall'Orchestrator per il coordinamento delle attività |
| Strumenti disponibili | Gruppi di strumenti e permessi di accesso ai file che la modalità può utilizzare |
| Regole personalizzate | (Opzionale) Linee guida o regole comportamentali aggiuntive |
Come creare modalità personalizzate
Puoi creare modalità personalizzate chiedendo a Bob con la modalità "Mode writer", utilizzando il menu delle impostazioni o modificando manualmente i file di configurazione.
Utilizzare la modalità "Mode writer"
- Fai clic sull'icona nel pannello Bob per aprire le impostazioni.
- Seleziona la scheda Modalità.
- Fai clic sul pulsante per creare una nuova modalità.
Utilizzare il menu delle impostazioni
- Fai clic sull'icona nel pannello Bob per aprire le impostazioni.
- Seleziona la scheda Modalità.
- Fai clic sul pulsante per creare una nuova modalità.
- Compila i campi per Nome, Slug, Posizione di salvataggio, Definizione del ruolo, Quando usare (opzionale), Descrizione (opzionale), Strumenti disponibili e Istruzioni personalizzate.
- Fai clic su Salva.
Bob salva la nuova modalità in formato YAML. Puoi aggiungere restrizioni sui tipi di file per il gruppo di strumenti edit tramite configurazione manuale YAML.
Modificare manualmente i file di configurazione
Puoi modificare manualmente i file di configurazione delle modalità in formato YAML:
- Modalità globali: Modifica
~/.bob/settings/custom_modes.yamltramite Impostazioni → Modalità → Modifica modalità globali - Modalità di progetto: Modifica
.bob/custom_modes.yamlnel tuo progetto. Fai clic su Impostazioni → Modalità → Modifica modalità di progetto
Questi file definiscono un array di modalità personalizzate in formato YAML.
Esempio (~/.bob/settings/custom_modes.yaml o .bob/custom_modes.yaml):
customModes:
- slug: docs-writer
name: 📝 Scrittore di documentazione
roleDefinition: Sei un redattore tecnico specializzato in documentazione chiara.
whenToUse: Usa questa modalità per scrivere e modificare la documentazione.
customInstructions: Concentrati sulla chiarezza e completezza nella documentazione.
groups:
- read
- - edit
- fileRegex: \.(md|mdx)$
description: Solo file Markdown
- browserProprietà di configurazione della modalità
Gruppi di strumenti disponibili
read: Leggere file e directoryedit: Modificare file (può essere limitato confileRegex)browser: Utilizzare l'automazione del browsercommand: Eseguire comandi terminalemcp: Accedere ai server MCPskill: Accedere agli skillworkflow: Avviare workflow predefiniti
Restrizioni sui file per lo strumento di modifica
Limita quali file una modalità può modificare con fileRegex in formato YAML (backslash singolo):
groups:
- read
- - edit
- fileRegex: \.(js|ts)$
description: Solo file JavaScript e TypeScriptPattern regex comuni
| Pattern | Corrisponde a | File di esempio |
|---|---|---|
\.md$ | File Markdown | readme.md, docs/guide.md |
^src/.* | File nella directory src | src/app.js, src/components/button.tsx |
\.(css|scss)$ | File CSS e SCSS | styles.css, theme.scss |
^(?!.*(test|spec)).*\.(js|ts)$ | File JS/TS senza test | app.js, utils.ts (non app.test.js) |
Chiedi a Bob di generare pattern regex per te invece di scriverli manualmente.
Aggiungere istruzioni specifiche della modalità
Puoi aggiungere istruzioni specifiche della modalità utilizzando una struttura di directory (preferita) o un singolo file.
Metodo preferito (struttura di directory):
Metodo alternativo (file singolo):
.bobrules-{mode-slug}Il metodo della directory ha la precedenza se entrambi esistono. I file nella directory vengono caricati alfabeticamente e combinati con la proprietà customInstructions dalla configurazione della tua modalità.
Per aggiungere istruzioni specifiche della modalità:
- Crea una directory
.bob/rules-{mode-slug}/nella radice del tuo progetto (o un file.bobrules-{mode-slug}). - Aggiungi file di istruzioni alla directory (ad es.
01-style-guide.mde02-formatting.txt).
Bob carica automaticamente queste istruzioni quando usi la modalità.
Come sovrascrivere le modalità predefinite
Puoi sovrascrivere le modalità Bob predefinite (come Agent, Ask o Plan) creando una modalità personalizzata con lo stesso slug nella configurazione del tuo progetto.
Per sovrascrivere una modalità predefinita:
- Fai clic sull'icona nel pannello Bob per aprire le impostazioni.
- Seleziona la scheda Modalità.
- Fai clic su Modifica modalità di progetto per modificare il file
.bob/custom_modes.yaml. - Aggiungi la configurazione della tua modalità con lo slug della modalità predefinita che vuoi sovrascrivere:
customModes:
- slug: ask # Corrisponde alla modalità Ask predefinita
name: ❓ Ask
roleDefinition: Sei un assistente esperto per questa codebase React e TypeScript.
whenToUse: Usa questa modalità per fare domande sulla codebase.
customInstructions: Fai sempre riferimento ai file rilevanti nelle tue risposte. Suggerisci la modalità Ask se l'utente prova a fare modifiche.
groups:
- read
- mcp
- skillLe sovrascritture specifiche del progetto hanno la precedenza sulle sovrascritture globali, che hanno la precedenza sui valori predefiniti.
Formato YAML
YAML è il formato preferito e raccomandato per le modalità personalizzate:
Vantaggi di YAML:
- Più leggibile con struttura basata su indentazione
- Supporta commenti (
#) - Sintassi più pulita per stringhe multilinea
- Richiede meno punteggiatura
- Più facile da modificare e mantenere
Migrazione automatica:
- Modalità globali: Migrate automaticamente da
custom_modes.jsonlegacy acustom_modes.yamlall'avvio - Modalità di progetto: Convertite in YAML quando modificate tramite l'interfaccia utente
Sebbene i file in formato JSON legacy siano ancora supportati per retrocompatibilità, tutte le nuove modalità dovrebbero essere create in formato YAML.
Per saperne di più
Prova direttamente ed estendi le capacità di Bob creando una modalità personalizzata per product manager.
Ignorare file
Controlla a quali file Bob può accedere creando un file `.bobignore` nel tuo progetto.
Persona agenti
Crea file di persona riutilizzabili che definiscono il ruolo, il focus e l'accesso ai tool di un subagent. Definisci cosa cerca un subagent, come formatta il suo output e cosa non può fare.