Dynamic WorkflowsとAgent Teams徹底比較:Claude Codeの複数エージェント機能はどう使い分ける?

Claudeスキル・MCP のアイキャッチ

Claude Codeにはもともと単発の調査を任せる「サブエージェント」があったが、2026年に入って「Dynamic Workflows」と「Agent Teams」という毛色の異なる2つのマルチエージェント機能が相次いで実装された。前者はコードで実行順序を制御しながら数十〜数百のサブエージェントを動かす仕組み、後者は独立したセッション同士が直接メッセージをやり取りしながら共同作業する仕組みだ。似た名前で混同しやすいが、向いている作業はかなり違う。それぞれの仕組みと使い分けの指針を整理する。

複数のAIエージェントが連携するイメージ

おさらい:サブエージェント(Subagents)とは

Claude Codeには以前から、メインの会話から切り離した専用コンテキストで特定タスクだけをこなす「サブエージェント」がある。結果を呼び出し元に一往復で報告する分業向きの機能で、調査タスクをメインの会話コンテキストから切り離しておきたいときの定番だ。2026年6月にはサブエージェントが自分自身の子サブエージェントを最大5階層まで生成できるようになるなど、機能拡張も続いている。

ただしサブエージェントは「1ラウンドの並列判断」には強い一方、ステージごとに次の作業内容を動的に変えたり、条件分岐やループを挟んだりする複雑な制御には向いていない。そこを埋めるのが以下の2つの新機能だ。

Dynamic Workflows:コードがオーケストレーターになる

2026年5月に正式リリース(GA)されたDynamic Workflowsは、Claude自身がその場でJavaScriptのオーケストレーションスクリプトを書き、数十〜数百のサブエージェントを並列・多段階で動かして結果を検証してから返す機能だ。「四半期がかりで計画していた作業が数日で終わる」とAnthropicは説明している。

スクリプトの中ではagent()で個々のサブエージェントを呼び出し、parallel()で複数タスクを同時実行、pipeline()でアイテムごとに複数ステージを独立して流す、といった関数を組み合わせる。解説記事は「ステージNの出力がステージN+1の判断材料になる、ルーティング・スコアリング・フィルタリング・ループ・検証を伴うタスク」に向くと整理している。

関数 役割
agent() 1体のサブエージェントを起動し結果を受け取る
parallel() 複数タスクを同時実行し、全体の完了を待つ(バリア)
pipeline() アイテムごとに複数ステージを独立して流す(基本はこちらを優先)
phase() / log() 進捗表示のグループ分けとメッセージ出力

起動方法は主に2つ。プロンプトに「ultracode」というキーワードを含めるか、Claudeに直接ワークフローの利用を依頼する。実行中・完了済みのワークフローは/workflowsコマンドでいつでも一覧・監視できる。Max・Team・Enterpriseプランではデフォルトで有効、Proプランは/configから有効化できる。

指揮者がオーケストラを指揮する様子
Photo: gavinwhitner / CC BY 2.0(Openverse経由)

注意点もある。Anthropic自身、Dynamic Workflowsは通常のセッションよりトークン消費が大幅に増える可能性があるとして、まずは範囲を絞った小さなタスクで試すよう推奨している。実際にコミュニティでは「fan-outが上位モデルをそのまま継承してしまいbudget gateがない」「TaskStopがサブエージェントの子プロセスを止めずトークンを消費し続ける」といった運用上の落とし穴も報告されている(Claude Code週報 2026/07/27-08/03)。使う際はスコープを絞り、トークン消費を見ながら段階的に広げるのが安全だ。

Agent Teams:セッション同士が直接会話する

もう一方のAgent Teamsはまだ研究プレビュー(実験的機能)で、複数の独立したClaude Codeセッションが「チーム」を組み、共有タスクリストを介して仕事を分担しながら、チームメイト同士が直接メッセージを送り合う機能だ。Anthropicのエンジニアはこれを”swarms”とも呼んでいる。

サブエージェントとの決定的な違いは通信の方向性にある。サブエージェントは結果を呼び出し元に報告するだけの一方向だが、Agent Teamsのメンバーは互いに直接メッセージを送れる。バックエンド担当・フロントエンド担当・テスト担当のように役割を分けて並行開発したり、UX観点・技術観点・あえて反対意見を出す「悪魔の代弁者」役を立てて多角的にブレストしたりする用途に向く。

有効化は設定ファイルに環境変数を1行追加するだけでよい。

{
  "env": {
    "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
  }
}

チームはgitベースの調整の仕組みでタスクを取り合い、継続的にマージしながらコンフリクトを解消する。既存のサブエージェント定義をそのままチームメイトの人格として再利用することも可能だ。

3機能の比較

Subagents Dynamic Workflows Agent Teams
制御主体 メインのClaude Claudeが書いたJSスクリプト(コード) チームリードのセッション+各メンバーの自律判断
通信 結果を呼び出し元に報告のみ スクリプトが変数で結果を受け渡し メンバー同士が直接メッセージ
得意な作業 1ラウンドの並列調査・判断 ルーティング/検証/ループを伴う大規模タスク 議論や共同作業そのものが価値になる作業
提供状況 安定機能 GA(2026年5月〜) 実験的(要フラグ有効化)
起動方法 Task呼び出し 「ultracode」キーワード等、/workflowsで監視 チーム編成をプロンプトで依頼

実務での使い分けの目安

  • ちょっとした調査や単発の並列判断で十分なら、まずは普通のサブエージェントで済ませる。
  • 「あるステージの結果が次のステージの分岐・フィルタ・再試行を決める」ような繰り返しの多い大規模タスク(コード移行、監査、事実確認など)にはDynamic Workflowsが向く。ただし小さいタスクから試してトークン消費の感覚をつかむこと。
  • 役割分担そのものに意味がある共同作業や、複数視点でのブレストにはAgent Teamsが向く。現状は実験的機能なので、まずは検証目的で試すのがよい。

主な情報源

各ツールは提供元の規約に従ってご利用ください。情報は各情報源の公開時点のものです。収集・要約はAI、公開判断は人。