Permessi
Controlla cosa possono fare gli agenti.
Il sistema di permessi ti permette di gestire quali azioni un agente può eseguire. Puoi configurare i permessi per consentire, richiedere approvazione o negare operazioni specifiche.
Azioni di permesso
| Azione | Comportamento |
|---|---|
allow | Esegue senza chiedere |
ask | Richiede l'approvazione dell'utente prima di eseguire |
deny | Blocca completamente l'azione |
Permessi predefiniti
| Agente | edit | bash |
|---|---|---|
| editor | allow | allow |
| plan | ask | ask |
Configurazione
Nel Markdown
Imposta i permessi nel frontmatter dell'agente:
permission:
edit: deny
bash: askPattern glob per bash
Per i comandi bash, puoi impostare permessi per singolo comando usando pattern glob:
permission:
bash:
"*": ask
"git status": allow
"git *": allow
"rm *": denyL'ultima regola corrispondente vince. Inserisci prima i pattern generali, poi quelli specifici.
Corrispondenza dei pattern
| Pattern | Corrisponde a |
|---|---|
* | Qualsiasi comando |
git * | Qualsiasi comando git con argomenti |
npm test | Esattamente npm test |
rm * | Qualsiasi comando rm |
Esempi
Agente in sola lettura
permission:
edit: deny
bash: denyL'agente può leggere i file ma non può modificare nulla né eseguire comandi.
Agente di sviluppo sicuro
permission:
edit: ask
bash:
"*": ask
"git status": allow
"git diff": allow
"npm test": allowLe modifiche e la maggior parte dei comandi richiedono approvazione, ma la lettura dello stato di git e l'esecuzione dei test sono consentiti automaticamente.
Agente con accesso completo
permission:
edit: allow
bash: allowNessuna approvazione necessaria — l'agente può fare tutto. Questa è la configurazione predefinita per l'agente editor.
Sovrascrittura tramite strumenti
Impostare uno strumento su false nella configurazione tools ha la priorità sui permessi:
tools:
edit_file: false
permission:
edit: allow # Questo viene ignorato — edit_file è disabilitatoFlusso dei permessi
- L'agente tenta di utilizzare uno strumento
- TurboDev verifica se lo strumento è disabilitato (
tools: false) - Se non è disabilitato, verifica l'azione di permesso
- Se
ask, mostra un prompt all'utente - Se
deny, restituisce un errore all'agente - Se
allow, esegue lo strumento immediatamente
Prompt utente
Quando viene attivato ask:
? Consentire edit_file?
Comando: modifica di src/app.ts
[y/n]Digita y per consentire, n per negare. La risposta dell'agente dipende dalla tua scelta.