Skip to main content
並列コラボレーション

Agent Teams

Agent Teams は、1 つの Qoder CLI 対話セッションを小さな Agent チームとして使う機能です。入口は変わりません。現在のセッションで目的を伝えると、main Agent は必要に応じて teammate を作成し、調査、実装、レビュー、引き継ぎを並行して進めます。 複数の観点に分けると進めやすい Task に向いています。たとえば、複数モジュールの調査、実装とレビューの分離、大きなリファクタリングを調査、実装、検証に分ける場合です。
Beta Agent Teams は現在 beta 機能であり、デフォルトでは有効になっていません。Qoder CLI を起動する前に環境変数で有効化します: QODER_AGENT_TEAMS=1 qoder QODER_AGENT_TEAMS=1 をユーザー単位の設定ディレクトリにある .env に書いておくと、以後のセッションでも自動的に Agent Teams が有効になります。デフォルトの user-level config パスは、macOS/Linux では $HOME/.qoder/.env、Windows では %USERPROFILE%\.qoder\.env です。.env を変更した後は Qoder CLI を再起動してください。

Agent Teams とは

Agent Teams には 2 種類の参加者があります。
役割説明
main Agentユーザーが直接話す Agent です。目的を理解し、作業を分割し、結果をまとめます。
teammatemain Agent が作成する teammate です。例: researchercoderreviewer。各 teammate は独自のコンテキストを持ち、追加 SendMessage や Task を受け取れます。
Qoder CLI session
+-- main conversation
|   `-- main Agent がユーザーと会話し、作業を割り当て、結果をまとめる
|
+-- Agent Team
|   +-- @researcher  コードパスを調査
|   +-- @coder       変更を実装
|   `-- @reviewer    リスクを確認
|
`-- shared Task list
    +-- Task A  owner=@researcher
    +-- Task B  owner=@coder
    `-- Task C  owner=@reviewer
チームを手動で作成する必要はありません。対話セッションには現在のチームが 1 つあります。main Agent が teammate を必要とすると、名前付き Agent を作成してチームに追加します。

使い方

もっとも確実な方法は、Agent Teams を使うことと teammate の役割を明示することです。
Use Agent Teams for this refactor.
Create three teammates: researcher, coder, and reviewer.
1. researcher traces the auth module call flow.
2. coder changes the code based on researcher's findings.
3. reviewer checks risks and missing tests.
Return a change summary, changed files, and verification results.
単に「並列化して」や「いくつかの Agent に見てもらって」と依頼すると、Qoder CLI は通常の Subagent、background task、または Workflow を選ぶことがあります。同じセッションで teammate に継続協力してほしい場合は、Agent Teams と明示してください。

仕組み

Agent Teams の中心は、teammate、SendMessage、shared Task list です。

協力の流れ

Agent Teams は、main Agent がまとめる協力の流れとして理解できます。main Agent は目的の理解、teammate の作成、Task の割り当て、SendMessage による質問や発見の調整、結果の要約を担当します。teammate はそれぞれの作業を進め、shared Task list は担当者と進捗を記録します。
ユーザーの目的
  |
  v
+------------+
| main Agent |
+------------+
  |  teammate を作成
  |  shared Task を割り当て / 更新
  |  結果を集めて要約
  |
  +-----------------------+
  |                       |
  v                       v
+------------------+   +------------------------+
| shared Task list |   | SendMessage            |
| owner / status   |   | 質問 / 発見 / 結果     |
+------------------+   +------------------------+
  |                       |
  +-----------+-----------+
              |
              v
+-------------+ SendMessage +----------+
| @researcher | <---------> | @reviewer |
+-------------+             +----------+
       |                         |
       +-----------+-------------+
                   |
                   v
                進捗と結果
                   |
                   v
              main Agent
                   |
                   v
                最終回答

ライフサイクルと resume

Agent Teams の team は、現在開いている TUI セッションの中だけで存在します。Agent Teams を有効にした対話セッションを開始するたびに、Qoder CLI はそのセッション用の一時的な team を用意します。main Agent はその team の中で teammate を作成します。 同じ TUI の中では、teammate は running -> idle -> running を複数回繰り返せます。idle は実行中の作業がない状態を表し、teammate が終了したことを意味しません。
現在の TUI セッション
+-- main conversation
+-- Agent Team
|   +-- @researcher  running / idle
|   `-- @reviewer    running / idle
`-- shared Task list
TUI を終了すると、Qoder CLI はそのセッションにいた teammate を停止し、その team 状態をクリアします。その後 resume で会話を復元すると、main conversation の履歴は復元されます。ただし、前回の TUI で作成された teammate と最後の running / idle 状態は一緒には戻りません。main conversation にすでに表示された要約や SendMessage の内容は履歴として残りますが、前回の teammate は実行を継続しません。 resume 後もチーム協力が必要な場合は、main Agent が新しい teammate を作成します。teammate は現在の TUI セッション内でのみ動作し、TUI を終了した後の次回 resume には引き継がれません。

