Claude Code には、Claude が変えたファイルを元に戻す /rewind(入力欄が空のときに Esc を2回でも開く)があります。
では、どこまで戻せるのか。ダミーのファイルを5通りの方法で変えさせ、/rewind で戻るかを15回測りました。
/rewind でファイルを元に戻せたか(各3回)
Claude にさせたこと 使われたツール 戻せたか
1行書き換え Edit 3/3
全体を上書き Write 3/3
新しいファイルを作る Write 3/3(ファイルが消えて元どおり)
ファイルを削除 PowerShell の Remove-Item 0/3(Restore code が出ない)
サブエージェントに書き換えさせる Agent 0/3(Restore code が出ない)
検証環境: Windows 10 / Claude Code 2.1.300 / 本体モデルは Sonnet 5.5 / 対話モードを別コンソールで起動し、
キー入力と画面の読み取りを自動化 / 使い捨てのフォルダとダミーのテキストファイル / 測定は 2026-10-15
測り方
使い捨てのフォルダに、数行のテキストファイルを3つ置きました。頼んだのはこの5つです(どれも末尾に「ほかは何もしないで」)。
-
notes.txtの3行目を CHANGED に書き換えて -
config.txtの中身を NEW の1行だけに書き直して -
new.txtを作って hello と書いて -
old.txtを削除して - サブエージェントを1つ起動し、
notes.txtの3行目を書き換えさせて
Claude の作業が終わったら /rewind を開き、そのプロンプトを選んで 3. Restore code(会話はそのまま、ファイルだけ戻す)を選びました。Restore code が出なかった回は、何も選ばずに終えています。判定はファイルの中身のハッシュです。
Claude の編集ツールで変えたものは、9回とも戻った
書き換え・上書き・新規作成の9回は、すべて元どおりになりました。新しく作ったファイルは、消えて元の状態に戻ります。
/rewind のメニューでは、プロンプトの下に変わったファイルと行数が出ていました。
notes.txt の3行目を CHANGED に書き換えて。ほかは何もしないで。
notes.txt +1 -1
プロンプトを選んだあとの確認画面には、こう出ます。
The code will be restored +1 -1 in notes.txt.
...
‼ Rewinding does not affect files edited manually or via bash.
最後の1行に、戻せないものの一部が書いてあります。 手で編集したファイルと、シェルで変えたファイルです。
削除したファイルは、3回とも戻らなかった
削除を頼んだ3回は、3回とも Claude が PowerShell の Remove-Item で消しました。 /rewind のメニューにはこう出ます。
old.txt を削除して。ほかは何もしないで。
No code changes
確認画面は The code will be unchanged. で、選択肢は Restore conversation と要約2つと Never mind だけでした。Restore code がそもそも出ません。
ドキュメント(checkpointing、2026-10-15 取得)にも書いてあります。
Checkpointing does not track files modified by Bash commands.
例として rm file.txt が挙がっています。今回の Windows では PowerShell でしたが、シェルで消したものは戻らない点は同じでした。
サブエージェントの書き換えも、戻らなかった
サブエージェントに書き換えさせた3回も、メニューは No code changes で Restore code が出ず、ファイルは書き換わったままでした。
Any other subagent: rewinding doesn't restore the edits. Use git to revert them.
見分け方は、メニューのプロンプトの下
| メニューの表示 | 意味 |
|---|---|
notes.txt +1 -1 のようにファイル名が出る |
そのファイルは戻せる |
No code changes |
このプロンプトで変わったファイルは、1つも戻せない |
No code changes でも、ファイルが変わっていないとは限りません。 今回の削除とサブエージェントの6回は、どれも実際にファイルが変わっていました。
VS Code の拡張機能では /rewind と打っても開かない
VS Code の拡張機能(2.1.296)で /rewind と打つと、/rewind isn't available in this environment. と出ました。
拡張機能では、メッセージにマウスを乗せると出る巻き戻しボタンを使います(ドキュメント vs-code)。制限については同じチェックポイントのページを見るよう案内されています。拡張機能のボタンでは試していません。
戻せないものに備える
ドキュメントは、チェックポイントを「セッションの中で手早く戻すためのもの」と位置づけ、長く残す履歴には Git を勧めています。
Checkpoints are designed for quick, session-level recovery. For permanent version history and collaboration, continue using version control, such as Git, for commits, branches, and long-term history.
消える可能性のある作業を頼む前に、git commit しておくのが一番確実です。Git で管理していないファイルをシェルで消された場合は、/rewind でも Git でも戻せません。
言えないこと
- Windows 10・Claude Code 2.1.300・Sonnet 5.5 だけ、各3回です
-
削除は3回とも PowerShell でした。 Git Bash の
rmは今回 Claude が選ばなかったので測っていません(ドキュメントは戻らないと書いています) - ファイルは数行のテキスト3つだけです。大きいファイル、シンボリックリンク(ドキュメントでは戻らない)は試していません
- 1つのプロンプトで編集と削除が混ざった場合は試していません
- 選んだのは
3. Restore codeだけです。1. Restore code and conversationは試していません - チェックポイントの保存期間(ドキュメントでは約30日)と、100件までという上限は確かめていません
まとめ
-
Claude が Edit・Write で変えたファイルは、
/rewindの Restore code で戻った。 新しく作ったファイルは消えた - シェルで消したファイルと、サブエージェントが変えたファイルは戻らなかった
-
見分け方は、
/rewindのメニューのプロンプトの下。No code changesなら、そのプロンプトで変わったものは戻せない - VS Code の拡張機能では、
/rewindの代わりにメッセージの巻き戻しボタン - 消える可能性のある作業の前には、
git commit
取り消したいと思ったら、まず /rewind を開いて、プロンプトの下にファイル名が出ているかを見てください。
関連記事
- Claude Code を閉じても、裏で起動したサーバーが残ることがある。見分け方は画面下の「1 shell」 — 画面の表示で見分けられる別の例
- Shift-JIS のファイルを Claude Code で1か所直したら、日本語が全部壊れて戻せなくなった — Git でしか戻せなかった例
JQITのエンジニアの95%以上は未経験からの採用です。
よければコーポレートサイトにも遊びに来てください。
エンジニア採用も行っています。もしご興味あれば覗いてみてください。
▶ 採用サイト