Passa al contenuto principale

Checkpoint e Rewind

Intermedio
What you'll learn
  • Capire cosa cattura un checkpoint — e cosa silenziosamente non cattura
  • Aprire il menu di rewind in due modi e scegliere ogni volta l'azione di ripristino giusta
  • Distinguere 'restore' (annulla lo stato) da 'summarize' (comprimi il contesto)
  • Sapere esattamente perché i checkpoint completano Git ma non lo sostituiscono mai

L'idea di fondo

Quando lasci Claude libero di eseguire una modifica ambiziosa e su vasta scala, la domanda più spaventosa è "e se va storto dopo tre modifiche di profondità?" Il checkpointing è la risposta: Claude Code cattura automaticamente uno snapshot del tuo codice prima di ogni modifica, così puoi tornare indietro a qualsiasi stato precedente invece di districare a mano un refactoring lasciato a metà.

Consideralo un annulla locale per l'intera sessione — una rete di sicurezza che ti permette di dire "sì, prova l'approccio audace" senza paura.

Come vengono creati i checkpoint

Non sei tu a creare i checkpoint — avvengono automaticamente.

Guided walkthrough1 of 3
  1. Ogni prompt dell'utente cattura lo stato del tuo codice prima dell'esecuzione degli strumenti di modifica dei file di Claude. Nessun comando, nessuna configurazione, nessuna cerimonia.

Aprire il menu di rewind

Ci sono due modi per accedervi:

Guided walkthrough1 of 2
  1. Digita lo slash command dal prompt. Funziona sempre.

Apri il menu di rewind

/rewind

Il menu elenca ogni prompt che hai inviato in questa sessione. Scegli il punto su cui vuoi agire, poi scegli un'azione.

Restore vs. summarize: la distinzione chiave

È qui che le persone si confondono. Il menu offre due tipi di azione:

  • Le azioni restore cambiano lo stato sul disco e/o nella conversazione — annullano.
  • Le azioni summarize non toccano mai i tuoi file — comprimono la conversazione per liberare spazio nella finestra di contesto.
Watch out
  • Restore = annulla (ripristina codice, conversazione o entrambi). Summarize = comprimi il contesto (i file sul disco restano intatti).
  • Ricorri a restore quando una modifica ha rotto qualcosa. Ricorri a summarize quando la sessione è gonfia ma il codice va bene.

Le azioni di restore

Guided walkthrough1 of 3
  1. Ripristina sia i tuoi file sia la cronologia della chat al punto selezionato — un 'riavvolgi il tempo' pulito fino a quel momento.

Dopo aver ripristinato la conversazione (o dopo aver scelto "Summarize from here"), il prompt originale del messaggio selezionato viene reinserito nel campo di input, così puoi rinviarlo o modificarlo.

Le azioni di summarize

Entrambe comprimono parte della conversazione in un riepilogo generato dall'AI — come un /compact mirato in cui scegli quale lato del messaggio selezionato spremere.

Guided walkthrough1 of 2
  1. I messaggi PRIMA del messaggio selezionato restano intatti. Il messaggio selezionato e tutto ciò che segue diventano un riepilogo. Usalo per scartare una discussione secondaria mantenendo il contesto iniziale in dettaglio completo.

In entrambi i casi i messaggi originali rimangono nel transcript della sessione, quindi Claude può ancora fare riferimento ai dettagli. Puoi digitare istruzioni facoltative per orientare ciò su cui il riepilogo si concentra.

Per l'intero flusso, vedi Gestione del contesto — le azioni di summarize di /rewind sono un bisturi laddove /compact è un pennello a tratto largo.

Tornare indietro oltre un /clear

Se hai eseguito /clear in precedenza nello stesso processo di Claude Code, il menu di rewind mostra una voce aggiuntiva in cima: /resume <session-id> (previous session). Selezionala per saltare indietro alla conversazione che era attiva prima di /clear.

Dove i checkpoint si fermano — i limiti che mordono

I checkpoint sembrano magici finché non lo sono più. Contano tre lacune:

Guided walkthrough1 of 3
  1. I file toccati dai comandi shell che Claude esegue — rm, mv, cp, generatori di codice, formatter — NON vengono tracciati. Solo le modifiche dirette tramite gli strumenti di modifica dei file di Claude vengono registrate in un checkpoint. Un file eliminato da rm è perso per quanto riguarda il rewind.

Checkpoint vs. Git: usali entrambi

Risolvono problemi diversi, quindi abbinali.

Checkpoint (/rewind)Git
AmbitoUna sessioneIntera cronologia del progetto
GranularitàPer prompt, automaticoPer commit, deliberato
Traccia le modifiche fatte via bash?NoSì (una volta in stage/committate)
Durata~30 giorni, poi spariscePermanente
Condivisibile / collaborativoNo
Modello mentale"Annulla locale""Cronologia permanente"
Pro tip
  • Committa gli stati funzionanti con Git prima di un'esecuzione rischiosa e su vasta scala — è la tua base solida e duratura.
  • Usa /rewind per un ripristino rapido all'interno della sessione tra un commit e l'altro senza inquinare la tua cronologia Git.
  • Se Claude eseguirà bash distruttivo (rm/mv) o generatori, affidati a Git — il rewind non salverà quei file.

Quando ricorrervi

Guided walkthrough1 of 4
  1. Prova un'implementazione audace e, se non ti piace, ripristina codice e conversazione al punto di biforcazione e provane un'altra.

Mettiti alla prova

0/3
  1. Claude ha eseguito `rm config.old.json` tramite un comando bash e lo vuoi indietro. Può `/rewind` ripristinarlo?
  2. Il tuo codice va bene, ma una lunga digressione di debug ha riempito la finestra di contesto. Quale azione è adatta?
  3. Come viene creato un checkpoint?
Vocabolario di checkpoint e rewind
Premi Invio o Spazio per girare la carta. Usa le frecce sinistra e destra per spostarti tra le carte.Termine mostrato.
1 / 5
Key takeaways
  • I checkpoint sono snapshot automatici del tuo codice, uno per prompt — un annulla locale per l'intera sessione, conservato circa 30 giorni.
  • Apri il menu di rewind con /rewind o con doppio Esc a input vuoto; elenca ogni prompt che hai inviato.
  • Le azioni di restore annullano lo stato (codice, conversazione o entrambi); le azioni di summarize comprimono il contesto e non toccano mai i file.
  • Le modifiche fatte via bash, esterne e concorrenti NON vengono tracciate — solo le modifiche dirette con gli strumenti sui file lo sono.
  • I checkpoint completano Git, non lo sostituiscono: pensa 'annulla locale' vs. 'cronologia permanente e condivisibile'.

Prossimo

  • Gestione del contesto/compact, /clear e come summarize si inserisce nel quadro più ampio
  • Plan Mode — indaga e approva un piano prima che le modifiche vengano eseguite, così torni indietro meno spesso
  • Permessi — l'altra metà per eseguire compiti ambiziosi in sicurezza