エージェントチームを使用する場合
エージェントチームは、並列探索が実際の価値を追加するタスクに最も効果的です。完全なシナリオについては、ユースケース例を参照してください。最も強力なユースケースは以下の通りです。- 調査とレビュー:複数のチームメンバーが問題のさまざまな側面を同時に調査し、その後、各自の調査結果を共有して相互に検証できます
- 新しいモジュールまたは機能:チームメンバーが互いに干渉することなく、それぞれ別々の部分を担当できます
- 競合する仮説でのデバッグ:チームメンバーが異なる理論を並列でテストし、より迅速に答えに収束できます
- クロスレイヤー調整:フロントエンド、バックエンド、テストにまたがる変更で、それぞれ異なるチームメンバーが担当します
subagents との比較
エージェントチームと subagents の両方を使用すると、作業を並列化できますが、動作方法が異なります。チームなしでメッセージを相互に渡す別々のセッションについては、クロスセッションメッセージングを参照してください。

Subagents は結果をメインエージェントに報告します。エージェントチームでは、チームメンバーがタスクリストを共有し、作業を要求し、互いに直接通信します。
結果を報告する必要がある迅速で焦点を絞ったワーカーが必要な場合は subagents を使用してください。チームメンバーが調査結果を共有し、互いに検証し、独立して調整する必要がある場合は、エージェントチームを使用してください。
エージェントチームを有効にする
エージェントチームはデフォルトでは無効になっています。CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS 環境変数を 1 に設定して有効にしてください。シェル環境または settings.json を通じて設定できます。
settings.json
-p フラグを含む 非インタラクティブモード では、Agent SDK セッションを含めて、Claude はチームメイトを生成せず、Claude が名前を付けたサブエージェントはエージェントチームが有効な場合でも通常の サブエージェント として実行されます。
最初のエージェントチームを開始する
エージェントチームを有効にした後、実行したいタスクとチームメンバーを自然言語で説明してください。Claude がチームメンバーを生成し、プロンプトに基づいて作業を調整します。 この例は、3 つの役割が独立しており、互いに待つことなく問題を探索できるため、うまく機能します。- 上下矢印: チームメンバーを選択する
- Enter: 選択したチームメンバーのトランスクリプトを開き、直接メッセージを送信する
- Escape: 選択を解除します。チームメンバーのトランスクリプトを表示している間、Escape はそのチームメンバーの現在のターンを中断します
2 idle agents のようになります。それを選択して Enter キーを押すと折りたたまれた行が展開され、Esc キーを押すと再び折りたたまれます。作業中のチームメンバー、失敗したチームメンバー、および表示中のチームメンバーは常に独自の行を保持します。
各チームメンバーを独自の分割ペインに配置したい場合は、表示モードを選択を参照してください。
エージェントチームを制御する
リーダーに自然言語で実行したい内容を指示してください。チーム調整、タスク割り当て、および指示に基づいた委任を処理します。表示モードを選択する
エージェントチームは 2 つの表示モードをサポートしています。- In-process:すべてのチームメンバーがメインターミナル内で実行されます。エージェントパネルで上下矢印キーを使用してチームメンバーを選択し、Enter キーを押してそれを表示して、直接メッセージを入力してください。追加のセットアップなしで任意のターミナルで動作します。
- 分割ペイン:各チームメンバーが独自のペインを取得します。すべてのユーザーの出力を一度に表示でき、ペインをクリックして直接対話できます。tmux または iTerm2 が必要です。
tmux には特定のオペレーティングシステムでの既知の制限があり、従来は macOS で最も効果的に動作します。iTerm2 で tmux -CC を使用することが、tmux への推奨エントリーポイントです。"in-process" です。"auto" を設定して、既に tmux セッション内で実行している場合または使用しているターミナルが iTerm2 で it2 CLI がインストールされている場合は分割ペインを有効にし、それ以外の場合は in-process にフォールバックします。"tmux" 設定は分割ペインモードを有効にし、ターミナルに基づいて tmux または iTerm2 を使用するかどうかを自動検出します。
"iterm2" を設定して iTerm2 ネイティブ分割ペインを明示的に使用してください。このモードは it2 CLI が必要で、it2 が見つからない場合はインストールコマンド付きでエラーを表示します。it2 をインストールするか tmux に切り替えるオプションを提供するセットアッププロンプトは、ターミナルが iTerm2 で tmux がフォールバックとして利用可能な場合、"auto" または "tmux" の下に表示されます。
デフォルトをオーバーライドするには、~/.claude/settings.json で teammateMode を設定してください。
--teammate-mode フラグは実験的であり、claude --help に表示されません。
分割ペインモードには、tmux または it2 CLI を備えた iTerm2 が必要です。手動でインストールするには、以下を実行してください。
- tmux:システムのパッケージマネージャーを通じてインストールしてください。プラットフォーム固有の手順については、tmux wiki を参照してください。
- iTerm2:
it2CLI をインストールし、iTerm2 → Settings → General → Magic → Enable Python API で Python API を有効にしてください。
チームメンバーとモデルを指定する
Claude はタスクに基づいて生成するチームメンバーの数を決定するか、正確に実行したい内容を指定できます。- スポーンプロンプトがそのチームメンバーに対して指定するモデル。
- サブエージェント定義からスポーンされたチームメンバーの場合、定義の
model。ここでinheritはリーダーのモデルを選択します。 CLAUDE_CODE_SUBAGENT_MODEL。inherit以外に設定されている場合。- リーダーの現在のモデル。
CLAUDE_CODE_SUBAGENT_MODEL_FORCE=1 を設定した場合、最初の 2 つのソースは適用されません。Claude Code は CLAUDE_CODE_SUBAGENT_MODEL が inherit 以外に設定されている場合はそこからすべてのチームメンバーのモデルを選択し、それ以外の場合はリーダーの現在のモデルから選択します。Claude Code v2.1.257 以降が必要です。
v2.1.251 より前は、CLAUDE_CODE_SUBAGENT_MODEL がこの順序で最初に来ていました。
teammateDefaultModel は v2.1.234 で削除されました。Claude Code は残された値を無視します。代わりにプロンプトでモデルを指定してください。availableModels 許可リストに対してチェックします。許可リストが値をブロックすると、Claude Code は別のモデルを代替します。
opusなどのファミリーエイリアス:Anthropic API および AWS 上の Claude Platform では、Claude Code はチームメンバーを許可リストが許可するそのファミリーの最新バージョンで実行します。プロバイダー固有のモデル ID を持つプロバイダーでは、代替が動作しない場合、ブロックされたエイリアスは次の箇条書きに従って他のブロックされた値のようにフォールバックします。- プロバイダー固有のモデル ID を持つプロバイダーで代替が動作しないファミリーエイリアス、またはそのファミリーに許可されたバージョンがないもの、またはその他のブロックされた値:Claude Code はチームメンバーをリーダーのモデルで実行します。
CLAUDE_CODE_SUBAGENT_MODELを設定した場合、Claude Code はそのモデルを最初に試し、これらの同じルールの下で実行します。
チームメンバーが実装前にプランを立てるようにする
複雑またはリスクの高いタスクの場合、チームメンバーが実装前にプランを立てることができます。リーダーがプランモードにある間に Claude がスポーンするチームメンバーは、プランが準備できるまで読み取り専用プランモードで動作します。まずリーダーをプランモードに切り替えてから、チームメンバーを要求してください。チームメンバーと直接通信する
各チームメンバーは、完全で独立した Claude Code セッションです。任意のチームメンバーに直接メッセージを送信して、追加の指示を与えたり、フォローアップの質問をしたり、アプローチをリダイレクトしたりできます。- In-process モード:エージェントパネルで上下矢印キーを使用してチームメンバーを選択し、Enter キーを押してそのセッションを表示して、メッセージを入力してください。選択したチームメンバーで
xを押してそれを停止してください。Ctrl+T を押してタスクリストを切り替えてください。 - 分割ペインモード:チームメンバーのペインをクリックして、セッションと直接対話してください。各チームメンバーは独自のターミナルの完全なビューを持っています。
/model と /fast はリーダーの設定のみを変更します。v2.1.199 以降、チームメンバーを表示している間にいずれかのコマンドを入力すると、変更がリーダーに適用されることを示す通知が表示されます。それより前のバージョンでは、指示なしでリーダーに適用されました。/effort はチームメンバーの後続のターンに適用されます。これはチームメンバーがリーダーの努力レベルに従うためです。
タスクを割り当てて要求する
共有タスクリストはチーム全体の作業を調整します。リーダーがタスクを作成し、チームメンバーがそれらを処理します。タスクには 3 つの状態があります。保留中、進行中、完了。タスクは他のタスクに依存することもできます。未解決の依存関係を持つ保留中のタスクは、それらの依存関係が完了するまで要求できません。 Task ツールを持たないエージェントは、共有タスクリストの代わりにメッセージを通じて調整します。 リーダーはタスクを明示的に割り当てるか、チームメンバーが自己要求できます。- リーダーが割り当て:リーダーにどのタスクをどのチームメンバーに与えるかを指示してください
- 自己要求:タスクを完了した後、チームメンバーは独立して次の未割り当て、ブロック解除されたタスクを選択します
チームメンバーをシャットダウンする
チームメンバーのセッションを適切に終了するには、名前で参照してください。例えば、researcher という名前のチームメンバーの場合:hooks で品質ゲートを実施する
hooks を使用して、チームメンバーが作業を完了したときまたはタスクが作成または完了したときのルールを実施してください。TeammateIdle:チームメンバーがアイドル状態になろうとしているときに実行されます。終了コード 2 でフィードバックを送信し、チームメンバーを動作させ続けてください。TaskCreated:タスクが作成されているときに実行されます。終了コード 2 で作成を防止し、フィードバックを送信してください。TaskCompleted:タスクが完了としてマークされているときに実行されます。終了コード 2 で完了を防止し、フィードバックを送信してください。
エージェントチームの動作方法
このセクションでは、エージェントチームの背後にあるアーキテクチャとメカニクスについて説明します。使用を開始したい場合は、上記の エージェントチームを制御する を参照してください。Claude がエージェントチームを開始する方法
チームを開始するには、Claude にチームメンバーをリクエストしてください。Claude は Agent ツール を呼び出してname を指定し、エージェントチームが有効になっている場合にチームメンバーを起動します。ただし、呼び出しが fork であるか、呼び出し自体で isolation を渡す場合は除きます。Claude Code があなたに確認を求めることはありません。
Claude は通常の subagent にも独自に名前を付けるため、後でメッセージを送信できます。これらの呼び出しは同じルールに従うため、チームメンバーをリクエストしなくてもチームが形成される可能性があります。subagent の代わりに使用したい場合は、エージェントチームをオフにしてください。
アーキテクチャ
エージェントチームは以下で構成されています。
各エージェントのメールボックスは
~/.claude/teams/{team-name}/inboxes/{agent-name}.json にある JSON ファイルです。Claude Code はメールボックスファイルを読み取るときにすべてのエントリを検証します。メッセージ形式と一致しないエントリはエラーとして報告され、ファイルから削除されます。有効なメッセージは引き続き配信されます。v2.1.207 より前では、1 つの不正なメールボックスエントリが毎秒繰り返しエラーを引き起こし、ファイルを手動で削除するまでそのメールボックスの配信をブロックしていました。
Claude Code は、メッセージがプレーンテキストであるか、プラン承認やシャットダウンリクエストなどの構造化プロトコルメッセージであるかに関わらず、受信者のメールボックスファイルへの書き込みが成功した場合にのみメッセージを送信済みとして報告します。ディスクがいっぱいであるか、メールボックスディレクトリが書き込み可能でないなど、書き込みが失敗した場合、送信エージェントはエラーを受け取り、何も送信されません。エラーメッセージと復旧手順については、チームメンバーのインボックスへの書き込みに失敗しました を参照してください。
Claude Code はタスク依存関係を自動的に管理します。チームメンバーが他のタスクが依存するタスクを完了すると、ブロックされたタスクはあなたからのアクションなしにブロック解除されます。
チームとタスクはセッション派生名でローカルに保存されます。名前は session- の後にセッション ID の最初の 8 文字が続きます。
- チーム設定:
~/.claude/teams/{team-name}/config.json - タスクリスト:
~/.claude/tasks/{team-name}/
cleanupPeriodDays によって管理され、保持スイープルール に従います。
チーム設定はセッション ID と tmux ペイン ID などのランタイム状態を保持しているため、手動で編集したり、事前に作成したりしないでください。次の状態更新時に変更が上書きされます。
再利用可能なチームメンバーロールを定義するには、代わりに subagent 定義を使用 してください。
チーム設定には、各メンバーの名前とエージェント ID を含む members 配列が含まれています。リーダーのエントリは常にエージェントタイプ team-lead を持ちます。チームメンバーのエントリは、リーダーが生成時に名前を付けたエージェントタイプ(組み込みタイプ または subagent 定義 のいずれか)を持ち、リーダーが何も名前を付けなかった場合はフィールドを省略します。チームメンバーはこのファイルを読み取って、他のチームメンバーを発見できます。
プロジェクトレベルのチーム設定に相当するものはありません。プロジェクトディレクトリ内の .claude/teams/teams.json のようなファイルは設定として認識されません。Claude はそれを通常のファイルとして扱います。
チームメンバーに subagent 定義を使用する
どちらの表示モードでもチームメンバーを生成するときに、プロジェクト、ユーザー、または管理対象の subagent スコープ から subagent タイプを参照できます。これにより、セキュリティレビュアーやテストランナーなどのロールを 1 回定義し、委任された subagent とエージェントチームチームメンバーの両方として再利用できます。 subagent 定義を使用するには、Claude にチームメンバーを生成するよう指示するときに名前で言及してください。tools:Claude Code はチームメンバーを定義のtoolsリスト内のツールに制限します。インプロセスチームメンバーの場合、Claude Code はそのリストにSendMessageを追加し、Task ツールを持つセッション ではTaskCreate、TaskGet、TaskList、およびTaskUpdateも追加します。model:Claude Code は、生成プロンプトが 1 つを名前で指定しない場合、どちらの表示モードでも定義のmodelを使用します。Claude Code がチームメンバーのモデルを選択する方法 を参照してください。- 本体:インプロセスチームメンバーの場合、Claude Code は定義の本体をデフォルトシステムプロンプトに追加の指示として追加します。分割ペインチームメンバーの場合、Claude Code はデフォルトシステムプロンプトの代わりに本体を使用します。
skills:Claude Code はどちらの表示モードでもチームメンバーに定義のskillsを適用しません。チームメンバーはプロジェクトおよびユーザー設定から skills をロードします。mcpServers:分割ペインチームメンバーの場合、Claude Code は そのフィールドのルール に従って定義のmcpServersを適用します。これは--agentで開始されたセッションもカバーします。インプロセスチームメンバーはフィールドを無視し、プロジェクトおよびユーザー設定から MCP サーバーをロードします。
.claude/agents/ ディレクトリまたは --add-dir ディレクトリから来た定義は、エージェントファイルが存在するフォルダを信頼している 場合にのみ再適用されます。親フォルダを信頼することはカウントされません。それまで、チームメンバーはすべてのインプロセスチームメンバーに Claude Code が追加するツールのみを保持して、定義のツールまたは指示なしで戻ります。チームメンバーのエージェント定義が復元されませんでした を参照して、通知テキストを確認してください。
権限
チームメンバーはリーダーの権限モードで開始します。ただし、dontAsk モード は継承しません。リーダーが --dangerously-skip-permissions で実行する場合、すべてのチームメンバーも同様に実行します。生成後、個別のチームメンバーの権限モードを変更できますが、生成時にチームメンバーごとの権限モードを設定することはできません。
チームメンバーの権限プロンプトはリーダーセッションに表示されるため、そこで自分で承認してください。プラン承認 は設計された例外です。リーダーセッションはあなたへの別のプロンプトなしにチームメンバープラン承認を付与します。
エージェント間のメッセージ
1 つのエージェントがSendMessage 経由で別のエージェントにメッセージを送信する場合、受信エージェントには、あなたからではなく別の Claude セッションから来たことが通知されます。チームメンバーは権限プロンプトを承認したり、あなたに代わって同意を提供したりすることはできません。また、アクションが拒否されたチームメンバーは、チェックをバイパスするために別のチームメンバーにそれをリレーすることはできません。チーム外の他の Claude Code セッション から到着するメッセージにも同じルールが適用されます。
auto モード では、分類器はエージェント間のメッセージに 2 つのチェックを適用します。
- 別のエージェントからリレーされた承認クレームは、あなたからの確認ではなく、信頼できない入力として扱われます。
- シャットダウンリクエストやプラン承認応答などの構造化プロトコルメッセージであるかどうかに関わらず、プレーンメッセージであるかどうかに関わらず、各メッセージを Claude Code が配信する前にレビューします。ブロックされたメッセージは受信者に到達することはありません。
コンテキストと通信
各チームメンバーは独自のコンテキストウィンドウを持っています。生成されると、チームメンバーは通常のセッションと同じプロジェクトコンテキストをロードします。CLAUDE.md、MCP サーバー、および skills。また、リーダーからの生成プロンプトを受け取ります。リーダーの会話履歴は引き継がれません。 チームメンバーが情報を共有する方法:- 自動メッセージ配信:チームメンバーがメッセージを送信すると、受信者に自動的に配信されます。リーダーは更新をポーリングする必要はありません。
- アイドル通知:チームメンバーが完了して停止すると、リーダーに自動的に通知し、最終的な回答を通知に含めます。ターンが API エラーで終了するチームメンバーは、リーダーに失敗したことを通知し、エラーテキストを含めます。
- 共有タスクリスト:Task ツールを持つエージェント はタスクステータスを表示でき、利用可能な作業を要求できます。
- チームメンバーメッセージング:その名前で特定のチームメンバーにメッセージを送信します。全員に到達するには、受信者ごとに 1 つのメッセージを送信してください。
トークン使用量
エージェントチームは単一セッションよりも大幅に多くのトークンを使用します。各チームメンバーは独自のコンテキストウィンドウを持ち、トークン使用量はアクティブなチームメンバーの数でスケールします。調査、レビュー、および新機能作業の場合、追加のトークンは通常価値があります。ルーチンタスクの場合、単一セッションがより費用効果的です。使用ガイダンスについては、エージェントチームトークンコスト を参照してください。 インプロセスチームメンバーのリクエストはメイン会話の キャッシュ TTL バケット の外にあるため、Claude サブスクリプションを含め、デフォルトで 5 分間キャッシュが保持されます。1 時間保持するには、subagentPromptCacheTtl を 1h に設定してください。API は 1 時間のキャッシュ書き込みをより高いレートで請求します。
ユースケース例
これらの例は、エージェントチームが並列探索が価値を追加するタスクをどのように処理するかを示しています。並列コードレビューを実行する
単一のレビュアーは一度に 1 つのタイプの問題に傾く傾向があります。レビュー基準を独立したドメインに分割することで、セキュリティ、パフォーマンス、およびテストカバレッジがすべて同時に徹底的に注意を受けます。プロンプトは各チームメンバーに異なるレンズを割り当てるため、重複しません。競合する仮説で調査する
根本原因が不明な場合、単一のエージェントは 1 つのもっともらしい説明を見つけて停止する傾向があります。プロンプトはチームメンバーを明示的に敵対的にすることでこれと戦います。各チームメンバーの仕事は、独自の理論を調査するだけでなく、他の理論に異議を唱えることです。ベストプラクティス
チームメンバーに十分なコンテキストを提供する
チームメンバーはプロジェクトコンテキスト(CLAUDE.md、MCP servers、および skills を含む)を自動的にロードしますが、リーダーの会話履歴は継承しません。詳細については、コンテキストと通信を参照してください。生成プロンプトにタスク固有の詳細を含めてください。適切なチームサイズを選択する
チームメンバーの数に厳しい制限はありませんが、実際の制約が適用されます。- トークンコストは線形にスケール:各チームメンバーは独自のコンテキストウィンドウを持ち、独立してトークンを消費します。詳細については、エージェントチームトークンコストを参照してください。
- 調整オーバーヘッドが増加:より多くのチームメンバーは、より多くの通信、タスク調整、および競合の可能性を意味します
- 収穫逓減:ある時点を超えると、追加のチームメンバーは作業を比例的に高速化しません
タスクを適切にサイズ設定する
- 小さすぎる:調整オーバーヘッドが利益を超える
- 大きすぎる:チームメンバーはチェックインなしで長時間動作し、無駄な努力のリスクが増加します
- ちょうど良い:関数、テストファイル、またはレビューなど、明確な成果物を生成する自己完結型ユニット
チームメンバーが完了するまで待つ
時々、リーダーはチームメンバーを待つ代わりに、タスク自体を実装し始めます。これに気付いた場合は、以下を実行してください。調査とレビューから開始する
エージェントチームが初めての場合は、明確な境界があり、コードを書く必要がないタスクから開始してください。PR をレビューする、ライブラリを調査する、またはバグを調査します。これらのタスクは、並列実装に伴う調整の課題なしに、並列探索の価値を示しています。ファイルの競合を回避する
2 人のチームメンバーが同じファイルを編集すると、上書きが発生します。作業を分割して、各チームメンバーが異なるファイルセットを所有するようにしてください。監視と操舵
チームメンバーの進捗をチェックし、機能していないアプローチをリダイレクトし、調査結果が入ってくるにつれて統合してください。チームを長時間無人で実行させると、無駄な努力のリスクが増加します。トラブルシューティング
チームメンバーが表示されない
Claude にチームメンバーを生成するよう指示した後、チームメンバーが表示されない場合は、以下を実行してください。- In-process モードでは、チームメンバーはプロンプト入力の下のエージェントパネルに表示されます。上下矢印キーを使用して 1 つを選択し、Enter キーを押して表示してください。
- アイドル状態で消えたチームメンバー行は停止されていなく、非表示になっています。アイドル行はパネル全体がアイドル状態になってから 30 秒後に非表示になり、チームメンバーの次のターンで再表示されます。3 人以上のチームメンバーがアイドル状態の場合、余剰行は
N idle agentsという 1 つの行に折りたたまれ、Enter キーで展開されます。チームメンバーに名前でメッセージを送信して、非表示の行を戻してください。 - Claude に提供したタスクがチームを必要とするほど十分複雑であることを確認してください。Claude はタスクに基づいてチームメンバーを生成するかどうかを決定します。
- 明示的に分割ペインをリクエストした場合は、tmux がインストールされ、PATH で利用可能であることを確認してください。
- iTerm2 の場合、
it2CLI がインストールされ、Python API が iTerm2 の設定で有効になっていることを確認してください。
Claude がサブエージェントの代わりにチームメンバーを生成する
エージェントチームが有効な場合、Claude がリーダーのセッションで名前を付けたサブエージェントはチームメンバーとして起動します。Claude は独自にサブエージェントに名前を付けることができるため、これはチームワークとしてフレーム化したことのない委任中に発生する可能性があります。 名前付きサブエージェントをサブエージェントとして再度起動するには、CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS を 0 に設定してエージェントチームをオフにしてください。
settings.json
env 値を再適用し、Claude がサブエージェントを生成するたびに変数を再読み込みするため、次に Claude が名前を付けたサブエージェントはサブエージェントとして起動します。
ユーザー settings.json で変数を 0 に設定すると、シェルエクスポートがオーバーライドされます。他の設定ソースはエージェントチームを有効にできます。
- 優先度の高い設定ファイル:プロジェクト設定、ローカル設定、および
--settingsペイロードはユーザー設定の後に適用されるため、それらのいずれかで変数を1に設定するenvエントリが優先されます。設定の優先度を参照してください。 - マネージド設定:マネージド設定は他のすべてのソースの後に適用されます。組織がそこでエージェントチームを有効にしている場合は、管理者にマネージド値の変更を依頼してください。
SendMessage アドレスとして機能し続けます。Claude は各サブエージェントが完了したときにその結果を受け取ります。
権限プロンプトが多すぎる
チームメンバーの権限リクエストはリーダーにバブルアップし、摩擦を生じさせる可能性があります。チームメンバーを生成する前に、権限設定で一般的な操作を事前承認して、中断を減らしてください。エージェントが早期に停止する
チームメンバーはエラーが発生した後、回復する代わりに停止する可能性があります。In-process モードでエージェントパネルでチームメンバーを選択して Enter キーを押すか、分割モードでペインをクリックして出力を確認し、以下のいずれかを実行してください。- 直接追加の指示を与える
- 作業を続行するために置き換えチームメンバーを生成する
孤立した tmux セッション
チームが終了した後、tmux セッションが持続する場合、完全にクリーンアップされていない可能性があります。セッションをリストして、チームによって作成されたセッションを終了してください。制限事項
Agent teams は実験的な機能です。現在の制限事項は以下の通りです。- インプロセス teammates でのセッション再開非対応:
/resumeと/rewindはインプロセス teammates を復元しません。セッションを再開した後、lead が存在しなくなった teammates にメッセージを送ろうとする可能性があります。この場合、lead に新しい teammates をスポーンするよう指示してください。 - タスク状態が遅延することがある: teammates は時々タスク完了のマークに失敗し、これが依存タスクをブロックします。タスクが止まっているように見える場合、実際に作業が完了しているかどうかを確認し、タスク状態を手動で更新するか、lead に teammate に促すよう指示してください。
- シャットダウンが遅い可能性がある: teammates は現在のリクエストまたはツール呼び出しを完了してからシャットダウンするため、時間がかかる可能性があります。
- セッションごとに 1 つのチーム: セッションは正確に 1 つのチームを持ち、そのセッションにスコープされています。追加の名前付きチームを作成したり、セッション間でチームを共有したりすることはできません。
- ネストされたチーム非対応: teammates は独自の teammates をスポーンできません。lead のみがチームを管理できます。
- インプロセス teammates からのバックグラウンド subagents 非対応: インプロセス teammate 自身の subagents はフォアグラウンドで実行されます。これは teammate のバックグラウンド作業が lead のプロセスより長く存続できないためです。Claude Code は、teammate が
background: trueを設定する定義を持つ subagent をスポーンする場合、エラーを返します。teammate のrun_in_background: trueリクエストも失敗し、Claude Code がフォアグラウンドまたはバックグラウンドを選択する方法で説明されているようにエラーが発生するか、フォアグラウンドで静かに実行されます。メイン会話から起動された Subagents はバックグラウンドデフォルトに従います。 - Lead は固定: メインセッションはその存続期間中、lead です。teammate を lead に昇格させたり、リーダーシップを譲渡したりすることはできません。
- 権限はスポーン時に設定: teammates は権限の下で説明されている権限モードで開始します。スポーン後に個別の teammate の権限モードを変更できますが、スポーン時に teammate ごとの権限モードを設定することはできません。
- 分割ペインは tmux または iTerm2 が必要: デフォルトのインプロセスモードはすべてのターミナルで機能します。分割ペインモードは VS Code の統合ターミナル、Windows Terminal、または Ghostty ではサポートされていません。
次のステップ
並列作業と委任の関連アプローチを探索してください。- 軽量委任:subagents はセッション内で調査または検証用のヘルパーエージェントを生成し、エージェント間調整が必要ないタスクに適しています
- セッション間のメッセージング:クロスセッションメッセージング により、Claude は自分で実行するセッション間で検出結果を渡すことができます
- 手動並列セッション:Git worktrees を使用すると、自動チーム調整なしで複数の Claude Code セッションを自分で実行できます