Claude Code から Codex に作業途中で切り替える方法:コンテキストを失わずに引き継ぐ

Claude の使用量制限に達した、あるいは Codex の意見も聞きたい?コンテキストはチャットではなくリポジトリに置きましょう。両方のエージェントが読む AGENTS.md、切り替えのたびに作り直す HANDOFF.md、そして信頼できる情報源としての git。

対象バージョン
CLI
0.2.17
プレビュー ref
a2c45c8

要点

実行中の Claude Code の会話を Codex に移すことはできません。2 つのツールはセッションを別々に保存していて、どちらも相手のチャット履歴を取り込みません。移せるのは、大事なものすべてです。ただし、それがリポジトリの中にあることが条件です。

  1. 両方のエージェントが読む指示ファイルをひとつにする: プロジェクトのルールは AGENTS.md に置きます。Codex はネイティブに読み、現在の Claude Code も読みます(直接、または CLAUDE.md の @AGENTS.md インポート経由で)。
  2. 切り替えのたびに作り直す引き継ぎメモ: 交代する側のエージェントに HANDOFF.md を書かせます(目的、終わったこと、次にやること、試して失敗したこと、未解決の疑問)。
  3. git を信頼できる情報源にする: 切り替える前に WIP ブランチにコミットするか stash して、引き継ぐエージェントがあなたの記憶ではなく差分を読めるようにします。

これで切り替えは 2 分ほどで済み、新しいエージェントは何もないリポジトリからではなく、書かれた指示書から始められます。

課題

よくあるのはこんな流れです。Claude Code でリファクタリングを始めて 2 時間、5 時間の制限に達する。別のプランの Codex がすぐそこにある。あるいは Claude がひとつのバグの周りで堂々巡りをしていて、別のモデルに見てほしい。

同じフォルダで Codex を開けば動きますが、最初の 10 分は説明のやり直しに消えます。何を作っているのか、どの方法はもう却下したのか、なぜあのテストはわざとスキップしているのか。しかも引き継いだエージェントは、もう一方に「やらないで」と伝えたばかりのことを平気でやり直します。

解決策は気の利いたツールではありません。コンテキストはチャットではなくファイルに置く と決めることです。

よくある方法

  • Claude のトランスクリプトの最後の部分を Codex に貼り付ける。 一度はうまくいきます。ただし雑音(ツールの出力、途中で放棄した計画)も入り込み、スクロールで流れたものは抜け落ちます。
  • Codex に「git log を見て把握して」と頼む。 完了した作業には使えますが、途中の作業やコードにならなかった判断には役立ちません。
  • 指示ファイルを 2 つ手で管理する。 CLAUDE.md と AGENTS.md は 1 週間で食い違いました。

ステップ 1:両方のエージェント向けに指示ファイルをひとつにする

Codex はリポジトリ(とその上位のディレクトリ)から AGENTS.md を読みます。Claude Code については、2026-10-11 時点で Anthropic の メモリのドキュメント に次のように書かれています。

  • リポジトリに AGENTS.md があり、作業ディレクトリやその上位に CLAUDE.md も CLAUDE.local.md も ない 場合、Claude Code は AGENTS.md を直接読みます(Claude Code v2.1.277 以降が必要)。
  • CLAUDE.md が ある 場合、Claude はデフォルトで CLAUDE.md だけを読みます。これには注意が必要です。個人用メモのために CLAUDE.local.md を追加しただけで、Claude は AGENTS.md を読まなくなります。
  • CLAUDE.md は @path 構文で他のファイルをインポートでき、インポートした AGENTS.md も一緒に読み込まれます。

古いバージョンの Claude Code も含めて、両方で動く構成:

<!-- CLAUDE.md -->
@AGENTS.md

## Claude-only notes
- (anything that genuinely only applies to Claude Code, e.g. hook or subagent notes)

そして共通のものはすべて AGENTS.md に置きます。ビルドとテストのコマンド、コードスタイル、「migrations/ は手で触らない」、ドキュメントの場所など。短く保ちましょう。Anthropic はファイルあたり 200 行未満を勧めていて、長い指示ファイルはどちらのエージェントでも守られにくくなります。

