1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Codex Subagents入門 — TOMLでカスタムAIエージェントを定義し並列実行する

1
Last updated at Posted at 2026-03-19

Codex Subagentsの並列実行アーキテクチャ概念図

はじめに

OpenAI は 2026年3月16日、Codex の Subagents と Custom Agents を一般提供(GA)に移行した。プレビュー期間中はフィーチャーフラグの背後にあった機能が、すべてのユーザーに開放された形になる。

Subagents を使うと、1つの Codex セッション内で複数の専門エージェントを 並列にスポーン し、それぞれの結果を1つのレスポンスに集約できる。さらに、TOML ファイルでカスタムエージェントを定義し、モデル・指示・サンドボックスポリシーをエージェントごとに切り替えることが可能になった。

この記事では、公式ドキュメントと公開情報をもとに、Codex Subagents の仕組み・設定方法・Agents SDK 連携・コミュニティ資産まで体系的に解説する。

この記事で学べること

  • Codex Subagents のアーキテクチャと3つのビルトインエージェント
  • TOML ファイルによるカスタムエージェントの定義方法
  • グローバル設定(同時実行数・ネスト深度・タイムアウト)
  • Agents SDK との MCP サーバー連携パターン
  • CSV 一括処理(実験的機能)
  • 136 種超のコミュニティ製サブエージェント集

対象読者

  • Codex を日常的に使っている開発者
  • マルチエージェントワークフローに関心があるエンジニア
  • AI エージェントの設計パターンを学びたい方

TL;DR

  • Codex Subagents は 3つのビルトインタイプ(default / worker / explorer)を持ち、明示的な指示で並列スポーンする
  • カスタムエージェントは ~/.codex/agents/ または .codex/agents/TOML ファイル を配置するだけで定義できる
  • モデル( gpt-5.4gpt-5.3-codex-spark )をエージェントごとに割り当て可能
  • Codex を MCP サーバー として起動すれば、OpenAI Agents SDK からマルチエージェントオーケストレーションを構築できる
  • コミュニティリポジトリ awesome-codex-subagents に 136 種超の実用的なエージェント定義が公開されている

Codex Subagentsの階層構造とsandbox継承

Codex Subagents のアーキテクチャ

Codex の Subagents は「ユーザーが明示的に依頼したときだけ新しいエージェントをスポーンする」という設計になっている。自動でエージェントが増殖するのではなく、プロンプトでタスク分割と担当エージェントを指定する形式だ。

動作の流れは以下のとおり。

  1. ユーザーがプロンプトでタスクを分割し、各サブエージェントに振り分ける
  2. Codex が指定されたエージェントを 並列にスポーン
  3. 各エージェントが独立したスレッドで処理を実行
  4. 全エージェントの結果を 1つのレスポンスに集約 して返却

サブエージェントは 親セッションのサンドボックスポリシーを継承 する。非アクティブなスレッドからのインタラクティブな承認リクエストも、ソースラベル付きでユーザーに表示される。

ビルトインエージェント — 3つのタイプ

Codex には3つのデフォルトエージェントが組み込まれている。

タイプ 最適な用途 特徴
default 汎用的なタスク 特定のパターンに該当しない場合のフォールバック
worker 実装・修正タスク 実行と実装に最適化。多数の小タスクの並列処理に強い
explorer コードベース調査 読み取り中心。コードの探索と分析に特化

たとえば「設定モーダルの保存が失敗する原因を調査したい」場合、以下のようにプロンプトで指示する。

設定モーダルの保存失敗を調査してほしい。
explorer でバグを再現し、worker で原因のコードパスを特定し、
default で最小限の修正を実装してほしい。

各エージェントが並列で動作するため、順番に1つずつ実行するより大幅に効率が上がる。

カスタムエージェント定義のワークフロー

カスタムエージェントの定義 — TOML 設定ファイル

独自のエージェントは、TOML ファイルを所定のディレクトリに配置するだけで定義できる。

配置場所

パス スコープ 優先度
~/.codex/agents/ 全プロジェクト共通(個人用)
.codex/agents/ プロジェクト固有 高(同名ファイルは上書き)

