check-cache-bugs

A diagnostic checklist for cache and context bugs in Claude Code, including issues connected to resuming sessions, attribution headers, and silent context removal. The excerpt documents affected versions and some fixes or workarounds.

In plain words
What is it for?
Auditing Claude Code versions, configuration files, instructions, hooks, shell profiles, and installed Claude binaries for the listed cache-related issues.
Why use it?
It helps identify whether Claude Code setup problems are caused by known version, configuration, or session-handling bugs.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/florianbruniaux/claude-code-plugins/check-cache-bugs
Any agent
npx skills add FlorianBruniaux/claude-code-plugins --skill check-cache-bugs
Clone the repo
git clone --depth 1 https://github.com/FlorianBruniaux/claude-code-plugins

Made for: Claude Code, Codex.

Per session 38 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,861 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00038 $0.03861
Opus 5 $0.00019 $0.01930
Sonnet 5 $0.00008 $0.00772
Haiku 4.5 $0.00004 $0.00386

Measured 2d ago against content hash ea9991d9ab78, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

check-cache-bugs scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Reads agent configuration directorieslowAgent snooping

.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.

grep -rl "cch=" ~/.claude/hooks/ 2>/dev/null

Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.

plugins/code-quality/skills/check-cache-bugs/SKILL.md · 314 lines

How it starts

The opening of the file, as written. The whole thing — 314 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Check Cache Bugs (CC#40524)

Audit your Claude Code setup for cache and cost bugs discovered in March-April 2026.

Time: ~30 seconds | Scope: version, config files, CLAUDE.md, skills, hooks, shell profiles, all claude binaries

Note on cache contamination: This skill loads content containing cch= strings into the current session's message array. For cleanest results, run this command at the very start of a fresh session, or via claude -p "$(cat .claude/commands/check-cache-bugs.md)" as a one-shot print-mode invocation.

Reference: anthropics/claude-code#40524 | Discovered by: @jmarianski + @whiletrue0x | Extended by: @ArkNill (ArkNill/claude-code-cache-analysis, April 2026)


Background

Fix Status (current as of v2.1.92)

Bug Versions affected Status
Bug 1: cch sentinel (standalone binary) v2.1.36-v2.1.90 FIXED in v2.1.91
Bug 2: deferred_tools_delta on --resume v2.1.69-v2.1.89 FIXED in v2.1.90
Bug 3: attribution header per-session hash v2.1.69+ Active (env var workaround)
B4: Microcompact / silent context stripping all versions through v2.1.92 Active (GrowthBook controlled)
B5: Tool result budget cap 200K all versions through v2.1.92 Active (MCP tools exempted)

Original three bugs (CC#40524)

  • Bug 1 (FIXED v2.1.91): Bun's native HTTP layer did a same-length byte replacement of the cch=00000 attestation placeholder after JSON.stringify but before TLS. Triggered only if cch=00000 appeared literally in messages[] content. Confirmed closed; npm and standalone binary are now equivalent on v2.1.91+.

  • Bug 2 (FIXED v2.1.90): The session JSONL writer stripped deferred_tools_delta attachment records before writing to disk. On --resume, those records were absent; the deferred tools layer had no prior history and re-announced all tools from scratch, shifting every message position and breaking the messages-level cache prefix entirely. Each resume rebuilt 87-118K tokens as cache_creation. Anthropic tracked internally as inc-4747.

Read the full file on GitHub · 314 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 314 lines · 38 tokens per session scan A ea9991d9ab78

Subscribe to this mod's changes

check-cache-bugs is a skill published in the GitHub repository FlorianBruniaux/claude-code-plugins (40 stars, last pushed 2mo ago), licensed MIT. It adds 38 tokens to every session and 3,861 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

setup

创建一个新的 Workframe 项目,或把已有项目接入 Workframe。按用户意图与目标目录状态分流(新建 / 接入),对话采集业务上下文后落骨架、订阅 core 插件、完成落盘验收。仅用于 Workframe 框架的项目初始化,不承担 npm init / create-react-app / git init 等通用脚手架。.

ryanzhao1011/workframe · 88 tokens

material-intake

存量资料的盘点、分流与结构推荐。扫描给定路径产出资料台账(形态 × 数量 × 覆盖率),按资料形态判定每一批的去向(migrate-to-modules / requirement-archiving / code-to-doc / 手动放置),并从资料聚类推荐 basic/sub 模块树。只出计划不做搬运,重型执行交给对应 skill。.

ryanzhao1011/workframe · 99 tokens

code-review

代码审查,从需求符合度/正确性/安全性/可维护性/性能五维度评审代码变更,输出风险分级的 Finding 列表.

ryanzhao1011/workframe · 40 tokens

requirement-analysis

结构化需求澄清与优先级评估:判断需求形态(Full PRD / One-Pager / Quick Brief)、6 问澄清、RICE + MoSCoW 评估;Full PRD 移交 prd-writer,中小需求输出轻量需求摘要.

ryanzhao1011/workframe · 69 tokens

technical-design

技术方案设计与实施,提供轻量路径(小改动直接落地)和完整路径(架构/数据/API/多文件高风险变更走完整方案+实施+交付)双档分流.

ryanzhao1011/workframe · 50 tokens

test-case-design

测试用例设计与验证,基于 GWT 验收标准生成 Happy/Sad/Boundary 三类用例矩阵,含失败处理和签发流程。modules/ 体系下用例落盘到 requirements/ / /test-cases/。.

ryanzhao1011/workframe · 64 tokens