Vai al contenuto principale

Comandi CLI

ComandoDescrizioneEsempio
claudeAvvia REPL interattivoclaude
claude "query"Avvia REPL con prompt inizialeclaude "explain this project"
claude -p "query"Esegui query tramite SDK, quindi esciclaude -p "explain this function"
cat file | claude -p "query"Elabora contenuto tramite pipecat logs.txt | claude -p "explain"
claude -cContinua la conversazione più recente nella directory correnteclaude -c
claude -c -p "query"Continua tramite SDKclaude -c -p "Check for type errors"
claude -r "<session>" "query"Riprendi sessione per ID o nomeclaude -r "auth-refactor" "Finish this PR"
claude updateAggiorna alla versione più recenteclaude update
claude mcpConfigura server Model Context Protocol (MCP)Vedi la documentazione Claude Code MCP.

Flag CLI

Personalizza il comportamento di Claude Code con questi flag della riga di comando:
FlagDescrizioneEsempio
--add-dirAggiungi directory di lavoro aggiuntive per l’accesso di Claude (convalida che ogni percorso esista come directory)claude --add-dir ../apps ../lib
--agentSpecifica un agent per la sessione corrente (sostituisce l’impostazione agent)claude --agent my-custom-agent
--agentsDefinisci subagents personalizzati dinamicamente tramite JSON (vedi sotto per il formato)claude --agents '{"reviewer":{"description":"Reviews code","prompt":"You are a code reviewer"}}'
--allow-dangerously-skip-permissionsAbilita il bypass dei permessi come opzione senza attivarlo immediatamente. Consente la composizione con --permission-mode (usare con cautela)claude --permission-mode plan --allow-dangerously-skip-permissions
--allowedToolsStrumenti che si eseguono senza richiedere il permesso. Vedi sintassi delle regole di permesso per la corrispondenza dei pattern. Per limitare quali strumenti sono disponibili, usa --tools invece"Bash(git log *)" "Bash(git diff *)" "Read"
--append-system-promptAggiungi testo personalizzato alla fine del prompt di sistema predefinito (funziona sia in modalità interattiva che in modalità stampa)claude --append-system-prompt "Always use TypeScript"
--append-system-prompt-fileCarica testo di prompt di sistema aggiuntivo da un file e aggiungi al prompt predefinito (solo modalità stampa)claude -p --append-system-prompt-file ./extra-rules.txt "query"
--betasIntestazioni beta da includere nelle richieste API (solo utenti con chiave API)claude --betas interleaved-thinking
--chromeAbilita integrazione browser Chrome per l’automazione web e i testclaude --chrome
--continue, -cCarica la conversazione più recente nella directory correnteclaude --continue
--dangerously-skip-permissionsSalta tutti i prompt di permesso (usare con cautela)claude --dangerously-skip-permissions
--debugAbilita la modalità debug con filtro categoria opzionale (ad esempio, "api,hooks" o "!statsig,!file")claude --debug "api,mcp"
--disable-slash-commandsDisabilita tutti gli skills e slash commands per questa sessioneclaude --disable-slash-commands
--disallowedToolsStrumenti che vengono rimossi dal contesto del modello e non possono essere utilizzati"Bash(git log *)" "Bash(git diff *)" "Edit"
--fallback-modelAbilita il fallback automatico al modello specificato quando il modello predefinito è sovraccarico (solo modalità stampa)claude -p --fallback-model sonnet "query"
--fork-sessionQuando riprendi, crea un nuovo ID sessione invece di riutilizzare l’originale (usa con --resume o --continue)claude --resume abc123 --fork-session
--from-prRiprendi sessioni collegate a una specifica PR GitHub. Accetta un numero di PR o un URL. Le sessioni vengono collegate automaticamente quando create tramite gh pr createclaude --from-pr 123
--ideConnettiti automaticamente all’IDE all’avvio se esattamente un IDE valido è disponibileclaude --ide
--initEsegui hook di inizializzazione e avvia la modalità interattivaclaude --init
--init-onlyEsegui hook di inizializzazione e esci (nessuna sessione interattiva)claude --init-only
--include-partial-messagesIncludi eventi di streaming parziali nell’output (richiede --print e --output-format=stream-json)claude -p --output-format stream-json --include-partial-messages "query"
--input-formatSpecifica il formato di input per la modalità stampa (opzioni: text, stream-json)claude -p --output-format json --input-format stream-json
--json-schemaOttieni output JSON convalidato corrispondente a un JSON Schema dopo che l’agent completa il suo flusso di lavoro (solo modalità stampa, vedi structured outputs)claude -p --json-schema '{"type":"object","properties":{...}}' "query"
--maintenanceEsegui hook di manutenzione e esciclaude --maintenance
--max-budget-usdImporto massimo in dollari da spendere nelle chiamate API prima di fermarsi (solo modalità stampa)claude -p --max-budget-usd 5.00 "query"
--max-turnsLimita il numero di turni agentici (solo modalità stampa). Esce con un errore quando il limite viene raggiunto. Nessun limite per impostazione predefinitaclaude -p --max-turns 3 "query"
--mcp-configCarica server MCP da file JSON o stringhe (separati da spazi)claude --mcp-config ./mcp.json
--modelImposta il modello per la sessione corrente con un alias per il modello più recente (sonnet o opus) o il nome completo di un modelloclaude --model claude-sonnet-4-5-20250929
--no-chromeDisabilita integrazione browser Chrome per questa sessioneclaude --no-chrome
--no-session-persistenceDisabilita la persistenza della sessione in modo che le sessioni non vengano salvate su disco e non possano essere riprese (solo modalità stampa)claude -p --no-session-persistence "query"
--output-formatSpecifica il formato di output per la modalità stampa (opzioni: text, json, stream-json)claude -p "query" --output-format json
--permission-modeInizia in una modalità di permesso specificataclaude --permission-mode plan
--permission-prompt-toolSpecifica uno strumento MCP per gestire i prompt di permesso in modalità non interattivaclaude -p --permission-prompt-tool mcp_auth_tool "query"
--plugin-dirCarica plugin da directory per questa sessione solo (ripetibile)claude --plugin-dir ./my-plugins
--print, -pStampa la risposta senza modalità interattiva (vedi documentazione Agent SDK per i dettagli di utilizzo programmatico)claude -p "query"
--remoteCrea una nuova sessione web su claude.ai con la descrizione dell’attività fornitaclaude --remote "Fix the login bug"
--resume, -rRiprendi una sessione specifica per ID o nome, o mostra un selettore interattivo per scegliere una sessioneclaude --resume auth-refactor
--session-idUsa uno specifico ID sessione per la conversazione (deve essere un UUID valido)claude --session-id "550e8400-e29b-41d4-a716-446655440000"
--setting-sourcesElenco separato da virgole delle fonti di impostazioni da caricare (user, project, local)claude --setting-sources user,project
--settingsPercorso di un file JSON di impostazioni o una stringa JSON da cui caricare impostazioni aggiuntiveclaude --settings ./settings.json
--strict-mcp-configUsa solo server MCP da --mcp-config, ignorando tutte le altre configurazioni MCPclaude --strict-mcp-config --mcp-config ./mcp.json
--system-promptSostituisci l’intero prompt di sistema con testo personalizzato (funziona sia in modalità interattiva che in modalità stampa)claude --system-prompt "You are a Python expert"
--system-prompt-fileCarica il prompt di sistema da un file, sostituendo il prompt predefinito (solo modalità stampa)claude -p --system-prompt-file ./custom-prompt.txt "query"
--teleportRiprendi una sessione web nel tuo terminale localeclaude --teleport
--teammate-modeImposta come i compagni di squadra del team di agent vengono visualizzati: auto (predefinito), in-process, o tmux. Vedi configurare team di agentclaude --teammate-mode in-process
--toolsLimita quali strumenti integrati Claude può utilizzare (funziona sia in modalità interattiva che in modalità stampa). Usa "" per disabilitare tutti, "default" per tutti, o nomi di strumenti come "Bash,Edit,Read"claude --tools "Bash,Edit,Read"
--verboseAbilita la registrazione dettagliata, mostra l’output completo turno per turno (utile per il debug sia in modalità stampa che interattiva)claude --verbose
--version, -vRestituisce il numero di versioneclaude -v
Il flag --output-format json è particolarmente utile per lo scripting e l’automazione, consentendoti di analizzare le risposte di Claude a livello di programmazione.

