目次
「Claude Codeに任せたら、変更が思わぬ方向へ進んでしまった」——そんなとき、数キーで“やり直す前”まで巻き戻せるのが チェックポイント(checkpointing)と /rewindだ。Claude Code は編集のたびに自動でスナップショットを取り、あなたは /rewind または Esc 2回で過去の状態へ戻れる。
本記事では、チェックポイントとは何か・使い方・“何が復元され何が復元されないか”(最重要)・Gitとの違い・エラー復旧への応用・利用条件を、公式ドキュメントに基づいて整理する。先に要点。① 自動でファイル編集を追跡し、各プロンプトが復元ポイントになる。② /rewind か Esc 2回でメニューを開き、コード/会話/両方を選んで戻す。③ ただし復元されるのは「Claudeのファイル編集」だけ——bashコマンドによる変更や外部での変更は戻らない。だからGitの代わりにはならない。
変更を“やり直す前”まで巻き戻す
— 各プロンプトが復元ポイント。Esc 2回で戻れる
1. チェックポイントと/rewindとは
公式ドキュメントの定義はこうだ:「Claude Code は作業中に Claude のファイル編集を自動で追跡し、何かがおかしくなったときに素早く変更を取り消して以前の状態へ巻き戻せるようにする」。スナップショットは各編集の“前”に自動で取られ、さらにあなたが送る各プロンプトが新しいチェックポイント(=戻れる地点)になる。チェックポイントはセッションをまたいで保持されるため、再開した会話からもアクセスできる。
つまり 「AIに任せて失敗しても、数キーで安全地点まで戻れる」のがこの機能だ。/rewind は対話型の Claude Code(CLI)で既定で自動的に有効になっている。
2. 使い方(/rewindとEsc 2回)
巻き戻しメニューの開き方は2通り:/rewind と打つか、入力欄が空のときに Esc を2回押す。
⚠️ Esc 2回の注意:入力欄に文字が残っていると、Esc 2回は入力のクリアになり、メニューは開かない。消した文字は入力履歴に保存されるので、↑キーで呼び戻せる。確実にメニューを出したいときは入力欄を空にしてから。
メニューにはセッション中に送った各プロンプトが一覧される。戻したい地点を選び、操作を選ぶ。
| 操作 | 内容 |
|---|---|
| コードと会話を復元 | その地点へ両方を戻す |
| 会話を復元 | そのメッセージへ戻すが現在のコードは維持 |
| コードを復元 | ファイル変更だけ戻し、会話は維持 |
| ここから要約 / ここまで要約 | 文脈を圧縮(※巻き戻しではない。ファイルは変えない) |
| やめる | 変更せず閉じる |
「会話を復元」やそれに類する操作の後は、選んだメッセージの元のプロンプトが入力欄に戻るので、そのまま送り直したり編集したりできる。「コードを復元」で会話を残せば、何が悪かったかを踏まえて言い直せる——これが実用上いちばん使う流れだ。
3. 復元されるもの・されないもの(最重要)
ここがこの機能で最も誤解されやすい点だ。チェックポイントが追跡するのは 「Claudeのファイル編集ツール(Write/Edit/NotebookEdit)による変更」だけ。それ以外の副作用は巻き戻しでは戻らない。
⚠️ 復元されないもの(公式明記)
- bashコマンドによるファイル変更:
rm file.txt・mv old.txt new.txt・cp source destなどは巻き戻しで取り消せない - セッション外・別セッションでの変更:手動編集や同時実行の別セッションの編集は、同じファイルに触れない限り捕捉されない
- ディレクトリの作成・移動・削除/リモート・ネットワーク上のファイル
データベースの状態やマイグレーション、パッケージのインストール、ネットワーク呼び出しといった「ファイル編集ではない副作用」も、当然戻らない(公式は明示していないが、追跡対象が編集ツール経由のファイル変更だけである以上、論理的にそうなる)。要するに 「Claudeが編集ツールで書き換えたファイルの中身」だけが戻せると覚えておけばよい。なお Claude は Bash 経由でもファイルを変更できるため、巻き戻しを過信せず、節目では必ず Git にコミットしておくのが安全だ。
4. Gitとの違い・併用
公式は 「チェックポイントはローカルの“取り消し(undo)”、Git は“恒久的な履歴”」と位置づけ、「チェックポイントは適切なバージョン管理を“補完”するが“置き換え”はしない」と明言している。
- 自動・即時、設定不要
- セッション中の試行錯誤に最適
- 編集ツールのファイル変更が対象
- 30日(設定可)で消える
- コミット・ブランチ・長期保存
- bashの変更も含めて記録できる
- チームで共有・レビュー
- 消えない(あなたが消すまで)
使い分けはシンプル。セッション内の素早いやり直しはチェックポイント、durableな履歴は Git のコミット。大きな作業の節目ではコミットしておけば、巻き戻しでカバーできない範囲(bashの変更など)も含めて安全に戻れる。
5. エラーからの復旧にも使える
/rewind は会話が壊れて先に進めなくなったときの復旧手段でもある。Claude Code 公式のエラーリファレンスは、ツール利用の同時実行・thinkingブロック関連の 400エラーに対し、製品自身がこう案内する:「API Error: 400 ... /rewind を実行して会話を復旧してください」。Esc 2回で壊れたターンの前のチェックポイントまで戻り、そこから続ければよい。これは court / invoke タグ流出(tool_use同時実行)エラーの主要な復旧法でもある。
⚠️ バージョン注意:Opus 4.7/4.8 を使っているなら、まず claude update を。公式によれば v2.1.156 より前のバージョンでは通常のツール利用中にこのエラーが起き、/rewind でもクリアできないことがある。アップデートが先決だ。
巻き戻しでも原因に届かない場合(圧縮由来の破損など)は、/clear でまっさらに始め直す手もある。エラー全般の対処は Claude Codeのエラー集を参照。
6. 利用条件・保持期間
対話型の Claude Code(CLI)では既定で自動的に有効——特別な設定は要らない。一方、Agent SDK では明示的なオプトイン(enableFileCheckpointing 等)が必要で、両者は別物として区別したい。
保持期間は、セッションと一緒に30日(設定可)でクリーンアップされる。チェックポイントの保存場所やオン/オフの個別トグル、保持日数の具体的な設定キーは公式ドキュメントに明示がないため、本記事では断定しない(最新は公式で確認を)。リリースは Claude Code v2.0.0(2025年9月)で、当時「最も要望の多かった機能」として登場したと報じられている(リリース日・経緯は二次情報)。
まとめ
チェックポイントと /rewindは、Claudeのファイル編集を自動で追跡し、数キーで“やり直す前”まで戻せる安全網だ。各プロンプトが復元ポイントになり、/rewind か Esc 2回でメニューを開いてコード/会話/両方を戻せる。実用では 「コードを復元+会話は維持」で言い直す流れが中心になる。
最重要の注意は「復元されるのは Claude のファイル編集だけ」——bashコマンドの変更・外部での変更・ディレクトリ操作・DB等は戻らない。だからGitの置き換えにはならず、節目ではコミットを併用するのが鉄則だ。さらに /rewind は 400エラーなど壊れた会話からの復旧にも使える(古いバージョンは claude update が先)。関連:court/invokeエラー、Claude Codeエラー集、フック。
FAQ
Q. チェックポイントは何のための機能ですか?
A. 変更を“やり直す前”まで素早く巻き戻すための安全網です。Claude Code は編集のたびに自動でスナップショットを取り、あなたが送った各プロンプトが復元ポイントになります。AIに任せて失敗しても、/rewind か Esc 2回で過去の状態に戻れます。対話型CLIでは既定で有効です。
Q. どう使いますか?
A. /rewind と打つか、入力欄が空のときに Esc を2回押すとメニューが開きます。送ったプロンプトの一覧から戻したい地点を選び、「コードと会話を復元」「会話を復元」「コードを復元」のいずれかを選びます。よく使うのは「コードを復元(会話は維持)」で、何が悪かったかを踏まえて指示を言い直す流れです。なお入力欄に文字が残っていると Esc 2回は入力のクリアになる点に注意。
Q. bashで作ったファイルや削除も元に戻りますか?
A. いいえ。復元されるのは Claudeの編集ツール(Write/Edit/NotebookEdit)によるファイル変更だけです。bashコマンドの変更(rm・mv・cp 等)・セッション外や別セッションの変更・ディレクトリの作成/移動/削除・リモートファイルは巻き戻しで戻りません。データベースの状態など「ファイル編集ではない副作用」も同様です。だからこそ節目では Git にコミットしておきましょう。
Q. Gitの代わりになりますか?
A. なりません。公式は「チェックポイント=ローカルの取り消し、Git=恒久的な履歴」と位置づけ、補完はするが置き換えはしないと明言しています。チェックポイントはセッション中の素早いやり直しに最適で、30日(設定可)で消えます。コミット・ブランチ・長期保存・チーム共有は引き続き Git で行ってください。
Q. エラーで会話が進まなくなったときにも使えますか?
A. はい。ツール利用の同時実行や thinking ブロック関連の 400エラーでは、製品自身が 「/rewind を実行して会話を復旧してください」と案内します。Esc 2回で壊れたターンの前まで戻って続行してください。ただし v2.1.156 より前のバージョンでは /rewind でクリアできないことがあるため、Opus 4.7/4.8 利用時はまず claude update を。court/invokeエラーの記事も参照。