Auto-approvazione
Le azioni di auto-approvazione in Bob Shell eliminano i prompt di approvazione ripetitivi ma aumentano i rischi per la sicurezza. Scopri le pratiche di configurazione sicura per i permessi di lettura, scrittura ed esecuzione.
Le impostazioni di auto-approvazione bypassano i prompt di conferma, dando a Bob accesso diretto al tuo sistema. Questo può causare perdita di dati, corruzione di file o peggio. L'esecuzione di comandi è particolarmente pericolosa, in quanto può potenzialmente eseguire operazioni dannose che potrebbero danneggiare il sistema o compromettere la sicurezza. Abilita l'auto-approvazione solo per le azioni di cui ti fidi completamente.
Come funzionano le approvazioni
Prima che Bob esegua uno strumento, nel terminale appare un prompt di approvazione. I prompt appaiono uno alla volta in modo da avere una visione chiara e deliberata di ogni azione prima che venga eseguita.
Comandi modificabili: Quando Bob propone un comando del terminale, puoi modificare il comando direttamente nel prompt di approvazione prima di approvarlo. Questo ti consente di apportare aggiustamenti precisi senza annullare il task e riformularlo.
Approvazioni a livello di task: Oltre alle impostazioni globali di auto-approvazione, puoi configurare le approvazioni per gruppi di strumenti per task. Le override a livello di task si applicano solo al task corrente.
Configurare l'auto-approvazione
L'auto-approvazione è controllata dalla chiave approval in ~/.bob/settings/settings.json. Aggiungi gli ID dei gruppi di permessi che vuoi auto-approvare all'array allowed_permissions:
"approval": {
"allowed_permissions": ["read", "todo", "subtask"]
}Puoi anche attivare/disattivare l'auto-approvazione in modo interattivo durante una sessione Shell usando il comando slash /permissions.
Per lo schema JSON completo — incluse le allowlist e denylist per comando e le opzioni per gruppo — consulta Impostazioni di approvazione.
Azioni disponibili
Quando auto-approvi un'azione, Bob completa la rispettiva azione senza chiedere il permesso.
| Azione | Descrizione | Livello di rischio |
|---|---|---|
| Lettura | Visualizza i tuoi file e il contenuto delle directory | Medio |
| Modifica | Crea, modifica e salva file nella tua directory | Alto |
| Esecuzione | Esegui comandi nel tuo terminale | Alto |
| MCP | Usa i server MCP che hai configurato | Medio-Alto |
| Skill | Attiva gli skill che hai definito | Medio |
| Todo | Aggiorna la lista todo | Basso |
| Subtask | Crea e completa sub-task | Basso |
| Subagent | Avvia subagent per gestire task focalizzati | Basso |
| Mode | Cambia modalità per completare un task | Basso |
Quando usare l'auto-approvazione
L'auto-approvazione è più utile in questi scenari:
- Task di sviluppo ripetitivi: Quando ti fidi delle azioni di Bob, come la generazione di codice di base.
- Operazioni in batch: Quando hai bisogno di elaborare più file senza interruzioni.
- Sessioni di coding esplorativo: Quando vuoi mantenere il flusso senza prompt costanti.
- Ambienti di sviluppo locale: Dove i rischi di sicurezza sono contenuti.
Comprendere le azioni
Ogni azione controlla un flusso di lavoro specifico che Bob può completare.
Lettura
Bob accede e legge i file nel tuo progetto senza chiedere il permesso.
Questo include la visualizzazione dei contenuti dei file, l'elenco delle strutture delle directory e la ricerca nel tuo codebase. Questo permesso riguarda la raccolta di informazioni piuttosto che apportare modifiche al tuo sistema.
Modifica
Bob crea, modifica ed elimina file senza chiedere il permesso.
Bob può applicare modifiche al codice, eseguire il refactoring del codice esistente e gestire automaticamente la struttura dei file. Questo modifica direttamente il tuo codebase e comporta un rischio elevato.
Esecuzione
Bob può eseguire automaticamente comandi del terminale senza chiedere il permesso. Questo include l'esecuzione di script di build, package manager e altri strumenti da riga di comando.
I comandi possono eseguire operazioni a livello di sistema e potenzialmente avviare processi dannosi. Questa azione comporta un rischio elevato.
MCP
Bob può usare i server Model Context Protocol (MCP) configurati senza chiedere il permesso.
I server MCP forniscono strumenti e risorse aggiuntivi che estendono le capacità di Bob. Il livello di rischio dipende da ciò a cui i server MCP specifici possono accedere e modificare.
Skill
Bob può attivare automaticamente gli skill che hai definito senza chiedere il permesso.
Gli skill sono set di istruzioni riutilizzabili che insegnano a Bob flussi di lavoro e task specializzati. Quando abilitato, Bob carica e segue le istruzioni dello skill in base alla tua richiesta e alla descrizione dello skill. Il livello di rischio dipende dalle azioni che le istruzioni dello skill dirigono Bob a eseguire, ma gli skill operano entro i vincoli degli strumenti esistenti di Bob.
Per ulteriori informazioni, consulta Skills.
Todo
Bob può aggiornare automaticamente la lista todo senza chiedere il permesso.
Questo consente a Bob di tenere traccia dei progressi e gestire il completamento dei task man mano che il lavoro avanza. Questo permesso riguarda la gestione dei task piuttosto che l'accesso al sistema.
Subtask
I sub-task sono istanze di task separate che Bob crea per suddividere il lavoro complesso in parti gestibili. Bob può creare e completare automaticamente questi sub-task senza chiedere conferma.
Questo permesso riguarda l'organizzazione del flusso di lavoro piuttosto che l'accesso al sistema.
Subagent
Bob può avviare automaticamente subagent per gestire task focalizzati e autonomi senza chiedere il permesso.
I subagent vengono eseguiti nel loro contesto isolato e restituiscono un riepilogo al termine. Questo permesso riguarda la delega del flusso di lavoro piuttosto che l'accesso diretto al sistema.
Per ulteriori informazioni, consulta Subagent.
Mode
Bob può cambiare automaticamente tra diverse modalità in base ai requisiti del task.
Questa azione riguarda l'organizzazione del flusso di lavoro e non influisce sull'accesso al sistema.
Best practice per la sicurezza
Segui queste linee guida per usare le azioni di auto-approvazione in modo sicuro:
- Inizia in modo restrittivo: Inizia con permessi minimi e aggiungine altri solo quando necessario.
- Usa impostazioni specifiche per il progetto: Personalizza le impostazioni di auto-approvazione per ogni progetto in base alla tolleranza al rischio.
- Disabilita quando non serve: Disattiva l'auto-approvazione quando lavori con codice sensibile o sistemi di produzione.
- Esamina regolarmente le modifiche: Controlla periodicamente le azioni che ha intrapreso Bob, soprattutto le modifiche ai file.
- Non auto-approvare mai in produzione: Limita le impostazioni di auto-approvazione solo agli ambienti di sviluppo.