Met Claude Code-checkpoints maak je het werk van een agent in enkele seconden ongedaan. Claude Code maakt automatisch een snapshot van je bestanden vóór elke prompt die een beurt start, en met /rewind (of door twee keer op Esc te drukken bij een lege prompt) loop je terug naar een eerder punt om de code, het gesprek of beide te herstellen. De functie verscheen met Claude Code 2.0 op 29 september 2025 en is nu de snelste manier om te herstellen wanneer een agent de verkeerde kant op gaat.
Eén ding is het waard om te weten voordat je erop vertrouwt: checkpoints houden Claude's eigen bestandsbewerkingen bij, niet alles wat er in je repository gebeurt. Daardoor zijn ze een vangnet op sessieniveau dat Git aanvult, geen vervanging ervan. We gebruiken Claude Code om deze site te bouwen en te draaien, en checkpoints hebben veranderd hoe agressief we het laten refactoren, juist omdat terugkeren naar een bekende, goede toestand niet langer betekent dat je door git reflog moet graven.
Wat zijn Claude Code-checkpoints?
Een checkpoint is een automatisch snapshot van je werkbestanden, gemaakt voordat een beurt begint. Volgens de officiële checkpointing-documentatie maakt elke prompt die je verstuurt en die een beurt start er een aan, zonder dat je er iets voor hoeft te doen. Claude Code bewaart bestandssnapshots voor de 100 meest recente checkpoints in een sessie en slaat ze samen met het gesprek op, zodat /rewind nog steeds werkt nadat je die sessie hebt gesloten en hervat.
Snapshots worden niet eeuwig bewaard. Claude Code verwijdert de bestandssnapshots van een sessie tijdens zijn opschoonronde, standaard ongeveer 30 dagen nadat de sessie er voor het laatst een heeft opgeslagen, dus terugdraaien naar een heel oude checkpoint kan mislukken met een No files were restored-fout. Als je ze langer wilt laten bestaan, verhoog dan de instelling cleanupPeriodDays. Voor het dagelijkse werk zijn de standaardwaarden ruim bemeten; het venster van 30 dagen speelt vooral een rol als je weken later terugkeert naar een verlaten experiment.
Hoe draai je terug met /rewind?
Voer /rewind uit, of druk twee keer op Esc terwijl het promptinvoerveld leeg is, om het rewind-menu te openen. (Als het invoerveld tekst bevat, wist dubbel-Esc die juist; de gewiste tekst gaat naar je invoergeschiedenis, dus met Up haal je die terug.) Het menu toont de prompts die je tijdens de sessie hebt verstuurd. Kies het punt waarop je wilt ingrijpen en selecteer dan een actie:
- Code en gesprek herstellen: zet beide terug naar dat punt.
- Gesprek herstellen: draai de chat terug terwijl je huidige code behouden blijft.
- Code herstellen: draai de bestandswijzigingen terug terwijl het gesprek behouden blijft.
- Vanaf hier samenvatten / Tot hier samenvatten: comprimeer een deel van het gesprek om context vrij te maken (hieronder meer daarover).
- Laat maar: stop zonder wijzigingen.
De twee opties voor codeherstel verschijnen alleen wanneer die checkpoint daadwerkelijk bestandswijzigingen heeft vastgelegd. Na het herstellen van een gesprek komt de oorspronkelijke prompt terug in het invoerveld, zodat je die kunt bewerken en opnieuw kunt versturen. Een praktische gewoonte: wanneer een bewerking misgaat, draai dan terug naar de prompt die de slechte beurt startte in plaats van naar een bericht midden in de beurt, zodat je de hele wijziging netjes ongedaan maakt.
Wat checkpoints bijhouden (en wat stilletjes niet)
Dit is het deel dat de meeste tutorials overslaan, en het is precies waar mensen hun vingers aan branden. Checkpointing bewaakt bestanden die Claude in de huidige sessie heeft bewerkt met zijn bestandsbewerkingstools. Alles daarbuiten wordt slechts gedeeltelijk of helemaal niet gedekt. De onderstaande tabel brengt het in kaart, gebaseerd op het gedeelte over beperkingen in de documentatie.
| Wijziging | Teruggedraaid door /rewind? | Opmerkingen |
|---|---|---|
| Claude's bewerkingen via bestandstools | Ja | Het kernscenario; hiervoor bestaan checkpoints. |
| Bash-bewerkingen aan een bestand dat Claude al had bewerkt | Ja | Zodra Claude een bestand heeft aangeraakt, worden latere shell-wijzigingen eraan ook ongedaan gemaakt. |
| Een bestand dat alleen ooit door Bash is gewijzigd | Nee | Wordt nooit bijgehouden; gebruik Git om het terug te draaien. |
Bewerkingen door subagents (achtergrondskill, /code-review --fix) | Meestal niet | Alleen de bewerkingen van een geforkte skill op de voorgrond worden hersteld; bewerkingen van andere subagents blijven staan. |
| Handmatige bewerkingen die je in je editor maakt | Nee | Externe wijzigingen worden niet vastgelegd, tenzij ze dezelfde bestanden raken. |
| Bewerkingen vanuit een andere gelijktijdige sessie | Nee | Om dezelfde reden; beschouw Git als de bron van waarheid. |
| Symbolisch/hard gelinkte paden | Nee | Overgeslagen bij herstel met een skipped N files-waarschuwing. |
De kernboodschap: /rewind is uitstekend om een reeks van Claude's bewerkingen ongedaan te maken, en nutteloos om ongedaan te maken wat een shell-commando of een subagent op de achtergrond met niet-bijgehouden bestanden heeft gedaan. Commit vóór grote operaties en je dekt beide af.
Maak context vrij met de samenvat-opties
Het rewind-menu doet tegelijk dienst als tool voor contextbeheer, wat gemakkelijk over het hoofd wordt gezien. Vanaf hier samenvatten comprimeert het gesprek vanaf een gekozen punt vooruit tot een samenvatting; Tot hier samenvatten comprimeert alles vóór dat punt terwijl latere berichten intact blijven. Beide laten een markering Samengevat gesprek achter in het transcript en werken als een gerichte /compact: het maakt ruimte in het contextvenster vrij zonder ook maar één bestand op schijf aan te raken.
Dit is echt nuttig bij lange debugsessies. Je kunt je oorspronkelijke instructies en de uiteindelijke werkende toestand behouden terwijl je een omslachtig middenstuk van vallen en opstaan inklapt. Je kunt ook een samenvat-optie markeren en in de rij context toevoegen (optioneel) aanwijzingen typen om te sturen wat de samenvatting behoudt. Wil je in plaats daarvan afsplitsen en een andere aanpak proberen terwijl de oorspronkelijke draad ongemoeid blijft, gebruik dan /branch of claude --continue --fork-session in plaats van samen te vatten. Wanneer je een grote wijziging plant, houdt het combineren hiervan met plan mode de sessie vanaf het begin slank.
Checkpoints versus Git: waarop moet je vertrouwen?
Ze lossen verschillende problemen op, dus het eerlijke antwoord is: allebei. Checkpoints geven je direct, op sessieniveau, een ongedaan-maakfunctie zonder staging, zonder commitberichten en zonder Git-kennis, ideaal voor de snelle "proberen, afkeuren, terugdraaien"-lus binnen één sessie. Git geeft je permanente geschiedenis, branches, samenwerking en een vastlegging die de opschoonronde van 30 dagen overleeft en elk bestand in de repository bereikt, ongeacht wat het heeft gewijzigd.
Een workflow die standhoudt: commit een schone basis voordat je Claude een grote taak geeft, gebruik /rewind naar hartenlust om binnen de sessie te itereren, en commit opnieuw zodra je tevreden bent. Zo verzorgt de checkpoint het herstel van minuut tot minuut en handelt Git alles af wat checkpoints bewust niet doen: bash-neveneffecten, bewerkingen door subagents en alles wat je met de hand hebt aangeraakt. Als je meerdere agents tegelijk draait, behandelt onze gids over git worktrees voor parallelle AI-codeeragents de isolatie die checkpoints alleen je niet kunnen bieden.
Veelgestelde vragen
Vervangen Claude Code-checkpoints Git?
Nee. Checkpoints zijn gemaakt voor snel herstel op sessieniveau van Claude's eigen bewerkingen en werken onafhankelijk van Git. Ze geven je geen permanente geschiedenis, branches of samenwerking, en hun snapshots worden na ongeveer 30 dagen opgeruimd. Blijf Git gebruiken voor commits en versiebeheer op de lange termijn.
Maakt /rewind wijzigingen door bash-commando's ongedaan?
Gedeeltelijk. Als Claude een bestand al met zijn bestandsbewerkingstools had bewerkt, worden latere bash-wijzigingen aan datzelfde bestand ongedaan gemaakt wanneer je terugdraait. Een bestand dat alleen ooit door een bash-commando is gewijzigd, wordt helemaal niet bijgehouden, dus daarvoor heb je Git nodig om het terug te draaien.
Hoeveel checkpoints worden bewaard, en hoe lang?
Claude Code bewaart bestandssnapshots voor de 100 meest recente checkpoints in een sessie. De snapshots worden tijdens de opschoonronde ongeveer 30 dagen nadat de sessie er voor het laatst een heeft opgeslagen verwijderd, tenzij je cleanupPeriodDays in de instellingen verlengt.
Kan ik terugdraaien nadat ik een sessie heb hervat of /clear heb uitgevoerd?
Ja. Checkpoints worden samen met het gesprek opgeslagen, dus /rewind werkt nadat je een sessie hervat. Als je eerder in hetzelfde proces /clear hebt uitgevoerd, toont het menu bovenaan een vermelding /resume <session-id> (previous session), zodat je terug kunt naar het gesprek van vóór de clear.
Herstelt terugdraaien de bewerkingen van een subagent?
Meestal niet. Alleen de bewerkingen van een geforkte skill op de voorgrond worden vastgelegd in de checkpoints van je sessie. Bewerkingen van subagents op de achtergrond, geforkte skills of een /code-review --fix-run blijven staan, dus draai die terug met Git.
Sources
- Checkpointing — Claude Code Docs: hoe checkpoints worden aangemaakt, het
/rewind-menu en de herstelopties, bewaring (100 snapshots, ~30 dagen,cleanupPeriodDays) en de volledige lijst met beperkingen. - Enabling Claude Code to work more autonomously — Anthropic: de aankondiging van Claude Code 2.0 waarmee checkpoints op 29 september 2025 werden geïntroduceerd.
- Settings reference — Claude Code Docs: de instelling
cleanupPeriodDaysdie bepaalt hoe lang snapshots worden bewaard.
Waqas Ahmed Waseer
Waqas Ahmed Waseer is ontwikkelaar en automation-builder met meer dan 8 jaar ervaring in het bouwen van productiesystemen die door 100.000+ mensen worden gebruikt. Hij bouwt custom multi-tenant SaaS, AI-automatisering (n8n, LLM-workflows, WhatsApp-bots) en hostinginfrastructuur (WHM/cPanel, CloudLinux) — en is de maker van WaSphere, FlowMaticX en het hostingmerk WaseerHost. 100+ projecten opgeleverd voor mkb, bureaus en gefinancierde startups.
