Claude CodeとCodexの連携方法「最終レビュー役」はアリだけど・・・|MCP・プラグイン・codex execを実機比較
目次
Claude CodeからCodexを呼ぶ3つの経路(MCP・公式プラグイン・codex exec/review)を同じ差分で比べ、Codexを途中工程に入れる体制と最終レビューだけ任せる体制を同じ仕様で作り比べました。Codex CLI 0.154.0でcodex mcp-serverが消えていた件や、サムネイル画像の作り比べもまとめています。
Claude Code と Codex CLI の両方を契約していると、「どう連携させるか」と「どこで Codex を使うか」の 2 点で迷います。
実装を分担させるのか、それともレビューだけ頼むのか、どちらが良いのでしょうか?
このブログでは 2026 年 9 月に、Codex を記事作成の途中工程に組み込み、翌日に外した経緯があります。
途中工程に Codex を組み込む体制が本当に適していなかったのかを検証するため、同じ仕様のコードを 2 つの体制で作り比べ、Claude Code から Codex を呼ぶ 3 つの経路も同じ差分で比較しました。
Claude Code から Codex を呼ぶ方法
Claude Code から Codex を呼び出す方法として、ネット上では MCP、公式プラグイン、Codex CLI の直接呼び出しの 3 つがよく紹介されています。
今回、手元の Codex CLI 0.154.0(2026 年 9 月 10 日リリース)で検証した結果、利用できた方法は以下のとおりです。
MCP が利用可能かどうかについては、執筆時点で最新の 0.159.3 でも確認しています。
| 方法 | 使えたか | 補足 |
|---|---|---|
Bash から codex exec を呼ぶ | 使えた | モデルと effort を引数で固定できる。この記事ではこれを採用 |
Bash から codex review を呼ぶ | 使えた | -m がないため -c でモ デルを指定する |
| 公式プラグイン codex-plugin-cc | 使えた | /codex:review では effort を指定できない |
MCP(codex mcp-server を登録) | 使えなかった | 0.154.0 と 0.159.3 には mcp-server がない。0.153.4 を指定すれば接続できる |
.claude/settings.json に mcpServers を書く | 使えなかった | Claude Code に読み込まれない |
npx @openai/codex-mcp | 使えなかった | npm にパッケージが存在しない |
※ effort は、AI が回答を出力する前に思考する度合いを設定する項目です。
採用したのは codex exec を読み取り専用で呼ぶ方法
この記事のレビューは、以下の形式で Codex に依頼しました。
codex exec -m gpt-6-astra -c model_reasoning_effort=medium -s read-only "<レビューの依頼文>"採用した理由は以下の 3 点です。
- モデルと reasoning effort をコマンドで固定できる
- 依頼文で「SPEC.md に照らして確認して」と指示できる
-s read-onlyを指定することで、Codex にファイル変更をさせずに済む
公式プラグインは /codex:review の effort を指定できない
公式プラグインは、マーケットプレイスを追加してからインストールしました。
$ claude plugin marketplace add openai/codex-plugin-cc
✔ Successfully added marketplace: openai-codex (declared in user settings)
$ claude plugin install codex@openai-codex --scope project
✔ Successfully installed plugin: codex@openai-codex (scope: project)マーケットプレイスはユーザー単位の設定に反映されるため、プラグイン本体は --scope project で検証用ディレクトリに限定して設置しました。
使用可能なコマンドは以下の 8 つです。
| コマンド | 機能 |
|---|---|
/codex:review | 手元の git 差分を Codex にコードレビューさせる |
/codex:adversarial-review | 実装方針や設計判断に対し、あえて反論の立場でレビューさせる |
/codex:rescue | 調査や修正の依頼を Codex に任せる |
/codex:transfer | 現在の Claude Code セッションを Codex のスレッドに引き継ぐ |
/codex:status | 実行中および直近の Codex ジョブを一覧表示する |
/codex:result | 完了したジョブの最終出力を表示する |
/codex:cancel | バックグラウンドで実行中のジョブを停止する |
/codex:setup | Codex CLI が利用可能か確認する。レビューゲートの有効・無効切り替えも行う |
課題となったのは、/codex:review に effort を指定するオプションが存在しない点です。
--model gpt-6-astra は認識されましたが、effort には Codex のグローバル設定(当方 の環境では high)がそのまま適用されました。
Codex のログ(~/.codex/logs_2.sqlite)にも、model=gpt-6-astra codex.turn.reasoning_effort=high と記録されていました(^^;
MCP は 0.153.4 を指定すれば接続できる
最も広く紹介されている MCP の登録について、0.154.0 では接続できませんでした(´・ω・`)
$ claude mcp add codex -- codex mcp-server
Added stdio MCP server codex with command: codex mcp-server to local config
$ claude mcp list
codex: codex mcp-server - ✘ Failed to connect — CONNECTION_CLOSED: Connection closedcodex --help のサブコマンド一覧に mcp-server が含まれておらず、0.159.3 でも同様でした。
ひとつ前のバージョンである 0.153.4 では、非推奨の警告が出力されるものの動作しました!
$ claude mcp add codex -- npx -y @openai/[email protected] mcp-server
$ claude mcp list
codex: npx -y @openai/[email protected] mcp-server - ✔ Connectedwarning: `codex mcp-server` is deprecated and will be removed in a future release.提供されるツールは codex と codex-reply の 2 つで、codex ツールの config 引数に {"model_reasoning_effort": "medium"} を渡すことで effort を固定できました。
-s workspace-write で一度動かすと、そのディレクトリが信頼済みになる
作業完了後に ~/.codex/config.toml を作業前のバックアップと照合し たところ、未登録の設定が追加されていました。
> [projects."/Volumes/SSD-Kioxia-2TB/Projects/laratech/claude-code-codex-demo"]
> trust_level = "trusted"更新時刻は、codex exec -s workspace-write を実行した時刻と一致していました。
この記述を削除してから -s workspace-write で再度実行すると、同様の設定が再追記されました。
信頼済み状態になると、-s を付与しない codex exec のサンドボックスの動作が変化します。
| 検証用ディレクトリの状態 | -s なしのサンドボックス |
|---|---|
| 未信頼 | read-only |
| 信頼済み | workspace-write [workdir, /tmp, $TMPDIR] |
レビューのみを目的とする場合は、毎回 -s read-only を明示的に付与して実行するのが安全です。
なお、プロジェクト内に配置した .codex/config.toml も、信頼済みディレクトリでのみ読み込まれる仕様となっていました。
このブログで Codex を途中工程に入れ、翌日に外した経緯
2026 年 9 月 10 日に、Claude Code をディレクター、Codex CLI 経由の GPT-6 Astra を作業者とする連携体制を構築しました。
Codex にはファイル編集を担当させ、コミットおよびプッシュは必ず Claude 側で行うという役割分担です。
当初は記事の一次執筆を Astra に任せ、Claude が文体ルールチェックと差し戻しを行う運用でした。
しかし、確認と差し戻しのやり取りによるオーバーヘッドが増大しました。
