Claude Code Agent Teamの使い方 - AIエージェントチームで開発を効率化
はじめに
ソフトウェア開発の現場では、AIコーディングアシスタントの活用が急速に進んでいます。その中でもAnthropicが提供するClaude Codeは、CLIベースのAI開発ツールとして注目を集めています。
Claude CodeにはAgent Teamという機能があり、複数のAIエージェントを同時に起動して並列でタスクを処理できます。1つのセッションで1つずつタスクをこなす従来のやり方と比べ、チームとして協調する仕組みを使えば開発速度を大幅に向上できます。
この記事では、Claude Code Agent Teamの仕組みから具体的な使い方、活用事例まで詳しく解説します。
Claude Code Agent Teamとは
Claude Code Agent Teamは、複数のClaude Codeセッションをチームとして協調動作させる機能です。1つのセッションが**チームリード(Team Lead)**として全体を統括し、**チームメイト(Teammate)**と呼ばれる独立したClaude Codeインスタンスを複数起動して並列に作業を進めます。
従来のサブエージェント(Taskツール)との大きな違いは、以下の点です。
- サブエージェント: 親セッション内で動作し、結果を親に報告するだけの一方向通信
- Agent Team: 各メンバーが独立したセッションを持ち、メンバー間で直接メッセージをやり取りできる双方向通信
つまり、Agent Teamでは各エージェントが互いの発見を共有し、意見を交わしながら協力して1つの目標に取り組めるのです。
仕組み
アーキテクチャ
Agent Teamは以下の4つのコンポーネントで構成されています。
| コンポーネント | 役割 |
|---|---|
| Team Lead | チームの作成、タスクの割り当て、メンバーの起動、結果の統合を担当 |
| Teammate | 独立したClaude Codeインスタンスとして個別のタスクを実行 |
| Task List | 依存関係を追跡できる共有タスクリスト(~/.claude/tasks/{team-name}/に保存) |
| Mailbox | エージェント間のメッセージングシステム |
7つのコアツール
Agent Teamは内部的に以下の7つのツール(プリミティブ)で動作します。
| ツール | 機能 |
|---|---|
| TeamCreate | チームディレクトリと設定を初期化 |
| TaskCreate | 作業単位をJSONファイルとしてディスクに定義 |
| TaskUpdate | メンバーがタスクを取得・ステータスを更新 |
| TaskList | 全タスクの現在のステータスを返す |
| Task | チームメイトを起動(team_nameパラメータ付き) |
| SendMessage | メンバー間の直接通信 |
| TeamDelete | 完了後にチームファイルをクリーンアップ |
タスクの依存関係
タスクは**DAG(有向非巡回グラフ)**として依存関係を管理できます。あるタスクが別のタスクをブロックしている場合、ブロック元が完了すると自動的にブロックが解除されます。複数のメンバーが同じタスクを同時に取得しないよう、ファイルロックによる排他制御も行われます。
タスクのステータスは pending → in_progress → completed の順に遷移します。
サブエージェントとAgent Teamの使い分け
Claude Codeにはタスクを委譲する仕組みとして、サブエージェントとAgent Teamの2つがあります。目的に応じた使い分けが重要です。
サブエージェント(Taskツール)
単一セッション内で動作する軽量な委譲です。以下のような場面に適しています。
- テスト実行やログ処理など、出力が大量になるタスクをメインコンテキストから分離
- 複数モジュールの並列調査(読み取り専用)
- コスト効率の良い探索(Haiku搭載のExploreエージェント)
組み込みのサブエージェントタイプは以下の通りです。
| タイプ | 用途 |
|---|---|
| Explore | ファイル検索、コード探索(高速・読み取り専用) |
| Plan | 計画モード用のコードベース調査 |
| General-purpose | 探索と変更の両方を行う複雑なタスク |
| Bash | 別コンテキストでのターミナルコマンド実行 |
Agent Team
複数セッションによる本格的な協調作業です。以下のような場面に適しています。
- フロントエンド・バックエンド・テストを異なるメンバーが並列開発
- 複数の観点(セキュリティ・パフォーマンス・テストカバレッジ)からの同時コードレビュー
- 異なる仮説を同時に検証するデバッグ
- QAスウォーム(複数エージェントが異なる側面を同時テスト)
トークンコストの目安
| 構成 | おおよそのトークン使用量 |
|---|---|
| 単一セッション | 約200kトークン |
| サブエージェント3つ | 約440kトークン |
| Agent Team 3人 | 約800kトークン |
Agent Teamは各メンバーが独立したコンテキストウィンドウを持つため、トークン消費は大きくなります。小規模なタスクにはサブエージェント、大規模な並列作業にはAgent Teamと使い分けるのがコスト面でも効果的です。
設定方法
Agent Teamの有効化
Agent Teamは実験的機能のため、明示的に有効化する必要があります。.claude/settings.json または ~/.claude/settings.json に以下を追加します。
{
"env": {
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
}
}
チームの起動
有効化後は、自然言語で指示するだけでチームが起動します。
3人のチームを作成して、このモジュールを並列にリファクタリングしてください。
エージェントチームを作って、UX担当、技術アーキテクチャ担当、
デビルズアドボケイト担当の3人で異なる角度から調査してください。
表示モード
チームメイトの表示方法は3つから選べます。
| モード | 設定値 | 説明 |
|---|---|---|
| インプロセス(デフォルト) | "teammateMode": "in-process" | 全メンバーを1つのターミナルに表示。Shift+↑/↓で切り替え |
| 分割ペイン | "teammateMode": "tmux" | 各メンバーが独自のtmux/iTerm2ペインを取得 |
| 自動 | "teammateMode": "auto" | tmux内ならペイン分割、それ以外はインプロセス |
CLIからの上書きも可能です。
claude --teammate-mode in-process
デリゲートモード
Shift+Tabを押すとデリゲートモードに切り替わります。このモードではリードが自分ではコードを書かず、メンバーの起動・メッセージ送信・タスク管理だけに専念します。大規模プロジェクトでリードが実装に手を出さず指揮に集中したい場合に有効です。
カスタムサブエージェントの作成
Agent Teamとは別に、サブエージェントをカスタム定義することも可能です。Markdownファイルとして以下の場所に配置します。
.claude/agents/— プロジェクト単位~/.claude/agents/— ユーザー単位(全プロジェクト共通)
---
name: code-reviewer
description: コードの品質とベストプラクティスをレビューする
tools: Read, Glob, Grep
model: sonnet
maxTurns: 20
---
あなたはコードレビュアーです。コードを分析し、
具体的で実行可能なフィードバックを提供してください。
主な設定項目は以下の通りです。
| 設定 | 説明 |
|---|---|
tools / disallowedTools | 使用可能・不可のツールを制御 |
model | sonnet、opus、haiku、inherit(親と同じ) |
maxTurns | 最大ターン数 |
memory | user、project、local — セッション間の永続メモリ |
skills | プリロードするスキル |
応用例
1. 並列コードレビュー
3人のメンバーにそれぞれセキュリティ、パフォーマンス、テストカバレッジの観点でコードレビューを担当させます。各メンバーが独自の視点で問題を洗い出し、結果をリードが統合します。
2. フルスタック開発の並列化
フロントエンド、バックエンド、テストをそれぞれ別のメンバーに割り当て、同時に開発を進めます。APIの仕様変更があれば、メッセージで即座に他のメンバーに共有できます。
3. QAスウォーム
複数のエージェントが同時にアプリケーションの異なる側面をテストします。ある実例では、5つのエージェントが83ページ・146以上のURLを約3分でテスト完了したケースが報告されています。
4. 競合仮説デバッグ
原因不明のバグに対して、5人のメンバーにそれぞれ異なる仮説を調査させます。メンバー間で情報を共有し、互いの仮説を検証・反証しながら真因を特定していきます。
メリットとデメリット
メリット
- 開発速度の大幅な向上: 並列処理により、順次実行と比べて処理時間を大幅に短縮
- コンテキストの保全: 各メンバーが独自のコンテキストウィンドウを持つため、情報が増えても品質が劣化しにくい
- 専門化: 各メンバーに特化したプロンプトやツールを設定でき、タスクに最適なモデルを選択可能
- 相互検証: メンバー同士が発見を共有・検証し、アンカリングバイアスを防止
デメリット
- トークンコストの増大: 各メンバーが独立したセッションを持つため、消費トークンが大幅に増加
- 実験的機能: 現時点では安定版ではなく、制限事項がある
- セッション復元不可: インプロセスモードのチームメイトは
/resumeや/rewindで復元できない - 1セッション1チーム: 同時に複数のチームは運用できず、新しいチームを作るには既存チームのクリーンアップが必要
今後の展望
Agent Teamは現在「実験的機能」として提供されていますが、マルチエージェント開発は急速に発展している分野です。今後は以下のような進化が期待されます。
- 安定版への移行: 実験的フラグなしで利用可能になる
- ネストされたチーム: チームメイトがさらに下位のチームを持つ階層的な構造
- IDE統合の深化: VS CodeやJetBrainsなどのIDEとのよりシームレスな統合
- コスト最適化: トークン消費を抑えるための効率的なコンテキスト共有
ソフトウェア開発におけるAIの役割は「アシスタント」から「チームメンバー」へと進化しつつあり、Agent Teamはその先駆的な実装と言えるでしょう。
まとめ
Claude Code Agent Teamは、複数のAIエージェントを協調動作させて開発を効率化する強力な機能です。
- サブエージェントは軽量で単一タスクの委譲に向き、Agent Teamは複数セッションによる本格的な並列開発に向いている
- Agent Teamでは各メンバーが直接通信でき、タスクの依存関係管理や自動ブロック解除が行われる
- 有効化は
settings.jsonへの1行追加で完了し、自然言語でチームを起動できる - コスト面では消費トークンが増えるため、タスクの規模に応じた使い分けが重要
まずは小規模なタスクでサブエージェントを試し、並列作業のメリットを体感した上で、大規模プロジェクトにAgent Teamを導入することをおすすめします。