テックエイド
AI・開発生産性

Claude Codeは1人より3人で分担が速い|サブエージェント設計の3レイヤー

#Claude Code #サブエージェント #AI活用 #開発生産性 #受託開発
Claude Codeは1人より3人で分担が速い|サブエージェント設計の3レイヤー

「Claude Codeに大きめのタスクを任せたら、途中から仕様が抜け落ちた」「最初は良かったのに、後半のレビューが甘くなった」。受託開発の現場でClaude Codeを使い始めたチームから、こうした声をよく聞きます。

原因の多くは、能力ではなく1セッションに役割を詰め込みすぎていることです。計画・実装・レビューを同じ文脈窓で回すと、長くなるほど初期の前提が薄まり、判断が場当たり的になります。

この記事では、サブエージェントを使ってClaude Codeを「planner(計画役)」「writer(実装役)」「reviewer(レビュー役)」の3レイヤーに分割する設計を紹介します。役割分担で文脈窓を守りながら、長い作業の品質と速度を両立させる運用テンプレートです。

なぜ「1人で全部」だと精度が落ちるのか

Claude Codeに限らず、生成AIは扱える文脈に上限があります。1セッションで設計討議・実装・レビュー・修正を全部こなすと、後半に入る頃には以下が起きがちです。

  • 序盤で合意した非機能要件(性能・セキュリティ・運用制約)が暗黙化する
  • 直近のコード差分に注意が引っ張られ、全体整合のチェックが甘くなる
  • 自分が書いたコードを自分でレビューする状態になり、欠陥に気付きにくい

人間のチーム開発でも、設計者と実装者とレビュアーが同一人物になると品質が落ちる、という話はよく出ます。同じことがAIエージェントにも起きている、というのが運用上の前提です。

レビュー観点そのものの整理はAI生成コードのレビューが甘くなる前に|現場で効く4観点で扱っています。本記事は、その「観点」を誰に持たせるかという分担設計の話だと考えてください。

3レイヤー設計の全体像

サブエージェント運用は、ざっくり次の3層に分けて考えると現場で機能します。

planner:要件と設計の番人

役割は、タスクのゴール・制約・成功条件を文章で固定することです。具体的には次を出力させます。

  • 入力前提(対象ファイル、依存範囲、触ってはいけない領域)
  • ゴールと完了条件(何が動けばOKか、何はスコープ外か)
  • リスクと検証観点(壊れやすい箇所、最低限のテスト方針)

このアウトプットは、後続のwriter・reviewerに渡す共通仕様書になります。ここを口頭の指示で済ませると、後段に入った瞬間に設計の根拠が消えます。

plannerが仕様書として生成するドキュメントのフォーマットの例です。

# タスク仕様書: [タスク名 / Issue #]

## 入力前提
- 対象ファイル: `src/auth/login.ts``src/auth/session.ts`
- 依存範囲: `src/lib/` 配下(読み取りのみ可)
- 触ってはいけない領域: `src/middleware/`、DBマイグレーションファイル

## ゴールと完了条件
- ゴール: ログイン処理の読みやすさを改善し、新人が5分で流れを追える状態にする
- 完了条件①: `login.test.ts` の全テストが通る
- 完了条件②: `POST /api/login` のリクエスト・レスポンス形式が不変
- スコープ外: エラーメッセージ文言の変更、セッション層の変更

## リスクと検証観点
- 注意箇所: Auth0 トークン検証ロジック(外部依存)
- 最低限のテスト: 正常ログイン / 認証失敗 / トークン期限切れの3ケース

writer:実装に集中するエージェント

writerには、plannerが作った仕様書だけを渡します。ここで重要なのは、writerに設計を再議論させないことです。

  • 仕様書に書かれていない判断は「TODOコメント」として残させる
  • 触ってよい範囲を明示し、横展開のリファクタは禁止する
  • 出力はパッチ(差分)と変更要約に限定する

「ついでに直しておきました」をAI側にやらせ始めると、レビューコストが跳ね上がります。役割を狭く切ることで、人間レビュアーの負担を下げます。

reviewer:別セッションで読む第三者

reviewerは、writerとは別のセッションで起動します。渡すのはplannerの仕様書とwriterの差分のみで、writerが内部的に使った試行錯誤のログは渡しません。

  • 仕様書の完了条件を満たしているか
  • 暗黙仕様(既存のエラー処理・ログ・命名規則)を破っていないか
  • テスト観点が不足していないか

