Skip to main content
Claude Code legge istruzioni, impostazioni, skills, subagents e memoria dalla tua directory di progetto e da ~/.claude nella tua home directory. Esegui il commit dei file di progetto su git per condividerli con il tuo team; i file in ~/.claude sono configurazioni personali che si applicano a tutti i tuoi progetti. Su Windows, ~/.claude si risolve in %USERPROFILE%\.claude. Se imposti CLAUDE_CONFIG_DIR, ogni percorso ~/.claude in questa pagina si trova invece in quella directory. La maggior parte degli utenti modifica solo CLAUDE.md e settings.json. Se il tuo repository ha già un AGENTS.md per altri agenti di codifica, Claude Code può leggerlo da solo o insieme a CLAUDE.md. Il resto della directory è facoltativo: aggiungi skills, rules o subagents secondo le tue necessità.

Esplora la directory

Fai clic sui file nell’albero per vedere cosa fa ciascuno, quando si carica e un esempio.

Cosa non è mostrato

L’explorer copre i file che crei e modifichi. Alcuni file correlati si trovano altrove: ~/.claude contiene anche dati che Claude Code scrive mentre lavori: trascrizioni, cronologia dei prompt, snapshot dei file, cache e log. Vedi dati dell’applicazione di seguito.

Scegli il file giusto

Diversi tipi di personalizzazione si trovano in file diversi. Usa questa tabella per trovare dove appartiene una modifica.

Riferimento dei file

Questa tabella elenca ogni file che l’explorer copre. I file con ambito di progetto si trovano nel tuo repository sotto .claude/ (o alla radice per CLAUDE.md, .mcp.json e .worktreeinclude). I file con ambito globale si trovano in ~/.claude/ e si applicano a tutti i progetti.
Diverse cose possono ignorare quello che metti in questi file:Vedi precedenza delle impostazioni per l’ordine completo.
Fai clic su un nome di file per aprire quel nodo nell’explorer sopra.

Campi frontmatter per file

Skills, file di comando, subagent, stili di output e regole leggono la loro configurazione da YAML frontmatter nella parte superiore del file, e ognuno accetta il proprio set di campi. Questa tabella elenca i nomi dei campi per ogni file e collega ai riferimenti che li descrivono. Gli agenti forniti in un plugin rispettano un sottoinsieme dei campi subagent.

Risolvi i problemi di configurazione

Se un’impostazione, un hook o un file non sta avendo effetto, vedi Debug della tua configurazione per i comandi di ispezione e una tabella di ricerca per sintomi.

Dati dell’applicazione

Oltre alla configurazione che crei, ~/.claude contiene dati che Claude Code scrive durante le sessioni. Questi file sono in testo semplice. Qualsiasi cosa che passa attraverso uno strumento finisce in una trascrizione su disco: contenuti di file, output di comandi, testo incollato.

Puliti automaticamente

Claude Code elimina i file nei percorsi di seguito una volta che sono più vecchi di cleanupPeriodDays, purché possa determinare in modo sicuro il periodo di conservazione. L’impostazione predefinita è 30 giorni e il minimo è 1; impostare 0 genera un errore di convalida. Lo stesso limite di età si applica alla rimozione automatica dei worktrees orfani. I file di sessione in sessions/, la memoria automatica e le trascrizioni di Claude Desktop e Cowork seguono ciascuno la propria regola di conservazione:
  • sessions/: contiene un piccolo file per sessione in esecuzione, utilizzato per rilevare sessioni simultanee e arresti anomali. Non fa parte della pulizia basata sull’età: Claude Code rimuove ogni file quando la sua sessione esce e cancella i residui di arresto anomalo al prossimo avvio.
  • Memoria automatica: la pulizia non elimina i file di memoria nella directory di memoria automatica di un progetto, projects/<project>/memory/. Claude Code rimuove quella directory solo se è stata vuota per l’intero periodo di conservazione. Prima della v2.1.228, la pulizia trattava le cartelle all’interno della directory di memoria come dati di sessione e poteva eliminare file vecchi al di sotto di essa.
  • Trascrizioni di Claude Desktop e Cowork: Claude Code mantiene la trascrizione di una sessione che hai avviato o continuato più di recente in Claude Desktop o Cowork a qualsiasi età. Per dare a queste trascrizioni un limite di età, imposta desktopSessionCleanupPeriodDays. Quando le impostazioni gestite impostano cleanupPeriodDays, Claude Code elimina invece queste trascrizioni dopo quel periodo. Richiede Claude Code v2.1.248 o successivo; le versioni precedenti le eliminano dopo cleanupPeriodDays.
Claude Code salta la pulizia basata sull’età in questi casi:
  • Modalità bare: quando esegui claude -p con --bare, Claude Code non esegue la pulizia in quella sessione.
  • Pulizia in pausa: se Claude Code non può determinare in modo sicuro il periodo di conservazione, mette in pausa la pulizia della conservazione; l’evento retention_sweep elenca ogni configurazione che la mette in pausa. Quando la causa è un file di impostazioni che non può essere letto o analizzato, o errori di impostazioni con cleanupPeriodDays o desktopSessionCleanupPeriodDays impostati esplicitamente, Claude Code mostra anche un avviso in /status finché non correggi gli errori di impostazioni. Quando le impostazioni gestite forniscono cleanupPeriodDays, Claude Code esegue la pulizia al valore gestito in entrambi i casi.

Directory scratchpad della sessione

