CC for Biz
23

Checkpointingと/rewindで安全に巻き戻す

壊しても戻れるから、安心して任せられる

「壊されたらどうしよう」が任せられない理由

Claude Codeに仕事を任せるとき、多くの経営者・非エンジニアの方が最初に感じるのは 「間違ったことをされたら、自分では直せない」という不安です。 エンジニアならgitというバージョン管理の仕組みで元に戻せますが、 gitを使ったことがない方にとっては、AIがファイルを書き換えること自体が怖い。 この心理的な壁が、AI活用が一歩目で止まる最大の理由です。

この不安への答えは、Claude Codeに標準で用意されています。 それが本ページで解説するCheckpointing(チェックポイント機能)/rewindコマンドです。 結論から言うと、Claudeが行ったファイル編集と会話は、いつでもセッション内の過去の時点に巻き戻せます。 gitの知識は一切不要です。

ポイント: Checkpointingは設定不要で最初から有効になっている標準機能です。 「壊しても戻れる」という保険が常に効いているからこそ、 大きめの作業も思い切って任せられます。 「失敗が怖いから小さなことしか頼めない」という状態から抜け出す鍵がこの機能です。

Checkpointingとは — 自動で作られるセーブポイント

Checkpointingは、Claudeがファイルを編集する前の状態を自動的に記録し続ける仕組みです。 ゲームのセーブポイントを想像してください。 あなたが指示を送るたびにセーブが作られ、失敗したらそこからやり直せます。

  • 指示を送るたびに自動作成 — あなたがプロンプトを送信するたび、その直前のコードの状態がチェックポイントとして記録されます
  • 直近100件を保持 — 1セッションにつき、直近100個のチェックポイントのファイルスナップショットが保存されます
  • セッションを再開しても有効 — チェックポイントは会話と一緒に保存されるため、一度閉じたセッションを再開した後でも/rewindで巻き戻せます
  • 保存期間は30日 — セッションとともに30日後に削除されます(設定のcleanupPeriodDaysで変更可能)

特別な操作は何も要りません。あなたが普段どおりClaudeに指示を出しているだけで、 裏側では「戻れる地点」が積み上がり続けています。

/rewindの使い方

巻き戻しメニューの開き方

巻き戻しメニューの開き方は2通りあります。 どちらも、Claudeに文章で頼むのではなくあなた自身が操作するコマンドです。

# 方法1: コマンドを入力する
/rewind

# 方法2: 入力欄が空の状態で Esc キーを2回押す

注意点として、入力欄に書きかけの文章が残っている状態でEscを2回押すと、 メニューは開かず入力テキストの消去になります。 消えたテキストは入力履歴に保存されるので、上矢印キーで呼び戻せます。

メニューの6つの選択肢

メニューには、このセッションであなたが送った指示が時系列で一覧表示されます。 戻りたい時点を選ぶと、次の選択肢が表示されます。

Restore code and conversation
  — コードと会話の両方をその時点に戻す(完全なやり直し)

Restore conversation
  — 会話だけその時点に戻す(今のコードは維持)

Restore code
  — コードだけその時点に戻す(会話のやりとりは維持)

Summarize from here
  — この時点以降の会話を要約に圧縮する

Summarize up to here
  — この時点までの会話を要約に圧縮する

Never mind
  — 何もせずメニューを閉じる

コードを戻す2つの選択肢は、選んだ時点以降にファイル編集があった場合にだけ表示されます。 また「Restore conversation」や「Restore code and conversation」で巻き戻すと、 その時点であなたが送った指示文が入力欄に自動で復元されるので、書き直してすぐ出し直せます

「コードだけ」「会話だけ」の使い分け

3つの復元は、次のように使い分けます。

  • 両方戻す — 「この方向は失敗だった」と分かったとき。 コードも話の流れも、うまくいっていた時点からやり直します
  • コードだけ戻す — 説明ややりとりの内容は役に立ったが、 ファイルの変更結果が気に入らないとき。会話の文脈を保ったまま作り直させます
  • 会話だけ戻す — 出来上がったコードには満足しているが、 やりとりが長く脱線してしまったとき。成果物は残して話を仕切り直します

なお「Summarize」の2つは巻き戻しではなく、会話を要約して作業記憶の空きを作る機能です。 詳しくはコンテキスト管理とトークン最適化のページで解説しています。

どんな場面で巻き戻すか

公式ドキュメントが挙げている代表的な使いどころは次の3つです。 いずれも「戻れる」という前提があって初めて可能になる働き方です。

  • 別のアプローチを試す — 実装案Aを試し、巻き戻して案Bを試す。元の状態を失わずに複数案を比較できます
  • ミスからの復旧 — バグが入った、動いていた機能が壊れた、というときに即座に取り消せます
  • 機能の試行錯誤 — 「いつでも動く状態に戻れる」と分かっているから、思い切った変更を実験できます

公式ベストプラクティス「2回直させてダメなら仕切り直す」

巻き戻しの最も実務的な使い方がこれです。 Claudeの出力が意図と違ったとき、「そうじゃなくて、こうして」と訂正を重ねたくなりますが、 訂正のラリーを続けるほど、失敗の履歴がAIの作業記憶に積み上がり、かえって精度が落ちていきます。

