Shiraude Code Docs
新機能2026年9月15日ワークフローエージェントプロンプトキャッシュサブエージェント環境変数パフォーマンス最適化

同じ内容のプロンプトはキャッシュを使い回す新機能

ワークフローで複数エージェントを動かすと何が起きていたか

Claude Codeには、あらかじめ決めた手順(ワークフロー)を実行するときに、複数のサブエージェントを同時に立ち上げて並行作業させる「fan-out(ファンアウト)」という動きがあります。たとえば同じような調査タスクを5つのファイルに対してそれぞれ実行したいとき、5体のエージェントを一斉に走らせるイメージです。

このとき、5体のエージェントに渡すプロンプトの冒頭部分(前置き)が実はほとんど同じ、というケースがよくあります。共通のルール説明や指示文のテンプレート部分は同じで、末尾のファイル名や対象データだけが違う、といった具合です。

Claude Codeにはプロンプトキャッシュという仕組みがあり、一度送った前置き部分を保存しておいて、次回以降はその部分を送り直さずに済ませることでレスポンスを速く・入力コストを安くできます。ただしこのキャッシュは「まったく同時に」複数のリクエストを送ってしまうと、うまく効きません。キャッシュが保存される前に他のリクエストが並行して届いてしまうと、それぞれが「初めて送られてきた前置き」として扱われてしまうからです。

今回の改善: ほんの少しタイミングをずらす

v2.1.229では、同じ前置きを持つ兄弟エージェント(同じワークフローの中で並行実行される、似たプロンプトを持つエージェントたち)を全員同時に起動するのではなく、少しだけ起動タイミングをずらす(stagger、千鳥足にする)ようになりました。

最初の1体が前置き部分を送信してキャッシュに載せてしまえば、あとに続くエージェントたちはそのキャッシュされた前置きを再利用できます。同じ内容をもう一度払う必要がなくなるわけです。結果として、ワークフロー全体の速度が上がったり、無駄なコストが減ったりすることが期待できます。

状態挙動
改善前兄弟エージェントを完全に同時起動 → 前置きのキャッシュが間に合わず、全員分の前置きを毎回フルで支払う
改善後起動タイミングを少しずらす → 後続エージェントはキャッシュ済みの前置きを再利用できる

普段使いで意識することはあるか

この変更は内部的な最適化なので、基本的には何もしなくても自動的に恩恵を受けられます。/workflowsを使って似たような処理を複数エージェントに並行でやらせている場合ほど、効果を感じやすいはずです。

ただし、環境変数CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS=0を設定すると、このずらし処理を無効化して以前通りの「完全同時起動」に戻すこともできます。何らかの理由でエージェントの起動タイミングを厳密に揃えたい場合や、この挙動が想定と違う動きを引き起こしていると感じた場合の逃げ道として用意されています。

普段Claude Codeを使うだけであれば意識する必要はほとんどありませんが、「ワークフローで似た処理を並列に走らせたら前より速くなった気がする」と感じたら、これが理由かもしれません。

このページは役に立ちましたか?