Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ This repo is a **Claude Code plugin marketplace**, so you can install a single h
| Plugin | What it does | Command / config |
| ------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- |
| [context-hogs](plugins/context-hogs) | Per-file context-cost leaderboard: attributes each tool result's tokens to the files it loaded, so you see which files cost you the most | `/context-hogs:leaderboard` renders the board on demand |
| [cache-tax](plugins/cache-tax) | The comeback price of a cold prompt cache, before you pay it: warns (or refuses once) when your next message re-writes a lapsed 1-hour cache at up to 80x the read rate, prices a stale `--resume`, and doubles as a status line segment with minutes left and the cold cost | `/cache-tax:status` renders the card; `CACHE_TAX_BLOCK=1` refuses instead of warning; `cache-tax.js --statusline` for the segment |
| [cache-tax](plugins/cache-tax) | The comeback price of a cold prompt cache, before you pay it: warns (or refuses once) when your next message re-writes a lapsed 1-hour cache at up to 80x the read rate, prices a stale `--resume`, and doubles as a status line segment with minutes left and the cold cost. A Mod form with keep-warm lives in [claude-code-mods](https://github.com/karanb192/claude-code-mods/tree/main/plugins/cache-tax) | `/cache-tax:status` renders the card; `CACHE_TAX_BLOCK=1` refuses instead of warning; `cache-tax.js --statusline` for the segment |
| [nerf-receipts](plugins/nerf-receipts) | Personal flight recorder: records your own failure rate, edit churn & tokens/task by model version, and flags real shifts when a model changes | `/nerf-receipts:receipts` renders the trend card on demand |
| [dead-rules-audit](plugins/dead-rules-audit) | CLAUDE.md compliance scorecard: tallies which rules Claude follows vs ignores as you edit (SessionStart + PostToolUse + SessionEnd), and flags chronically-ignored rules to promote into a deterministic hook | `/dead-rules-audit:scorecard` renders the scorecard on demand |
| [pr-provenance-stamp](plugins/pr-provenance-stamp) | Stamps a provenance receipt (prompts, est. spend, tests run, agent-authored lines) into your PR body when Claude runs `gh pr create` | `/pr-provenance-stamp:provenance` renders the receipt on demand |
Expand Down
4 changes: 4 additions & 0 deletions plugins/cache-tax/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,10 @@ cache-tax: the 1h prompt cache lapsed 3h00m ago. This message re-writes 300,002
(a warm turn would have cost $0.08). If most of that context is stale, /clear and start from a handoff note instead.
```

## The Mod form

The same tool exists as a Claude Mod, [cache-tax@claude-code-mods](https://github.com/karanb192/claude-code-mods/tree/main/plugins/cache-tax), for anyone who has turned on function hooks (`CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1`, early access). It runs inside Claude Code instead of reading the transcript, refuses a cold send once by default, and adds what a hook cannot do: `/keepwarm 6h` sends one cache-shared ping after 50 idle minutes so the cache is read, not re-written, when you come back. Install one form, not both; two guards fire twice. The status line segment below stays with this hook's files either way, because a mod cannot draw into the status line.

## What Claude Code already does, and where this adds

On `--resume` of a session older than its cache TTL, recent Claude Code versions (seen on 2.1.261) show their own dialog, "this session is N old and M tokens, we recommend resuming from a summary". That covers the resume path in tokens. cache-tax adds the dollar figure there, and covers the case that dialog cannot see: a session you left open, came back to after an hour, and typed into. Nothing native intervenes at that keystroke.
Expand Down
2 changes: 1 addition & 1 deletion site/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -703,7 +703,7 @@ <h3><span class="no">13</span>context-hogs</h3>
<!-- 14 -->
<article class="pcard obs">
<h3><span class="no">14</span>cache-tax</h3>
<p>The comeback price of a cold prompt cache, before you pay it: warns when your next message re-writes a lapsed 1-hour cache at up to 80x the read rate.</p>
<p>The comeback price of a cold prompt cache, before you pay it: warns when your next message re-writes a lapsed 1-hour cache at up to 80x the read rate. Also a <a href="https://github.com/karanb192/claude-code-mods/tree/main/plugins/cache-tax">Mod form</a> that refuses once and keeps the cache warm.</p>
<span class="cmd">/cache-tax:status</span>
<div class="events"><span class="tag evt">UserPromptSubmit</span><span class="tag evt">SessionStart</span></div>
</article>
Expand Down
Loading