TOML ファイルの構造

1ファイルにつき1エージェントを定義する。必須フィールドと省略可能なフィールドがある。

必須フィールド:

フィールド 説明
name string エージェントの識別子
description string Codex がこのエージェントを使うべき場面の説明
developer_instructions string エージェントの振る舞いを制御する指示

省略可能フィールド(省略時は親セッションから継承):

フィールド 説明
model string 使用モデル(例: gpt-5.4, gpt-5.3-codex-spark
model_reasoning_effort string 推論の深さ(low / medium / high
sandbox_mode string サンドボックスモード(read-only / workspace-write
mcp_servers array MCP サーバー設定
skills.config object スキル設定
nickname_candidates array スポーン時の表示名候補

実践例: セキュリティ監査エージェント

name = "security-auditor"
description = "セキュリティ脆弱性の検出、依存関係の監査、OWASPガイドラインの遵守チェック"
model = "gpt-5.4"
model_reasoning_effort = "high"
sandbox_mode = "read-only"

[instructions]
text = """
あなたはセキュリティ監査の専門家です。
以下の観点でコードベースを分析してください:

1. OWASP Top 10 に該当する脆弱性
2. ハードコードされたシークレットやクレデンシャル
3. 依存パッケージの既知の脆弱性(CVE)
4. 入力バリデーションの不備
5. 認証・認可の欠陥

レポートは重要度(Critical/High/Medium/Low)ごとに分類し、
修正方法を具体的に提示してください。
"""

実践例: 高速コード生成エージェント

name = "fast-coder"
description = "軽量な実装タスク、ボイラープレート生成、小規模リファクタリング"
model = "gpt-5.3-codex-spark"
model_reasoning_effort = "low"
sandbox_mode = "workspace-write"

[instructions]
text = """
あなたは高速コード生成の専門家です。
指示されたコードを簡潔かつ正確に生成してください。
過剰な説明は不要です。コードの品質と動作の正確さを最優先にしてください。
"""

グローバル設定

メインの設定ファイル( config.toml )の [agents] セクションで、サブエージェント全体の挙動を制御できる。

設定項目 デフォルト 説明
max_threads number 6 同時に開けるエージェントスレッドの上限
max_depth number 1 サブエージェントのネスト深度
job_max_runtime_seconds number 1800 CSV ジョブ時のワーカーごとのタイムアウト(秒)
[agents]
max_threads = 8
max_depth = 2
job_max_runtime_seconds = 3600

max_depth = 1 の場合、サブエージェントがさらにサブエージェントをスポーンすることはない。 max_depth = 2 にすると、1段階のネストが許可される。

Agents SDK連携の全体像

Agents SDK 連携 — MCP サーバーとしての Codex

Codex は MCP(Model Context Protocol)サーバーとして起動でき、OpenAI Agents SDK からマルチエージェントオーケストレーションを構築できる。

起動コマンド

codex mcp-server

MCP サーバーは2つのツールを公開する。

ツール名 用途
codex 新しい Codex セッションを開始する
codex-reply 既存セッションを threadId で継続する

Python 実装例

Agents SDK と組み合わせた基本的なパターンを以下に示す。

from agents import Agent, Runner
from agents.mcp import MCPServerStdio

async with MCPServerStdio(
    name="Codex CLI",
    params={
        "command": "npx",
        "args": ["-y", "codex", "mcp-server"],
    },
    client_session_timeout_seconds=360000,
) as codex_mcp_server:

    developer = Agent(
        name="Developer",
        instructions=(
            "ソフトウェア開発の専門家。"
            "codex を approval-policy: never、"
            "sandbox: workspace-write で呼び出すこと。"
        ),
        mcp_servers=[codex_mcp_server],
    )

    result = await Runner.run(
        developer,
        "RESTful API のエンドポイントを実装してください",
    )

マルチエージェントオーケストレーション

複数の専門エージェントをハンドオフで連携させるパターンも公式で紹介されている。

pm = Agent(
    name="Project Manager",
    instructions="チームの調整とファイル完成の検証を行う",
    handoffs=[designer, frontend, backend, tester],
    mcp_servers=[codex_mcp_server],
)

designer = Agent(
    name="Designer",
    instructions="仕様書とワイヤーフレームを作成する",
    handoffs=[pm],
    mcp_servers=[codex_mcp_server],
)

Codex ツールの主要パラメータ

パラメータ 説明
prompt string ユーザープロンプト(必須)
approval-policy string untrusted / on-request / never
sandbox string read-only / workspace-write / danger-full-access
model string モデル指定
cwd string 作業ディレクトリ

approval-policy: never は決定的なワークフロー向け、 on-request は人間の監視が必要な場面向けとされている。

CSV 一括処理(実験的機能)

spawn_agents_on_csv ツールを使うと、CSV の各行に対してワーカーを1つずつスポーンし、バッチ処理を実行できる。

CSVファイル users.csv の各行について、
{name} のGitHubプロファイルを分析し、
主要言語と直近のコントリビューション傾向をまとめてほしい。

内部的には以下のように動作する。

  1. CSV を読み込み、行ごとに1ワーカーをスポーン
  2. 各ワーカーは report_agent_job_result を正確に1回呼び出す
  3. 結果を output_csv_path に集約

パラメータの {column_name} プレースホルダーで CSV の列名を指示テンプレートに埋め込める。 max_concurrency で同時実行数を制限し、 max_runtime_seconds でタイムアウトを設定する。

コミュニティ資産 — awesome-codex-subagents

GitHub の VoltAgent/awesome-codex-subagents リポジトリには、 136 種超 の実用的なサブエージェント定義が公開されている。10カテゴリに整理されており、必要な TOML ファイルをコピーするだけで導入できる。

カテゴリ エージェント数 代表例
Core Development 12 バックエンド、フロントエンド、API設計
Language Specialists 28 Python、Rust、Go、TypeScript 専門
Infrastructure 16 Kubernetes、Terraform、CI/CD
Quality & Security 16 テスト、コードレビュー、セキュリティ監査
Data & AI 12 ML パイプライン、LLM 専門
Developer Experience 13 ドキュメント、リファクタリング、ビルド
Specialized Domains 12 ブロックチェーン、FinTech、ゲーム
Business & Product 11 PM、プロダクト戦略
Meta & Orchestration 12 マルチエージェント連携
Research & Analysis 7 市場調査、競合分析

モデルルーティングの推奨

コミュニティでは、タスクの性質に応じたモデル選択が推奨されている。

モデル 推奨用途
gpt-5.4 深い推論が必要なタスク(アーキテクチャレビュー、セキュリティ監査)
gpt-5.3-codex-spark 高速なスキャン・合成・軽量リサーチ

他ツールとの比較

サブエージェントパターンは Codex 固有の概念ではなく、主要なコーディングエージェントに共通する設計パターンとして標準化が進んでいる。

ツール サブエージェント機能 設定形式
OpenAI Codex Subagents (TOML) TOML
Claude Code Agent Teams Markdown (agents/)
Gemini CLI サブエージェント YAML
Cursor Background Agents 設定画面

Codex の特徴は、TOML による宣言的な設定と、MCP サーバーとしての外部連携が両立している点にある。

まとめ

Codex Subagents と Custom Agents の GA によって、AIコーディングエージェントの活用方法が大きく広がった。

  • ビルトイン3タイプ でタスクの性質に応じた使い分けが可能
  • TOML ファイル1つ でカスタムエージェントを宣言的に定義
  • Agents SDK 連携 で Python からマルチエージェントワークフローを構築
  • CSV 一括処理 でバッチワークロードにも対応
  • コミュニティの 136 種超 から実用的なエージェントを即導入

サブエージェントパターンは、コードベースの探索・実装・レビューを並列化する上で強力な手段となる。まずはビルトインエージェントから始め、プロジェクト固有のニーズに合わせてカスタムエージェントを定義していくのがよいだろう。

参考リンク

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?