Vai al contenuto principale

Documentation Index

Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

Use this file to discover all available pages before exploring further.

Quando Claude vuole modificare un file, eseguire un comando shell o effettuare una richiesta di rete, si ferma e ti chiede di approvare l’azione. Le modalità di autorizzazione controllano con quale frequenza questa pausa si verifica. La modalità che scegli modella il flusso di una sessione: la modalità predefinita ti consente di revisionare ogni azione mentre arriva, mentre le modalità più permissive consentono a Claude di lavorare in lunghi tratti ininterrotti e riferire quando ha finito. Scegli una maggiore supervisione per il lavoro sensibile, o meno interruzioni quando ti fidi della direzione.

Modalità disponibili

Ogni modalità fa un diverso compromesso tra comodità e supervisione. La tabella seguente mostra cosa Claude può fare senza un prompt di autorizzazione in ogni modalità.
ModalitàCosa viene eseguito senza chiedereMigliore per
defaultSolo lettureIniziare, lavoro sensibile
acceptEditsLetture, modifiche ai file e comandi filesystem comuni (mkdir, touch, mv, cp, ecc.)Iterare su codice che stai revisionando
planSolo lettureEsplorare una codebase prima di modificarla
autoTutto, con controlli di sicurezza in backgroundCompiti lunghi, ridurre l’affaticamento dei prompt
dontAskSolo strumenti pre-approvatiCI bloccato e script
bypassPermissionsTuttoSolo container e VM isolati
In ogni modalità tranne bypassPermissions, le scritture su percorsi protetti non vengono mai auto-approvate, proteggendo lo stato del repository e la configurazione di Claude da corruzione accidentale. Le modalità impostano la linea di base. Stratifica regole di autorizzazione sopra per pre-approvare o bloccare strumenti specifici in qualsiasi modalità tranne bypassPermissions, che salta completamente il livello di autorizzazione.

Cambia modalità di autorizzazione

Puoi cambiare modalità durante una sessione, all’avvio o come impostazione predefinita persistente. La modalità viene impostata attraverso questi controlli, non chiedendo a Claude in chat. Seleziona la tua interfaccia di seguito per vedere come cambiarla.
Durante una sessione: premi Shift+Tab per cicla defaultacceptEditsplan. La modalità corrente appare nella barra di stato. Non ogni modalità è nel ciclo predefinito:
  • auto: appare quando il tuo account soddisfa i requisiti della modalità auto; il ciclo verso auto mostra un prompt di consenso fino a quando non lo accetti, o seleziona No, non chiedere di nuovo per rimuovere auto dal ciclo
  • bypassPermissions: appare dopo che hai avviato con --permission-mode bypassPermissions, --dangerously-skip-permissions, o --allow-dangerously-skip-permissions; la variante --allow- aggiunge la modalità al ciclo senza attivarla
  • dontAsk: non appare mai nel ciclo; impostala con --permission-mode dontAsk
Le modalità opzionali abilitate si inseriscono dopo plan, con bypassPermissions per primo e auto per ultimo. Se hai entrambi abilitati, ciclerai attraverso bypassPermissions sulla strada verso auto.All’avvio: passa la modalità come flag.
claude --permission-mode plan
Come impostazione predefinita: imposta defaultMode in settings.
{
  "permissions": {
    "defaultMode": "acceptEdits"
  }
}
Lo stesso flag --permission-mode funziona con -p per esecuzioni non interattive.

Auto-approva le modifiche ai file con la modalità acceptEdits

La modalità acceptEdits consente a Claude di creare e modificare file nella tua directory di lavoro senza chiedere conferma. La barra di stato mostra ⏵⏵ accept edits on mentre questa modalità è attiva. Oltre alle modifiche ai file, la modalità acceptEdits auto-approva i comandi Bash filesystem comuni: mkdir, touch, rm, rmdir, mv, cp e sed. Questi comandi vengono anche auto-approvati quando prefissati con variabili di ambiente sicure come LANG=C o NO_COLOR=1, o wrapper di processo come timeout, nice o nohup. Come le modifiche ai file, l’auto-approvazione si applica solo ai percorsi all’interno della tua directory di lavoro o additionalDirectories. I percorsi al di fuori di tale ambito, le scritture su percorsi protetti e tutti gli altri comandi Bash richiedono ancora conferma. Quando lo strumento PowerShell è abilitato, la modalità acceptEdits auto-approva anche Set-Content, Add-Content, Clear-Content e Remove-Item su percorsi nell’ambito, insieme ai loro alias comuni. Le stesse regole di ambito e percorsi protetti si applicano. Utilizza acceptEdits quando vuoi revisionare le modifiche nel tuo editor o tramite git diff dopo il fatto piuttosto che approvare ogni modifica inline. Premi Shift+Tab una volta dalla modalità predefinita per entrarvi, o avvia direttamente con essa:
claude --permission-mode acceptEdits

