0
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?

Claude Code × Codex CLI で『Planner / Executor 分業』を実践する — 1日の生産性が2倍になった運用パターン

0
Posted at

はじめに

Claude Code と Codex CLI、両方を実務で使い倒している現役CTO(ベンチャー10年)です。

最近、社内・チームの開発フローで 「Planner と Executor を別エージェントに分ける」 運用が定着し、体感の生産性が2倍近くまで伸びました。

この記事では、その分業設計と、実装パターンを紹介します。

なぜ「1つのエージェントに全部やらせる」のは限界があるか

Claude Code 単体に大きなタスクをまるごと投げると、

  • 計画フェーズと実装フェーズで思考の粒度が混ざる
  • 「ここまで計画」「ここから実装」の境界が曖昧になり、途中で方針が揺れる
  • レビュー・差し戻しの時に、計画の意図が分からなくなる

という問題が出てきます。

これは AI モデルの問題というより、ロール(役割)が分離されていない ことに起因します。
人間のチームでも、PM・実装者・レビュアーは別の人がやった方が品質が安定するのと同じです。

3層分業: Planner / Executor / Reviewer

実務で安定してきた構成は、次の3層です。

Planner   = Claude Code(タスク理解 → 設計 → タスク分解)
Executor  = Codex CLI(分解されたタスクの実装)
Reviewer  = Claude Code(別セッション、コードレビューと差し戻し)

ポイント: Reviewer は Planner と別セッションで走らせる。文脈が共有されないことで、客観的なレビューが効きます。

実装パターン1: Planner の出力を「実行可能な仕様」にする

Planner(Claude Code)には、最終的に Executor に渡せる粒度まで分解させます。

あなたは Planner です。以下の要件を読んで、Executor に渡せる粒度のタスクリストに分解してください。

【要件】
ユーザー認証付きの ToDo アプリを Next.js 14 + Supabase で実装する。

【出力フォーマット】
各タスクは次の YAML 形式で書く:

- id: T1
  title: Supabase プロジェクト初期化
  inputs: なし
  outputs: supabase/config.toml, .env.local
  acceptance: supabase status が起動済みになる
  dependencies: なし

「inputs / outputs / acceptance / dependencies」を必ず書かせると、Executor が迷わずに実装できます。

実装パターン2: Executor は「1タスクだけ」を渡す

Executor(Codex CLI)には、Planner が出した1タスクだけを渡します。

codex exec "
タスク: T3
title: Supabase 認証の実装
inputs: T1, T2 完了
outputs: app/auth/login/page.tsx, lib/supabase/client.ts
acceptance: メール+パスワードでサインインしてダッシュボードに遷移できる
"

Codex CLI は単一タスクの実装が速く、Planner が分解したタスクを順番に処理させると、Claude Code 単体より早く回ります。

実装パターン3: Reviewer は「別セッション・別観点」で走らせる

Reviewer は Claude Code の別セッション(または別タブ)で起動し、観点を明示してレビューさせます。

あなたは Reviewer です。以下のPRをレビューしてください。
(Plannerが立てた acceptance を満たしているか、別観点で検証する)

【観点】
- セキュリティ(認証ロジック、SQL Injection、XSS)
- 例外系(外部API失敗、null安全)
- アクセプタンスクライテリア(acceptance: メール+パスワードでサインインしてダッシュボードに遷移できる)

各観点ごとに「OK / 要修正 / 検討事項」で出してください。

ポイントは Plannerと同じ文脈を渡さないこと。文脈が共有されているとレビューが甘くなります。

ワークフロー全体図

[要件] → Planner(Claude Code) → タスクリスト(YAML)
                                  ↓
                              Executor(Codex CLI)
                                  ↓
                              実装コード
                                  ↓
                              Reviewer(Claude Code 別セッション)
                                  ↓
                              レビュー結果
                                  ↓
                          [必要なら Executor に戻す]
                                  ↓
                              完了

このループを回すと、

  • 1つのエージェントに丸投げしていた時より 実装速度1.5〜2倍
  • レビューの質が上がり、後戻りが減る
  • 各エージェントのコンテキストが軽くなり、トークン効率も良くなる

という効果が出ました。

注意点: 過剰分業はかえって遅い

3層に分けると、当然ながら オーバーヘッド も発生します。
小さいタスク(10行程度の修正、CSS 微調整等)には逆効果です。

目安:

  • タスクが1ファイル / 1関数完結 → 1エージェントで OK
  • タスクが3ファイル以上 / 認証や決済を含む → 3層分業の効果が出る
  • タスクが10ファイル以上 / 設計判断が複数回必要 → 3層分業ほぼ必須

まとめ

ロール エージェント 役割
Planner Claude Code 要件理解・タスク分解
Executor Codex CLI 1タスクずつ実装
Reviewer Claude Code(別セッション) 観点明示でレビュー

「1つのエージェントに全部やらせる」から脱却するだけで、AI 駆動開発のレベルがもう一段上がります。


この設計を実装した個人開発・実務サポートを MENTA でも提供しています → https://menta.work/plan/20251
Claude Code活用の発信は YouTube でも → https://www.youtube.com/channel/UC1rXVD9WYsQPQEWZyd-A1KA/

0
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
0
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?