本文へスキップ
MameTechNews
AI

Claude Codeのサブエージェントはサブスクでもキャッシュ5分 subagentPromptCacheTtlで1時間に延長可能

## POINTS

  • サブエージェントや補助リクエストはメイン会話と別枠で、サブスクリプションでも既定のキャッシュ寿命は5分
  • settings.jsonの`subagentPromptCacheTtl`を"1h"にすると延長でき、v2.1.242以降が必要
  • 1時間にするとキャッシュ書き込みの単価は上がるため、長くアイドルを挟む作業かどうかで選ぶ

Claude Codeのドキュメントによると、プロンプトキャッシュの寿命はメインの会話とそれ以外の2つの枠で別々に決まる。メインの会話はpromptCacheTtl、サブエージェント、ワークフロー、コンパクションやセッションタイトル作成などの補助リクエストはsubagentPromptCacheTtlで、それぞれ"5m"か"1h"を選べる。どちらもClaude Code v2.1.242以降が必要。サブエージェントは親とは別のシステムプロンプトとツールを持つため親のキャッシュを読まず、メインの会話の枠からも外れるので、サブスクリプションでも長い寿命を選ばない限り5分になる。5分以上止まった後の呼び出しではキャッシュが切れ、履歴を読み直すぶんのトークンがかかる。X上ではこの挙動で費用が膨らんだという報告や、1時間に変えて5%以上節約できたという利用者の報告が出ている。ただし1時間の寿命ではキャッシュ書き込みの単価が5分より高くなる。優先順位はFORCE_PROMPT_CACHING_5M、環境変数CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL、この設定、サブエージェント定義のexperimental.cacheTtl(v2.1.248以降)、ENABLE_PROMPT_CACHING_1Hの順。サブスクリプションが利用クレジットを使っている間は、定義側の"1h"は無視される。