Claude Codeで作業しながら、一部の作業だけCodexに任せたいときの、指示の渡し方をまとめました。
方法は4つあり、ふだん使いなら、Claude Codeに codex exec を実行させるのがいちばん簡単です。
- codex exec:Claude Codeがコマンドとして実行し、結果を受け取る(おすすめ)
- スキルやCLAUDE.md:渡し方の手順をまとめ、毎回同じやり方で渡す
- Codex SDK:TypeScriptかPythonのプログラムから、会話を続けて操作する
- Codex App Server:自分のアプリにCodexを組み込むための仕組み
この記事は、Claude CodeとCodexの公式ドキュメント(2026年10月5日に確認)に基づきます。
両方とも更新が速いので、コマンドやオプションは最新の公式ページで確かめてください。
以前あった codex mcp-server(CodexをMCPサーバーとして動かすコマンド)は、公式に廃止されています。
4つの方法の比較
| 方法 | 手軽さ | 続きの会話 | 向いている使い方 |
|---|---|---|---|
codex exec | いちばん簡単 | resume でできる | 作業を丸ごと渡して、結果だけ受け取る |
| スキル・CLAUDE.md | 書くだけ | 中身しだい | 同じ渡し方をくり返す |
| Codex SDK | プログラムが要る | できる | スクリプトやCIで、何往復もやり取りする |
| Codex App Server | いちばん重い | できる | 画面のあるアプリにCodexを組み込む |
方法1|codex exec を実行させる(おすすめ)
codex exec は、Codexを対話画面なしで1回動かすコマンドです。
途中経過は標準エラーに、最後の答えだけが標準出力に出るので、結果を受け取りやすくなっています。
codex exec "このリポジトリの構成を要約して"Claude Codeへの頼み方は、たとえば次のようになります。
codex exec を使って、Codex に tests/ の失敗しているテストを直させて。サンドボックスは workspace-write で。ファイルを書き換えさせるときはサンドボックスを指定する
codex exec は、標準では読み取り専用で動きます。
ファイルを編集させるときは、--sandbox で書き込みを許可します。
| 指定 | できること |
|---|---|
--sandbox read-only(標準) | 読むだけ |
--sandbox workspace-write | 作業フォルダの中を書き換えられる |
--sandbox danger-full-access | 制限なし。自動化の環境に限って使う |
以前の --full-auto は非推奨になっていて、使うと警告が出ます。
workspace-write でも、標準ではネットワークにはつながりません。
結果の受け取り方と続きの頼み方
| やりたいこと | 書き方 |
|---|---|
| 最後の答えをファイルに保存 | codex exec -o ./output.txt "<依頼>" |
| 途中経過を JSON Lines で受け取る | codex exec --json "<依頼>" |
| 決めた形の JSON で答えさせる | codex exec "<依頼>" --output-schema ./schema.json -o ./result.json |
| 直前の続きを頼む | codex exec resume --last "<次の依頼>" |
| IDを指定して続きを頼む | codex exec resume <SESSION_ID> |
| 前のコマンドの出力を渡す | コマンド | codex exec "<依頼>" |
Claude Codeに長い指示を書かせるときは、ファイルに書いてから標準入力で渡すと、引用符の扱いで崩れません。
cat spec.md | codex exec -codex exec を使うときの注意
Claude Codeは、コマンドを実行する前に許可を求めることがあります。
毎回の確認を省きたいときは、Claude Codeの設定で codex exec だけを許可しておきます。
// .claude/settings.json
{
"permissions": {
"allow": ["Bash(codex exec *)"]
}
}Codexの作業は時間がかかることがあり、Claude Codeのコマンドには待ち時間の上限があります。
長い作業は、Claude Codeにバックグラウンドで実行させて、終わってから結果を読ませます。
また、Codexはあらかじめログインしておく必要があります。
APIキーで動かすときは、公式の例では CODEX_API_KEY を実行のときだけ渡しています。
方法2|スキルやCLAUDE.mdに渡し方をまとめる
毎回同じ手順で渡すなら、Claude Codeのスキルにまとめておくと便利です。
たとえば「Claudeが仕様を書く → codex exec で実装させる → Claudeが差分を確認する」という流れを1つのスキルにします。
---
name: codex
description: 実装を Codex に任せて、結果を確認する
---
1. やることを spec.md に書く
2. cat spec.md | codex exec --sandbox workspace-write - を実行する
3. git diff を読み、問題があれば直すスキルにすると、/codex のように呼び出せます。
もっと簡単にするなら、CLAUDE.md に「実装は codex exec で Codex に任せる」と書いておくだけでも働きます。
方法3|Codex SDK を使う
Codex SDKは、TypeScriptとPythonからCodexを操作するライブラリです。
npm install @openai/codex-sdk
pip install openai-codexTypeScriptでは、次のように会話(スレッド)を作って指示を送ります。
import { Codex } from "@openai/codex-sdk";
const codex = new Codex();
const thread = codex.startThread();
const result = await thread.run("CIの失敗を調べて直す計画を立てて");
await thread.run("その計画を実装して");あとから resumeThread で、IDを指定して会話を再開することもできます。
公式は、CIでの自動化や、Codexとやり取りするエージェントを作る用途に、SDKを勧めています。
方法4|Codex App Server
App Serverは、CodexのVS Code拡張機能のような、画面のあるアプリを支えている仕組みです。
codex app-server で起動し、JSON-RPCという形式で、会話の作成、指示の送信、途中の割り込みなどを行います。
公式は、自動化やCIならSDKを使うよう書いていて、App Serverは自分の画面にCodexを組み込むとき向けです。
Claude Codeから作業を渡すだけなら、ここまでの仕組みは要りません。
どれを選ぶか
- 作業を丸ごと任せて結果を見るだけなら、方法1の codex exec
- 同じ渡し方をくり返すなら、方法2のスキルで codex exec を包む
- プログラムで何往復もやり取りするなら、方法3の Codex SDK
- 自分のアプリの画面にCodexを入れるなら、方法4の App Server
ネットで「CodexをMCPサーバーにしてClaude Codeから呼ぶ」という手順を見かけたら、廃止前の情報か、非公式のツールです。
関連記事:CodexからClaude Codeに作業を渡す方法
関連記事:Claude Codeのスキルの作り方
