Il ciclo agentico
Quando dai a Claude un compito, lavora attraverso tre fasi: raccogliere contesto, intraprendere azioni e verificare i risultati. Queste fasi si mescolano insieme. Claude utilizza strumenti durante tutto il processo, sia cercando file per comprendere il tuo codice, modificando per apportare cambiamenti, o eseguendo test per verificare il suo lavoro.Modelli
Claude Code utilizza i modelli Claude per comprendere il tuo codice e ragionare sui compiti. Claude può leggere codice in qualsiasi linguaggio, comprendere come i componenti si collegano e capire cosa deve cambiare per raggiungere il tuo obiettivo. Per compiti complessi, suddivide il lavoro in passaggi, li esegue e si adatta in base a quello che impara. Sono disponibili più modelli con diversi compromessi. Sonnet gestisce bene la maggior parte dei compiti di codifica. Opus fornisce un ragionamento più forte per decisioni architettoniche complesse. Cambia con/model durante una sessione o inizia con claude --model <name>.
Quando questa guida dice “Claude sceglie” o “Claude decide”, è il modello che sta facendo il ragionamento.
Strumenti
Gli strumenti sono ciò che rende Claude Code agentico. Senza strumenti, Claude può solo rispondere con testo. Con gli strumenti, Claude può agire: leggere il tuo codice, modificare file, eseguire comandi, cercare il web e interagire con servizi esterni. Ogni utilizzo di uno strumento restituisce informazioni che si alimentano nel ciclo, informando la decisione successiva di Claude. Gli strumenti integrati generalmente rientrano in cinque categorie, ognuna rappresentante un diverso tipo di agenzia.
Queste sono le capacità principali. Claude ha anche strumenti per generare subagents, farti domande e altri compiti di orchestrazione. Consulta Strumenti disponibili per Claude per l’elenco completo.
Claude sceglie quali strumenti utilizzare in base al tuo prompt e a quello che impara lungo il percorso. Quando dici “correggi i test falliti”, Claude potrebbe:
- Eseguire la suite di test per vedere cosa sta fallendo
- Leggere l’output dell’errore
- Cercare i file sorgente rilevanti
- Leggere quei file per comprendere il codice
- Modificare i file per correggere il problema
- Eseguire di nuovo i test per verificare
A cosa Claude può accedere
Quando eseguiclaude in una directory, Claude Code ottiene accesso a:
- Il tuo progetto. File nella tua directory e sottodirectory, più file altrove con la tua autorizzazione.
- Il tuo terminale. Qualsiasi comando che potresti eseguire: strumenti di build, git, gestori di pacchetti, utilità di sistema, script. Se puoi farlo dalla riga di comando, Claude può farlo anche lui.
- Il tuo stato git. Ramo corrente, modifiche non committate e cronologia dei commit recenti.
- Il tuo CLAUDE.md. Un file markdown dove memorizzi istruzioni specifiche del progetto, convenzioni e contesto che Claude dovrebbe conoscere ogni sessione. Se il tuo repository ha un AGENTS.md per altri agenti di codifica, Claude può leggerlo da solo o insieme a CLAUDE.md.
- Auto memory. Apprendimenti che Claude salva automaticamente mentre lavori, come le tue preferenze. Le prime 200 righe o 25KB di MEMORY.md, a seconda di quale viene raggiunto per primo, si caricano all’inizio di ogni sessione.
- Estensioni che configuri. Server MCP per servizi esterni, skills per flussi di lavoro, subagents per lavoro delegato e Claude in Chrome per l’interazione del browser.
Ambienti e interfacce
Il ciclo agentico, gli strumenti e le capacità sono gli stessi ovunque tu usi Claude Code. Quello che cambia è dove il codice viene eseguito e come interagisci con esso.Ambienti di esecuzione
Claude Code funziona in tre ambienti, ognuno con diversi compromessi per dove il tuo codice viene eseguito.Interfacce
Puoi accedere a Claude Code tramite il terminale, l’app desktop, estensioni IDE, claude.ai/code, Remote Control, Slack e pipeline CI/CD. L’interfaccia determina come vedi e interagisci con Claude, ma il ciclo agentico sottostante è identico. Consulta Usa Claude Code ovunque per l’elenco completo.Lavora con le sessioni
Claude Code salva la tua conversazione localmente mentre lavori. Ogni messaggio, utilizzo di strumento e risultato viene scritto in un file JSONL in testo semplice sotto~/.claude/projects/, il che consente il rewind, la ripresa e il fork delle sessioni. Prima che Claude apporta modifiche al codice, crea anche uno snapshot dei file interessati in modo da poter ripristinare se necessario. Per i percorsi, la conservazione e come cancellare questi dati, consulta dati dell’applicazione in ~/.claude.
Le sessioni sono indipendenti. Ogni nuova sessione inizia con una finestra di contesto fresca, senza la cronologia della conversazione dalle sessioni precedenti. Claude può persistere gli apprendimenti tra le sessioni utilizzando auto memory e puoi aggiungere le tue istruzioni persistenti in CLAUDE.md.
Lavora tra i rami
Ogni conversazione di Claude Code è una sessione legata alla tua directory corrente. Il picker/resume mostra sessioni dal worktree corrente per impostazione predefinita, con scorciatoie da tastiera per ampliare l’elenco ad altri worktrees o progetti. Consulta Gestisci sessioni per l’elenco completo delle scorciatoie del picker e come funziona la risoluzione dei nomi.
Claude vede i file del tuo ramo corrente. Quando cambi ramo, Claude vede i file del nuovo ramo, ma la cronologia della tua conversazione rimane la stessa. Claude ricorda quello che hai discusso anche dopo il cambio di ramo.
Poiché le sessioni sono legate alle directory, puoi eseguire sessioni Claude parallele utilizzando git worktrees, che creano directory separate per singoli rami.
Riprendi o fai il fork delle sessioni
Riprendere una sessione conclaude --continue o claude --resume la riapre con lo stesso ID di sessione e aggiunge nuovi messaggi alla conversazione esistente. Fare il fork con --fork-session o /branch copia la cronologia in un nuovo ID di sessione, lasciando l’originale invariato.
/resume, la denominazione e cosa succede quando la stessa sessione è aperta in due terminali, consulta Gestisci sessioni.
La finestra di contesto
La finestra di contesto di Claude contiene la cronologia della tua conversazione, i contenuti dei file, gli output dei comandi, CLAUDE.md, auto memory, le skills caricate e le istruzioni di sistema. Man mano che lavori, il contesto si riempie. Claude compatta automaticamente, ma le istruzioni dall’inizio della conversazione possono andare perse. Metti le regole persistenti in CLAUDE.md ed esegui/context per vedere cosa sta usando lo spazio.
Per una procedura interattiva di quello che si carica e quando, consulta Esplora la finestra di contesto.
Contesto che Claude Code aggiunge da solo
Se Claude segue una regola che non hai scritto, come aggiungere un trailerCo-Authored-By a un commit, la regola potrebbe provenire da un system reminder. Man mano che lavori, Claude Code aggiunge il suo contesto alla conversazione insieme ai tuoi messaggi:
- I tuoi file CLAUDE.md
- Le istruzioni del tuo output style
- Una nota quando un file che Claude ha letto in precedenza cambia su disco
- Le righe di attribuzione del commit e della pull request
attribution. Per rimuovere le istruzioni integrate di Claude Code per commit e pull request, imposta includeGitInstructions su false. Per gli altri switch, consulta Disattiva il contesto che il tuo agente sostituisce.
Quando il contesto si riempie
Claude Code gestisce il contesto automaticamente mentre ti avvicini al limite. Cancella prima gli output degli strumenti più vecchi, quindi riassume la conversazione se necessario. Le tue richieste e i frammenti di codice chiave vengono preservati; le istruzioni dettagliate dall’inizio della conversazione possono andare perse. Metti le regole persistenti in CLAUDE.md piuttosto che fare affidamento sulla cronologia della conversazione. Per controllare cosa viene preservato durante la compattazione, aggiungi una sezione “Compact Instructions” a CLAUDE.md o esegui/compact con un focus (come /compact focus on the API changes).
Se un singolo file o output di strumento è così grande che il contesto si riempie immediatamente dopo ogni riassunto, Claude Code smette di compattare automaticamente dopo alcuni tentativi e mostra un errore invece di fare un ciclo. Consulta Auto-compaction stops with a thrashing error per i passaggi di recupero.
Esegui /context per vedere cosa sta usando lo spazio. Le definizioni degli strumenti MCP vengono differite per impostazione predefinita e caricate su richiesta tramite ricerca degli strumenti, quindi solo i nomi degli strumenti e le istruzioni del server consumano contesto fino a quando Claude utilizza uno strumento specifico.
Gestisci il contesto con skills e subagents
Oltre alla compattazione, puoi utilizzare altre funzionalità per controllare cosa viene caricato nel contesto. Skills si caricano su richiesta. Claude vede le descrizioni delle skills all’inizio della sessione, ma il contenuto completo si carica solo quando una skill viene utilizzata. Per le skills che invochi manualmente, impostadisable-model-invocation: true per mantenere le descrizioni fuori dal contesto fino a quando non ne hai bisogno. Per le skills che non hai scritto, utilizza skillOverrides per fare lo stesso dalle impostazioni.
Subagents lavorano nella loro finestra di contesto. Un subagent inizia da zero a meno che non sia un fork, che inizia con una copia della tua conversazione fino a quel momento. In entrambi i casi, le chiamate di strumento del subagent rimangono fuori dal tuo contesto e Claude riceve un riassunto quando il subagent finisce.
Consulta costi del contesto per quello che ogni funzionalità costa e riduci l’utilizzo dei token per suggerimenti sulla gestione del contesto.
Rimani al sicuro con checkpoint e permessi
Claude ha due meccanismi di sicurezza: i checkpoint ti permettono di annullare le modifiche ai file e i permessi controllano cosa Claude può fare senza chiedere.Annulla le modifiche con i checkpoint
Ogni modifica ai file è reversibile. Prima che Claude modifichi un file, crea uno snapshot dei contenuti attuali. Se qualcosa va storto, premiEsc due volte per tornare a uno stato precedente, o chiedi a Claude di annullare.
I checkpoint sono separati da git e rimangono disponibili quando riprendi una conversazione. Coprono solo le modifiche ai file, e un ripristino salta i file con collegamento simbolico e collegamento fisico. Le azioni che influenzano i sistemi remoti (database, API, distribuzioni) non possono essere checkpointed. Li controlli con la tua modalità di permesso e le tue regole di permesso.
Controlla cosa Claude può fare
Scegli una modalità di permesso per impostare cosa Claude può fare senza chiedere. PremiShift+Tab per scorrere le modalità di permesso:
- Auto: un classificatore esamina la maggior parte delle azioni in background e blocca quelle rischiose invece di chiedere. Con Claude Code v2.1.283 o successivo, è la modalità di permesso iniziale integrata per le sessioni interattive di terminale e VS Code, e nelle versioni precedenti solo nei piani Pro, Max e Team
- Manual: Claude chiede prima delle modifiche ai file e dei comandi shell
- Accept edits: Claude modifica i file ed esegue comandi comuni del file system come
mkdiremvsenza chiedere, chiede ancora per altri comandi - Plan: Claude esplora e propone un piano senza modificare i tuoi file sorgente
.claude/settings.json in modo che Claude non chieda ogni volta. Questo è utile per comandi affidabili come npm test o git status. Le impostazioni possono essere scoped da politiche a livello di organizzazione fino alle preferenze personali. Consulta Permessi per i dettagli.
Lavora efficacemente con Claude Code
Questi suggerimenti ti aiutano a ottenere risultati migliori da Claude Code. Per ulteriori informazioni su prompt specifici, verifica e pianificazione, vedi Best practices.Chiedi aiuto a Claude Code
Claude Code può insegnarti come usarlo. Fai domande come “come configuro gli hooks?” o “qual è il modo migliore per strutturare il mio CLAUDE.md?” e Claude spiegherà. I comandi integrati ti guidano anche attraverso la configurazione:/initgenera un CLAUDE.md iniziale per il tuo progetto/doctoresegue un controllo di configurazione che diagnostica i problemi di installazione e configurazione e può risolverli
È una conversazione
Claude Code è conversazionale. Non hai bisogno di prompt perfetti. Inizia con quello che vuoi, quindi affina:Interrompi e indirizza
Puoi reindirizzare Claude in qualsiasi momento senza ricominciare da capo. Fai una di queste cose:- Premi
Escper fermare Claude immediatamente. La chiamata dello strumento in esecuzione viene annullata e Claude attende la tua prossima istruzione. Se hai messaggi in coda, Claude Code li invia successivamente. - Digita una correzione e premi
Inviosenza fermare Claude. Il messaggio viene visualizzato come in coda nella conversazione. Se Claude sta eseguendo chiamate di strumenti, legge il messaggio non appena quelle chiamate si completano, nello stesso turno, e si adatta prima del suo prossimo passo. Accoda messaggi mentre Claude lavora copre quando altre voci in coda vengono inviate.
Delega, non dettare
Pensa di delegare a un collega capace. Fornisci contesto e direzione, quindi affida a Claude di capire i dettagli:Cosa c’è dopo
Estendi con funzionalità
Aggiungi skills e connessioni MCP
Flussi di lavoro comuni
Guide passo dopo passo per compiti tipici