Analizza prima di modificare con plan mode

Plan mode dice a Claude di ricercare e proporre modifiche senza farle. Claude legge file, esegue comandi shell per esplorare e scrive un piano, ma non modifica il tuo codice sorgente. I prompt di autorizzazione si applicano ancora come nella modalità predefinita. Entra in plan mode premendo Shift+Tab o prefissando un singolo prompt con /plan. Puoi anche avviare in plan mode dalla CLI:
claude --permission-mode plan
Premi Shift+Tab di nuovo per uscire da plan mode senza approvare un piano.

Rivedi e approva un piano

Quando il piano è pronto, Claude lo presenta e ti chiede come procedere. Da quel prompt puoi:
  • Approvare e avviare in modalità auto
  • Approvare e accettare le modifiche
  • Approvare e revisionare manualmente ogni modifica
  • Continuare a pianificare con feedback
  • Perfezionare con Ultraplan per la revisione basata su browser
Approvare un piano esce da plan mode e cambia la sessione alla modalità di autorizzazione che ogni opzione di approvazione descrive, quindi Claude inizia a modificare. Per pianificare di nuovo, torna a plan mode con Shift+Tab, o prefissa il tuo prossimo prompt con /plan. Premi Ctrl+G per aprire il piano proposto nel tuo editor di testo predefinito e modificarlo direttamente prima che Claude proceda. Quando showClearContextOnPlanAccept è abilitato, ogni opzione di approvazione offre anche di cancellare il contesto di pianificazione per primo. Accettare un piano nomina anche la sessione automaticamente dal contenuto del piano, a meno che tu non abbia già impostato un nome con --name o /rename.

Imposta plan mode come predefinito

Per rendere plan mode il predefinito per un progetto, imposta defaultMode in .claude/settings.json:
{
  "permissions": {
    "defaultMode": "plan"
  }
}

Elimina i prompt con auto mode

Auto mode richiede Claude Code v2.1.83 o successivo.
Auto mode consente a Claude di eseguire senza prompt di autorizzazione. Un modello classificatore separato esamina le azioni prima che vengano eseguite, bloccando qualsiasi cosa che si escalation oltre la tua richiesta, mira a infrastruttura non riconosciuta o sembra guidata da contenuto ostile che Claude ha letto. Auto mode inoltre istruisce Claude a eseguire immediatamente e minimizzare le domande di chiarimento. Per ottenere quel comportamento mantenendo i prompt di autorizzazione, imposta lo stile di output proattivo invece.
Auto mode è un’anteprima di ricerca. Riduce i prompt ma non garantisce la sicurezza. Usalo per compiti in cui ti fidi della direzione generale, non come sostituto della revisione su operazioni sensibili.
Auto mode è disponibile solo quando il tuo account soddisfa tutti questi requisiti:
  • Piano: Max, Team, Enterprise o API. Non disponibile su Pro.
  • Admin: su Team ed Enterprise, un amministratore deve abilitarlo nelle impostazioni di amministrazione di Claude Code prima che gli utenti possano attivarlo. Gli amministratori possono anche bloccarlo impostando permissions.disableAutoMode su "disable" nelle impostazioni gestite.
  • Modello: Claude Sonnet 4.6, Opus 4.6 o Opus 4.7 su piani Team, Enterprise e API; solo Claude Opus 4.7 su piani Max. Altri modelli, inclusi Haiku e modelli claude-3, non sono supportati.
  • Provider: Solo API Anthropic. Non disponibile su Bedrock, Vertex o Foundry.
Se Claude Code segnala auto mode come non disponibile, uno di questi requisiti non è soddisfatto; questo non è un’interruzione transitoria. Un messaggio separato che nomina un modello e dice che auto mode “non può determinare la sicurezza” di un’azione è un’interruzione transitoria del classificatore; vedi il riferimento degli errori.

Cosa blocca il classificatore per impostazione predefinita

