In Silico

AIエージェント

Claude Managed Agentsの動的ワークフロー:サブエージェントとの違い

2026/10/26 (更新: 2026/11/3)

  • 動的ワークフロー
  • AIエージェント
  • マルチエージェント
  • Claude Managed Agents
  • サブエージェント
  • Code Mode
  • RLM
  • MCP
  • Anthropic
  • コンテキスト
  • 委譲
  • トークン
  • 予算
  • 承認
  • 追加指示
  • スレッド
  • 非同期
  • サンドボックス
  • Cloudflare
  • Cognition
  • Devin
  • TypeScript
  • arXiv
  • ベータ
  • 監査
目次
背景・問い・要点
背景

AI(Artificial Intelligence)エージェント(以下、エージェント)とは、言語モデルがツールを呼び出しながら、利用者の頼みを自分で進めるプログラムである。数百件の文書の確認のように仕事が多くの部分からなるとき、利用者と会話するエージェント(以下、主エージェント)は、部分ごとに別のエージェント(以下、サブエージェント)へ仕事を渡す。この渡し方を委譲と呼ぶ。

委譲を主エージェントの会話の中で行うと、主エージェントはサブエージェントの報告をすべて自分のコンテキストに受け取る。コンテキストは、言語モデルが一回の作業で読める会話の記録を指す。主エージェントは報告を一つずつ読んで次にどのサブエージェントへ何を渡すかを決めるので、件数が増えるとコンテキストは報告で埋まる。

Claude Managed Agents は Anthropic が提供するエージェントの実行基盤で、2026 年 4 月 8 日からパブリックベータである。この基盤に、2026 年 10 月 9 日、もう一つの渡し方が動的ワークフローとしてベータで加わった1。動的ワークフローでは、主エージェントがプログラムを書き、そのプログラムが仕事を配って結果を受け取る。以下、会話の中で委譲する渡し方も、文書に合わせてサブエージェントと呼ぶ。Anthropic は、二つの渡し方の違いを一つの公開文書に書いている2。本稿はこの文書に基づいて二つを比べる。

問い

Claude Managed Agents で仕事の渡し方がサブエージェントから動的ワークフローに変わると、エージェントの結果を受け取って次を決める者と結果の通り道はどう変わり、何が使えなくなるのか。

要点

動的ワークフローでは、主エージェントが書いたプログラムがエージェントの結果を受け取って次の仕事を決め、結果は主エージェントのコンテキストを通らなくなる。代わりに、動的ワークフローでは実行中の追加指示と開始前の承認が使えなくなる。

サーバーがプログラムをバックグラウンドで実行するので、主エージェントは実行中も利用者と話せる。結果が主エージェントを通らなくても、作業するエージェントが使うトークンは残る。以上は Anthropic の文書の記述で、本稿は動かして測っていない。

モデル・例示

300 件の規程を二つの渡し方で調べる

※ この節の例は、説明のために作った架空のものです。

結果を受け取って次を決めるのが主エージェントなら、報告はすべて主エージェントのコンテキストを通る。プログラムが決めるなら、結果はプログラムの中で受け渡されて主エージェントを通らないが、実行の途中で指示を足せなくなる。

利用者が主エージェントに、300 件の社内規程のうち、保存期間の定めが他の規程と食い違うものを挙げるよう頼むとする。300 件の中に、領収書を 5 年保存とする規程 A と、領収書を 7 年保存とする規程 B がある。まず、サブエージェントで進める。

  1. 利用者主エージェント1. 保存期間が食い違う規程を、300 件の中から挙げてほしいと頼む
  2. 主エージェントサブエージェント2. 規程を 1 件ずつ渡す
  3. サブエージェント主エージェント3. 「規程 A:領収書は 5 年保存」のように 1 件ずつ報告する
  4. 主エージェント4. 報告を自分のコンテキストに入れて読み、次の規程を渡す。300 件ぶん繰り返す
  5. 主エージェント利用者5. 規程 A(5 年)と規程 B(7 年)が食い違うと答える

主エージェントは 300 件の報告を、すべて自分のコンテキストに入れて読む。