「同じ文脈で書いた人がレビューしない」という単純な原則を、エージェントの分け方で機械的に担保するのがポイントです。

reviewerの観点をチェックリスト化する場合、スラッシュコマンド(.claude/commands/review-impl.md)として置くのがおすすめです。

---
description: "writerの差分をレビューし、仕様書との整合性を確認する"
---

以下の3観点で差分をレビューし、問題があればファイル名・行番・重要度(must/should/nits)で指摘すること。

## 検証観点

1. **完了条件の充足**: plannerの`完了条件①②`を一つずつ確認する
2. **暗黙仕様の違反**: 正常終了時のログ形式・エラー消辺方法・命名規則が既存コードと一貫しているか
3. **テスト不足**: スコープ内の差分に対して异常系・境界値テストが存在するか

## レビューしないこと

- writerの作業模機や試行錯誤のログ(仕様書と差分のみ判断する)
- スコープ外のファイルのコード品質(今回のタスク範囲外)

受託現場に落とすときの3つの実装ポイント

3レイヤーをそのまま導入してもうまくいかないことがあります。受託開発の現場で運用に乗せるときは、次の3点がポイントになります。

1. plannerの出力を「ファイルとして残す」

仕様書は会話の中ではなく、docs/ や Issue 本文など永続化される場所に置きます。会話の中だけに置くと、再開時にplannerをやり直すコストが発生し、結局1人で全部やる運用に戻ります。

2. writerに渡すスコープを物理的に絞る

「このディレクトリ配下だけ」「このファイルだけ」のように、writerが触れる範囲をリポジトリ構造で絞り込みます。レガシーコードに対する文脈設計はClaude Codeにレガシー調査を任せる4点設計が参考になります。

writer専用のCLAUDE.mdスニペットの例です。

## writerモードの運用ルール

### 触ってよい範囲
- `src/auth/login.ts``src/auth/session.ts` のみ
- 既存テストファイル(修正は可、削除は不可)

### やってはいけないこと
- 仕様書(`docs/task-spec/`)の内容を変更しない
- スコープ外のファイルをリファクタしない(追加修正の展開禁止)
- `git commit` / `git push` を自分で実行しない(提出は人間が行う)

### 出力フォーマット
- 修正差分(unified diff形式)
- 判断できなかった箇所は `TODO: 要確認 — [reason]` コメントで残す

3. reviewerの観点をチェックリスト化する

reviewerに毎回同じ観点を出させるため、レビュー観点をプロンプト側にチェックリストとして埋め込みます。これがないと、reviewerが「全体的に良さそうです」で終わるリスクが高まります。

PMとテックリードの線引き

3レイヤー運用は、エンジニアだけの話ではありません。PMやテックリードがどこに入るかを決めておかないと、結局「AIが書いたコードの最終責任者が不在」という状態になります。

  • planner段階では、PMがスコープと完了条件にレビューを入れます。
  • writer段階では、テックリードが触ってよい範囲を確定します。
  • reviewer段階では、人間レビュアーが最終判断を持ちます(マージ責任者を1人決める)。

PM側の関わり方の基本線はPMがClaude Codeを使うときの3ルールで整理しています。サブエージェント設計は、その3ルールをチーム運用に展開した形だと捉えられます。

まとめ:役割を狭く切ると、Claude Codeは速くなる

Claude Codeで成果を出しているチームほど、1セッションに何でも詰め込まず、planner・writer・reviewerに役割を分けています。文脈窓を守るための設計だと考えると、「分けたほうが速い」が直感的になります。

  • 1人で全部やらせると、長くなるほど精度が落ちる
  • planner・writer・reviewerの3レイヤーで文脈窓を分割する
  • PM・テックリードはレイヤーごとに最終判断の所在を決めておく

テックエイドの「AIX-101」と「AIX-102」では、こうしたサブエージェント設計を含む「実装×レビュー分離」の運用パターンを、受託開発の現場を題材に手を動かしながら学べます。チームでAIを定着させたいPM・マネージャーの方は、関連講座をぜひご確認ください。

関連講座を見る(テックエイドのAI実装・運用シリーズ)