Il classificatore si fida della tua directory di lavoro e dei remoti configurati del tuo repo. Tutto il resto è trattato come esterno fino a quando non configuri l’infrastruttura attendibile. Bloccato per impostazione predefinita:
  • Scaricare ed eseguire codice, come curl | bash
  • Inviare dati sensibili a endpoint esterni
  • Deploy e migrazioni di produzione
  • Eliminazione di massa su cloud storage
  • Concessione di autorizzazioni IAM o repo
  • Modifica dell’infrastruttura condivisa
  • Distruzione irreversibile di file che esistevano prima della sessione
  • Force push o push diretto a main
Consentito per impostazione predefinita:
  • Operazioni su file locali nella tua directory di lavoro
  • Installazione di dipendenze dichiarate nei tuoi file di blocco o manifesti
  • Lettura di .env e invio di credenziali al loro API corrispondente
  • Richieste HTTP di sola lettura
  • Push al ramo su cui hai iniziato o uno che Claude ha creato
Le richieste di accesso alla rete sandbox vengono instradate attraverso il classificatore piuttosto che essere consentite per impostazione predefinita. Esegui claude auto-mode defaults per vedere gli elenchi di regole completi. Se le azioni di routine vengono bloccate, un amministratore può aggiungere repo attendibili, bucket e servizi tramite l’impostazione autoMode.environment: vedi Configura auto mode.

Confini che dichiari nella conversazione

Il classificatore tratta i confini che dichiari nella conversazione come un segnale di blocco. Se dici a Claude “non fare il push” o “aspetta che io riveda prima di fare il deploy”, il classificatore blocca le azioni corrispondenti anche quando le regole predefinite le consentirebbero. Un confine rimane in vigore fino a quando non lo sollevi in un messaggio successivo. Il giudizio di Claude che una condizione è stata soddisfatta non lo solleva. I confini non vengono archiviati come regole. Il classificatore li rilegge dalla trascrizione ad ogni controllo, quindi un confine può andare perso se la compattazione del contesto rimuove il messaggio che lo ha dichiarato. Per una garanzia assoluta, aggiungi una regola di negazione.

Quando auto mode ritorna indietro

Ogni azione negata mostra una notifica e appare in /permissions sotto la scheda Recently denied, dove puoi premere r per ritentarla con un’approvazione manuale. Se il classificatore blocca un’azione 3 volte di fila o 20 volte totali, auto mode si mette in pausa e Claude Code riprende a richiedere. Approvare l’azione richiesta riprende auto mode. Queste soglie non sono configurabili. Qualsiasi azione consentita ripristina il contatore consecutivo, mentre il contatore totale persiste per la sessione e si ripristina solo quando il suo limite attiva un fallback. In modalità non interattiva con il flag -p, i blocchi ripetuti interrompono la sessione poiché non c’è un utente a cui richiedere. I blocchi ripetuti di solito significano che il classificatore manca di contesto sulla tua infrastruttura. Utilizza /feedback per segnalare falsi positivi, o fai in modo che un amministratore configuri l’infrastruttura attendibile.
Ogni azione passa attraverso un ordine di decisione fisso. Il primo step corrispondente vince:
  1. Le azioni che corrispondono alle tue regole allow o deny si risolvono immediatamente
  2. Le azioni di sola lettura e le modifiche ai file nella tua directory di lavoro vengono auto-approvate, ad eccezione delle scritture su percorsi protetti
  3. Tutto il resto va al classificatore
  4. Se il classificatore blocca, Claude riceve il motivo e tenta un’alternativa
All’ingresso in auto mode, le regole allow ampie che concedono l’esecuzione arbitraria di codice vengono eliminate:
  • Blanket Bash(*)
  • Interpreti con wildcard come Bash(python*)
  • Comandi di esecuzione del gestore di pacchetti
  • Regole Agent allow
Le regole strette come Bash(npm test) vengono trasferite. Le regole eliminate vengono ripristinate quando esci da auto mode.Il classificatore vede messaggi utente, chiamate di strumenti e il tuo contenuto CLAUDE.md. I risultati degli strumenti vengono rimossi, quindi il contenuto ostile in un file o pagina web non può manipolarlo direttamente. Una sonda lato server separata scansiona i risultati degli strumenti in arrivo e contrassegna il contenuto sospetto prima che Claude lo legga. Per ulteriori informazioni su come questi livelli lavorano insieme, vedi l’annuncio di auto mode e il deep dive tecnico.
Il classificatore controlla il lavoro dei subagent in tre punti:
  1. Prima che un subagent inizi, la descrizione del compito delegato viene valutata, quindi un compito che sembra pericoloso viene bloccato al momento dello spawn.
  2. Mentre il subagent viene eseguito, ognuna delle sue azioni passa attraverso il classificatore con le stesse regole della sessione padre, e qualsiasi permissionMode nel frontmatter del subagent viene ignorato.
  3. Quando il subagent finisce, il classificatore esamina la sua intera cronologia di azioni; se quel controllo di ritorno segnala una preoccupazione, un avviso di sicurezza viene anteposto ai risultati del subagent.
