Agent Teamsとサブエージェントの違い|どっちを使うべきか

コラム

結論から言うと、「結果だけ返してほしい作業」にはサブエージェント、「複数の視点で議論・協力が必要な作業」にはAgent Teamsが向いています。

Claude Codeには「サブエージェント」と「Agent Teams」という2つのマルチエージェント機能があります。名前は似ていますが、設計思想がまったく異なります。この記事では、両者の違いと使い分けの判断基準を解説します。

サブエージェントとAgent Teamsの根本的な違い

両者の違いを一言で表すと、サブエージェントは「部下に仕事を頼んで結果をもらう」、Agent Teamsは「チームで相談しながら一緒に仕事する」です。

サブエージェントの仕組み

サブエージェントは、メインのClaude Codeセッションの中で動きます。メインセッション(親)がサブエージェント(子)にタスクを渡し、子が作業して結果を親に返す。一方向の関係です。

サブエージェント同士は直接やり取りできません。すべてメインセッションを経由します。また、サブエージェントの作業結果は要約されてメインセッションに返されるため、トークン消費は比較的少なく済みます。

Agent Teamsの仕組み

Agent Teamsは、各メンバーが独立したClaude Codeインスタンスとして起動します。リーダー(Team Lead)がタスクを割り振り、メンバーはそれぞれ自分のコンテキストウィンドウで作業します。

最大の違いは、メンバー同士がリーダーを経由せずに直接メッセージをやり取りできることです。共有タスクリストで進捗を管理し、メンバー間で議論や情報共有ができます。さらに、ユーザーが各メンバーに直接指示を出すこともできます。

5つの観点で比較する

もう少し具体的に違いを整理します。

1. コミュニケーションの方向

サブエージェントは「親→子→親」の一方向です。子同士は話せません。Agent Teamsは「リーダー↔メンバー」「メンバー↔メンバー」「ユーザー↔メンバー」の多方向です。

この違いが意味するのは、Agent Teamsでは「フロントエンド担当がバックエンド担当にAPIの仕様を確認する」といった、メンバー間の連携が自動的に起きるということです。サブエージェントでは、こうした連携はすべてメインセッションが仲介する必要があります。

2. コンテキスト(作業環境)

サブエージェントは親セッションのコンテキスト内で動きます。作業結果は要約されて親に返されるため、大量の出力があっても親のコンテキストを圧迫しません。

Agent Teamsの各メンバーは独立したコンテキストを持ちます。それぞれのメンバーがCLAUDE.md、MCPサーバー、スキルなどのプロジェクト設定を個別に読み込みます。あるメンバーが大量のコードを処理しても、他のメンバーのコンテキストには影響しません。

3. コスト

サブエージェントはメインセッションの中で動くため、追加のトークン消費は比較的少ないです。

Agent Teamsは各メンバーが独立したインスタンスとして課金されます。公式ドキュメントでは「標準セッションの約7倍のトークンを消費し得る」とされています。3人チームなら、単純計算で通常の3〜4倍のコストがかかると考えてください。

4. スケーラビリティ

サブエージェントは、同時に動かせる数に制限があります。メインセッションのコンテキストに結果を返す構造上、大量のサブエージェントを同時に走らせるとコンテキストがあふれます。

Agent Teamsはより多くのメンバーを追加できます。Anthropicの実験では16体のエージェントを同時に動かした事例もあります。ただし、メンバーが増えるほどコストも増えるため、現実的には3〜5人構成が推奨されます。

5. 安定性

サブエージェントは、Claude Codeの標準機能として安定して動作します。

Agent Teamsは2026年2月時点でResearch Preview(実験的機能)です。セッションの再開に対応していない、シャットダウン時の挙動に課題がある、といった既知の制限があります。

使い分けの判断基準

では、具体的にどんな作業にどちらを使えばいいのか。判断基準は3つです。

判断基準1:メンバー間の連携が必要か

連携が不要 → サブエージェント。 「テストを実行して結果を教えて」「このファイルのドキュメントを書いて」のような、独立した単発作業にはサブエージェントが適しています。結果だけ返してくれればいいタスクです。

連携が必要 → Agent Teams。 「フロントエンドとバックエンドを同時に開発して、API仕様はメンバー同士で相談して決めて」のような、メンバー間の調整が必要な作業にはAgent Teamsが必要です。

判断基準2:複数の視点が必要か

1つの視点で十分 → サブエージェント。 「このコードをリファクタリングして」のように、1つの正解を出せばいい作業です。

複数の視点で検証したい → Agent Teams。 「このバグの原因を3つの仮説から同時に調査して、互いの仮説を検証して」のように、複数の視点を突き合わせることに価値がある作業です。公式ドキュメントでは、チームメンバーに「他のメンバーの仮説に異議を唱えること」を明示的に指示するパターンが紹介されています。

判断基準3:コストを重視するか

コストを抑えたい → サブエージェント。 トークン消費が少ないため、日常的な作業の分担にはサブエージェントの方が経済的です。

効果を重視する → Agent Teams。 コストはかかりますが、並列処理による時間短縮と、多角的なレビューによる品質向上の効果があります。

具体的なシーン別おすすめ

実際の開発シーンごとに、どちらを使うべきかをまとめます。

サブエージェントが向いているシーン

テストの実行と結果の取得。ドキュメントの取得・要約。ファイルの検索と情報収集。コードのフォーマット整形。ログファイルの解析と要約。

共通するのは、「作業を依頼して、結果を受け取る」という一方向のやり取りで完結する作業です。

Agent Teamsが向いているシーン

複数モジュールの同時開発(フロントエンド・バックエンド・テスト)。コードレビュー(セキュリティ・パフォーマンス・テストカバレッジの3観点同時チェック)。バグの原因調査(複数の仮説を並行で検証)。大規模リファクタリング(モジュールごとに担当を分けて並列作業)。設計の検討(UX担当・技術担当・反証担当で多角的に議論)。

共通するのは、「議論・連携・多角的な視点」が作業の質を左右するタスクです。

両方を組み合わせる使い方

サブエージェントとAgent Teamsは排他的ではありません。Agent Teamsのメンバーが、自分のタスクの中でサブエージェントを使うこともできます。

例えば、Agent Teamsのフロントエンド担当がサブエージェントにテスト実行を任せながら、バックエンド担当とAPI仕様について直接やり取りする、といった組み合わせです。

まずは日常的な作業にサブエージェントを使いこなすところから始めて、複雑なプロジェクトでAgent Teamsを投入する、というステップがおすすめです。

Agent Teamsの具体的な始め方は「Agent Teamsの始め方|セットアップから最初のチーム作成まで」で解説しています。また、コストの詳細については「Agent Teamsの料金はいくらかかる?中小企業が導入する場合のコスト感」をご覧ください。

コメント

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