Formato del flag agents

Il flag --agents accetta un oggetto JSON che definisce uno o più subagents personalizzati. Ogni subagent richiede un nome univoco (come chiave) e un oggetto di definizione con i seguenti campi:
CampoObbligatorioDescrizione
descriptionDescrizione in linguaggio naturale di quando il subagent dovrebbe essere invocato
promptIl prompt di sistema che guida il comportamento del subagent
toolsNoArray di strumenti specifici che il subagent può utilizzare (ad esempio, ["Read", "Edit", "Bash"]). Se omesso, eredita tutti gli strumenti
modelNoAlias del modello da utilizzare: sonnet, opus, haiku, o inherit. Se omesso, per impostazione predefinita è inherit (utilizza il modello della conversazione principale)
Esempio:
claude --agents '{
  "code-reviewer": {
    "description": "Expert code reviewer. Use proactively after code changes.",
    "prompt": "You are a senior code reviewer. Focus on code quality, security, and best practices.",
    "tools": ["Read", "Grep", "Glob", "Bash"],
    "model": "sonnet"
  },
  "debugger": {
    "description": "Debugging specialist for errors and test failures.",
    "prompt": "You are an expert debugger. Analyze errors, identify root causes, and provide fixes."
  }
}'
Per ulteriori dettagli sulla creazione e l’utilizzo di subagents, vedi la documentazione dei subagents.

