Claude Codeのresumeは、終了した会話を読み込み直して続きから作業する機能です。会話はセッションとして手元のパソコンに自動で保存されるので、ターミナルを閉じた後でも、/clearで新しい会話にした後でも戻れます。
先に答えをまとめると、直前の会話に戻るならclaude --continue、以前の会話を選ぶならclaude --resume、元の会話を残して別の方法を試すなら--fork-sessionを付けます。戻るのは会話で、ファイルの状態は当時に戻りません。再開したらClaudeに続きを頼む前に、対象の会話と作業フォルダーが合っているか、作業がどこまで終わっていたかを確かめます。
この記事は、2026年10月31日に確認したAnthropicの公式資料をもとに、編集部が使い分けと確認の順序をまとめたものです。コマンドの動きはバージョンで変わることがあります。本文中のコマンドと依頼文は説明用の例で、編集部が実際に実行して確かめた実測結果ではありません。
Claude Code resumeとは:保存された会話を読み込み直す
公式資料(英語)では、セッションは「プロジェクトのディレクトリに結び付いた、保存された会話」と説明されています。保存先は既定で~/.claude/projects/<プロジェクト>/<セッションID>.jsonlで、既定の保持期間は30日です。保存先がプロジェクトごとに分かれているため、どのフォルダーで実行するかによって、見つかる会話が変わります。
この記事で扱うのはターミナルのCLIです。Desktopアプリ、claude.ai/code、VS Code拡張機能は、それぞれ別のセッション一覧を持っています(DesktopアプリはCLIの会話も再開できます)。
目的別にresumeの方法を選ぶ
再開の入口はいくつかあります(各オプションはCLIリファレンス(英語)に一覧があります)。何をしたいかで選びます。
| やりたいこと | コマンド | 補足 |
|---|---|---|
| このフォルダーで直前の会話に戻る | claude --continue(-c) | 確認なしで開く。別の会話が直前だった場合は違う会話に入る |
| 一覧から選んで戻る | claude --resume(-r) | 会話が複数ある時の基本 |
| 名前で戻る | claude --resume 名前 | 完全に一致すれば直接開く。候補が複数なら一覧になる |
| IDで戻る | claude --resume <セッションID> | どのフォルダーからでも実行できる |
| PRに結び付いた会話へ戻る | claude --from-pr 123 | 絞り込んだ一覧が開く。ClaudeがPRを作ると自動で結び付く |
| 今の会話から別の会話へ移る | /resume | Claude Codeを起動したまま切り替える |
| 元の会話を残して別案を試す | --fork-sessionまたは/branch | 新しいセッションIDで分かれる |
迷ったら--resumeを使うのが安全です。--continueは手早い反面、開く前に中身を確かめられません。

