今まで紹介したように、AIに複数の役割を演じさせる使い方(振り分け役・評価役・討論役など)は強力です。ただ、実際に運用し始めると気づくことがあります。「役割ごとの指示文、毎回ゼロから書いててバラバラだな…」
分析役にはこの書き方、提案役にはあの書き方。役割が増えるほど指示文が乱立して、どこかの役割だけルールが古いまま、といった管理の綻びが出てきます。
今回紹介する Cache-Aware Sub-agent Design は、複数の役割AIの指示文を「共通部分+役割ごとの差分」に分けて設計する型です。第5章「AI内部の仕組みに合わせる」の最終回です。
Cache-Aware Sub-agent Designとは?
Cache-Aware Sub-agent Designは、一言でいうと「複数の役割AIの指示文の冒頭(前提・ルール)を完全に統一し、役割の定義だけを末尾で変える」設計方法です。
たとえると、会社の部署ごとの業務マニュアルです。就業規則や共通ルールのページは全部署共通で、部署固有の手順だけが差し替えページになっている。共通部分を1か所で管理するから、ルール変更が全部署に一発で反映されます。役割AIの指示文も、この「共通+差分」構造にします。
名前に「Cache-Aware(キャッシュを意識した)」とある通り、この設計はDay 21で紹介したキャッシュの性質(冒頭からの完全一致で効く)に沿っています。全役割の冒頭が同一なら、API利用時にその共通部分のキャッシュが役割をまたいで効きます。ただしこの直接効果はAPI・Claude Codeなど開発者向けの使い方での話です。チャット利用でも「管理のしやすさ」「役割間の一貫性」という実利があるので、両方の観点で紹介します。
なぜ効くのか
①ルール変更が全役割に一発で反映される
共通部分が1つなら、「出力は敬語で」というルールを変えたいとき、直すのは1か所です。役割ごとにバラバラに書いていると、5役割なら5か所を探して直すことになり、直し漏れが必ず起きます。
②役割間の「判断のズレ」が減る
前提やルールが役割ごとに微妙に違うと、分析役と提案役で前提の解釈がズレる、といった不整合が起きます。共通部分を揃えることは、役割チーム全体の「共通認識」を固定することでもあります。
コピペOKテンプレート
役割AIを作るときの雛形です。【共通ブロック】は全役割で一言一句同じにし、【役割ブロック】だけ差し替えます。
【共通ブロック(全役割で完全に同一)】
■前提:[状況・テーマの説明]
■共通ルール:[全役割が守ること。口調・形式・禁止事項など]
■判断基準:[迷ったときの優先順位]
【役割ブロック(ここだけ役割ごとに変える)】
■あなたの役割:[分析役/提案役/チェック役 など]
■この役割のタスク:[具体的にやること]
■出力形式:[この役割の出力の形]
共通ブロックは「完全に同一」が鉄則です。「だいたい同じ」では管理面の効果が半減し、API利用時のキャッシュは1文字の違いで無効になります。共通ブロックをメモに1つだけ保存し、各役割はそれをコピーして役割ブロックを足す、という作り方を徹底してください。
実践例:before / after
「家計の見直しを、分析役→提案役→チェック役の3役で回す」場面で試してみました。第3章の型を実際に運用するときの、いわば裏方の設計の話です。
🔴 before:役割ごとにバラバラに書いた場合
分析役には「わが家は4人家族で〜」、提案役には「家族4人、小学生2人で〜」と、その都度書いた微妙に違う前提を渡していました。すると提案役だけ子どもの年齢を知らないまま提案を出してくるなど、役割間で情報格差が発生。さらに途中で「無理な節約はNG」というルールを足したとき、チェック役に伝え忘れて、チェック役だけ厳しい判定を出し続けるズレも起きました。
🟢 after:共通ブロックを統一した場合
【共通ブロック(3役共通)】
■前提:4人家族(夫婦+小4・小1)。月の生活費32万円。
教育費を月2万円増やしたい。
■共通ルール:無理な節約(食費の極端な削減など)は提案しない。
金額は月額ベースで統一。
■判断基準:続けやすさ > 削減額の大きさ
【役割ブロック】※これだけ差し替え
■あなたの役割:分析役
■タスク:生活費32万円の内訳を項目別に整理し、削減余地を評価する
■出力形式:項目別の表
→ 結果:3役全員が同じ前提・同じルール・同じ判断基準で動くようになり、分析→提案→チェックの流れに一貫性が出ました。「無理な節約NG」のルールも共通ブロックを1か所直すだけで3役に反映。役割の指示文づくりも、役割ブロックの数行を書くだけになり、新しい役割の追加が一気に楽になりました。
使いどころと注意点
✅ こんな場面で使う
- 第3章の型(役割分担)を繰り返し運用するとき
- Claude Codeなどでサブエージェント機能を使うとき(キャッシュ効率が直接効く)
- 同じテーマを複数の切り口で何度も相談するとき
❌ これには向いていない
- 役割を1つしか使わないタスク(分ける意味がない)
- 1回きりのお試し(設計コストが回収できない)
注意点として、共通ブロックに入れるのは「本当に全役割に共通のもの」だけにしてください。特定の役割にしか関係ないルールを共通に入れると、他の役割の判断を不必要に縛ります。迷ったら役割ブロック側へ。共通は最小限が原則です。
🔧 上級者向け:Claude Codeのサブエージェントでの活用
ここは開発者向けツールの話なので、チャット利用の方は読み飛ばしてOKです。
Claude Codeにはサブエージェント(専門役割を持つ補助AI)を定義する機能があります。複数のサブエージェントを作るとき、システムプロンプトの冒頭部分(プロジェクトの前提・共通規約)を完全に統一し、役割固有の指示を後半に置くと、Day 21で紹介したキャッシュの前方一致が役割をまたいで効きやすくなります。サブエージェントは並列で動くぶんトークン消費が増えるので、この設計での効率化は実益が大きい部分です。詳細は公式ドキュメントを確認してください。
📎 Anthropic “Prompt caching”(Claude公式ドキュメント)
https://platform.claude.com/docs/en/build-with-claude/prompt-caching
まとめ
- Cache-Aware Sub-agent Designは「共通ブロック+役割ブロック」の2層で役割AIを設計する型
- 共通ブロックは完全に同一が鉄則。1か所の修正が全役割に反映される
- 共通に入れるのは最小限。迷ったら役割側へ
これで第5章「AI内部の仕組みに合わせる」は完結です。前提の固定(Day 21)、資料のアンカー化(Day 22)、セッション管理(Day 23)、差分修正(Day 24)、役割の共通化(Day 25)。どれも「何を書くか」ではなく「どこに・どう置くか」の話でした。プロンプトの中身は同じでも、構造で差がつく。それがこの章のメッセージです。
⚠️ この記事の情報は執筆時点(2026年6月)の内容です。キャッシュやサブエージェントの仕様はサービスの更新で変わることがあります。最終確認は各サービスの公式ドキュメントでお願いします。
📎 引用・参考
・Anthropic “Prompt caching”(Claude公式ドキュメント)
https://platform.claude.com/docs/en/build-with-claude/prompt-caching
次回予告
次回から第6章「プロンプトの外側を作る」に入ります。1本目は「Execution Loop(実行ループ)」。タスクを進めるとき、毎ステップで「観察→思考→自己批判→行動」のサイクルを踏ませる型です。
👉Execution Loopとは?観察・思考・自己批判・行動のサイクルをAIに組み込むプロンプト術

コメント