Il flag ha due raggi d'azione e quasi tutto ciò che viene scritto al riguardo ne copre solo uno. --dangerously-skip-permissions impedisce a Claude Code di chiedere conferma prima di modificare un file o eseguire un comando. L'esposizione evidente è il tuo filesystem. Quella di cui nessuno scrive è la tua fattura: un agente che non si ferma mai a chiedere non smette nemmeno di spendere, e i fallimenti agentici sono loop.
Entrambi possono essere contenuti e nessuno dei due richiede di smettere di usare il flag. Ecco cosa fa realmente, seguito dai tre contenimenti che richiedono circa un minuto ciascuno.
Cosa fa
Normalmente Claude Code si mette in pausa prima di un'azione significativa e attende l'approvazione. Il flag disattiva quella pausa per l'intera sessione. Non concede nuove capacità al modello e non cambia il modello — rimuove il passaggio di revisione tra un piano e la sua esecuzione.
Per questo l'inquadramento onesto non è “questo flag è pericoloso?”, ma cosa può raggiungere questa sessione. Lo stesso comando è irrilevante in un checkout temporaneo e realmente sconsiderato in un repository con credenziali di produzione nell'ambiente. Il flag è costante; l'esposizione è ciò che controlli.
Contenimento 1 — dagli un checkout dedicato
È il più economico e di solito è sufficiente. Un git worktree è una directory di lavoro completa sul proprio branch, quindi una modifica non revisionata finisce in un luogo che puoi eliminare invece che sopra il tuo lavoro.
# Containment that costs one command: give the agent its own checkout.
# A worktree is a real working directory on its own branch, so a runaway
# edit is contained to a branch you can delete rather than to your repo.
git worktree add -b agent/task-123 ../repo-agent-123
cd ../repo-agent-123
claude --dangerously-skip-permissions
# When it is done, review the branch like any other, then:
git worktree remove ../repo-agent-123La revisione avviene comunque — semplicemente una volta sola, su un branch, invece di quaranta volte, tramite una richiesta di conferma. In genere è un uso migliore della tua attenzione rispetto all'approvazione delle singole scritture di file, che è il vero argomento a favore del flag, non l'impazienza.
Contenimento 2 — dagli una credenziale dedicata
Qualunque cosa si trovi nell'ambiente di quella shell è raggiungibile dall'agente. La soluzione non è prestare attenzione; è metterci meno informazioni. Crea una credenziale per l'agente anziché riutilizzare quella che hai ovunque, così fermare l'agente richiede una sola revoca e non la rotazione di tutto ciò che possiedi.
# A key per agent, not a key per human. Revoking one key stops one
# agent; revoking the key you use everywhere stops your whole day.
export ANTHROPIC_BASE_URL=https://api.kunavo.com
export ANTHROPIC_AUTH_TOKEN=sk-kn-... # created for this agent only
export ANTHROPIC_MODEL=claude-sonnet-5
export ANTHROPIC_DEFAULT_OPUS_MODEL=claude-opus-5-5
export ANTHROPIC_DEFAULT_SONNET_MODEL=claude-sonnet-5
export ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-haiku-4-5
claude --dangerously-skip-permissionsMantieni le righe dei modelli: il modello predefinito integrato di Claude Code e il suo alias opus puntano entrambi all'Opus più recente e, se Kunavo non serve ancora quel modello, un agente non supervisionato fallisce la prima richiesta con un 404. L'alias sonnet richiede Sonnet 5.5, che Kunavo non serve, quindi senza la riga ANTHROPIC_DEFAULT_SONNET_MODEL qualsiasi subagente impostato su model: sonnet, /model sonnet e la fase di esecuzione di opusplan restituiscono 404 allo stesso modo. L'alias opus è fissato su Opus 5.5 (claude-opus-5-5), che richiede Claude Code v2.1.280 o successivo — esegui prima claude update se la tua versione è precedente. In Kunavo una chiave può essere revocata autonomamente: la revoca viene verificata a ogni richiesta autenticata, quindi una chiave revocata smette di funzionare immediatamente, non al termine del periodo di fatturazione. Una chiave può inoltre avere un proprio limite mensile di spesa e una lista di indirizzi IP autorizzati; è questo che trasforma «una chiave per agente» da semplice ordine a vero confine: la chiave dell'agente può avere un limite e modelli fissati senza modificare la chiave che usi manualmente. Creare una seconda chiave non costa nulla. I dettagli della configurazione sono disponibili in come ottenere una chiave API per Claude Code.
Contenimento 3 — limita la spesa, non solo il filesystem
Questo è l'asse che il resto di Internet omette. Considera cosa fa un agente non supervisionato quando fallisce invece di quando funziona: riprova. Ogni retry è un round trip fatturato che non ha prodotto nulla e il contesto di un agente di programmazione è ampio, quindi i round trip non sono economici. Un'attività di venti passaggi è normale; un loop bloccato no.
Il limite dipende interamente dal modo in cui vieni fatturato. Un abbonamento lo limita con una finestra di utilizzo — un tetto reale, anche se si manifesta come un blocco anziché come un avviso. Una carta registrata non ha alcun tetto naturale. Su Kunavo ce ne sono due, e il secondo è quello che vale la pena impostare prima di un'esecuzione non supervisionata: la fatturazione riduce un saldo prepagato, quindi una richiesta non può mai prelevare più di quanto contiene il saldo, e una chiave può avere un proprio limite mensile di spesa. Il limite viene verificato prima dell'esecuzione della richiesta, quindi la spesa eccessiva non si verifica invece di essere rilevata dopo; superato il limite, la chiamata viene rifiutata con un messaggio che identifica la chiave anziché il portafoglio, e si reimposta all'inizio del mese solare successivo. Impostane uno sulla chiave in possesso dell'agente e il caso peggiore non sarà più “il saldo”, ma un numero scelto da te.
Il calcolo di quanto dovrebbe costare un'esecuzione — così puoi distinguere una sessione normale da un loop — si trova nella pagina dei prezzi di Claude Code, mentre i limiti di Claude Pro e Max tratta il lato abbonamento della stessa questione.
Quando usarlo e quando no
| Situazione | Ragionevole? |
|---|---|
| Worktree usa e getta, chiave limitata, nessuna credenziale di produzione nella shell | Sì — è questo lo scopo del flag |
| Container o VM che puoi eliminare | Sì, e ancora meglio |
| Una lunga esecuzione non supervisionata che revisionerai come un unico diff | Sì, con un saldo dimensionato per essa |
| Il tuo checkout principale con modifiche non sottoposte a commit | No — esegui prima il commit o lo stash, poi usa un worktree |
| Una shell che contiene credenziali cloud o di produzione | No |
| Una macchina che può raggiungere direttamente la produzione | No |
Lo schema della tabella è che ogni “no” riguarda ciò che può essere raggiunto e nessuno riguarda il flag. Limita ciò che può essere raggiunto e il flag smette di essere la variabile interessante — che è il punto.
Domande frequenti
Cosa fa --dangerously-skip-permissions in Claude Code?
Impedisce a Claude Code di chiedere l'approvazione prima di ogni azione, quindi le modifiche ai file e i comandi shell vengono eseguiti senza una richiesta di conferma. Il nome è accurato, non drammatico: la richiesta di autorizzazione è l'unico elemento tra un piano elaborato dal modello e la sua esecuzione, e il flag la rimuove per l'intera sessione. Non cambia ciò che il modello è in grado di fare — cambia solo se una persona vede ogni passaggio prima che avvenga.
È sicuro usare --dangerously-skip-permissions?
È sicuro in proporzione a ciò che la sessione può raggiungere. Il flag non rende il modello più capace, rimuove il passaggio di revisione, quindi la vera domanda è cosa può toccare un errore non revisionato: in quale directory l'agente viene avviato, quali credenziali sono presenti nell'ambiente e se la macchina ha accesso alla produzione. In un checkout usa e getta con una chiave limitata, un errore non revisionato è un branch che puoi eliminare. Nel repository principale con le credenziali di produzione esportate, non lo è. Stesso flag, esposizione completamente diversa.
Come eseguo Claude Code senza richieste di autorizzazione in modo sicuro?
Limita le tre cose che può raggiungere, in quest'ordine. Dagli un checkout dedicato — un git worktree su un branch proprio richiede un solo comando e trasforma una modifica dannosa in un branch eliminabile. Dagli una credenziale dedicata anziché la chiave che usi ovunque, così revocarla ferma un solo agente invece di bloccarti l'intera giornata. E non esportare nella shell che esegue l'agente credenziali che non ha motivo di vedere, perché tutto ciò che si trova in quell'ambiente è raggiungibile. Nulla di tutto questo richiede un container, anche se un container è certamente migliore, se ne hai uno.
Un agente autonomo può generare una fattura API senza limite?
Questo è l'asse che la maggior parte delle discussioni sul flag ignora. Un agente che non si ferma mai a chiedere non smette nemmeno di spendere, e i loop agentici falliscono nella direzione costosa — un loop di retry consiste in molti round trip fatturati senza alcun risultato. Su Kunavo ci sono due limiti. La fatturazione riduce un saldo prepagato invece di addebitare una carta, quindi il saldo è un tetto rigido. Inoltre, una chiave può avere un proprio limite mensile di spesa, verificato prima dell'esecuzione della richiesta: superato il limite, la chiamata viene rifiutata con un messaggio che identifica la chiave anziché il portafoglio, e il limite si reimposta all'inizio del mese solare successivo. Impostane uno sulla chiave che consegni all'agente e il caso peggiore sarà un numero scelto da te.
Qual è la differenza tra saltare le autorizzazioni e una modalità di autorizzazione?
Le modalità di autorizzazione di Claude Code consentono di decidere in anticipo quali categorie di azioni richiedono approvazione, mantenendo una persona nel ciclo per quelle rischiose e fuori dal ciclo per quelle di routine. Il flag è la versione indiscriminata della stessa idea, con tutto impostato su allow. Per le esecuzioni non supervisionate il flag è spesso ciò che serve; per il lavoro interattivo, di solito è preferibile una modalità, perché l'attrito rimosso dal flag era quello che intercettava gli errori reali.
Il flag funziona allo stesso modo attraverso un gateway?
Sì — il flag è interamente lato client. Stabilisce se Claude Code deve chiederti conferma prima di agire e non ha nulla a che fare con l'endpoint che serve il modello. Impostare ANTHROPIC_BASE_URL su un gateway cambia la destinazione delle richieste e il loro costo, non ciò che l'agente è autorizzato a fare localmente. L'unico elemento che cambia con un endpoint è il secondo asse precedente: come viene limitata la spesa.