Claude Codeのサブエージェントは、メインの会話とは別のコンテキスト(AIが覚えていられる作業メモリ)で特定タスクを実行する仕組みです。人にたとえるなら、あなたと話しているメイン担当者の後ろに、調査係・検品係・テスト係といった専門スタッフが控えていて、必要なときだけ仕事を振れる体制です。本記事では、サブエージェントを使いこなすための実践パターンを紹介します。読み終える頃には、.claude/agents/の設計方針、役割分担のコツ、並列実行による高速化、そしてアンチパターンの回避方法が身につきます。
なお、いつ仕事を振って(spawnして)どう結果を束ねるかという運用フレームワークは、続編のサブエージェント委譲パターン集: いつspawnしてどう束ねるかで6レイヤーに分けて掘り下げています。本記事で基本パターンを押さえてから読むと理解が早いです。
サブエージェントとは何か
サブエージェントは、Claude Codeのメインセッションから独立したコンテキストウィンドウを持つ専門エージェントです。Agentツール経由で起動され、独自のシステムプロンプト・利用可能ツール・モデル設定を持ちます。
最大のメリットはコンテキスト分離です。たとえば大規模なプロジェクト全体を調査させる場合、メインセッションに調査の途中経過というノイズを持ち込まず、サブエージェントに、結論だけ200字で報告して、と指示することで、メインの作業領域を清潔に保てます。メインのコンテキストが調査ログで埋まると、肝心の作業の精度が落ちるためです。
定義は~/.claude/agents/(全プロジェクト共通)または.claude/agents/(プロジェクト単位)にMarkdownファイルとして配置します。プログラミングの知識がなくても、テキストファイルを1枚書くだけで専門スタッフを1人増やせます。
---
name: reviewer
description: 差分のコードレビューを行う読み取り専用エージェント
tools: Read, Grep, Glob, Bash
model: sonnet
---
あなたは厳格なシニアエンジニアです。
以下の観点で差分をレビューしてください:
- 型安全性
- N+1クエリ
- エラーハンドリング漏れ
- 命名の一貫性
出力は「指摘事項のリスト」のみ。修正コードは書かないでください。
4パターンの全体像
この記事で扱う4つのパターンを先に一覧で整理します。どれから導入するか迷ったら、事故防止の効果が最も大きいパターン1(読み取り専用レビュアー)からで間違いありません。
| パターン | 役割 | 渡すツール | モデルの目安 | 使いどころ |
|---|---|---|---|---|
| 1. レビュアー | 成果物の検品だけを行う | 読み取りのみ(Edit/Writeなし) | 高性能(Opus 4.8など) | 品質ゲート、公開前チェック |
| 2. 調査役(Explore型) | ファイルや資料の横断検索 | 読み取りのみ | 軽量(Haiku 4.5など) | 大規模プロジェクトの調査 |
| 3. 並列実行 | 独立タスクの同時進行 | タスクに応じて | 混在可 | 待ち時間の短縮 |
| 4. テスター | テスト実行と失敗の報告 | Bash + Read | 標準(Sonnet 4.6など) | 修正とテストの反復 |
パターン1: 読み取り専用レビュアー
もっとも実用的なパターンが書き込み権限を持たないレビュアーです。toolsからEdit/Writeを除外することで、レビュー中に勝手にコードを書き換える事故を防げます。
---
name: security-auditor
description: SQLインジェクション・XSS・認証バイパスを検出
tools: Read, Grep, Glob
model: opus
---
OWASP Top 10の観点で差分を監査してください。
発見した脆弱性は CVSS スコア(推定)と共に報告してください。
修正提案は「方針のみ」記述し、コードは書かないでください。
呼び出し側のメインエージェントは、レビュー結果を受け取ってから自分で修正を実装します。これによりレビューと修正の責任が明確に分離され、修正漏れや意図しない変更を抑えられます。人間の組織で、検品係と製造係を同じ人にしないのと同じ理屈です。
パターン2: 調査特化エージェント(Explore型)
大規模なプロジェクトで、この機能はどこで実装されているか、を調べるとき、メインセッションで検索を連打するとコンテキストが汚染されます。調査専用エージェントに丸投げするのが定石です。
---
name: explorer
description: コードベースを横断調査し、関連箇所を簡潔に報告
tools: Read, Grep, Glob, Bash
model: haiku
---
あなたは調査エージェントです。
- 関連ファイルとline番号をリストで返す
- 各箇所に1行の要約をつける
- 400字以内に収める
- ファイル全文を貼り付けない
ポイントはモデルに軽量なHaikuを指定することです。単純な検索タスクに高価な最上位モデルを使う必要はなく、Haiku 4.5のような軽量モデルなら高速・低コストで済みます。重要な判断を伴う場合のみOpus 4.8のような上位モデルに切り替えるのがコスト最適化の基本です。
パターン3: 並列実行で開発速度を倍化
Claude Codeは複数のサブエージェントを同一メッセージ内で並列起動できます。独立したタスクをまとめて投げると、待ち時間が劇的に短縮されます。
メインエージェント側のプロンプト例:
以下を並列で実行してください: 1. exploreエージェント: 認証フローの実装箇所を調査 2. reviewerエージェント: PR #123の差分をレビュー 3. testerエージェント: lib/auth/ のテストを実行Claude Codeはこれを単一のターンで3つのAgentツール呼び出しに展開し、並列実行します。順番に実行すると合計5分かかる作業が、並列なら2分で終わるケースも珍しくありません。
ただし<strong>依存関係があるタスクは並列化できません</strong>。調査結果を踏まえて修正、のような順序依存のあるフローは、Aの結果を受けてからBを起動する必要があります。また、並列の各エージェントが同じファイルを書き換える構成も衝突のもとです。書き込みを伴う並列作業では、各エージェントを独立した作業フォルダに隔離する方法があり、Claude Code Worktreeで並列エージェント開発を加速する記事で詳しく解説しています。
パターン4: テスト実行とフィードバックループ
テスト実行を専用エージェントに任せると、メインセッションのコンテキストを温存できます。
---
name: tester
description: テストを実行し、失敗したテストのみ報告
tools: Bash, Read
model: sonnet
---
テストを実行し、以下のフォーマットで報告してください:
## 失敗したテスト
- ファイル:行番号
- エラーメッセージの要点(1行)
- 推定原因
成功したテストの一覧は不要です。
全件成功した場合は「全テストパス」とだけ報告。
メインエージェントは失敗箇所のリストだけを受け取り、修正に集中できます。テスト実行の長大な出力でコンテキストが圧迫される問題を回避できます。
非エンジニアの業務での応用イメージ
ここまでの4パターンは開発の文脈で説明しましたが、考え方はそのまま事務・企画系の業務に持ち込めます。
- 経理・バックオフィス: 月次の経費データ集計を作業役エージェントに任せ、集計結果の検算だけをレビュアー(読み取り専用)に依頼する。作る人と検品する人を分けることで、集計ミスの見逃しが減ります。
- マーケティング: 記事やSNS投稿のドラフトを複数の作業役に並列で書かせ、表記ルール専門のレビュアーに全件チェックさせる。10本のドラフト作成と検品が1回の指示で回ります。
- 資料調査: 社内の過去資料フォルダから該当箇所を探す仕事を調査役に振り、自分は返ってきた要約だけを読む。フォルダを開いて回る時間がなくなります。
共通するのは、作る・探す・検品するを別の担当に分ける、という組織設計の発想です。エージェント定義は日本語のテキストファイルなので、業務マニュアルを書ける人ならそのまま書けます。
アンチパターンと注意点
1. サブエージェントの乱用
単純な1ファイル読み取りや1回の検索でサブエージェントを起動するのは過剰です。起動には初期化コストがかかるため、3回以上の調査が必要な場合や、メインコンテキストを汚したくない場合に限定します。
2. プロンプトの曖昧さ
サブエージェントは会話履歴を継承しません。さっきの件、あのファイル、は通じないため、プロンプトにファイルパス・行番号・前提条件をすべて明記する必要があります。新入社員への依頼メモと同じで、前提を省くと必ず事故になります。
3. 結果の長さを指定しない
200字以内で報告、のような長さ制約を入れないと、サブエージェントは長文を返しがちで、コンテキスト節約の意味が薄れます。
4. 書き込み権限を不用意に与える
レビュアー・調査エージェントにはEdit/Writeを渡さないのが原則です。意図しないファイル変更を防げます。
まとめ: 分業の設計がそのまま品質になる
サブエージェントは、コンテキスト分離と並列化という2つの強力な武器を提供します。.claude/agents/にreviewer・explorer・testerといった役割別の定義を置き、適切なモデル・ツール・プロンプトを与えることで、Claude Codeの作業効率は大きく向上します。重要なのは、責任を細かく分割し、各エージェントに結果は簡潔に、と指示することです。
サブエージェントを含むClaude Codeの全体像はClaude Code 使い方 完全ガイド2026で整理しています。エージェント定義の書き方や運用ルールをまとめて手元に置きたい方には、無料の教材ライブラリを見るを配布しています。そのまま使える定義ファイルのサンプルも含まれているので、最初の1体を作る足がかりにしてください。




