CARLOS LASTRES お問い合わせ

Claude Codeのチェックポイントと/rewindで安全にやり直す

Escを2回押すだけで変更を巻き戻せます。チェックポイントの仕組み、戻せないもの、コミットやworktreeと組み合わせた大胆な試し方を解説します。

日本の職場で働く人ほど、Claude Codeを慎重に使いすぎている印象があります。一手ごとに確認し、大きな変更は頼まず、失敗しそうな案は最初から出させない。丁寧に見えますが、実際にはClaudeの一番の強みである「試す速さ」を捨てています。Claude Codeには、すぐに元に戻せる仕組みが最初から入っています。

この記事では、チェックポイントと/rewindの仕組み、戻せないものの見分け方、そして安全に大胆な変更を試す手順をまとめます。

チェックポイントとは

ターンを開始するプロンプトを送るたびに、チェックポイントが一つ作られます。Claudeがファイル編集ツールで変更する前の状態が記録されるので、設定は何も要りません。

  • 1セッションにつき、直近100個のチェックポイントのスナップショットが保存されます
  • 会話と一緒に保存されるため、ターミナルを閉じてもセッションを再開すれば巻き戻せます
  • スナップショットは既定では約30日後に自動で削除されます。期間はcleanupPeriodDaysで変更できます

巻き戻し方

入力欄が空の状態でEscを2回押すか、次のように入力します。

/rewind

/checkpointや/undoでも同じメニューが開きます。入力欄に文字がある場合、最初のEsc2回は入力のクリアになります。消した文字は入力履歴に残るので、上矢印キーで呼び戻せます。

メニューには、このセッションで送ったプロンプトが並びます。戻りたい地点を選び、次の中から操作を選びます。

  • Restore code and conversation:コードも会話も、その時点に戻す
  • Restore conversation:会話だけ戻し、ファイルは今のまま
  • Restore code:ファイルだけ戻し、会話は残す
  • Summarize from here / up to here:会話の一部を要約してコンテキストを空ける

私が一番よく使うのはRestore codeです。試した案は失敗しても、「なぜ失敗したか」という会話には価値があります。Claudeはその経緯を覚えたまま、ファイルだけきれいな状態に戻ります。

逆に、コードは良いのに会話が脱線してしまったときはRestore conversationが便利です。ファイルはそのままに、話だけを脱線する前の地点に戻せます。長いデバッグで会話が重くなったときは、Summarize from hereで途中から先を要約すれば、最初に伝えた前提を残したままコンテキストを軽くできます。

また、同じClaude Codeのプロセス内で/clearした場合も、v2.1.191以降ならメニューの一番上に直前のセッションが表示され、そこから戻れます。

戻せないもの

ここが一番大事です。チェックポイントが記録するのは、Claudeのファイル編集ツールによる変更だけです。

  • rmやmvなどのシェルコマンド、フォーマッター、コード生成、DBマイグレーションによる変更
  • 多くの場合、サブエージェントによる編集
  • 自分がエディタで行った変更や、同時に動いている別セッションの変更
  • シンボリックリンクやハードリンクのファイル
  • push済みのコミット、デプロイ、送信したメール、本番データの変更

つまりチェックポイントは、手元のファイル編集のための「すぐ効くやり直し」です。バックアップでもバージョン管理でもありません。特に会社のリポジトリでは、本番環境や共有データに触れる操作は巻き戻しの対象外だと、チーム全員で共有しておくと安心です。

大胆に試すための手順

まず、コミットします。チェックポイントでカバーできない部分は、これが守ってくれます。

git add -A
git commit -m "レイアウト実験の前"

次に、制約をはっきり書いたうえで、大胆な案を頼みます。

設定画面をタブ形式から、1ページのスクロール形式に作り直してください。
普段なら慎重になるような大きめの変更で構いません。途中の確認は不要です。
ただし、ファイルの変更は編集ツールだけで行い、
シェルでの削除、パッケージの追加、マイグレーション、pushはしないでください。
終わったら、変更したファイルの一覧と、やり直すなら何を変えるかを教えてください。

結果を見て良ければコミット。だめならEscを2回押し、この依頼を送った地点を選んでRestore codeです。何が分かったかをClaudeに伝えて、次の案を試します。

二つの案を並べて比べたいとき

/branchは会話をその地点で分岐させます。元の会話は/resumeで戻れます。ただし分岐するのは会話だけで、ファイルは共有のままです。

ファイルごと別々に試したいなら、Gitのworktreeで別セッションを立ち上げます。

claude --worktree layout-b

それぞれが自分のファイルのコピーで作業するので、二つの案が互いを上書きしません。

数分単位のやり直しは巻き戻し、一日単位の区切りはコミット、本格的な比較はworktree。この使い分けができると、慎重さを保ったまま速く動けます。次の作業でまずコミットし、普段なら頼まない案を一つ試してみてください。

関連ガイド

← AIガイド一覧へ