TUI 表示

Agent Teams は現在、1 つの TUI ウィンドウ内に表示されます。会話画面の下部には agents list が表示されます。下矢印キーで list に入り、上下キーで main conversation または teammate を選択し、Enter で選択した view に切り替え、Esc で main conversation に戻ります。 現在、複数の TUI pane による分割表示には対応していません。teammate は横並びでは表示されず、同じ会話ウィンドウ内で切り替えて確認します。

teammate

main Agent は teammate を作成するときに、researcher のような安定した名前を付けます。この名前は、SendMessage、Task 割り当て、状態確認に使えます。 teammate が現在の作業を終えると、多くの場合 idle 状態になります。idle は終了ではなく、現在実行中の作業がない状態です。新しい SendMessage や Task で再開できます。
@researcher running -> idle -> running -> idle
                      ^        |
                      |        `-- 新しい Task で再開
                      `-- 現在の作業が完了

SendMessage

main Agent と teammate、teammate 同士は SendMessage で連絡できます。teammate の通常のテキスト出力は自動的に SendMessage で他のメンバーへ送られるわけではありません。特定のメンバーに届ける情報は SendMessage で送られます。 UI では通常、SendMessage の内容が “Message from @researcher” のように表示されます。チーム内の質問、発見、結果を追いやすくなります。

shared Task

Agent Teams は shared Task list と組み合わせて使えます。main Agent が先に Task を作成し、teammate が対応する作業を分担できます。
shared Task list
+-- [in progress] 旧 API の呼び出し箇所を整理  owner=@researcher
+-- [pending]     新 API adapter を実装         owner=@coder
`-- [pending]     移行テストを追加              owner=@tester
shared Task list により、誰が何を担当しているか、何が完了したか、どの作業が他の作業に依存しているかが分かりやすくなります。Task の完了は teammate の終了を意味しません。teammate は次の作業に備えて残ることができます。

Subagent との違い

Agent Teams は Agent の機能を使いますが、通常の Subagent 委譲とは使い方が異なります。
比較項目SubagentAgent Teams
向いている作業1 つの明確な subtask複数メンバーが継続協力する複雑な作業
ライフサイクル通常は 1 回結果を返して終了teammate は idle になり、同じセッションで追加作業を受け取れる
通信結果は主に main Agent に戻るmain Agent と teammate、teammate 同士が SendMessage で連絡可能
調整主に main Agent が編成shared Task list で割り当てと状態を追跡可能
IDSubagent の種類が中心@coder@reviewer など実行時の名前が中心
要点は次のとおりです。
  • Subagent は、明確な 1 つの subtask を渡して結果を受け取るときに使います。
  • Agent Teams は、複数の teammate が同じセッションで協力し、SendMessage、Task、段階的な進行を使うときに使います。

いつ使うか

向いている場面:
場面理由
大きなコード調査複数の teammate が別々の領域を調べ、main Agent に報告できます。
実装とレビューの分離1 人がコードを書き、別の 1 人がリスク、テスト、境界条件を確認できます。
並行して進められる作業互いに待たない subtask を同時に進められます。
繰り返し引き継ぎがある作業teammate は名前とコンテキストを保ち、追加作業を受け取れます。
状態を明確にしたい作業shared Task で owner、状態、依存関係を確認できます。
向いていない場面:
場面より適した方法
1 ファイルを読む、1 つのシンボルを探すmain Agent に直接読ませる、検索させる。
独立した subtask が 1 つだけ通常の Subagent を使う。
固定の再利用可能な多段階プロセスWorkflow を使う。
小さく低コストで終えたい Task追加コンテキストと token 使用を避けるため、Agent 数を増やしすぎない。

コツ

  • 各 teammate に短い名前と明確な役割を与えます。例: researchercoderreviewer
  • 期待する出力を明確にします。例: 根本原因、変更内容、検証結果、リスク、次の提案。
  • 作業が数ステップを超える場合は shared Task を使います。owner、状態、依存関係を追いやすくなります。
  • 最初は小さなチームにします。多くのケースでは 2 から 4 人で十分です。
  • idle は利用可能な状態であり、終了ではありません。不要になった teammate は main Agent に閉じてもらいます。

並行調査

Use Agent Teams to analyze this login issue.
Create two teammates:
1. researcher checks auth and session code.
2. tester checks existing tests and reproduction paths.
Return the likely root cause, impact scope, risks, and a recommended fix.

実装後の独立レビュー

Use Agent Teams for this fix.
Have coder make the code change, then have reviewer independently review the final diff.
reviewer should check edge cases, test coverage, and possible regressions.
Return what changed, how it was verified, and any remaining risk.

shared Task list

Use Agent Teams and the shared Task list for this migration.
Create these Tasks:
1. Map old API call sites.
2. Implement the new API adapter.
3. Add migration tests.
Then create researcher, coder, and tester teammates to claim those tasks.
Include each Task's completion status, key changes, and verification results in the final result.
Qoder CLI を使用する