如果你用 Claude Code 写过一个稍微复杂的特性,账单上总有一笔钱花得莫名其妙。不是 token 消耗变高了,而是提示缓存在你走神、等编译、翻文档的那几分钟里悄悄过期了。有人仔细数了 185 个本地会话,发现缓存过期引发的重新编码占了整整 22% 的开销——钱就这么烧给了重复计算。一个叫 Claude-thermos 的小工具直接把这个问题摆在台面上,用一套反向代理的预热策略把浪费拽了回来。
缓存,那个看不见的吞金兽
五分钟空闲,账单多出 22%
数字来得非常具体。Claude-thermos 的作者在统计自己的 185 次 Claude Code 会话时发现,主智能体因等待子智能体返回而空闲超过 5 分钟之后,提示缓存必然失效。重新编码这些上下文所消耗的 token,最终堆出了约 22% 的额外费用。这不是 API 涨价,也不是模型变贵,纯粹是工作节奏里一段不起眼的空白时间在抬升成本。很多团队把 Claude Code 当编程伙伴天天用,却从来没意识到,起身接杯咖啡的工夫已经让缓存冷透了。
为什么 Claude Code 会冷下来
Claude 的提示缓存机制本身是善意的:如果你在短时间内反复发送相似的上下文,API 会复用之前编码好的内部表征,省下大量计算和费用。但缓存有一道硬性时间窗口——目前是 5 分钟。一旦超过这个窗口没有请求命中缓存,先前编码就作废了,下一次调用必须重新编码整个提示前缀。在 Claude Code 的典型多步骤工作流里,主智能体时常需要派生子智能体去单独完成一段任务,然后干等。这个等待如果跨过 5 分钟,缓存就过期。再发指令时,系统只能默默吃掉额外 token,而你毫无感知。
传统对策为何都失败
手动每隔几分钟去敲一个空请求保持热度?不现实,打断心流不说,还不一定记得住。改写代码逻辑把子任务拆得更细、强迫频繁回传?那是削足适履,把开发体验搞坏。更讽刺的是,缓存失效的问题根源在反向代理层面几乎可以完美解决,但大多数人根本没往这个方向想。于是花钱的照花钱,直到有人把保温瓶造出来。
反向代理的“保温”逻辑
它怎么在不改动任何代码的前提下工作
Claude-thermos 的设计非常轻:在本地跑一个反向代理,截获 Claude Code 与 Anthropic API 之间的流量。它不修改请求内容,只做一件事——监控主智能体的空闲状态。一旦发现超过预设阈值没有新请求,工具就自动生成一个无害的“预热”请求去触碰缓存,让它重新计时。整个过程对上层完全透明,Claude Code 不知道中间多了一层代理,Anthropic 的服务器也看不出异样。缓存就这么被悄无声息地续上了。
从安装到生效,只需要一条 uvx 命令
工具用 uvx 分发,一行命令就能启动:uvx claude-thermos。不需要折腾配置文件,也不用改环境变量,代理会自动接管本地通信。如果默认的 5 分钟空闲阈值不适合你的节奏,它允许自定义:你可以把空闲判定放宽到 7 分钟,也可以缩短到 3 分钟;预热间隔同样可调。这意味着不同类型的开发场景——无论是频繁交互的前端调试,还是需要长时间思考的系统设计——都能找到自己的平衡点。
185 个会话,22% 的账单是怎么省下来的
作者没有停留在理论上,而是把自己 185 个真实会话的账单掰开算清楚。在引入预热机制之前,缓存过期导致的重新编码占比稳定在 22% 左右。加上 Claude-thermos 之后,这部分浪费几乎归零。省下的不是羊毛,是实打实的计算开销。而这个数字还仅仅来自一个人,如果放到整个团队,省下的成本足以再跑好几个月的实验性分支。这背后没有黑魔法,就是把一个被忽视的成本黑洞照亮了而已。
省钱只是开始,工作流也跟着变了
开发循环中不再需要手动干预
任何需要你记住去做的优化,最终都会失败。Claude-thermos 最大的价值不是那 22% 的数字,而是把缓存管理变成彻底的背景任务。你照常写代码、提交、等 CI,代理在后台安静地帮你续杯。不用盯着钟表,不用在规划任务时刻意留出“保温槽”,甚至不需要理解缓存策略。这种反向代理式的无感注入,是工程上对工具使用者最友好的姿态。
阈值和间隔都可调,适配你的节奏
有些开发者的工作流是快节奏的,每两分钟就发一次请求,预热间隔可以拉长;有些人习惯沉入一个问题十几分钟不动,阈值需要调高,否则代理会无谓地浪费预热请求。Claude-thermos 把这部分控制权交还给你,而不是强迫你适应某个固定的保温模板。这种灵活性在目前围绕 Claude Code 的辅助工具里并不多见,也让它从一个“成本小工具”向上跨了一步——开始影响你安排工作流的自由度。
保温瓶的隐喻
工具的名字取得很妙。Claude-thermos,thermos 就是保温瓶。缓存需要温度,而你要做的只是把它放在瓶子里,拧紧盖子。这个隐喻比任何技术白皮书都更能解释问题本质:不是计算不够快,不是模型不够聪明,只是没人帮它保持热度。现在有了。

