Claude Code从 2.1.36版本开始,会在每个API请求的系统提示词开头,加入含随机5位十六进制cch 字段的
x-anthropic-billing-header内容。
由于第三方API将其视为普通提示词计算缓存key, cch每次变化会导致缓存命中率归零,引发 token消耗暴涨、推理变慢。
真不做个人啊。
都说被捅屁股啊什么的,那其实他在百度学的最狠还是这一招。
是有这个事情,我查了下有人扒泄漏源码查到过解决办法,就是在 ~/.claude/settings.json 的 env 里加上:
"CLAUDE_CODE_ATTRIBUTION_HEADER": "0"
这样系统提示词的首行就不会加相关内容了。
而且稍微多查了一下,实际上有人测过例如deepseek、glm之类的第三方,第三方官方已经知道这个事情的存在并在后台直接处理了,并不会因为这个原因导致缓存不中。
然后源码里cch好像是5个0占位,然后在bun的那边替换掉的,不过好像有些转发项目已经把cch的算法摸出来了,所以这情况现在解决办法还是挺多的。就算后面A/再换,实际上只坑不知道的人,知道了解决办法多的是。估计本质目的不是为了坑第三方而是坑反代中转?
不愧是百度出来的,这就是企业文化啊 ![]()
这个好像很久之前就有曝光了,ccswitch里面有个设置settings.json专门可以设置的地方,可以避免这个情况
这个几个月前就有解决方案了
"CLAUDE_CODE_ATTRIBUTION_HEADER": "0"
不排除A\后面继续搞小动作
属于是旧闻了,怎么现在还在说。。
旧闻了
sub2api 已经把 cch 的算法摸清了,没影响
感谢佬友,刚知道这个事情,那么恶心吗
都多久之前的事了,还前沿快讯呢。
DeepSeek在claude code中使用时的命中率相当高, 我也相信后台是有了对应处理的



