OpenAI Codex に搭載された SubAgent(サブエージェント)機能が話題になっています。複数の AI エージェントを並列で動かし、複雑なコーディングタスクを群(Swarm)として処理できるこの機能について、技術的な詳細をまとめます。

SubAgent とは何か

Codex の SubAgent は、メインのエージェントが複数の専門化されたエージェントを並列でスポーン(生成)し、それぞれの結果を統合するワークフロー機能です。コードベース探索やマルチステップの機能実装など、並列処理が有効なタスクに特に威力を発揮します。

特筆すべきは、サブエージェントからさらにサブエージェントを生成できる(ネスト可能な)点です。これにより、複雑なタスクを再帰的に分解して処理できます。

ビルトインエージェント

Codex には3つのビルトインエージェントが用意されています。

エージェント役割
default汎用フォールバック
worker実装・修正中心のタスク
explorerコードベース探索中心のタスク

主要な設定パラメータ

1
2
3
4
5
6
# ~/.codex/agents/ または .codex/agents/ に TOML 形式で配置

[agents]
max_threads = 6              # 並行スレッド上限(デフォルト: 6)
max_depth = 1                # ネスト深度上限(デフォルト: 1)
job_max_runtime_seconds = 1800  # タイムアウト(デフォルト: 30分)

max_depth を増やすことで、サブエージェントからさらにサブエージェントを生成する多段ネストが可能になります。

カスタムエージェントの定義

~/.codex/agents/(個人用)または .codex/agents/(プロジェクト用)に TOML ファイルを配置して、カスタムエージェントを定義できます。

1
2
3
4
5
6
7
8
name = "pr_reviewer"
description = "PR のコードレビューを実施する"
developer_instructions = """
変更されたファイルを精査し、以下の観点でレビューする:
- コードの正確性とセキュリティ
- パフォーマンスへの影響
- テストカバレッジ
"""

特定のモデルを指定することも可能で、gpt-5.3-codex-spark のような高速モデルをサブエージェントに割り当てることもできます。

実践的なユースケース

マルチエージェント PR レビュー

複数の専門エージェントを組み合わせた PR レビューが可能です。

  • pr_explorer: 読み取り専用でコードの証拠を収集
  • reviewer: 正確性・セキュリティを検証
  • docs_researcher: API やフレームワークのドキュメントを確認

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

spawn_agents_on_csv ツールを使うと、CSV の各行に対して1ワーカーを生成し、全完了を待機して結果を CSV にエクスポートする一連の処理が可能です。監査やレビュー、構造化サマリーの生成などに活用できます。

GPT-5.4 との組み合わせ

GPT-5.4 はまだ正式発表されていませんが、コードコミットや API エンドポイントのリークから、100万〜200万トークンのコンテキストウィンドウや高度な推論モード(light〜extreme の5段階)といった機能が確認されています。このような強力なモデルが SubAgent の群として動作することで、単体では不可能な規模のタスクも処理できるようになると期待されています。

注意点

  • 各サブエージェントが独自にモデル呼び出しを行うため、トークン消費量は増加します
  • 親セッションのサンドボックスポリシーを継承するため、セキュリティは維持されます
  • /agent コマンドでアクティブなスレッドの切り替えや進行状況の確認が可能です

まとめ

Codex の SubAgent 機能は、AI コーディングアシスタントを「単体のエージェント」から「エージェントの群れ」へと進化させるものです。2026年3月16日に一般提供が開始され、カスタムエージェントの定義や並列実行の上限設定など、柔軟な構成が可能になっています。

Claude Code にも Agent ツールによるサブエージェント機能がありますが、Codex の SubAgent は TOML による宣言的な定義やネスト深度の制御など、独自のアプローチを取っています。AI コーディングツールの競争が、マルチエージェント領域でさらに加速していく流れが見えてきます。