次に、同じ頼みを動的ワークフローで進める。動的ワークフローの中で動くエージェントを、以下、作業エージェントと呼ぶ。主エージェントは「読む」と「突き合わせる」の二段階のプログラムを書く。1 件の結果は短い文なので、300 件ぶんが 1 つの作業エージェントのコンテキストに収まるとする。

  1. 利用者主エージェント1. 保存期間が食い違う規程を、300 件の中から挙げてほしいと頼む
  2. 主エージェントプログラム(サーバー)2. 二段階のプログラムを書き、実行を始める
  3. プログラム(サーバー)作業エージェント3. 段階 1。規程 1 件ごとに作業エージェントを 1 つ動かす
  4. 作業エージェントプログラム(サーバー)4. 「規程 A:領収書は 5 年保存」のような結果を返す
  5. プログラム(サーバー)作業エージェント5. 段階 2。300 件の結果を 1 つの作業エージェントに渡し、突き合わせさせる
  6. 作業エージェントプログラム(サーバー)6. 「規程 A は 5 年、規程 B は 7 年で食い違う」と返す
  7. 主エージェント利用者7. 実行が終わったら、その実行が何をしたかを読んで答える

段階 1 の 300 件の結果も段階 2 の入力も、主エージェントのコンテキストを通らない。ただし、実行の途中で利用者が例外条項も見てほしいと頼んでも、主エージェントは実行中の作業エージェントに指示を足せない2。利用者は、実行を止めて頼み直すか、例外条項だけを調べる別の実行を始めさせるか、終わりを待つ。

この例から言えること

  1. 結果を受け取って次を決める者が主エージェントなら、300 件の報告がすべて主エージェントのコンテキストを通る。プログラムが決めるなら、結果はプログラムの中で受け渡され、主エージェントには入らない。
  2. 減るのは主エージェントが読む量で、突き合わせる作業エージェントは 300 件の結果を読む。
  3. 代わりに、動的ワークフローでは実行中のスレッドに指示を足せない。サブエージェントなら、報告を終えたスレッドがアーカイブされるまで残るので3、例外条項も見るよう追加で指示できる2。

サブエージェントでは、件数が増えると主エージェントのコンテキストが報告で埋まる

Anthropic の文書によれば、サブエージェントでは主エージェント自身が次に起きることを決め、各サブエージェントの報告を読む。委譲は 1 段まで(サブエージェントがさらに別のエージェントへ委譲することはない)で、子スレッドは同時に最大 25 である2。文書がサブエージェントを勧めるのは、報告の後にそのサブエージェントへ追加の指示を送りたい場合と、一覧にした専門のエージェントが要る場合である2。

報告を待つ時間についても、Anthropic は別の機能で述べている。2025 年の記事によれば、複数のエージェントを使う自社の Research 機能では、主エージェントがサブエージェントを同期的に実行し、一組が終わるのを待ってから進む。そのため主エージェントはサブエージェントを途中で制御できず、一つのサブエージェントの終了待ちで全体が止まりうる。非同期にすれば並列は増えるが、結果の取りまとめ、状態の一貫性、エラーの伝播が課題になる、と同社は書く4。これは Research 機能についての記述で、Claude Managed Agents の実装についての記述ではない。Claude Managed Agents の文書は、動的ワークフローが主スレッドを利用者との会話に空けると書くが、サブエージェントへの委譲中に主エージェントが利用者と話せないとは書いていない2。

動的ワークフローでは、プログラムが結果を受け取り、次のエージェントと指示文を決める

文書の説明では、書かれたプログラムが、エージェントの結果を主エージェントに代わって受け取り、次に走らせるエージェントを決め、その指示文を書く。同じ段階の中で、手順を繰り返したり、返った結果から次の手順を選んだりもできる5。実行はサーバー上のバックグラウンドで進み、主エージェントは利用者との会話と実行の進み具合の確認に使える2。限界は、一回の実行で同時に動くスレッドが 64、実行の全期間で起動できるエージェントが 1,000、実行時間の上限が既定で 24 時間である5。

文書は動的ワークフローを、複数のエージェントが要る仕事の大半、つまり部分の多い仕事、並列にできる仕事、早く終えたい長い仕事に勧め、例として監査、移行、深い調査、突き合わせを挙げる2。時間について文書が述べるのは、同時に動かせば、一つのエージェントが順に行うより早く終わりうることである2。

Anthropic は 2024 年の記事で、言語モデルとツールをあらかじめ決めたコードの経路で動かす系をワークフロー、言語モデルが自分の処理とツールの使い方を動的に決める系をエージェントと呼び分けた6。動的ワークフローは、言語モデルが実行時にコードの経路を書く点で、この二つを合わせた形と読める。この対応づけは本稿の解釈であり、文書はそう述べていない。

