Claude Codeのサブエージェント完全ガイド|.claude/agents で専門AIを並列実行する

Claude Codeのサブエージェント完全ガイド|.claude/agents で専門AIを並列実行する 生成 AI

Claude Codeを使い込むと、コードレビュー・デバッグ・調査といった「毎回やる作業」を専門のAIに任せたくなります。その仕組みがサブエージェント(Subagents)です。この記事では、サブエージェントとは何か、定義ファイルの作り方、並列実行のコツ、そして「メイン会話とどう使い分けるか」までを実例つきで解説します。

サブエージェントとは

サブエージェントは、特定のタスクに特化させた独立したAIアシスタントです。最大の特徴は、メインの会話とは別のコンテキスト(文脈)で動くことです。

たとえばログを大量に読ませたり、テストを走らせて出力を確認させたりすると、その膨大な出力がメイン会話を圧迫します。サブエージェントに任せれば、処理は独立した場所で行われ、メイン会話には結果の要約だけが返ってきます。会話がクリーンに保たれ、長時間の作業でも文脈が壊れにくくなります。

定義ファイルの置き場所とスコープ

サブエージェントは、YAMLフロントマターを持つMarkdownファイルとして定義します。置く場所によって適用範囲(スコープ)が変わります。

置き場所 スコープ 用途
.claude/agents/ 現在のプロジェクト プロジェクト固有。Git管理に含めチームで共有
~/.claude/agents/ すべてのプロジェクト 自分専用の個人エージェント
--agents CLIフラグ 現在のセッションのみ クイックテスト用

チームで共有したいなら.claude/agents/に置いてコミットするのが基本です。個人的に全プロジェクトで使いたいものは~/.claude/agents/に置きます。

フロントマターの書き方

定義ファイルの先頭に、YAMLで設定を書きます。必須はnamedescriptionの2つだけです。

---
name: code-reviewer
description: コード品質とセキュリティをレビューする。コードを書いた直後に使用
tools: Read, Grep, Glob, Bash
model: sonnet
---

あなたはシニアコードレビュアーです。
以下の観点でコードをチェックしてください。
- 可読性と命名
- エラーハンドリング
- セキュリティ
- テストカバレッジ

問題を優先度順に報告し、具体的な修正例を添えてください。

主要な項目は次のとおりです。

項目 必須 説明
name 小文字とハイフンで書く一意の識別子
description どんなときに使うべきかの説明。ここが自動起動の判断材料になる
tools × 使わせるツール。省略すると全ツールを継承
model × sonnet / opus / haiku / fable / inherit(既定)
memory × user / project / local。永続メモリを持たせる
isolation × worktreeで独立したgitワークツリーで実行

ポイントはdescriptionです。 ここに「いつ使うか」を具体的に書くと、Claude Codeが状況に応じて自動でそのサブエージェントを呼び出してくれます。読み取りだけで良い調査系エージェントはtoolsRead, Grep, Globに絞ると、誤ってファイルを書き換える事故を防げます。

作り方は3通り

1. Claudeに頼んで作ってもらう

一番手軽なのは、日本語で頼むことです。

~/.claude/agents/ に、コードを読んで可読性とパフォーマンスの改善案を出す
code-improver サブエージェントを作って。読み取り専用で sonnet を使って。

2. 手動でファイルを作る

上のフロントマター例をそのまま.claude/agents/code-reviewer.mdとして保存すれば完了です。

3. CLIフラグで一時的に定義する

その場限りで試したいときはJSONで渡せます。

claude --agents '{
  "code-reviewer": {
    "description": "エキスパートコードレビュアー",
    "prompt": "シニアコードレビュアーとして振る舞います...",
    "tools": ["Read", "Grep", "Glob", "Bash"],
    "model": "sonnet"
  }
}'

組み込みサブエージェント

自分で作らなくても、Claude Codeには最初からいくつかのサブエージェントが用意されています。

  • Explore(探索):ファイル検索・コードベース探索に特化した読み取り専用エージェント
  • Plan(計画):プランモードで実装前の調査を担当する読み取り専用エージェント
  • general-purpose(汎用):探索と変更の両方が必要な複雑なマルチステップタスク向け

「どこに認証処理があるか探して」のような調査は、Exploreが裏で動いて要約だけ返してくれます。

並列実行でスピードアップ

複数のサブエージェントを同時に走らせられるのが強力なポイントです。

認証・データベース・API の3モジュールを、それぞれ別のサブエージェントで
並列に調査してください。

各サブエージェントが独立したコンテキストで同時に動き、すべて終わってから結果が統合されます。大規模なコードベースの調査時間を大幅に短縮できます。

メイン会話との使い分け

万能ではありません。次の基準で使い分けましょう。

サブエージェントが向くケース

  • テスト実行・ドキュメント取得・ログ解析など、出力が大量になる作業
  • 特定のツールだけに制限したい作業
  • 自己完結した独立タスク(複数の並列調査など)

メイン会話が向くケース

  • こまめな対話・確認が必要な作業
  • フェーズをまたいで文脈を共有し続けたい作業
  • 短くて対象が絞られた変更
  • レイテンシ(応答速度)が重要な作業

まとめ

サブエージェントは、Claude Codeの作業効率を一段引き上げる機能です。.claude/agents/に定義してチームで共有すれば、コードレビューやデバッグの品質を全員で揃えられます。まずはcode-reviewerのような読み取り専用エージェントを1つ作るところから始めてみてください。メイン会話をクリーンに保ちつつ、専門タスクを任せられる感覚がつかめるはずです。

Views: 3

タイトルとURLをコピーしました