ガイド公開日
巻き戻しと会話の畳み方で、やり直せる状態を保つ

Claude Code 集中講座の第8回。依頼ごとに作られるチェックポイントと /rewind でできることを整理し、巻き戻しが戻さないものを明示します。長くなった会話を畳む3つの手も扱います
第4回で「受け入れない」という選択肢に触れました。この回は、それを実際に行う方法の話です。
やり直す手段は2つあります。Claude Code が自動で作るチェックポイントと、Git です。2つは守っている範囲が違います。違いを知らないまま片方に頼ると、戻せると思っていたものが戻りません。
チェックポイントは、依頼のたびに作られる
公式ドキュメントによれば、Claude Code は作業中のファイルの状態を自動で記録します。あなたが送る依頼のたびに、1つのチェックポイントが作られます。
保持されるのは、セッションの中の直近100件です。それより古いものは捨てられます。セッションを再開したあとでも巻き戻せるよう、チェックポイントは会話と一緒に保存されます。
/rewind でできる5つのこと
/rewind と打つか、入力欄が空の状態で Esc を2回押すと、メニューが開きます。そのセッションで送った依頼が並ぶので、戻りたい地点を選びます。
選んだあとにできることは5つです。
| 選択肢 | 何が起きるか |
|---|---|
| コードと会話を戻す | その地点まで両方を戻す |
| 会話を戻す | 会話だけ戻し、コードは現在のまま |
| コードを戻す | ファイルの変更だけ戻し、会話は残す |
| ここから先を要約する | その地点以降の会話を要約に畳み、文脈を空ける |
| ここまでを要約する | その地点より前を畳み、以降はそのまま残す |
真ん中の3つが、それぞれ別の場面に効きます。
コードと会話を戻すのは、依頼そのものが間違っていたときです。出発点に戻ってやり直します。
会話だけ戻すのは、コードは気に入っているが、そこに至る説明が長すぎるときです。
コードだけ戻すのは、少し変わった使い方です。会話の中に「こう直そうとして失敗した」という記録を残したまま、ファイルだけ元に戻せます。同じ失敗を繰り返させないための形になります。
会話を戻したあとは、選んだ地点の依頼文が入力欄に戻ります。そのまま送り直すことも、直してから送ることもできます。
巻き戻しが戻さないもの
ここがこの回の中心です。公式ドキュメントは、巻き戻しの対象外をはっきり列挙しています。
シェルのコマンドが変えたファイルは戻りません。 記録されているのは、Claude のファイル編集の道具が行った変更だけです。rm、mv、cp のようなコマンドで動いたファイルは対象外です。
サブエージェントの編集は、多くの場合戻りません。 第12回で扱いますが、分けて走らせた作業の編集は、通常はセッションのチェックポイントに入りません。
セッションの外で起きた変更は記録されません。 自分で手で直したファイルや、別のセッションの編集は対象外です。
シンボリックリンクとハードリンクの先は戻りません。 復元のときに飛ばされ、何件飛ばしたかの警告が出ます。
作業中に割り込んだメッセージは、チェックポイントを作りません。 Claude が動いている間に送ったメッセージがその回に合流した場合、その分のチェックポイントはできません。取り消したいときは、その回を始めた依頼まで戻ることになります。
だから Git は要る
上の一覧を見ると、「戻せると思っていたのに戻らない」が起きる条件がはっきりします。
公式ドキュメントも明言しています。チェックポイントはセッション単位の素早い復旧のためのもので、恒久的な履歴と共同作業にはバージョン管理を使い続けてください、と。
実際の運用としては、こう分けるのが安全です。
- 数分前の1件をやり直したいならチェックポイント
- 今日の作業をまとめてなかったことにしたいなら Git
- 他の人に見せる区切りを作りたいなら Git
第4回で「Git の管理下にあるフォルダを開いてください」と書いたのは、この2つ目と3つ目のためです。Git そのものの使い方はCodex 集中講座の第7回にまとめてあります。
会話が長くなったときの3つの手
もう1つの話題に移ります。文脈の管理です。
会話が長くなると、古いやり取りに引きずられた返答が増えます。作業を変えたのに会話を続けていると、前の作業の前提で答えが返ってきます。手は3つあります。
/compact は、それまでのやり取りを要約した状態に畳みます。話題が変わったところで使うのが目安です。何に重点を置くかを添えることもできます。
/clear は、会話を捨てて新しく始めます。前の作業と完全に無関係な作業に移るときに使います。
/rewind の要約は、範囲を選んで畳みます。「デバッグの試行錯誤だけ畳んで、最初の指示は残したい」のような、細かい使い分けができます。
文脈がどれだけ埋まっているかは /context で見られます。何が入っているかも表示されるので、思ったより大きいものが居座っていることに気づけます。
なお、文脈が上限に近づくと自動で圧縮が走ります。自分で畳むかどうかは、自動の圧縮を待つかどうかの違いです。自分で畳むほうが、何を残すかを選べます。
畳んでも残るもの
畳むと何が消えるのか、という点を押さえておきます。
公式ドキュメントによれば、プロジェクトの根にある CLAUDE.md は圧縮のあとにディスクから読み直され、セッションに入れ直されます。下位のフォルダにある CLAUDE.md や、条件つきの規則は、該当するファイルを読んだときに読み込み直されます。
消えるのは、会話の中だけで伝えた指示です。「この作業では常にこの形式で書いて」と口頭で言っただけのものは、畳むと落ちます。
対処は単純です。畳んでも残ってほしい指示は、ファイルに書く。第9回で扱う CLAUDE.md は、この「残ってほしいもの」の置き場所です。
別の道を試したいとき
いまの会話を残したまま、別のやり方を試したいことがあります。
/clear は捨てる操作なので使えません。/rewind の要約も、同じセッションの中で畳む操作です。
分岐させるには /branch を使うか、ターミナル版なら次の形で始めます。
claude --continue --fork-session
元のセッションはそのまま残り、新しい枝で別の方針を試せます。第12回で扱うサブエージェントの「フォーク」も同じ考え方で、あちらは会話全体を引き継いだ別の作業者を作ります。
うっかり /clear してしまった場合にも道があります。同じ Claude Code のプロセスの中であれば、巻き戻しのメニューの先頭に、消す前のセッションへ戻る項目が出ます。
やり直せる状態を保つという設計
この回で扱った仕組みは、どれも「間違えたあとの話」です。
ただ、効き目が出るのは間違える前です。やり直せると分かっていると、大きめの依頼を出すことへの抵抗が減ります。 第4回で最初の依頼を小さくしろと書いたのは、まだこの安全網の使い方を知らなかったからです。ここまで来たら、もう少し大きな依頼を出して構いません。
代わりに、確認する場所を先に決めておいてください。差分の読み方(第4回)、モードの選び方(第5回)、計画の読み方(第7回)。3つとも、やり直す回数を減らすためではなく、やり直すべきかどうかを早く判断するための仕掛けです。
次の回
第8回までで、1人で1つの作業を進める形は全部そろいました。
第9回からは、毎回同じことを言わずに済ませる話に移ります。まず CLAUDE.md と、Claude 自身が書き留める自動メモリからです。
参照した公式情報
- Anthropic「Checkpointing」「Explore the context window」「How Claude remembers your project」(code.claude.com/docs、2026年9月時点)
よくある質問
- チェックポイントがあれば Git は要りませんか
- 要ります。公式ドキュメントは「チェックポイントはセッション単位の素早い復旧のためのもので、恒久的な履歴と共同作業にはGitなどのバージョン管理を使い続けてください」と書いています。実際、シェルのコマンドが書き換えたファイルはチェックポイントに入りません。
- 巻き戻しはどこから呼びますか
- `/rewind` と打つか、入力欄が空の状態で Esc を2回押すと、巻き戻しのメニューが開きます。入力欄に文字が残っていると、Esc の2回押しは入力を消す動作になります。消した文字は入力履歴に残るので、上矢印で戻せます。
- 会話を畳むと、CLAUDE.md の内容も消えますか
- 消えません。公式ドキュメントによれば、プロジェクトの根にある CLAUDE.md は圧縮のあとにディスクから読み直され、セッションに入れ直されます。消えるのは、会話の中だけで伝えた指示です。残したいならファイルに書いてください。