CLAUDE.md を置きたくないなら、削除して Claude に AGENTS.md を直接読ませることもできます。どのファイルが読み込まれているかわからない場合は、Claude Code で /config を実行し、Project instructions の設定を確認してください。セッション開始時、Claude はファイルを読み込むと AGENTS.md loaded: ... のような行を表示します。

ステップ 2:切り替える前に引き継ぎメモを書く

交代する側のエージェントがコンテキストを失う前に(制限が近いとわかっているなら、制限に達する前に)、メモを書かせます。使い回せるプロンプト:

Write HANDOFF.md at the repo root for another coding agent taking over this task.
Sections, in this order:
1. Goal (one paragraph, what "done" means)
2. Current state (what works, what's half-done, which files)
3. Next steps (numbered, smallest first)
4. Tried and rejected (approach + why it failed, so it isn't retried)
5. Gotchas (env vars, flaky tests, things that look wrong but are intentional)
6. Open questions for the human
Only facts you verified in this session. No code blocks longer than 10 lines; point to files instead.

役立つメモにするためのルールは 2 つです。

  • 切り替えのたびに作り直す。 追記し続けるのではなく。古い引き継ぎメモは、ないよりも悪いものです。
  • コミットするかどうかを決める。 ひとりで使うブランチなら、WIP ブランチに HANDOFF.md をコミットしておくと便利です。共有リポジトリなら .git/info/exclude に追加して、PR に入らないようにします。

ステップ 3:作業を git に入れる

git checkout -b wip/refactor-auth     # if you aren't on a branch already
git add -A
git commit -m "WIP: auth refactor, handoff to codex" --no-verify

これで引き継ぐエージェントは git log -p -1 や git diff main... を実行して、要約を信じる代わりに何が変わったかを正確に確認できます。(PR を作る前に WIP コミットは squash しましょう。)

ステップ 4:的を絞った最初のプロンプトで Codex を始める

codex
Read AGENTS.md and HANDOFF.md, then run `git diff main...` to see the work so far.
Summarize back to me in 5 bullets what you think the task is and what you'll do next.
Don't change any files until I confirm.

「まず要約を返してもらう」ステップは安上がりな保険です。要約が間違っていたら、会話ではなく HANDOFF.md を直しましょう。そうすれば次の切り替えにも役立ちます。

あとで戻るときも、同じループを逆にたどるだけです。Codex に HANDOFF.md を書き直させ、コミットし、Claude Code を起動します(以前のコンテキストも使いたいなら、claude --continue でそのフォルダの前回の Claude の会話を再開できます)。

Happier の役割:切り替えの 2 つの方法

スマホから離れずにエージェントを切り替えたいなら、Happier は Claude Code、Codex などのエージェントを、スマホ、デスクトップ、Web からクロスデバイスで実行・オーケストレーションできるオープンソースのアプリです。エージェントを切り替えるときの方法は 2 つあります。

方法 1:リポジトリのファイルを使う方法(上のステップ 1〜4)

Happier があってもなくても、どこでも使える汎用的な方法です。

  • 得られるもの: 完全な管理、ツールをまたいで持ち運べること、そしてコンテキストがチームからも見える git に残ること
  • 使いどき: マシン間の切り替え、チーム内の引き継ぎ、引き継ぐエージェントに明確な指示書つきでまっさらな状態から始めてほしいとき

実際の仕事をするのはファイル(AGENTS.md、HANDOFF.md、WIP コミット)です。Happier を使う場合は、ノート PC まで戻らずに新しいセッションをスマホから始められる、というだけです。

方法 2:Happier の中でその場で切り替える

Happier 0.2.11 以降、Continue with another Agent を使うと、既存の Happier セッションをその場で別のエージェントに切り替えられます。

  • 引き継がれるもの: 最近の会話のやり取りを、上限つきのテキストのみで要約したもの。画像、ファイルの内容、ツールの出力は引き継がれません。
  • 知っておくこと: これは会話の要約であって、プロバイダー間で共有されるメモリではありません。引き継いだエージェントは「直前に話していたこと」の文脈は得られますが、セッションの全履歴や以前の判断の理由は持っていません。
  • 使いどき: 手早く別の意見を聞きたいとき(「Codex はどう考える?」)、バグで行き詰まったとき、同じ考えの流れを別のモデルで続けたいとき

組み合わせ: その場で切り替える場合でも、ステップ 1〜3 は大切です。AGENTS.md は指示を一貫させ、HANDOFF.md は会話のやり取りに埋もれさせたくない判断を残し、WIP コミットは引き継いだエージェントに何が変わったかを正確に見せます。

アカウントプール(同じエージェント、別のアカウント)

エージェントの切り替えとは別の話です。切り替えの理由が使用量の制限で、同じエージェントについて自分が所有する 2 つ目のアカウント(個人用と仕事用のサブスクリプションで、どちらも自分のもの、どちらも自分としてサインインしているもの)があるなら、Happier のアカウントプールでセッションをもう一方のアカウントに切り替えて続けられます。自分で意図的にプールを作るまでは何も切り替わりません。また、プールで上限が上がったりリセットが早まったりすることはありません。

こんな人向け

  • Claude と ChatGPT の両方のプランを持っていて、片方を使い切ったら切り替える人
  • 2 つ目のエージェントをレビューや、行き詰まったバグを「新しい目」で見てもらうために使う人
  • 同じリポジトリで、人によって好みのエージェントが違うチーム

よくある間違い

  • 手で管理する指示ファイルが 2 つある。 コピーせずにインポートしましょう。
  • CLAUDE.local.md が Claude にとって AGENTS.md を黙って無効にしている(ステップ 1 を参照)。
  • 貼り付けたコードだらけの引き継ぎメモ。 ファイルと行の範囲を示しましょう。引き継いだエージェントは自分で読めます。
  • 編集の途中で切り替える。 現在のターンが終わるのを待たないと、書きかけのファイルを説明なしで渡すことになります。
  • 差分より要約を信じる。 メモに書かれているのはエージェントが「やったと思っていること」です。実際にやったことは git diff が示します。

トラブルシューティング

Claude Code が AGENTS.md を無視する

フォルダやその上位に CLAUDE.md、.claude/CLAUDE.md、CLAUDE.local.md がないか確認してください。ある場合、Claude はデフォルトでそちらを読みます。そこに @AGENTS.md を追加するか、/config で Project instructions を変更してください。

Codex が AGENTS.md のルールに従わない

Codex をリポジトリの中から起動して、ファイルを見つけられるようにしているか確認してください。とても長いファイルは守られにくくなるので、短くしましょう。単発のタスクの詳細は HANDOFF.md に移します。

新しいエージェントが却下済みの作業をやり直す

「Tried and rejected」のセクションがないか、曖昧です。方法と理由を、それぞれ 1 行で具体的に書きましょう。

よくある質問

Claude Code の会話を Codex に取り込めますか?

会話としてはできません。セッションは別々に保存されています。コンテキストはファイル(AGENTS.md、HANDOFF.md)と git で移しましょう。

Codex は CLAUDE.md を読みますか?

Codex の規約は AGENTS.md です。CLAUDE.md を読むことには頼らず、AGENTS.md を共通のファイルにして、CLAUDE.md からそれをインポートしましょう。

HANDOFF.md はコミットすべきですか?

個人の WIP ブランチなら問題なく、便利です。共有ブランチでは .git/info/exclude でローカルに除外しましょう。

OpenCode、Gemini CLI などでも使えますか?

このパターンは使えます。いまではほとんどのエージェントの CLI が AGENTS.md を読むか、ファイルを指定できるようになっています。正確なファイル名は各ツールのドキュメントで確認してください。

関連ガイド

claudecodexworkflowscontextusage-limits
最終更新: 2026-10-26