Flag del prompt di sistema

Claude Code fornisce quattro flag per personalizzare il prompt di sistema, ognuno con uno scopo diverso:
FlagComportamentoModalitàCaso d’uso
--system-promptSostituisce l’intero prompt predefinitoInterattiva + StampaControllo completo sul comportamento e le istruzioni di Claude
--system-prompt-fileSostituisce con il contenuto del fileSolo stampaCarica prompt da file per riproducibilità e controllo della versione
--append-system-promptAggiunge al prompt predefinitoInterattiva + StampaAggiungi istruzioni specifiche mantenendo il comportamento predefinito di Claude Code
--append-system-prompt-fileAggiunge il contenuto del file al prompt predefinitoSolo stampaCarica istruzioni aggiuntive da file mantenendo i valori predefiniti
Quando usare ognuno:
  • --system-prompt: Usa quando hai bisogno di controllo completo sul prompt di sistema di Claude. Questo rimuove tutte le istruzioni predefinite di Claude Code, dandoti una lavagna pulita.
    claude --system-prompt "You are a Python expert who only writes type-annotated code"
    
  • --system-prompt-file: Usa quando vuoi caricare un prompt personalizzato da un file, utile per la coerenza del team o per modelli di prompt controllati dalla versione.
    claude -p --system-prompt-file ./prompts/code-review.txt "Review this PR"
    
  • --append-system-prompt: Usa quando vuoi aggiungere istruzioni specifiche mantenendo intatte le capacità predefinite di Claude Code. Questa è l’opzione più sicura per la maggior parte dei casi d’uso.
    claude --append-system-prompt "Always use TypeScript and include JSDoc comments"
    
  • --append-system-prompt-file: Usa quando vuoi aggiungere istruzioni da un file mantenendo i valori predefiniti di Claude Code. Utile per aggiunte controllate dalla versione.
    claude -p --append-system-prompt-file ./prompts/style-rules.txt "Review this PR"
    
--system-prompt e --system-prompt-file si escludono a vicenda. I flag di aggiunta possono essere utilizzati insieme a uno qualsiasi dei flag di sostituzione. Per la maggior parte dei casi d’uso, --append-system-prompt o --append-system-prompt-file è consigliato poiché preservano le capacità integrate di Claude Code mentre aggiungono i tuoi requisiti personalizzati. Usa --system-prompt o --system-prompt-file solo quando hai bisogno di controllo completo sul prompt di sistema.

Vedi anche