そこでAnthropicが推奨しているのが、2回訂正してうまくいかなければ、続けて直させるのではなく巻き戻して指示を書き直すという運用です。/rewindで失敗した指示の前まで戻り、失敗から学んだ条件を盛り込んだ新しい指示を出し直します。

(/rewindで失敗した指示の前まで戻した後、こう出し直す)

さっきは「料金表を見やすくして」という頼み方で、
意図と違うデザインになりました。
今回は次の条件で作り直してください。

・表は3列の構成のまま維持する
・色は今のサイトの配色から変えない
・スマホ表示で横スクロールが出ないようにする

コツは「前回と同じ指示+追加の訂正」ではなく、最初から条件を盛り込んだ新しい指示に作り直すことです。 巻き戻すと元の指示文が入力欄に自動で戻ってくるので、 そこに条件を書き足すだけで済みます。 失敗の履歴が消えたまっさらな状態で、改善された指示から再スタートできるのが巻き戻しの価値です。

巻き戻せないものを正直に知っておく

Checkpointingは万能ではありません。 何が戻らないのかを正確に知っておくことが、本当の意味で「安心して任せる」ための条件です。 公式ドキュメントに明記されている対象外は次のとおりです。

  • コマンド操作によるファイル変更 — Claudeがターミナルコマンド(rmによる削除、mvによる移動、cpによるコピーなど)で 行ったファイル操作は追跡されません。 巻き戻せるのは、Claudeのファイル編集ツールによる変更だけです
  • サブエージェントの編集 — 並列で動く別エージェントに任せた編集は、このセッションのチェックポイントの外側で行われるため、 巻き戻しでは戻りません。こちらはgitで戻します
  • Claude Codeの外での変更 — あなたが自分でエディタから手編集した分や、並行して動いている別セッションの変更は記録されません
  • 特殊なリンクファイル — シンボリックリンク等の特殊なファイルは復元がスキップされ、その旨の警告が表示されます

そしてもう1つ、仕組み上決して戻せないものがあります。外部へ出て行った操作です。 送信済みのメール、公開されたSNS投稿、外部サービスへの書き込みや決済は、 手元のファイルの変更ではないため、巻き戻しの対象になりません。 これはCheckpointingの欠陥ではなく、「巻き戻し」という仕組みの原理的な限界です。

だからこそ、外部への送信は巻き戻しで救うのではなく、実行前の権限設定で入口を守ります。 考え方と設定方法はセキュリティと権限設計のページで解説しています。

ポイント: 覚えておくべき原則は「ファイルの変更は後から戻せる。外部への送信は事前に止める」の2本立てです。 この2つを押さえれば、AIに任せる範囲を安心して広げられます。

コマンド操作にも保険をかける指示例

コマンドによる削除・移動が巻き戻し対象外である以上、 ファイルの整理や大規模な移動を頼むときは、事前に戻り先を作らせておくのが安全です。 Claude Codeには、こう頼んでください。

ここから先はファイルの削除や移動を伴う作業です。
作業を始める前に、今の状態をgitでコミットして、
戻れるポイントを作ってから進めてください。

gitのコミットとは「この時点の状態を記録に残す」操作で、 チェックポイントの手動版のようなものです。 操作はすべてClaudeが実行してくれるので、あなたがgitコマンドを覚える必要はありません。 「大きな操作の前には記録を残してから」という一文を添える習慣だけで、 巻き戻しの穴だったコマンド操作にも保険がかかります。

Gitとの住み分け — ローカルのやり直しと恒久的な履歴

「gitがあればCheckpointingは不要では」という疑問には、公式が明確に答えています。 チェックポイントは「ローカルのやり直し(local undo)」、 gitは「恒久的な履歴(permanent history)」。 置き換えの関係ではなく、補完の関係です。

  • 日常の「あ、失敗した」/rewindで数秒で戻す。 コミットの単位や粒度を考える必要がなく、指示1回ごとに戻り先がある
  • 節目の保存・共有・納品の履歴 — gitに残す。 30日で消えるチェックポイントと違い、恒久的に記録され、チームでも共有できる

非エンジニアの方にとって重要なのは、日常の巻き戻しにはgitの知識が要らなくなったという点です。 かつては「AIに任せるならまずgitで自衛を」というのが定番の助言でしたが、 いまは標準機能だけで日々の失敗から復帰できます。 そのうえで、チーム開発や本格的な履歴管理に進む段階になったら、チーム展開とGit/PRワークフローのページに進んでください。

まとめ

Checkpointingは、指示を送るたびに自動でセーブポイントを作り、/rewindでコードと会話をいつでも巻き戻せる標準機能です。 gitを知らなくても、失敗したらやり直せます。 2回訂正してうまくいかなければ、巻き戻して指示を書き直す。 コマンドによるファイル操作や外部への送信は巻き戻せないので、 前者は事前コミットの一文で、後者は権限設定で守る。 この運用を身につければ、「壊したらどうしよう」という不安は 「壊しても戻れる」という前提に変わり、AIに任せられる仕事の幅が一段広がります。

導入のご相談はお気軽に

個別のご質問・導入相談を承っています。

無料相談・お問い合わせ
© 2025 Fyve Inc. All rights reserved.