結果をモデルに一件ずつ読ませず、モデルが書いたプログラムに受け渡させる設計は、他の作り手にもある。Cloudflare の Kenton Varda と Sunil Pai は、2025 年 9 月 26 日のブログ記事で、ツールの呼び出しをコードに置き換える方式を示した。MCP(Model Context Protocol、言語モデルに外部のツールを使わせる標準プロトコル)のツールを TypeScript の API(Application Programming Interface)に変換し、言語モデルにその API を呼ぶコードを書かせる。二人は、言語モデルは MCP を直接呼ぶより MCP を呼ぶコードを書くほうが得意で、コードを書かせれば言語モデルは必要な最終結果だけを読み返せば済む、と主張する7。Alex L. Zhang、Tim Kraska、Omar Khattab は、arXiv で公開した論文(2025 年 12 月投稿)で Recursive Language Models (RLM)を提案した。長い入力を外部の環境に置き、言語モデルがプログラムで入力を調べて分割し、断片に対して自分自身を再帰的に呼ぶ方式で、モデルのコンテキストの長さより 2 桁大きい入力まで処理できたと報告する(2026 年 5 月改訂の v3 の要旨)8。三者は対象が違い、互いの結果を検証し合ってもいない。この一致は、動的ワークフローが同じ効果を持つことまでは示さず、その効果は Anthropic の文書の記述にとどまる。

実行中の追加指示と開始前の承認は使えず、外した理由は書かれていない

文書によれば、主エージェントは実行中のスレッドへ追加のメッセージを送れず、サーバーは各スレッドを実行の終わりまでにアーカイブする2。実行の開始前の承認もなく、主エージェントは、ワークフローを書いたのと同じターンで実行を始める5。承認が無いのは実行の開始で、実行の中のエージェントが呼ぶツールには、権限の設定(呼び出しごとの確認を含む)がそのまま効く25。計画を先に見たいときは、計画を説明して利用者の了承を待つよう、システムプロンプトに書くと文書は案内し、そう書いても強制はされないと明記している25。始まった実行を止めるには、主エージェントに止めるよう頼む5。文書は、追加指示と承認を外した理由を書いておらず、技術上の制約か設計上の選択かは、文書の記述からは判定できない。

結果の通り道がプログラムに移ると、利用者に見えるものも減る。利用者にはワークフローのコードも、各スレッドがプログラムに返した結果も表示されない5。コードは、実行が終わった後に主エージェントに頼めば書いたとおりに出させられ、各スレッドの記録も読める52。実行が completed(完了)の状態で終わっても、作業が成功したとは限らず、失敗はスレッドごとのイベントを読んで探す5。同じ仕事に複数のスレッドが作られることもあるので、文書は、エージェントが呼ぶツールを二度呼ばれても安全にするよう求める5。

作業エージェントのトークン消費は残る

主エージェントのコンテキストに入る量は減っても、作業エージェントが使うトークンは残る。この消費は、各エージェントが自分のコンテキストを持つ構成そのものから来る。動的ワークフローでも、実行中のすべてのエージェントがトークンを使い、実行に固有の価格はない5。文書は、セッションの予算を設定して支出に上限を付けるよう勧める2。

Anthropic は自社の Research 機能で、エージェントが対話の約 4 倍、複数エージェントの系が約 15 倍のトークンを使うと述べる4。別の記事では、複数のエージェントが同じ仕事で単一のエージェントの 3 から 10 倍を使うと述べ、理由として、各エージェントが自分のコンテキストを持つこと、調整のメッセージを交わすこと、結果を要約して渡すことを挙げる9。同じ記事は、適切なツールを持つ単一のエージェントは多くの開発者の予想より多くの仕事をこなせると書き、複数のエージェントは単一のエージェントの方が良い場面でもしばしば使われていると述べる9。これらの倍率は Anthropic が自社の系について述べたもので、動的ワークフローの測定ではない。動的ワークフローの総使用量がサブエージェントより減るか増えるかは、本稿では確かめていない。

同時に動くエージェントどうしの前提の食い違いを防ぐ仕組みは、どちらの渡し方にも文書に無い

プログラムが扱える依存と扱えない依存がある。前の結果に依存する手順は、プログラムが結果を次のエージェントへ渡すので順序立てて書ける。段階を分けて先に読んだ結果を突き合わせることも、一つの段階の中で書き直しを審査に通るまで繰り返すこともできる5。扱えないのは、同時に動くエージェントどうしの依存である。各スレッドは自分の会話履歴を持ち、共有するのはサンドボックス(実行環境)のファイルである5。

