1. トップ
  2. ニュース
  3. Claude Codeのサブエージェントはキャッシュが5分で切れる。1時間に延ばす設定「subagentPromptCacheTtl」が話題

Claude Codeのサブエージェントはキャッシュが5分で切れる。1時間に延ばす設定「subagentPromptCacheTtl」が話題

Claude Codeでサブエージェントのプロンプトキャッシュが5分で切れる点と、それを1時間に延ばす設定を紹介する投稿が、海外のXで話題になりました。設定は1行ですが、得になる場面と損になる場面がはっきり分かれます。

3行でわかる今回の話題
  • Claudeのサブスクリプションでは、メインの会話のキャッシュは1時間、サブエージェントは5分が初期設定
  • 設定ファイルに「subagentPromptCacheTtl」を「1h」と書くと、サブエージェントも1時間にできる(v2.1.242以降)
  • ただし1時間のキャッシュは書き込みの料金が高い。5分以上手が止まるサブエージェントがある人向けの設定

投稿者は「なぜこれが初期設定ではないのか」と書いていますが、返信欄では「1時間のキャッシュは高いからだ」という指摘も相次ぎました。公式ドキュメントをもとに、仕組みと使いどころを整理します。

サブエージェントのキャッシュを、1時間に延ばせる

プロンプトキャッシュは、前回送った内容を一時的に保存し、次の依頼で読み直す手間を省く仕組みです。一定時間使われないと消え、次の依頼では全体を計算し直します。この「消えるまでの時間」がTTL(Time To Live)です。

メインの会話のキャッシュは1時間、サブエージェントは5分であることを示す図
サブスクリプションの初期設定では、サブエージェントのキャッシュは5分で切れる

初期設定では、メインとサブエージェントで時間が違う

Claude Codeの公式ドキュメントによると、Claudeのサブスクリプションでプランの範囲内なら、メインの会話は1時間のキャッシュを使います。一方、サブエージェントやワークフロー、会話の圧縮などは5分です。API課金やクラウド経由で使っている場合は、どちらも5分が初期設定です。

設定は1行

設定ファイル(~/.claude/settings.json など)に次のように書きます。値は「5m」か「1h」のどちらかで、それ以外は無視されます。

{
  "subagentPromptCacheTtl": "1h"
}
  • メインの会話:「promptCacheTtl」で設定する(API課金の人がメインを1時間にしたいときもこちら)
  • 環境変数でも設定できる:CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL
  • サブエージェントごとに分ける:サブエージェントのファイルの「experimental」の中に「cacheTtl」を書く(v2.1.248以降)

基本情報

話題になった日

2026年10月10日

できること

サブエージェントなど、メインの会話以外のキャッシュの持続時間を5分から1時間に延ばす

設定名

subagentPromptCacheTtl(値は「5m」または「1h」)

必要なバージョン

Claude Code v2.1.242以降

一次情報

Claude Code公式ドキュメント(プロンプトキャッシュ) / 設定リファレンス

業務でどう使える?どう変わる?

一言でいうと、「途中で長く待つサブエージェント」の読み直しを減らす設定です。逆に、すぐ終わるサブエージェントしか使わないなら、変えても得はありません。

5分以上止まる作業では1時間が得、すぐ終わる作業では5分のままでよいことを比べた図
1時間が得になるのは、5分以上手が止まる場面があるときだけ

得になるのは「5分以上止まる」とき

公式ドキュメントでは、キャッシュは使われるたびに時間がリセットされると説明されています。つまり、途切れなく作業を続けているサブエージェントなら、5分でもキャッシュは切れません。1時間が効くのは、長いテストやビルドを待つなどして、5分以上手が止まる場面です。

職種別の活用アイデア

  • エンジニア:時間のかかるテストやビルドをサブエージェントに待たせる作業で、待ち時間のあとの読み直しを減らす
  • データ分析担当:重い集計スクリプトの実行を挟むサブエージェントだけ、「cacheTtl」で1時間にする
  • PM・チームリーダー:チームの設定を決める前に、サブエージェントが普段どれくらいの時間で終わるかを確かめてから選ぶ
注意点
  • 1時間のキャッシュは書き込みの料金が高くなります。APIの料金表では、5分のキャッシュの書き込みは通常の入力の1.25倍、1時間は2倍です
  • すぐ終わる短い作業ばかりなら、高い書き込み料金だけがかかり、長い保存時間は使われません
  • サブスクリプションで追加の使用量(usage credits)を使っている間は、サブエージェントのファイルに書いた「1h」は無視されます
  • 設定とバージョン条件は公開時点の公式ドキュメントに基づいています

よくある質問

なぜサブエージェントは最初から1時間ではないのですか?

1時間のキャッシュは書き込みの料金が高く、すぐ終わる作業では損になるためです。公式ドキュメントでも、5分以上止まらない短い作業では長いTTLの方が高くつくと説明されています。

メインの会話のキャッシュも変えられますか?

変えられます。「promptCacheTtl」で設定します。API課金やクラウド経由で使っている場合、メインの会話も初期設定は5分なので、1時間にしたいときはこちらを「1h」にします。

特定のサブエージェントだけ1時間にできますか?

できます。サブエージェントのファイルの「experimental」の中に「cacheTtl: 1h」と書きます。Claude Code v2.1.248以降が必要です。

今のキャッシュの設定が効いているか確認できますか?

公式ドキュメントでは、メインの会話について「claude -p “hello” –output-format json」を実行し、結果の「usage.cache_creation」を見る方法が紹介されています。1時間の書き込みは「ephemeral_1h_input_tokens」に表示されます。

まとめ:サブエージェントの使い方を見てから設定を選ぶ

Claude Codeのサブエージェントのキャッシュは、初期設定では5分で切れます。「subagentPromptCacheTtl」を「1h」にすると延ばせますが、得になるのは5分以上手が止まるサブエージェントを使うときだけです。

まずは、自分のサブエージェントが途中で長く待つ作業をしているかを確かめ、該当するものだけ1時間にするところから試してみてください。使用量を抑える方法としては、作業はSonnetに任せ、要所だけOpusに相談させる「/advisor」もあわせて検討できます。

今回の内容は、alex getmanさん(@alexgetmancom)の投稿をきっかけに紹介させていただきました。見落としがちな初期設定の違いを、すぐ試せる1行の設定と一緒に教えてくれたポストです。

「AIを業務で使える側になりたい」という方は、デイトラのAI業務活用コースで、プロンプトの基本からMCP・AIエージェントの活用まで体系的に学べます。

AI活用の導入支援・研修のご相談はデイトラへ

株式会社デイトラでは、企業向けのAI研修・AI業務効率化の導入支援を行っています。「何から手を付けるべきか」「自社ならどのツールを選ぶべきか」といった相談段階からお気軽にどうぞ。

お役立ち資料のダウンロードはこちら