Claudeコードトークン浪費修正:キャッシュヒット向上のための帰属ヘッダーの無効化

Claude Codeはバージョン2.1.69以降、プロンプトキャッシュを妨げる課金属性ヘッダーのため、すべての新規セッションでトークンを浪費してきました。この問題は複数のGitHubイシュー(#40652、#34629、#40524)で文書化されていますが、ソース公開時点でAnthropicからの公式な回答はありません。
何が起きているのか
v2.1.69以降、Claude Codeはシステムプロンプトの最初のブロックに課金属性文字列を挿入します:x-anthropic-billing-header: cc_version=2.1.88.a3f; cc_entrypoint=cli; cch=00000;
.a3fの部分は、各会話の最初のメッセージからこの関数を使用して計算される3文字のハッシュです:
function computeHash(firstUserMessage, version) {
const chars = [4, 7, 20].map(i => firstUserMessage[i] || "0").join("");
return sha256("59cf53e54c78" + chars + version).slice(0, 3);
}異なる最初のメッセージを持つ異なる会話は、毎回異なるハッシュを生成します。
これがキャッシュを壊す理由
Anthropicのキャッシングには100%同一のプロンプトセグメントが必要です。キャッシュはセッションごとではなく、組織またはワークスペース全体で共有されます。課金ヘッダーは約23Kトークンのシステムプロンプトの先頭に位置し、会話ごとに変化するため、接頭辞が一致せず、新しいチャットごとにキャッシュミスが発生します。
ベンチマーク結果
制御されたA/Bテストでは以下の結果が示されました:
- ヘッダーON(デフォルト): 48%のキャッシュヒット率、セッションごとに約12Kトークン再構築
- ヘッダーOFF: 99.98%のキャッシュヒット率、4回中3回のセッションでキャッシュ作成ゼロ
この結果、システムプロンプト処理のセッションごとのコストが7分の1に削減されます。
修正方法
シェル設定に以下を追加してください:
export CLAUDE_CODE_ATTRIBUTION_HEADER=falsezshユーザーの場合:
echo 'export CLAUDE_CODE_ATTRIBUTION_HEADER=false' >> ~/.zshrc
source ~/.zshrc新しいセッションは自動的にこれを取得します。既存のセッションは再起動する必要はありません—ハッシュは会話中に変更されず、新しいセッションと干渉しません。
安全性と背景
これはハックではありません—環境変数は適切な機能トグルとしてソースコードに存在します。claude-code-routerとCLIProxyAPIは、この設定を無効にして本番環境で出荷されており、報告された問題はありません。
Anthropicはおそらく、どのバージョンとエントリーポイント(CLI対SDK対GitHub Action)が各API呼び出しを行ったかを追跡するためにこれを実装し、Bedrock/Vertexがカスタムヘッダーを転送しないため、システムプロンプト内に配置しました。
📖 完全なソースを読む: r/ClaudeAI
👀 See Also

Claude Code自己監査で~/.claudeに3GBの不要ファイルを発見 — 削除方法はこちら
あるユーザーがClaude Codeに自身の~/.claudeディレクトリを監査するよう促したところ、2.6GBの古いセッション記録、170MBの失敗したテレメトリ再試行ログ、153MBのアンドゥバッファが見つかりました。クリーンアップ後、3GBから200MB未満に削減されました。

M4 Pro上のOpenClaw:ブラウザ利用、コンピュータ利用、Codexで壁にぶつかる
ユーザーが報告:エージェントがターミナルループに陥る、サイトでブロックされる、Codexの出力が壊れる。自動化ブラウザ、macOS GUI制御、割り込みループの設定調整を模索中。

Claudeのコードにおける時間の幻覚をフックで修正する
ユーザーが、Claude Codeがリアルタイムクロックにアクセスできないため、不適切なタイミングで「少し休みましょう」などの提案を誤って行う問題を発見しました。修正方法は、~/.claude/settings.jsonに1行のフックを追加し、すべてのメッセージで現在時刻をClaudeのコンテキストに注入することです。

Claude Codeの100万トークンコンテキストウィンドウを無効にしてトークン使用量を削減する方法
Anthropicユーザーは、settings.jsonに環境変数を追加することでClaude Codeの1Mコンテキストウィンドウを無効にでき、予期せぬトークン消費を減らせる可能性があります。ソースでは、1Mコンテキストを完全に無効にするか、自動圧縮ウィンドウに上限を設ける2つの設定オプションが提供されています。