Cognition(エージェント Devin の提供元)の Walden Yan は、2025 年 6 月の記事で、行動は暗黙の判断を含み、並列に動くサブエージェントが食い違う前提で作業すると結果が悪くなる、と述べる10。Yan は Flappy Bird の複製を例に、互いの作業が見えない並列のサブエージェントは食い違う前提で動き、鳥と背景の絵柄が揃わないと述べる。完全なエージェントの履歴を共有しても、この食い違いは起きるという。そして、履歴の共有と判断の食い違いの回避という二つの原則を破る構成は、既定で除外すべきだと書く10。コンテキストを連続させる最も簡単な方法として、Yan は単一のスレッドで直線的に進むエージェントを挙げ、部分の多い大きな仕事ではコンテキストがあふれうるとも書く10。

各スレッドが自分の会話履歴を持つのは、サブエージェントでも動的ワークフローでも同じなので25、この基準では二つとも除外される側に入る。Anthropic も、全エージェントが同じコンテキストを要する領域や、エージェント間の依存が多い領域は、複数エージェントに今は向かないと書く4。

二つの違いは、食い違いに気づく機会にある。サブエージェントでは主エージェントがすべての報告を読むが、動的ワークフローでは結果が主エージェントを通らない2。動的ワークフローでは、後の段階の突き合わせで食い違いを見つけることはできるが、前提の不一致を防ぐ仕組みは、現時点の文書に書かれていない。気づく機会の違いも防ぐ仕組みの不在も、文書の記述からの本稿の推論で、文書はそう述べていない。

出典10件
  1. Anthropic「Release notes」Claude Platform Docs, 2026(2026-10-21 取得). https://platform.claude.com/docs/en/release-notes/overview — 4 月 8 日のパブリックベータ開始と、10 月 9 日の動的ワークフロー(ベータ)。 ↩

  2. Anthropic「Multiagent orchestration」Claude Platform Docs, 2026(2026-10-21 取得). https://platform.claude.com/docs/en/managed-agents/multiagent-orchestration — サブエージェントと動的ワークフローの違い、子スレッド 25、追加指示、予算。 ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 ↩11 ↩12 ↩13 ↩14 ↩15 ↩16

  3. Anthropic「Session threads」Claude Platform Docs, 2026(2026-10-27 取得). https://platform.claude.com/docs/en/managed-agents/session-threads — 子スレッドは同時に 25 まで、待機中のスレッドはアーカイブされるまで数に入ること、アーカイブで枠が空くこと。 ↩

  4. Anthropic「How we built our multi-agent research system」Anthropic Engineering, 2025. https://www.anthropic.com/engineering/multi-agent-research-system — 同期実行の停滞、約 15 倍のトークン、依存の多い領域。 ↩ ↩2 ↩3

  5. Anthropic「Workflow runs」Claude Platform Docs, 2026(2026-10-21 取得). https://platform.claude.com/docs/en/managed-agents/workflow-runs — 実行の仕組み、承認の無さ、64・1,000・24 時間の上限。 ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 ↩11 ↩12 ↩13 ↩14

  6. Anthropic「Building effective agents」Anthropic Engineering, 2024. https://www.anthropic.com/engineering/building-effective-agents — ワークフローとエージェントの区別。 ↩

  7. Kenton Varda, Sunil Pai「Code Mode: the better way to use MCP」Cloudflare Blog, 2025. https://blog.cloudflare.com/code-mode/ — ツールの呼び出しをコードにし、中間結果を言語モデルに通さない方式。 ↩

  8. Zhang, Kraska, Khattab「Recursive Language Models」arXiv:2512.24601, 2025(v3 は 2026). https://arxiv.org/abs/2512.24601 — プログラムで入力を調べ、自分自身を再帰的に呼ぶ方式。 ↩

  9. Cara Phillips「Building multi-agent systems: When and how to use them」Claude blog, 2026. https://claude.com/blog/building-multi-agent-systems-when-and-how-to-use-them — 3〜10 倍のトークンとその理由、単一エージェントで足りる場合。 ↩ ↩2

  10. Walden Yan「Don’t Build Multi-Agents」Cognition, 2025. https://cognition.ai/blog/dont-build-multi-agents — 暗黙の判断の食い違いと、履歴を共有する原則。 ↩ ↩2 ↩3

この記事はAIを使用して執筆されました。内容には誤りが含まれる可能性があります。事実や数字の出典は脚注から確かめられます。