claude-code-mods

cache-clock

A prompt-cache line under your status line, from Claude Code's own figures: time left, hit rate and misses, and the tokens your next message re-caches once it goes cold.

See what's happening Version 0.1.1

cache ● 1h ███████░░░ 38m left · hit 91% · misses 0
cache ● 5m ██░░░░░░░░ 53s left · hit 36% · misses 1
cache ○ cold · next message re-caches 82k tokens · ttl expired 5m

Install

claude plugin marketplace add hamzafer/claude-code-mods
claude plugin install cache-clock@claude-code-mods

Restart Claude Code after installing. To try it without installing, clone the repo and run claude --plugin-dir mods/cache-clock.

How to use

Plugins can't add a status line on their own, so run setup once. It keeps the status line you have and puts the cache line under it:

/cache-clock setup

/cache-clock remove puts your settings back as they were. /cache-clock alone says whether it's on.

How it behaves

  • Every message resends the whole conversation. While the cache is warm, the part already sent is read from cache: faster, and lighter on your usage limits. Once it goes cold, the next message processes all of it again.
  • Green while warm, with a bar and the time left. Yellow under 20% of the lifetime. Red once cold, with how many tokens the next message re-caches.
  • hit is the share of input tokens read from cache this session. misses counts requests that re-processed what the cache already held.
  • Shows nothing until Claude Code's first reply, and skips any figure your version doesn't send.
  • Setup points statusLine at a small Node script that runs your status line first, and sets a 30-second refresh so the countdown keeps moving.
  • A project's shared .claude/settings.json gets an override in .claude/settings.local.json instead. A status line from managed settings is left alone.