上級テクニック集
Codexの真のポテンシャルを引き出す上級テクニックを解説します。Agents SDKによるオーケストレーション、MCPサーバー連携、Cloud Tasksによるスケーラブルな並列処理、そして複数AIツールのハイブリッド運用まで。
Agents SDK連携
OpenAI Agents SDKを使うと、Codexを含む複数のエージェントをプログラマティックにオーケストレーションできます。analyzer → implementer → reviewer のような多段パイプラインを構築できます。
基本的なパイプライン構成
from agents import Agent, Runner
import asyncio
# 1. 分析エージェント
analyzer = Agent(
name="Analyzer",
instructions="""コードベースを分析し、改善点を特定してください。
出力は JSON 形式: {"issues": [...], "priority": "high|medium|low"}""",
model="o3"
)
# 2. 実装エージェント
implementer = Agent(
name="Implementer",
instructions="""Analyzerが特定した問題を修正してください。
テストも追加してください。""",
model="o3"
)
# 3. レビューエージェント
reviewer = Agent(
name="Reviewer",
instructions="""Implementerの変更をレビューしてください。
問題があれば具体的な修正案を提示してください。""",
model="o3"
)
async def pipeline(task: str):
# Step 1: 分析
analysis = await Runner.run(analyzer, task)
# Step 2: 実装
impl = await Runner.run(
implementer,
f"以下の分析結果に基づいて修正: {analysis.final_output}"
)
# Step 3: レビュー
review = await Runner.run(
reviewer,
f"以下の変更をレビュー: {impl.final_output}"
)
return review.final_output
asyncio.run(pipeline("src/ディレクトリのコード品質を改善して"))Handoff(引き継ぎ)パターン
Agents SDKの handoff 機能を使うと、エージェント間でコンテキストを保持したまま作業を引き継げます。
from agents import Agent, handoff
# トリアージエージェント(振り分け役)
triage_agent = Agent(
name="Triage",
instructions="タスクを分類し、適切な専門エージェントに引き継いでください",
handoffs=[
handoff(bug_fix_agent, "バグ修正タスク"),
handoff(feature_agent, "新機能実装タスク"),
handoff(refactor_agent, "リファクタリングタスク"),
]
)Agents SDKはPythonライブラリとして提供されています。Codex CLIとは別のレイヤーで動作し、より複雑なワークフローの構築に適しています。
MCP高度活用
Model Context Protocol (MCP) は、AIエージェントが外部ツールやデータソースと標準化された方法で連携するためのプロトコルです。Codex CLIはMCPサーバーとして公開することも、MCPクライアントとして他のサーバーに接続することもできます。
Codex CLIをMCPサーバーとして公開
Codex CLIをMCPサーバーとして起動し、他のAIツール(Claude Desktop、Cursorなど)から利用できます。
# Codex をMCPサーバーとして起動
codex --mcp-server
# stdio モードで起動(他ツールとの接続用)
codex --mcp-server --transport stdio{
"mcpServers": {
"codex": {
"command": "codex",
"args": ["--mcp-server", "--transport", "stdio"],
"env": {
"OPENAI_API_KEY": "sk-xxxxx"
}
}
}
}カスタムMCPサーバーへの接続
Codexから外部のMCPサーバーに接続して、データベースクエリやAPI呼び出しなどの機能を拡張できます。
[mcp_servers.database]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb"]
[mcp_servers.github]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-github"]
env = { GITHUB_TOKEN = "ghp_xxxxx" }
[mcp_servers.filesystem]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/docs"]MCPチェーン連携
複数のMCPサーバーを組み合わせて、Codexの能力を大幅に拡張できます。
DB MCP → データ取得
PostgreSQLのMCPサーバー経由でスキーマやデータを取得し、Codexが現在のDB構造を理解します。
Codex → コード生成
取得したスキーマに基づいて、型安全なクエリやAPIエンドポイントを自動生成します。
GitHub MCP → PR作成
生成されたコードをブランチにpushし、GitHub MCPサーバー経由でPRを自動作成します。
MCPサーバーは npx -y で実行するのが手軽ですが、頻繁に使う場合はグローバルインストールしてパスを直接指定する方が高速です。
Cloud Tasks活用
codex cloud コマンドを使うと、クラウド上のサンドボックス環境でタスクを実行できます。ローカルマシンのリソースを消費せず、長時間タスクや並列実行に最適です。
基本的な使い方
# クラウドでタスクを実行
codex cloud "全テストを実行して失敗しているテストを修正して"
# タスクの状態を確認
codex cloud status
# 完了したタスクの結果を取得
codex cloud pull <task-id>長時間タスクの活用シナリオ
| シナリオ | 所要時間 | CLI vs Cloud |
|---|---|---|
| 大規模リファクタリング | 30-60分 | Cloud推奨 |
| 全ファイルのLint修正 | 15-30分 | Cloud推奨 |
| 依存関係の一括更新 | 20-40分 | Cloud推奨 |
| 単一ファイルの修正 | 1-5分 | CLI推奨 |
| 対話的デバッグ | 可変 | CLI推奨 |
トリアージ(自動振り分け)
Codex Appと連携して、IssueやPRを自動的にCloudタスクとして振り分けることができます。
# Automations設定で以下を定義:
# トリガー: 新しいIssueが "bug" ラベル付きで作成された時
# アクション: Cloud Taskとして自動実行
# モード: full-auto
# 完了後: PRを自動作成してレビューキューに追加Cloud Tasksはリモート環境で実行されるため、ローカル固有の設定(環境変数、ローカルDB接続など)に依存するタスクは失敗する可能性があります。タスクは自己完結型にしましょう。
並列開発の極意
Codex App + CLI + Cloud の3つの実行環境を同時に活用することで、開発速度を劇的に向上させます。核となる原則は「1タスク = 1スレッド」です。
1タスク = 1スレッドの原則
各タスクを独立したスレッド(ブランチ)で実行することで、コンテキストの混在を防ぎ、並列実行の恩恵を最大限に受けます。
App: フィーチャー開発
Codex Appで新機能をGUI操作で開発。Worktreeで自動的に隔離されたブランチで作業します。
CLI: バグ修正
ターミナルから codex "このバグ直して" で即座にバグ修正。対話的にデバッグしながら進めます。
Cloud: リファクタリング
codex cloud "テストカバレッジ80%達成して" でバックグラウンドで長時間タスクを実行。
コンテキスト分離の重要性
並列実行で最も注意すべきはコンテキストの分離です。同じファイルを複数のタスクが同時に編集するとコンフリクトが発生します。
- ブランチ戦略 — 各タスクは独立したブランチで作業。Worktreeを活用して物理的にディレクトリを分離する
- スコープの明確化 — タスクごとに変更対象のディレクトリ・ファイルを明確に指定する
- 依存関係の管理 — タスク間の依存がある場合は順次実行。独立したタスクのみ並列化する
朝の作業開始時に、その日のタスクを3つのカテゴリ(App/CLI/Cloud)に振り分けてから着手すると、並列開発の効果が最大化します。
ハイブリッド運用
Codex、Claude Code、GitHub Copilotはそれぞれ異なる強みを持っています。3つのツールを最適に組み合わせることで、あらゆる開発シナリオに対応できます。
各ツールの強み
| ツール | 最大の強み | 最適な用途 |
|---|---|---|
| Codex | 並列自動化・Cloud実行 | 複数タスクの同時実行、CI/CD統合、大規模リファクタリング |
| Claude Code | 深い推論・大規模コンテキスト | アーキテクチャ設計、複雑なデバッグ、コードベース横断分析 |
| GitHub Copilot | IDE統合・リアルタイム補完 | 日常的なコーディング、インライン補完、テスト作成 |
推奨ワークフロー
-
設計フェーズ:Claude Code
アーキテクチャの検討、技術選定、設計ドキュメントの作成をClaude Codeで行います。大規模なコンテキストウィンドウを活かし、コードベース全体を見渡した判断ができます。 -
実装フェーズ:Codex + Copilot
設計に基づく実装をCodexの並列実行で高速化。細かいコーディングはCopilotのインライン補完で効率的に進めます。 -
レビューフェーズ:Codex Cloud
テスト実行、Lint、型チェックをCloud Tasksでバックグラウンド実行。人間はビジネスロジックのレビューに集中できます。 -
デバッグフェーズ:Claude Code
複雑なバグは、コードベースを深く理解しているClaude Codeに任せます。ファイル横断の因果関係を追跡する能力が活きます。
すべてのツールを無理に使う必要はありません。プロジェクトの規模やチーム構成に応じて、最も効果的な組み合わせを見つけましょう。小規模プロジェクトではCopilot + Claude Codeの2本立てで十分なことも多いです。