0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Code の Dynamic Workflows を試す前に知っておきたいこと(特にトークン消費の話)

0
Last updated at Posted at 2026-06-03

Dynamic Workflows は **research preview

はじめに

Claude Code v2.1.154 で Dynamic Workflows(動的ワークフロー) という機能が追加されました。

ひとことで言うと「Claude にワークフローを組ませると、裏で数十〜数百のサブエージェントを並列に走らせて、大きなタスクを丸ごと片付けてくれる」機能です。

面白そうな機能なのですが、最初に多くの人が気になるのが 「これ、トークンめちゃくちゃ使うんじゃない?」 という点だと思います。結論から言うと その通りで、普通に使うより明確に多く消費します。本記事ではその仕組みと、消費を抑えるための実用的なコツをまとめます。

そもそも Dynamic Workflows とは

従来の「サブエージェント」「スキル」「エージェントチーム」と何が違うのか。公式ドキュメントの比較が分かりやすいので要約します。

サブエージェント スキル エージェントチーム ワークフロー
実体 Claude が起動するワーカー Claude が従う指示書 ピアセッションを統括するリードエージェント ランタイムが実行するスクリプト
次に何を実行するか決めるのは Claude(ターンごと) Claude(プロンプトに従う) リードエージェント(ターンごと) スクリプト
中間結果の置き場所 Claude のコンテキスト Claude のコンテキスト 共有タスクリスト スクリプト変数
規模 1 ターンに数個 同左 数個の長時間ピア 1 回の実行で数十〜数百エージェント
中断時 ターンをやり直す ターンをやり直す 仲間は走り続ける 同一セッション内で再開可能

ポイントは 「計画(オーケストレーション)をコードに移す」 ことです。

サブエージェント・スキル・エージェントチームでは、Claude(やリードエージェント)自身が「次は何を起動しよう」とターンごとに判断し、その結果がすべてコンテキストに積み上がっていきます。これだとエージェント数が増えるほどコンテキストが膨張し、限界が来ます。

一方ワークフローは、ループ・分岐・中間結果を JavaScript スクリプト側が保持 します。Claude のコンテキストに返ってくるのは「最終的に検証済みの答え」だけ。だから大量のエージェントを協調させられるわけです。

さらにこの設計のうれしいところは、単に「エージェントを増やせる」だけでなく、繰り返し可能な品質パターンを組み込める ことです。例えば「独立したエージェントが互いの調査結果を敵対的にレビューしてから報告する」「複数の角度からプランを起こして突き合わせる」といった、単発のパスより信頼できる結果を得る仕組みを仕込めます。

自分のタスクをワークフロー化する 3 つの方法

1. プロンプトに ultracode というキーワードを入れる

ultracode: src/routes/以下のすべてのAPIエンドポイントを監査し、認証チェックが欠落していないか確認する。

プロンプトのどこかに ultracode が含まれていると、Claude Code がそのキーワードをハイライトし、ターンごとに作業するのではなくワークフロースクリプトを書いてくれます。「use a workflow」「run a workflow」のように自分の言葉で頼んでも、直接のリクエストとして同じ扱いになります。

v2.1.160 でトリガーキーワードが workflow から ultracode に変わりました。 それ以前は workflow という単語が発火キーでしたが、現在その単語では発火しません(自然な言葉でのお願いはどちらのバージョンでも有効です)。

意図せず発火した場合は、
macOS なら Option+W
Windows / Linux なら Alt+W
でそのプロンプトに限り無視、またはハイライト直後に backspace でも取り消せます。
完全に無効化したい場合は /config の「Ultracode keyword trigger」をオフに。

2. /effort ultracode で Claude に任せる

/effort ultracode

ultracodexhigh の推論努力(reasoning effort)と自動ワークフローオーケストレーションを組み合わせた設定です。これをオンにすると、こちらが頼まなくても Claude が実質的なタスクごとにワークフローを計画します。

1 つのリクエストが「コードを理解するワークフロー → 変更するワークフロー → 検証するワークフロー」と連鎖することもあります。セッション内のすべてのタスクに適用されるので、各リクエストが低い effort レベルより多くのトークンを使い、時間もかかります。ルーチン作業に戻るときは /effort high に落としましょう(ultracode はセッション限りで、新セッションでリセットされます)。

3. 保存済みワークフローを /<名前> で再実行

