Loading

ROUTE

ルートゼロの
アクティビティ

Codexで複数エージェントを並列実行する方法

5

Codexへ「この修正も、調査も、テストも全部やって」と1つの大きな依頼を渡すより、独立した仕事を複数エージェントへ分けた方が速く進む場面があります。ただし、同じファイルを同時に触らせると統合コストが増えます。Codexでは、独立したチャットをworktreeで分離して並列に進める方法と、1つの作業からsubagentを分岐させる方法があります。まずはこの2つを分けて考えるのがポイントです。

まず結論:独立作業はworktree、分業調査はsubagent

方式 向いている仕事 分離の考え方
複数チャット + worktree 別機能、別Issue、独立した修正案 Git checkoutを分離して変更衝突を減らす
subagent 調査、レビュー、コード探索、並行する小タスク 親Agentが専門Agentへ仕事を分け、結果を集約する

Codexアプリでは複数エージェントを別スレッドで並行実行でき、worktreeを使うと同じRepositoryでも各チャットが独立したcheckoutで作業できます。一方、subagentは親の仕事の中から専門的な役割を切り出す仕組みです。

用語解説:Git worktree
1つのGit Repositoryから複数の作業ツリーを持てる仕組みです。Codexでは並列チャットを別worktreeへ置くことで、各Agentが同じ作業ディレクトリを直接書き換える状況を避けられます。


並列化しやすい仕事を先に切り出す

並列化の効果は、Agent数よりタスクの独立性で決まります。依存関係が少ない仕事ほど同時に進めやすく、最後の統合も小さくなります。

並列化しやすい 並列化しにくい
frontendとbackendで担当ファイルが分かれている 同じコンポーネントを2Agentが同時修正
調査と実装を分ける 調査結果が出ないと実装方針を決められない
実装と独立したテスト追加 実装途中のAPI仕様をテスト側が推測する
複数の代替案を別worktreeで試す 1つのmigrationを同時に書き換える
  • 各Agentの完了条件を1つに絞る
  • 担当ディレクトリやファイル境界を明記する
  • 共有インターフェースを変更するAgentを1つに決める
  • 他Agentの未完了変更を前提にしない仕事から並行化する

同じRepoならworktreeで変更を分離する

Codexのworktreeは、複数の独立したチャットを同じGit Projectで干渉させずに進めるための仕組みです。各チャットは別checkoutで動くため、ローカルの作業状態を直接上書きせずに別機能や別案を試せます。

  • 新しいCodexチャットでWorktreeを選ぶ
  • 基準にするbranchを選ぶ
  • Agentごとに独立したタスクを依頼する
  • 各threadのdiffを確認する
  • 必要な変更だけbranch化・Handoff・PRなどで統合する

worktreeを使っても、論理的な競合が消えるわけではありません。2つのAgentが同じAPI契約を別々に変更すれば、Git上は分離されていても最終統合時に設計判断が必要です。


subagentは役割を狭くすると機能する

現在のCodexではsubagentワークフローが標準で有効になっており、必要に応じて専門Agentを並列に動かせます。公式ドキュメントでも、custom agentは狭く明確な役割と、その仕事に合ったツール面を持たせることが推奨されています。

役割例 担当
code_mapper 対象機能の入口、状態遷移、関連ファイルを読み取り専用で特定
reviewer 正しさ、セキュリティ、テスト不足をレビュー
docs_researcher フレームワークやAPIの一次情報を確認
implementer 調査結果を受けて最小変更を実装

「全員が何でもできるAgent」にすると作業が重複しやすくなります。読むAgent、判断するAgent、書くAgentのように責任を分ける方が結果を比較しやすくなります。

同時実行数は設定できる

Codexのsubagent設定は`[agents]`で管理できます。現在の公式仕様ではmulti-agent toolsはデフォルトで有効で、同時に開けるsubagent thread数は`agents.max_concurrent_threads_per_session`で上限を設定できます。

[agents]
enabled = true
max_concurrent_threads_per_session = 4

上限を大きくすれば常に速くなるわけではありません。各subagentはそれぞれモデル・ツール処理を行うため、トークン消費も増えます。最初は独立性の高い2〜4タスク程度に分け、統合コストを確認しながら増やす方が管理しやすいです。

レビュー役を最後に1つ置く

並列Agentの成果をそのまま全部mergeするのではなく、最終的な整合性を確認する担当を1つ決めます。Codexアプリでは各threadの変更をdiffで確認し、コメントや手動修正もできます。

  • 重複実装がないか
  • 共有型・API・DB schemaの前提が一致しているか
  • 同じテストを別々の意図で変更していないか
  • 一方の変更で他方の前提が壊れていないか
  • 各Agentのテスト結果だけでなく統合後テストも通るか

役割としては「最終reviewer」または親Agentを統合責任者にすると、誰が最終判断するかが曖昧になりにくくなります。

並列化しない方がよいケース

  • 要件がまだ曖昧で、全Agentが別の前提を持ちそうなとき
  • 1つの小さな関数や設定ファイルだけを修正するとき
  • migrationや認証基盤など、変更順序が強く依存するとき
  • 最初の調査結果で後続タスクの内容が大きく変わるとき
  • 統合テスト環境が1つしかなく、並列成果を独立検証できないとき

こうした仕事では、先に1Agentで問題を理解し、タスク境界が見えた後で分業する方が安全です。マルチエージェントは人数を増やす機能ではなく、依存関係を切れる仕事を同時に進めるための設計として使います。

Codex自体の使い分けも整理したい場合

(CodexとCopilotの役割差から整理したい場合については『CopilotとCodexの違いと使い分け10選|VS Codeで効率化するAI開発ガイド』をご参照ください)

まとめ:分離・責任・統合の3点で設計する

  • 独立した実装タスクはworktreeで作業環境を分離する
  • 調査・レビュー・探索などはsubagentへ専門分担させる
  • 同じファイルや同じ設計判断を複数Agentへ重複して持たせない
  • subagentの同時thread数は設定できるが、多いほど良いわけではない
  • 最後に1つのreviewer/親Agentで統合後の整合性とテストを確認する

最初は、コード探索・実装・レビューの3役に分けて試してください。担当範囲と完了条件を明確にしてから並列化すると、Agent数を増やすより効果を確認しやすくなります。

カジュアル面談はこちら

RANKINGranking-icon

すべてを開示している会社です

ポジティブな面もネガティブな面も、包み隠さず誠実にお答えします。
気になることがあれば、面談の際にすべてオープンにお話します。