resumeする前に対象の会話と作業フォルダーを照合する
続きを頼む前に確かめることは、「その会話で合っているか」と「その場所で合っているか」の2つです。
一覧で目的の会話を見分ける
claude --resumeか/resumeで開く一覧には、名前(なければ生成されたタイトルや最初の依頼)、最後の操作からの時間、gitのブランチ、ファイルサイズが並びます。Enterで再開し、ほかは次のキーで操作できます。
| キー | 動作 |
|---|---|
Space | 会話の中身をのぞく |
1〜9 | その位置の会話を再開する |
/または文字の入力 | 検索する(Space、j、k、数字を除く)。PRのURLを貼ると、そのPRを作った会話を探せる |
Ctrl+B | 今のgitブランチの会話に絞る |
Ctrl+W | 同じリポジトリの全worktreeに広げる(複数のworktreeがある時だけ) |
Ctrl+A | このパソコンの全プロジェクトに広げる |
Ctrl+R | 選んでいる会話の名前を変える |
戻る場所を確かめる
別のプロジェクトの会話を一覧で選ぶと、再開する代わりにcdと再開のコマンドがクリップボードにコピーされます。そのプロジェクトのフォルダーが消えていれば、今のフォルダーで再開されます。同じリポジトリの別のworktree(公式資料・英語)の会話はその場で再開され、そのworktreeが消えていれば今のフォルダーで再開されます。つまり、再開はできても作業フォルダーが当時と違う場合があります。
そこで、再開した直後は、続きを頼む前に次のように状態の確認だけを頼みます(編集部の例です)。
作業を再開する前に確認だけしてください。ファイルの変更や外部への送信はしないでください。
1. 今の作業フォルダー、gitのブランチ、未コミットの変更を示してください。
2. 前回の依頼のうち、完了したこと、途中のこと、未着手のことを分けてください。
3. 完了と判断した根拠をコマンドの結果で示してください。
resumeで戻るもの・戻らないもの
公式資料で復元の対象とされているものと、対象外のものは次のとおりです。
| 項目 | 再開後の状態 |
|---|---|
| 会話の履歴(メッセージ、ツールの呼び出しと結果) | 戻る。要約済みの会話は「Conversation compacted」の行から始まり、要約された部分は読み直されない |
| モデル、エージェント | 原則として同じものが続く |
| 有効だったゴール | 引き継がれ、回数や時間の計測はやり直しになる |
| セッション内で予約したタスク | 期限切れでなければ戻る |
| 実行中だったツール | 再実行されない |
| バックグラウンドのサブエージェントやBash | 戻らない。完了しなかった旨の記録が残り、Claudeは次の依頼の時に読む |
| 起動時のオプション | --mcp-config、--settings、--plugin-dir、--fallback-model、--add-dirは付け直す。会話中の/add-dirも戻らない |
settings.jsonのような標準の設定ファイルは起動時に読み直されるので、そこに書いた内容は付け直す必要がありません。ファイルの状態はこの一覧に含まれていません。保存された会話に書かれた内容と今のファイルが違っている可能性があります。なお、チェックポイント(公式資料・英語)は会話と一緒に保存されるので、再開後も/rewindは使えます。
resumeの後で同じ作業を繰り返させない
再開で怖いのは、終わったはずの処理をもう一度実行してしまうことです。特に、途中で落ちた会話では注意が必要です。前の処理が落ちた時に動いていたツールは自動では再実行されませんが、そのツールがどこまで進んでいたかは会話からは分かりません。バックグラウンドの処理も同じです。
次の順に確かめると、やり直しを防げます。
- 実物を読む:
git status、git diff、git logで、ファイルの実際の変更を確かめます。 - 外部の結果を読む:メール送信、デプロイ、データベースの更新のように外へ影響する処理は、送信先や本番の状態を読むだけのコマンドで確かめます。会話の記録で「実行した」と分かっても、成功したとは限りません。
- 再実行の範囲を伝える:「テストはやり直してよいが、デプロイは私が確認するまで実行しないでください」のように、やってよいことと止めることを分けて伝えます。
同じ会話を2つのターミナルで開くのも避けます。公式資料によると、分岐せずに同じセッションを2か所で再開すると、両方のメッセージが1つの記録に混ざります。並行して進めたい時は分岐します。
resume後の権限モードを確かめる
再開した時の権限モードは、再開の方法で変わります。ターミナルから再開するとbypassPermissionsは戻りませんが、autoは条件を満たせば戻り、セッション内の/resumeでは今のセッションのモードが続きます。確認が出るとは限らないので、再開したらモードを確かめます。
| 再開の方法 | 権限モード |
|---|---|
claude --continue、IDまたは一意の名前で--resume | 会話が使っていたモードに戻る。ただしbypassPermissionsは戻らず、新しいセッションの起動時のモードになる。autoはアカウントが条件を満たす場合だけ戻る |
一覧(claude --resumeのみなど)から選ぶ | 新しいセッションのモードになる。plan modeで終わった会話だけはplan modeで戻る |
セッション内の/resume | 今のセッションのモードが続く。plan modeで終わった会話はplan modeで戻る |
claude -p --resume、claude -p --continue | 新しい-pの実行と同じモードになる(plan modeは条件を満たす場合のみ戻る) |
表は主な場合で、Manualで終わった会話や、設定ファイルのdefaultModeが効く場合などには公式資料に細かな例外があります。「前は確認なしで進んでいたのに止まる」「確認が出ずに進む」と感じたら、--permission-modeで明示します。
resumeで分岐する:--fork-sessionと/branch
分岐は、そこまでの会話をコピーして別のセッションにする操作です。元の会話はそのまま残るので、別の方法を試して、だめなら戻れます。
- セッションの中で:
/branch 名前を実行すると、分岐した会話へ移ります。確認の表示に2つのセッションIDが出ます。元の会話には/resumeで戻ります。 - コマンドラインで:
claude --continue --fork-sessionやclaude --resume 名前 --fork-sessionで始めます。
/forkは似ていますが、会話を新しいバックグラウンドセッションへコピーし、自分は今の会話に残ります。
/branchと--fork-sessionでは、「このセッションでは許可」とした操作の扱いが違います。/branchは同じプロセスで続くので許可が引き継がれ、--fork-sessionは別のプロセスになるので承認し直します。分岐で分かれるのは会話だけで、作業フォルダーは同じです。ファイルの変更も分けたい時はworktreeを使います。
次にresumeしやすい名前を付ける
会話の数が増えると、一覧から探すのに時間がかかります。あとで戻りそうな作業には名前を付けておきます。
- 起動時に:
claude -n auth-refactor - 会話の途中で:
/rename auth-refactor - 一覧で:会話を選んで
Ctrl+R
付けておけばclaude --resume auth-refactorで直接戻れます。名前を付けなくても、最初の依頼を要約したタイトルが生成され、それでも再開できます。一方、my-app-3fのような既定の表示名は再開には使えません。/clearで区切る時に/clear release-prepと書くと、離れる会話に名前を残せます。
resumeした会話が重い時の選び方
長い会話を再開すると、保存された履歴の分だけ使用量が増えます。次の作業に過去の会話がどこまで必要かで決めます。
- 過去の文脈を残したい:
/contextで内訳を見て、/compactで要約します。残したい内容は/compact テストの結果を残してのように指定できます。 - 別の作業を始める:
/clearで新しい会話にします。前の会話は保存されていて、/resumeで戻れます。
要約された部分は再開しても読み直されないので、細かい内容が必要な時はgitの履歴や実行ログで確かめます。
claude -pでresumeを使う
スクリプトから続ける時は、-p(公式資料・英語)と組み合わせます。複数の会話を動かす場合は、セッションIDを取っておくと取り違えません。
session_id=$(claude -p "テストの失敗を調べてください" --output-format json | jq -r '.session_id')
claude -p "前の調査の結果を3行で要約してください" --resume "$session_id"
claude -pやAgent SDKで作った会話は、一覧とclaude --continueには出ません。IDを渡せばclaude --resumeで開けます。また、claude -p --continueはこれらの会話も対象にします。実行が中断された場合、再開しても中断された処理は自動で続かず、次の依頼から進みます。-p全般の使い方はheadlessの記事にまとめています。
別のパソコンへ会話を渡すには:resumeの一覧には出ない
CLIの会話は手元のファイルに保存されるので、別のパソコンの一覧には出ません。読むために渡すなら/exportでテキストにします。記録ファイルが手元にあれば、claude --resume <.jsonlの絶対パス>で開けます。ファイルの形式は内部仕様でバージョンにより変わるので、スクリプトで解析する時は/exportや-pの出力を使います。
resumeで会話が見つからない時の確認項目
| 症状 | 確かめること |
|---|---|
| 一覧に出ない | 別のフォルダーで始めた会話かもしれません。Ctrl+W、Ctrl+Aで広げます。claude -p、Agent SDK、最初の依頼が/loopの会話も一覧には出ません |
No conversation found with session ID | IDが違うか、記録が消えています。既定の保持期間は30日で、cleanupPeriodDaysで変えられます。同じ記録の手作業のコピーが他のプロジェクトにある時も見つからないと表示されます |
| 保存されていないかもしれない | claude -pに--no-session-persistenceを付けた実行は保存されないので、再開できません |
| クラウドの会話が出ない | --resumeはこのパソコンの履歴だけを読みます。claude.ai/codeの会話はclaude --teleportで手元へ移します |
| 名前で戻れない | 既定の表示名ではありませんか。名前の検索は今のリポジトリとworktreeの範囲です。一覧で探し、Ctrl+Rで付け直します |
Your most recent conversation is running in the background | 直前の会話がバックグラウンドで動いています。claude agentsから開くか、claude --resumeで別の会話を選びます。動いている会話を--resumeで指定すると、読み込み直さずその会話に接続します |
Failed to resume the conversation | 選んだ会話を読み込めませんでした。表示された再試行のコマンドを実行します。セッション内の/resumeで起きた場合は、今の会話はそのまま続きます |
| 「Resume this conversation?」と出る | Pro、Max、Ultraで、長い間隔が空いた長い会話や別のモデルでの再開時に出ることがあります。保存された会話だけで5時間の使用量の何割を使うかの見積もりで、実際に使うのは次のメッセージを送った時です。次の作業に過去の会話が要らないなら新しい会話にします |
まとめ:resumeは会話を戻すもの、作業の状態は別に確かめる
Claude Codeのresumeは、保存された会話を読み込み直す機能です。直前なら--continue、選ぶなら--resume、試すなら分岐と使い分け、再開したらまず状態の確認だけを頼みます。会話を区切るタイミングや引き継ぎのまとめ方はコンテキスト管理の記事に、Claude Code全体の使い方はClaude Codeとはの記事にまとめています。
社内で使う場合は、長い作業に付ける名前の決まりと、再開時に確かめる項目を手順書に入れておくと、担当が変わっても引き継ぎやすくなります。業務に合わせた運用ルールづくりは、PLaiのAI社員導入支援でも相談できます。