良い結果を出したワークフローは /workflows から選んで s キーで保存でき、以降 /<名前> のコマンドとして再利用できます。

保存先は 2 つ:

  • .claude/workflows/(プロジェクト共有・リポジトリを clone した全員が使える)
  • ~/.claude/workflows/(個人用・全プロジェクトで使えるが自分だけ)

本題:トークン消費はどのくらい?

公式ドキュメントの「Cost」セクションは、ぼかさずにこう明言しています。

A workflow spawns many agents, so a single run can use meaningfully more tokens than working through the same task in conversation.

(ワークフローは多数のエージェントを起動するため、1 回の実行で、同じタスクを会話で進めるよりも 意味のあるレベルで多くのトークン を消費しうる)

そしてブログ側はさらにストレートです。

Dynamic workflows can consume substantially more tokens than a typical Claude Code session.

つまり 「結構使う」は気のせいではなく仕様 です。理由はシンプルで、数十〜数百のエージェントがそれぞれ独立してコンテキストを持ち、しかも相互検証のために同じ題材を複数回処理するからです。これらの消費は 通常のセッションと同じくプランの利用量・レート制限にカウント されるため使い所が難しいですね。

規模の上限(暴走しないための制約)

制約 理由
同時実行は最大 16 エージェント(CPU コアが少ないマシンではさらに少なく) ローカルリソースの上限
1 回の実行あたり合計 1,000 エージェントまで 暴走ループの防止

「最大 1,000 エージェント」という数字を見れば、トークン消費が一気に膨らみうることは想像がつくと思います。逆に言えば 1,000 でハードキャップがかかるので、無限に課金が膨らむわけではありません。

消費を可視化・コントロールする

闇雲に怖がる必要はなく、Claude Code 側にちゃんと可視化と制御の手段が用意されています。

① 実行前に承認プロンプトで止まる

デフォルト/accept edits モードでは毎回(「このワークフローは今後確認しない」を選ぶまで)、計画されたフェーズ一覧が表示され承認を求められます。Desktop アプリでは承認カードに トークン使用量の注意書き が表示されます。View raw script でスクリプト本体を見落とさなければですが、読んでから判断することも可能です。

/workflows の進捗ビューでトークン総量が見える

/workflows

進捗ビューは 各フェーズごとにエージェント数・トークン総量・経過時間 を表示します。各フェーズをドリルダウンすればエージェント単位で何を見つけたかも追えます。「思ったより食ってるな」と思ったら x キーでエージェント単位、またはワークフロー全体を停止できます(完了済みの作業は失われません)。

③ モデルを使い分ける

ワークフロー内の各エージェントは、スクリプトが別モデルを指定しない限り セッションのモデルを使います。だからコスト制御の勘所はモデル選択です。

  • 大規模な実行の前に /model を確認する(普段ルーチンで小さいモデルに切り替えている人は特に)
  • タスクを説明するときに「強いモデルが要らないフェーズには小さいモデルを使って」と Claude に頼む

実用上のおすすめ運用

公式の推奨は 「最初はスコープを絞ったタスクで使用量の感覚を掴む」 こと。私も同感で、いきなり「リポジトリ全体を移行して」ではなく、まずは 1 ディレクトリ・1 観点に絞って /workflows のトークン表示を眺めながら肌感を作るのが安全です。コストの読めない自動化を本番規模でいきなり回すのは、利便性よりも事故の不安が勝ちます。なんでもかんでも使うものではないですね。

無効化する方法

組織で使わせたくない、あるいは自分の環境で完全に切りたい場合:

  • 個人: /config で「Dynamic workflows」をオフ / ~/.claude/settings.json"disableWorkflows": true / 環境変数 CLAUDE_CODE_DISABLE_WORKFLOWS=1
  • 組織全体: managed settings に "disableWorkflows": true、または Claude Code admin settings ページのトグル

その他注意点

  • ワークフロー自体は ファイルシステムやシェルに直接アクセスしない
  • ワークフローが起動するサブエージェントは、セッションのモードに関わらず 常に acceptEdits モード で動き、ファイル編集は自動承認される
  • 実行中はユーザー入力を受け付けない

まとめ

  • Dynamic Workflows は「計画をスクリプトに移し、裏で数十〜数百のエージェントを協調させる」機能
  • トークン消費は通常セッションより明確に多い
  • まずはスコープを絞った 1 タスクで /workflows の数字を眺めながら肌感を掴むのが安全

参考リンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?