Lo scratchpad è una directory per sessione che Claude Code fornisce a Claude per file temporanei: risultati intermedi, script helper e bozze che non appartengono al tuo progetto. Quando Claude dice che ha salvato qualcosa “nello scratchpad”, il file è lì. Claude lo usa invece di /tmp, e può creare, modificare e leggere file in esso senza un prompt di permesso. Lo scratchpad si trova nella directory temporanea di Claude Code piuttosto che in ~/.claude. Trova il percorso della sessione corrente per la tua piattaforma:
  • macOS: /private/tmp/claude-<uid>/<project>/<session-id>/scratchpad/
  • Linux: /tmp/claude-<uid>/<project>/<session-id>/scratchpad/, o la stessa forma sotto $TMPDIR quando il tuo sistema ne imposta uno
  • Windows: %TEMP%\claude\<project>\<session-id>\scratchpad\
<project> è il percorso della tua directory di lavoro con ogni carattere diverso da lettere e cifre sostituito da -, ad esempio -Users-you-my-project. Se imposti CLAUDE_CODE_TMPDIR, l’albero si sposta sotto quella directory. Gli hooks ricevono il percorso della sessione corrente come scratchpad_dir. I file scratchpad durano quanto la trascrizione della sessione: la pulizia della conservazione elimina la directory quando elimina la trascrizione, e claude project purge non tocca la directory temporanea. Poiché la directory si trova nella posizione temporanea del sistema, il tuo sistema operativo può anche cancellarla, ad esempio al riavvio. Per mantenere qualcosa che Claude ha scritto lì, chiedi a Claude di spostarlo nel tuo progetto. Una sessione ha uno scratchpad solo quando tutti questi elementi sono veri:
  • Sei connesso con un account claude.ai piuttosto che con una chiave API
  • La sessione utilizza l’API Anthropic, non Amazon Bedrock, Google Cloud’s Agent Platform o Microsoft Foundry
  • enableArtifact non è impostato su false

Mantenuti fino a quando non li elimini

La pulizia della conservazione non rimuove i percorsi di seguito. Claude Code li mantiene fino a quando non li elimini, a parte i due cache che elimina quando esci. Altri file appaiono a seconda delle funzioni che utilizzi. I cache e i file di lock sono sicuri da eliminare. Mantieni questi file di stato:

Archiviazione in testo semplice

Le trascrizioni e la cronologia non sono crittografate a riposo. I permessi dei file del sistema operativo sono l’unica protezione. Se uno strumento legge un file .env o un comando stampa una credenziale, quel valore viene scritto in projects/<project>/<session>.jsonl. Per ridurre l’esposizione:
  • Abbassa cleanupPeriodDays per accorciare il tempo in cui Claude Code mantiene le trascrizioni
  • Imposta desktopSessionCleanupPeriodDays per dare anche alle trascrizioni di Claude Desktop e Cowork un limite di età
  • Imposta la variabile di ambiente CLAUDE_CODE_SKIP_PROMPT_HISTORY per saltare la scrittura di trascrizioni e cronologia dei prompt in qualsiasi modalità. In modalità non interattiva, puoi invece passare --no-session-persistence insieme a -p, o impostare persistSession: false in TypeScript Agent SDK; l’SDK Python non ha un’opzione equivalente.
  • Usa le regole di permesso per negare le letture dei file di credenziali

Cancella dati locali

Esegui claude project purge per eliminare lo stato che Claude Code mantiene per un progetto. Elimina:
  • Trascrizioni e memoria automatica sotto projects/
  • Voci per sessione tasks/, debug/ e file-history/
  • Righe di prompt corrispondenti in history.jsonl
  • La voce del progetto in ~/.claude.json
Le immagini che hai incollato o allegato nelle sessioni del progetto e la scratchpad di ogni sessione sono archiviate nella directory temporanea di Claude Code piuttosto che in ~/.claude, quindi la pulizia non le rimuove. La pulizia della conservazione elimina ancora le immagini una volta che sono più vecchie di cleanupPeriodDays; lo scratchpad di una sessione eliminata rimane fino a quando non lo elimini o il tuo sistema operativo non cancella la directory temporanea. Il comando stampa il piano di eliminazione completo e chiede conferma prima di rimuovere qualsiasi cosa. Gli esempi di seguito utilizzano ~/work/my-repo come segnaposto. Sostituiscilo con il percorso del tuo progetto. Se nessuno stato corrisponde al percorso, il comando stampa un errore e esce con stato 1. Visualizza l’anteprima del piano senza eliminare nulla:
Il piano elenca ogni elemento corrispondente e il motivo per cui è incluso:
Elimina con un singolo prompt di conferma:
Il comando stampa lo stesso piano, quindi chiede Delete 3 item(s) for /home/user/work/my-repo? This cannot be undone. [y/N] ed elimina solo se rispondi y. Ometti il percorso per scegliere un progetto da un elenco interattivo. Salta il prompt di conferma per l’uso negli script:
Passa --all invece di un percorso per eliminare lo stato per ogni progetto contemporaneamente, il che elimina history.jsonl completamente piuttosto che filtrarlo. Passa -i per scorrere il piano di eliminazione un elemento alla volta. Il comando lascia shell-snapshots/ e backups/ da soli perché non sono limitati al progetto, e avverte su di essi nell’output del piano. Puoi anche eliminare manualmente uno qualsiasi dei percorsi di dati dell’applicazione sopra, a parte i file di stato da mantenere. Le nuove sessioni non sono interessate. La tabella di seguito mostra cosa perdi per le sessioni passate. Non eliminare ~/.claude.json, ~/.claude/settings.json o ~/.claude/plugins/: contengono la tua autenticazione, preferenze e plugin installati.