「昨日の続きから始めたいだけなのに、どこへ行けば戻れるのか分からない」。Claude Codeを日常的に使っていると、この状態に一度は行き当たります。
セッションは、こちらの都合を待たずに切れます。アップデート、再起動、電源の落ちたノートPC。切れ方はさまざまでも、困り方はいつも同じです。何を話していたかは覚えているのに、その会話がどこに置かれているのかが分かりません。
この記事は、中断した会話を呼び戻す手順と、呼び戻したあとに残る「戻っていないもの」の見分け方を扱います。素材は公式ドキュメントと、運営元での運用実例です。
こんなふうに調べていませんか
- 再起動したら会話が消えた。昨日の続きから始めたいだけなのに、戻り方が分からない
--resumeは打った。それでも、探しているセッションが一覧に出てこない- 復元はできた。ただ、前と同じように動いていない気がして落ち着かない
この記事を読み終えたときに手に入るもの
- 3つの入口を、探しにいく範囲の違いで選び分けられるようになります
- 黙って戻る状態と、起動のたびに渡し直す設定を線引きできるようになります
- 呼び戻せないときに、どこから疑うかを順に切り分けられるようになります
結論30秒でわかる、この記事の結論
- 復元は、ディスクに書かれた会話を新しいプロセスへ差し戻す標準機能です。会話は戻りますが、起動のときに渡した設定は戻りません。
- 入口は3つあり、違うのは手数ではなく「どこまで探しにいくか」です。範囲を取り違えると、あるものが見つかりません。
- 戻ったかどうかは画面の見た目ではなく、モデル・エージェント・権限モード・起動フラグの4点で確かめます。
進行役は3人です。若葉さんが用語の側から、高梨課長が自分の手で動かす側から聞き、鈴木さん(本誌監修)が答えます。
01Claude Codeのセッション復元って、AIエージェントの作業を何から呼び戻す仕組みなんですか?
若葉さん復元というと、どこかに保存ボタンがあるということでしょうか。
鈴木さん議事録に近いと思っています。会議が終わってから清書するのではなく、発言のたびに書き足されていく議事録です。だから途中で部屋の電気が落ちても、そこまでは残っています。
Claude Codeのセッション復元は、直前までの会話をディスクから読み込み、新しいプロセスへ差し戻す機能です(出典: Claude Code公式ドキュメント「Manage sessions」)。追加のインストールは要りません。
書き出し先は~/.claude/projects/の下です。プロジェクトごとのディレクトリの中に、セッションIDをファイル名にしたJSONL形式のファイルが置かれます。1行が1メッセージという形です(出典: 同ドキュメント)。
セッションIDはUUID形式で、550e8400-e29b-41d4-a716-446655440000のような文字列になります。人が覚えて打ち込む形ではありません。だからこそ、あとで触れる「名前を付ける」操作が効いてきます。
いちばん大事なのは、書き込みのタイミングです。会話は終了を待たず、操作のたびに逐次書かれます(出典: 同ドキュメント)。こちらが「保存しておこう」と考える機会は、そもそも用意されていません。
裏を返すと、落ちたあとに残っているかどうかは、落ち方では決まりません。そこまで操作が進んでいたかどうかで決まります。強制終了だから消えたはずだ、という心配の仕方は当たっていないことになります。
02セッションを呼び戻す入口は3つあると聞きました。AI社員に毎朝続けさせるなら、どれを選ぶんですか?
入口は3つです。違うのは操作の手数ではなく、どこまで探しにいくかです。
| コマンド | 対象 | 探索範囲 | 使う場面 |
|---|---|---|---|
claude --continue(-c) | 直前のセッション1件 | 現在のディレクトリと/add-dirで追加した範囲 | 同じ作業を毎朝続けるとき |
claude --resume(-r) | セッション選択ピッカー | 現在のワークツリー。Ctrl+Wで全ワークツリー、Ctrl+Aで全プロジェクトへ広げられる | どのセッションか名前を思い出せないとき |
claude --resume <名前> | 名前を付けたセッション1件 | 同一リポジトリと配下のワークツリー | 名前を狙って呼び出したいとき |
(出典: Claude Code公式ドキュメント「Manage sessions」)
毎朝おなじ作業に戻るだけなら、--continueがいちばん短い道です。迷いようがない代わりに、拾えるのは直前の1件だけになります。
名前で呼ぶには、先に名前を付けておきます。方法は3つあり、起動時に-nを渡す、セッション中に/renameを打つ、ピッカーの中でCtrl+Rを押す、のいずれかです(出典: 同ドキュメント)。
UUIDを控えておくより、名前を付けるほうが運用に乗ります。あとから探す人が、記憶ではなく言葉で探せるからです。定期的に戻る作業ほど、この差が効いてきます。
この章のまとめ
入口の違いは速さではなく射程です。手が覚えている作業は--continue、記憶があいまいなときは--resume、狙って指したいときは名前、と覚えておきます。
03Claude Codeのセッション復元を始める前に、AIエージェントの何を確かめるんですか?
呼び戻す前に見ておく前提が3つあります。ここを飛ばすと、あとの手順がまるごと空振りします。
検証環境は、claude-opus-5・Claude Code v2.1.x・macOS 15、2026-07-28時点の確認です。バージョンで挙動が変わる機能があるため、先に並べておきます。
- ディレクトリ:セッションIDでの検索は、起動したディレクトリとそのgit worktreeに限られます(出典: 同ドキュメント)。別のディレクトリで探すと見つかりません。
- バージョン:機能追加はバージョンで区切られています。バックグラウンドセッションの表示はv2.1.144以降、
/clearのあとに前の会話へ戻る行の表示はv2.1.191以降です。 - 権限モード:
planモードとbypassPermissionsモードは、復元のときに自動では引き継がれません(出典: 同ドキュメント)。使っていたなら、起動フラグか設定で入れ直します。
この3つに共通するのは、どれも「復元が失敗する」という形では出てこないところです。復元そのものは成功したように見えて、探す場所が違う、その版にまだ機能が無い、モードだけが外れている、という表れ方をします。
04中断したセッションに戻る手順は、AI導入の現場でどんな順に踏むんですか?
手順は4段です。1段ずつ、打つものと見るものをセットで置いていきます。
ステップ1|セッションを特定する
- 入力:元の作業ディレクトリへ
cdし、claude --resumeを実行する - 確認:ピッカーに、探している会話の名前かタイトルが出るか
cd ~/projects/my-app
claude --resume出てこないときは、Ctrl+Wで同じリポジトリの全ワークツリーへ、Ctrl+Aで同じマシン上の全プロジェクトへ、探す範囲を広げます(出典: 同ドキュメント)。ここで打ち直すのはコマンドではなく、範囲を変えるキーのほうです。
ステップ2|呼び戻す
- 入力:ピッカーで選んで
Enterを押す。名前が分かっているなら、そのままコマンドへ渡す - 確認:会話履歴の最後のやり取りが、中断した内容と合っているか
claude --resume auth-refactorステップ3|戻った状態を見比べる
- 入力:なし。起動した直後の画面をそのまま読む
- 確認:モデル・エージェント・権限モードが想定どおりか。
/contextコマンドでも確かめられる
ここは飛ばしたくなりますが、見比べる相手は会話ではなく設定です。会話が並んでいることは、設定が揃っている根拠になりません。
ステップ4|戻らなかった設定を言い直す
- 入力:元のセッションが使っていた
--mcp-configや--add-dirなどを、復元のコマンドへ付け直す - 確認:意図したMCPツールや、追加したディレクトリのファイルへ手が届くか
settings.jsonとsettings.local.jsonは起動のたびに読み直されます。この2つに書いた設定は、言い直す必要がありません(出典: 同ドキュメント)。
05復元された直後、エージェントの状態はどこまで元どおりになっているんですか?
戻るものと戻らないものは、公式ドキュメントで分かれています。
| 状態 | 復元されるか | 条件・注意 |
|---|---|---|
| 会話履歴(ツール呼び出し含む) | される | 全文が復元される |
| モデル | 原則される | 廃止済みモデルや--model指定時は上書きされる |
| エージェント | 原則される | 元のディレクトリで見つからないと警告つきで既定に戻る |
| 権限モード | 条件付き | plan・bypassPermissionsは毎回引き継がれない |
| アクティブなゴール | される | ターン数・タイマー・トークン基準はリセットされる |
| スケジュール済みタスク | される | 期限切れは対象外。バックグラウンドのBash・監視タスクは対象外 |
--mcp-config・--settings・--plugin-dir・--fallback-model | されない | 復元のたびに渡し直す |
/add-dirで追加したディレクトリ | されない | 起動フラグで渡し直す |
(出典: Claude Code公式ドキュメント「Manage sessions」)
高梨課長会話が戻っているなら、もう同じ状態だと思ってしまいそうです。
鈴木さんそこが分かれ目です。画面に出るのは会話のほうなので、戻らなかった側は黙っています。気づくのは、たいてい何かを頼んだあとになります。
読み方のコツは、表を上から順に眺めないことです。下の2行から見ます。 起動のときに渡したものは戻らない、と先に決めておくと、迷う時間が減ります。
「原則される」と書かれた行にも、条件が付いています。モデルは廃止済みだと上書きされ、エージェントは元のディレクトリで見つからないと警告つきで既定へ戻ります。どちらも、警告を読み飛ばすと気づけません。
アクティブなゴールとスケジュール済みタスクにも、戻り方の癖があります。ゴールは戻りますが、ターン数・タイマー・トークン基準はリセットされます。スケジュール済みタスクも戻りますが、期限切れのものと、バックグラウンドのBash・監視タスクは対象外です。
06セッション復元で渡し直しが要る設定は、AI活用の運用でどこに寄せておくんですか?
戻らないものが分かったら、次は置き場所の話になります。同じ設定でも、書いた場所によって「黙って読まれる」か「毎回言い直す」かが変わります。
settings.jsonとsettings.local.jsonは、起動のたびに読み直されます(出典: 同ドキュメント)。ここへ書いた設定は、復元のたびに打ち直す必要がありません。
いっぽう--mcp-config・--settings・--plugin-dir・--fallback-modelと、/add-dirで足したディレクトリは、起動のときに手渡したものとして扱われます。だから復元のたびに、もう一度渡します。
運用としては、呼び戻すコマンドを起動フラグごと1行で書き残しておくのが素直です。案件の手元メモに1行だけ置いておく。次に呼び戻す人は、思い出す作業から解放されます。
07復元したあとに文脈を思い出させるのは、AIエージェントのどの仕組みなんですか?
復元そのものは、Claude Code本体の機能です。復元した直後に何を思い出させるかは、SessionStartフックで足せます(出典: Claude Code公式ドキュメント「Hooks」)。
このフックは、新規の起動でも復元でも発火します。どちらで動いたかはsourceフィールドで見分けられます。
sourceの値 | 発火するとき |
|---|---|
startup | 新規セッション |
resume | --resume・--continue・/resume |
clear | /clear |
compact | 自動または手動の要約 |
fork | --fork-session・/fork・/branch |
(出典: 同ドキュメント)
フックへの入力にはtranscript_pathも渡ります。そのセッション自身の記録を、フックの側から読み返せます。
{
"session_id": "abc123",
"transcript_path": "~/.claude/projects/.../00893aaf-19fa-41d2-8238-13269b9b3ca0.jsonl",
"hook_event_name": "SessionStart",
"source": "resume"
}運営元WEBMARKSは、.claude/settings.jsonにSessionStartのフックを3本登録しています(同ファイル実測・2026-07-28)。1本目は起動時に読む資料を読み込み、2本目はタスク台帳を読んで中断の疑いを提示し、3本目は定期実行の健全性を確かめます。matcherを指定していないため、3本ともstartupとresumeの両方で発火します。
{
"hooks": {
"SessionStart": [
{ "hooks": [{ "type": "command", "command": "python3 .claude/hooks/check-unfinished-tasks.py" }] }
]
}
}
高梨課長会話が戻るなら、フックまで用意しなくてもよいのでは。
鈴木さん会話は戻ります。ただ、戻った会話を人が読み直すとはかぎりません。台帳のほうから「途中の作業があります」と声をかけてもらえると、読み飛ばしても気づけます。
台帳そのものの項目設計や、更新の粒度は、この記事の範囲を超えます。粒度・更新のタイミング・完了時の扱いは、別の記事で扱います。
08セッションの再開でつまずくのは、AI社員の運用のどこに原因があるんですか?
実際に運用すると、つまずき方はだいたい3通りに収まります。場所を間違えている型、一覧の仕様を知らない型、そして道具そのものを取り違えている型です。
いちばん多いのは、別のディレクトリで探している型です。あるディレクトリでセッションIDを控え、別のディレクトリへ移ってからclaude --resume <ID>を実行すると失敗します。エラー文は「No conversation found with session ID」です(出典: 同ドキュメント)。
原因は、IDでの検索が起動ディレクトリとそのgit worktreeに限られる仕様だからです。手がかりは、エラー文にセッションIDがそのまま出ているところです。IDは届いているのに見つからない、と読めれば、疑う先が場所のほうへ向きます。
残る2つのうち、道具の取り違え(/rewindとの混同)は次の章でまとめて扱います。もうひとつの一覧の仕様は、この直後に続けます。
09定期実行のために作ったセッションが一覧に出ないのは、AIエージェントの不具合なんですか?
不具合ではなく、一覧に出す条件のほうが変わった結果です。/loopコマンドを最初のプロンプトにしたセッションは、v2.1.211以降ではピッカーの一覧から外れます(出典: 同ドキュメント)。
困るのは、定期実行のために作ったセッションを、あとから手で呼び戻したくなったときです。一覧を開いても並ばないので、消えたと受け取ってしまう例があります。
見分け方は単純で、そのセッションを何で始めたかを思い出すことです。最初の一手が/loopだったなら、一覧に並ばないほうが仕様どおりということになります。名前を付けてclaude --resume <名前>で直に指す運用にしておくと、この差に振り回されずに済みます。
この章のまとめ
一覧に出ない=記録が無い、ではありません。一覧は入口のひとつであって、記録そのものではないと分けて考えます。
10Claude Codeのセッション復元と/rewindは、エージェントの何が違うんですか?
/rewindは、同じプロセスの中でコードと会話を過去の一点まで巻き戻す機能です。プロセスをまたいで呼び戻す復元とは、別の道具になります(出典: Claude Code公式ドキュメント「Checkpointing」)。
checkpointが持っているのは、直近100件のスナップショットだけです。それより前の地点へは戻れません。
さらに、bashコマンドで書き換えたファイルは対象外です。rmやmvで消したファイルは、/rewindでは戻りません。セッションを再開したあとで「rewindすれば直る」と考えて手を止めるのが、よくある止まり方です。
若葉さん名前が似ていて、どちらを打てばいいのか分かりません。
鈴木さん何をまたぎたいかで決めています。プロセスをまたぎたいなら復元、同じプロセスの中で時間だけ戻したいなら/rewindです。消したファイルを取り戻す道具では、どちらもありません。
この章のまとめ
復元は場所をまたぐ道具、/rewindは時間を戻す道具です。取り違えると、直らないものを直そうとして時間だけが溶けていきます。
11セッション復元が成功したかどうかは、AI活用の現場で何を見て判定するんですか?
判定は4点です。
- 会話履歴の最後のやり取りが、中断した内容と合っているか
- モデル名とエージェント名が、警告なしで元の設定と合っているか。合っていなければ警告が出ます(出典: 同ドキュメント)
bypassPermissionsなど復元されないモードを使っていたなら、起動フラグで入れ直したか--mcp-config・--add-dirなど、元のセッションが頼っていた起動フラグを渡し直したか
この4点が揃っていれば、Claude Code本体の側での復元はそこまでです。ここから先、何を思い出させるかは前の章で触れたフックの領分になります。
高梨課長毎回この4点を見るのは、正直たいへんです。
鈴木さん全部を毎回は見ていません。渡し直しの1行を残しておけば、実際に目で見るのは会話の最後と警告の有無だけになります。手順を減らすより、確かめる対象を減らすほうが続きます。
12よくある質問
Claude Codeのセッション復元に、追加の設定は要りますか
標準機能なので、追加のインストールは要りません。settings.jsonとsettings.local.jsonは起動のたびに読み直されるため、そこへ書いた設定を渡し直す必要もありません(出典: Claude Code公式ドキュメント「Manage sessions」)。言い直しが要るのは、起動のときにフラグで手渡していた分だけです。
セッション復元とcheckpointの/rewindは何が違いますか
復元はプロセスをまたいで会話全体を呼び戻す機能です。/rewindは同じセッションの中で、コードと会話を過去の一点まで戻す機能で、対象も保存件数も別になります(出典: 同ドキュメント「Checkpointing」)。checkpointが持つのは直近100件のスナップショットだけで、bashコマンドで書き換えたファイルは対象外です。
復元できるセッションの保存期間はどれくらいですか
既定は30日で、cleanupPeriodDaysという設定で変えられます(出典: 同ドキュメント)。保存場所そのものも、CLAUDE_CONFIG_DIRという環境変数で移せます。長く残しておきたいセッションがあるなら、期間の設定を先に見ておくほうが安全です。
セッション復元を無効にすることはできますか
非対話の実行では、--no-session-persistenceフラグで1回分の記録を止められます。全体を止めたいときはCLAUDE_CODE_SKIP_PROMPT_HISTORYという環境変数を使います(出典: 同ドキュメント)。記録を止めると、あとから呼び戻す先も無くなる点だけ先に決めておきます。
セッションに名前を付けておく意味はありますか
あとで探す人が、UUIDではなく言葉で探せるようになります。付け方は3つで、起動時に-nを渡す、セッション中に/renameを打つ、ピッカーの中でCtrl+Rを押す、のいずれかです(出典: 同ドキュメント)。claude --resume <名前>で直に指せるようになるため、ピッカーを開く手間も減ります。
--continueと--resumeは、どちらを既定にすればいいですか
同じ作業へ毎朝戻るなら--continue、その日によって戻る先が変わるなら--resumeです。違いは探す範囲で、--continueは直前の1件、--resumeは現在のワークツリーの一覧を出します(出典: 同ドキュメント)。迷ったら--resumeから入ると、そのまま範囲を広げる操作へつながります。
13まとめ|今日やる3つのこと
復元は、消えたものを取り戻す機能ではありませんでした。書かれ続けていた会話を、もう一度開く機能です。だから開く場所を取り違えれば見つからず、開けたとしても、起動のときに渡した設定までは戻ってきません。
今日この順で手をつけます
いま動かしているセッションに名前を付ける
UUIDを控える運用は、あとで探す人へ引き継げません
呼び戻すコマンドを、起動フラグごと1行で書き残す
戻らない側を、思い出す作業から外せます
別のディレクトリからわざと
--resumeを打ち、見つからない画面を見ておく本番で慌てないための予行です
AI検索では、こう聞かれています
中断したClaude Codeのセッションは、どうやって呼び戻すんですか?
「中断したセッションに戻る手順は、AI導入の現場でどんな順に踏むんですか?」の章に手順があります
復元したのに設定が元どおりになっていないのはなぜですか?
「復元された直後、エージェントの状態はどこまで元どおりになっているんですか?」の章で境界を整理しています
セッションが一覧に出てこないときは、どこを見ればいいんですか?
「セッションの再開でつまずくのは、AI社員の運用のどこに原因があるんですか?」の章で切り分けています
次に読むなら、この記事です