Il classificatore viene eseguito su un modello configurato dal server che è indipendente dalla tua selezione /model, quindi il cambio di modelli non cambia la disponibilità del classificatore. Le chiamate del classificatore contano verso il tuo utilizzo di token. Ogni controllo invia una parte della trascrizione più l’azione in sospeso, aggiungendo un round-trip prima dell’esecuzione. Le letture e le modifiche della directory di lavoro al di fuori dei percorsi protetti saltano il classificatore, quindi l’overhead proviene principalmente da comandi shell e operazioni di rete.

Consenti solo strumenti pre-approvati con la modalità dontAsk

La modalità dontAsk auto-nega ogni chiamata di strumento che altrimenti richiederebbe. Solo le azioni che corrispondono alle tue regole permissions.allow e ai comandi Bash di sola lettura possono essere eseguite; le regole ask esplicite vengono negate piuttosto che richiedere. Questo rende la modalità completamente non interattiva per pipeline CI o ambienti ristretti in cui pre-definisci esattamente cosa Claude può fare. Impostala all’avvio con il flag:
claude --permission-mode dontAsk

Salta tutti i controlli con la modalità bypassPermissions

La modalità bypassPermissions disabilita i prompt di autorizzazione e i controlli di sicurezza in modo che le chiamate di strumenti vengono eseguite immediatamente. A partire dalla v2.1.126 questo include le scritture su percorsi protetti, che le versioni precedenti ancora richiedevano. Le rimozioni che interessano la radice del filesystem o la directory home, come rm -rf / e rm -rf ~, ancora richiedono un prompt come protezione contro gli errori del modello. Utilizza questa modalità solo in ambienti isolati come container, VM o dev container senza accesso a Internet, dove Claude Code non può danneggiare il tuo sistema host. Non puoi entrare in bypassPermissions da una sessione che è stata avviata senza uno dei flag di abilitazione; riavvia con uno per abilitarlo:
claude --permission-mode bypassPermissions
Il flag --dangerously-skip-permissions è equivalente. Su Linux e macOS, Claude Code rifiuta di avviarsi in questa modalità quando viene eseguito come root o sotto sudo:
--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons
Il controllo viene saltato automaticamente all’interno di una sandbox riconosciuta. Per eseguire autonomamente in un container, utilizza la configurazione dev container, che esegue Claude Code come utente non root.
bypassPermissions non offre protezione contro l’iniezione di prompt o azioni indesiderate. Per i controlli di sicurezza in background senza prompt, utilizza auto mode invece. Gli amministratori possono bloccare questa modalità impostando permissions.disableBypassPermissionsMode su "disable" nelle impostazioni gestite.

Percorsi protetti

Le scritture su un piccolo insieme di percorsi non vengono mai auto-approvate, in ogni modalità eccetto bypassPermissions. Questo previene la corruzione accidentale dello stato del repository e della configurazione di Claude. In default, acceptEdits e plan queste scritture richiedono un prompt; in auto vengono instradate al classificatore; in dontAsk vengono negate; in bypassPermissions vengono consentite. Directory protette:
  • .git
  • .vscode
  • .idea
  • .husky
  • .claude, ad eccezione di .claude/commands, .claude/agents, .claude/skills e .claude/worktrees dove Claude crea routinariamente contenuto
File protetti:
  • .gitconfig, .gitmodules
  • .bashrc, .bash_profile, .zshrc, .zprofile, .profile
  • .ripgreprc
  • .mcp.json, .claude.json

Vedi anche

  • Permissions: regole allow, ask e deny; politiche gestite
  • Configure auto mode: dì al classificatore quale infrastruttura la tua organizzazione si fida
  • Hooks: logica di autorizzazione personalizzata tramite hook PreToolUse e PermissionRequest
  • Ultraplan: esegui plan mode in una sessione Claude Code sul web con revisione basata su browser
  • Security: salvaguardie e best practice
  • Sandboxing: isolamento del filesystem e della rete per i comandi Bash
  • Non-interactive mode: esegui Claude Code con il flag -p