设置配置
状态栏缓存倒计时
缓存什么时候过期平时看不到:状态栏常显还剩几分钟,过期后告诉你下一句要重算多少 token。
2,589 X 收藏,截至 发帖日期
提示词
读这份文档,连同它链到的 status line 字段说明,在我的 Claude Code 状态栏加一段缓存状态。
1. 已经有 status line 就别替换:先把 stdin 存下来,原命令和缓存段用同一份输入,原来的输出不动,缓存段另起一行接在后面。没有就新建一个。
2. 数据从输入里的 prompt_cache 拿:warm、ttl、expires_at、hit_ratio、misses、last_miss_cause、recache_tokens_if_cold。还没有 prompt_cache 就先不显示;版本里没有的字段就跳过。
3. 热的时候绿色,显示进度条和剩余时间,比如「cache ● 1h ████░░ 38m left · hit 91% · misses 0」,剩不到 20% 变黄。
4. 凉了变红,显示「cache ○ cold · next message re-caches 82k tokens」,token 数按 k 取整;有 miss 原因才带上。
5. 在原来 statusLine 所在的 settings 文件里,statusLine 对象里和 command 同级加 "refreshInterval": 30,让倒计时自己走。
Claude Code 低于 2.1.251 就告诉我,别自己升级。改完用样例 JSON 把热、快过期、凉三种状态各跑一遍,把输出给我看。下一步 把它和那份文档链接一起发给 Claude Code 里的 Opus 5.5。
你每发一句,Claude Code 都会把整段对话重新发给模型。有缓存,前面那一大段就不用重新算,回得更快,额度也用得少。可缓存会过期,过期以后的第一句,整段对话都得从头再算。还剩多久过期,平时看不到。加上这条,状态栏会一直显示还剩几分钟;过期了,它会告诉你下一句要重新算多少 token。快到点了还有话要问,就先问完。
官方文档里还有几条,我之前都不知道:
- 订阅额度内,主对话缓存 1 小时,subagent 和 workflow 只有 5 分钟;用 API key,或者超额开始扣 usage credits,主对话也只有 5 分钟。
- 中途切模型会整段重算,opusplan 每进出一次 plan mode 都算切一次。
- 会话中途改 CLAUDE.md 不会打破缓存,但也不生效,要 /clear、/compact 或重启才加载。
- 做歪了想重来,用 /rewind 退回去,能接上原来的缓存;/compact 会重新建一份。
把这段 prompt 和这份文档一起发给 Opus 5.5:https://code.claude.com/docs/en/prompt-caching
