Sommaire
« J'ai laissé Claude Code s'exécuter, et la modification est partie là où je ne voulais pas. » C'est exactement pour ce moment-là que le checkpointing et /rewind vous permettent de revenir à « avant que ça ne déraille » en quelques touches. Claude Code prend automatiquement un instantané de l'état avant chaque modification, et vous pouvez revenir à un état précédent avec /rewind ou en appuyant deux fois sur Esc.
Cet article aborde, sur la base de la documentation officielle, ce qu'est le checkpointing, comment l'utiliser, ce qui est restauré et ce qui ne l'est pas (le plus important), en quoi il diffère de Git, son usage pour se remettre d'une erreur, et sa disponibilité. Les points clés d'emblée. ① Il suit automatiquement les modifications de fichiers, et chaque prompt devient un point de restauration. ② Ouvrez le menu avec /rewind ou deux fois Esc et choisissez de restaurer le code, la conversation, ou les deux. ③ Mais seules « les modifications de fichiers faites par Claude » sont restaurées — les changements faits par des commandes bash ou en dehors de Claude ne le sont pas. C'est pourquoi ce n'est pas un remplacement de Git.
Revenez sur les modifications jusqu'à « avant que ça ne déraille »
— chaque prompt est un point de restauration ; revenez avec deux fois Esc
1. Ce que sont le checkpointing et /rewind
La définition officielle : « Claude Code suit automatiquement les modifications de fichiers de Claude au fil de votre travail, ce qui vous permet d'annuler rapidement les changements et de revenir à des états précédents si quelque chose dérape. » Un instantané est pris automatiquement avant chaque modification, et en plus de cela chaque prompt que vous envoyez crée un nouveau checkpoint (un point auquel vous pouvez revenir). Les checkpoints persistent d'une session à l'autre, vous pouvez donc y accéder aussi dans les conversations reprises.
Autrement dit, cette fonctionnalité signifie que « même si vous confiez les choses à l'IA et que ça tourne mal, vous pouvez revenir à un point sûr en quelques touches ». Dans Claude Code interactif (le CLI), /rewind est automatique et activé par défaut.
2. Comment l'utiliser (/rewind et Esc Esc)
Il y a deux façons d'ouvrir le menu de rewind : tapez /rewind, ou appuyez deux fois sur Esc quand le champ de saisie est vide.
⚠️ À propos de Esc Esc : si la saisie contient du texte, appuyer deux fois sur Esc efface la saisie au lieu d'ouvrir le menu. Le texte effacé est enregistré dans votre historique de saisie, donc appuyez sur la flèche Haut pour le rappeler. Pour être sûr que le menu s'ouvre, videz d'abord la saisie.
Le menu liste chaque prompt que vous avez envoyé pendant la session. Choisissez le point voulu, puis choisissez une action.
| Action | Ce qu'elle fait |
|---|---|
| Restore code and conversation | Rétablit les deux à ce point |
| Restore conversation | Revient à ce message mais conserve le code actuel |
| Restore code | Rétablit uniquement les changements de fichiers, conserve la conversation |
| Summarize from / up to here | Compresse le contexte (pas un rewind ; fichiers inchangés) |
| Never mind | Quitter sans changement |
Après « Restore conversation » (et similaires), le prompt original du message sélectionné est restauré dans le champ de saisie, vous pouvez donc le renvoyer ou le modifier. « Restore code » tout en conservant la conversation vous permet de reformuler, en tenant compte de ce qui a mal tourné — c'est le flux que vous utiliserez le plus en pratique.
3. Ce qui est restauré et ce qui ne l'est pas (le plus important)
C'est la partie la plus mal comprise de la fonctionnalité. Le checkpointing suit uniquement « les changements faits par les outils d'édition de fichiers de Claude (Write / Edit / NotebookEdit) ». Tout autre effet de bord n'est pas annulé par le rewind.
⚠️ Non restauré (indiqué dans la documentation officielle)
- Les changements de fichiers par des commandes bash :
rm file.txt,mv old.txt new.txt,cp source dest, etc. ne peuvent pas être annulés via le rewind - Les changements en dehors de la session / d'autres sessions : les modifications manuelles et les modifications de sessions concurrentes ne sont pas capturées, sauf si elles touchent les mêmes fichiers
- La création, le déplacement ou la suppression de répertoires / les fichiers distants ou réseau
L'état de la base de données, les migrations, les installations de paquets, les appels réseau — tout « effet de bord qui n'est pas une modification de fichier » n'est de même pas rétabli (la documentation ne le précise pas, mais puisque seules les modifications de fichiers via les outils d'édition sont suivies, cela en découle logiquement). En bref, retenez que seul « le contenu des fichiers que Claude a réécrits avec ses outils d'édition » peut être restauré. Et comme Claude peut aussi modifier des fichiers via Bash, la pratique sûre est de ne pas trop compter sur le rewind et de committer dans Git aux étapes clés.
4. En quoi il diffère de Git
La documentation le présente comme « les checkpoints sont une "annulation" locale, et Git est un "historique permanent" » et indique clairement que « les checkpoints complètent mais ne remplacent pas un véritable contrôle de version. »
- Automatique, instantané, sans configuration
- Idéal pour l'expérimentation en cours de session
- Couvre les changements de fichiers par les outils d'édition
- Nettoyé après 30 jours (configurable)
- Commits, branches, stockage à long terme
- Enregistre aussi les changements bash
- Partageable et révisable en équipe
- Ne disparaît pas (jusqu'à ce que vous le supprimiez)
La répartition des rôles est simple : les checkpoints pour une annulation rapide en cours de session, les commits Git pour un historique durable. Committez aux étapes clés d'une tâche plus large, et vous pourrez revenir en toute sécurité même au-delà de ce que le rewind ne couvre pas (comme les changements bash).
5. Se remettre d'une erreur
/rewind est aussi un outil de récupération lorsque la conversation se casse et ne peut plus continuer. La référence officielle des erreurs de Claude Code, pour l'erreur 400 liée à la concurrence de l'utilisation des outils et aux blocs de réflexion, fait dire au produit lui-même : « API Error: 400 ... Run /rewind to recover the conversation. » Appuyez deux fois sur Esc pour revenir à un checkpoint antérieur au tour corrompu et continuer à partir de là. C'est aussi la principale récupération pour l'erreur de fuite de balise court / invoke (concurrence tool_use).
⚠️ Note de version : si vous êtes sur Opus 4.7 / 4.8, exécutez d'abord claude update. Selon la documentation, les versions antérieures à v2.1.156 peuvent déclencher cette erreur lors d'un usage normal des outils, et /rewind ne la résout pas. La mise à jour passe en premier.
Si le rewind ne peut pas atteindre la cause (par ex. une corruption due à la compaction du contexte), vous pouvez aussi repartir de zéro avec /clear. Pour la gestion des erreurs en général, voir le récapitulatif des erreurs de Claude Code.
6. Disponibilité et durée de conservation
Dans Claude Code interactif (le CLI), c'est automatique et activé par défaut — aucune configuration spéciale. Dans l'Agent SDK, en revanche, c'est une activation explicite (opt-in) (par ex. enableFileCheckpointing) ; gardez les deux distincts.
Pour la conservation, les checkpoints sont nettoyés en même temps que les sessions après 30 jours (configurable). La documentation ne précise pas l'emplacement de stockage sur disque, un interrupteur d'activation/désactivation, ou la clé de configuration spécifique pour la durée de conservation, donc cet article ne les affirme pas (consultez la documentation officielle pour les dernières informations). La fonctionnalité est sortie dans Claude Code v2.0.0 (septembre 2025) et a été présentée à l'époque comme « la fonctionnalité la plus demandée » (la date de sortie et le contexte proviennent de sources secondaires).
Résumé
Le checkpointing et /rewind sont un filet de sécurité qui suit automatiquement les modifications de fichiers de Claude et vous permet de revenir à « avant que ça ne déraille » en quelques touches. Chaque prompt devient un point de restauration, et vous ouvrez le menu avec /rewind ou deux fois Esc pour rétablir le code, la conversation, ou les deux. En pratique, le flux central est « Restore code tout en conservant la conversation », puis reformuler.
La mise en garde clé : « seules les modifications de fichiers de Claude sont restaurées » — les changements par commande bash, les changements externes, les opérations sur les répertoires, les bases de données, et autres ne le sont pas. Ce n'est donc pas un remplacement de Git ; committez aux étapes clés en règle générale. Et /rewind permet aussi de récupérer une conversation cassée, comme l'erreur 400 (sur les anciennes versions, claude update d'abord). À lire aussi : l'erreur court/invoke, les erreurs de Claude Code, les hooks.
FAQ
Q. À quoi sert le checkpointing ?
A. C'est un filet de sécurité pour revenir rapidement sur les modifications jusqu'à « avant que ça ne déraille ». Claude Code prend un instantané automatiquement avant chaque modification, et chaque prompt que vous envoyez devient un point de restauration. Même si vous confiez les choses à l'IA et que ça tourne mal, vous pouvez revenir à un état précédent avec /rewind ou deux fois Esc. Dans le CLI interactif, c'est activé par défaut.
Q. Comment l'utiliser ?
A. Tapez /rewind, ou appuyez deux fois sur Esc quand la saisie est vide, pour ouvrir le menu. Dans la liste des prompts que vous avez envoyés, choisissez le point auquel revenir et choisissez « Restore code and conversation », « Restore conversation », ou « Restore code ». Le plus courant est « Restore code (conserver la conversation) », puis reformuler votre instruction, en tenant compte de ce qui a mal tourné. Notez que si la saisie contient du texte, deux fois Esc l'efface à la place.
Q. Les fichiers créés ou supprimés par bash sont-ils aussi restaurés ?
A. Non. Seules les modifications de fichiers faites par les outils d'édition de Claude (Write / Edit / NotebookEdit) sont restaurées. Les changements par commandes bash (rm, mv, cp, etc.), les changements en dehors de la session ou d'autres sessions, la création/le déplacement/la suppression de répertoires, et les fichiers distants ne sont pas annulés par le rewind. Il en va de même pour les « effets de bord qui ne sont pas des modifications de fichiers », comme l'état de la base de données. C'est exactement pour cela que vous devriez committer dans Git aux étapes clés.
Q. Remplace-t-il Git ?
A. Non. La documentation le présente comme « checkpoints = annulation locale, Git = historique permanent », indiquant qu'il complète mais ne remplace pas le contrôle de version. Les checkpoints sont idéaux pour une annulation rapide en cours de session et sont nettoyés après 30 jours (configurable). Continuez à utiliser Git pour les commits, les branches, le stockage à long terme et le partage en équipe.
Q. Puis-je l'utiliser quand une erreur bloque la conversation ?
A. Oui. Pour l'erreur 400 liée à la concurrence de l'utilisation des outils ou aux blocs de réflexion, le produit lui-même dit « Run /rewind to recover the conversation. » Appuyez deux fois sur Esc pour revenir avant le tour corrompu et continuer. Mais les versions antérieures à v2.1.156 peuvent ne pas la résoudre via /rewind, donc sur Opus 4.7 / 4.8 exécutez d'abord claude update. Voir aussi l'article sur l'erreur court/invoke.