Claude Code cli 1h缓存补丁

Emqo 2026-03-24 16:37 1

突然发现CC默认不创建1h缓存了,这对我这种不经常看电脑摸鱼的人很不友好,我又不想轮询维持短短5m的缓存,直接展示vibe coding魔力分析Cli.js


function uqz(A) {
// Bedrock 用户:设置环境变量可以开启
if (lA() === "bedrock" && e6(process.env.ENABLE_PROMPT_CACHING_1H_BEDROCK))
return !0;

// 非付费用户或超额用户:直接返回 false
if (!(sA() && !sZ.isUsingOverage))
return !1;

// 从 feature flag 读取 allowlist
let K = xx1();
if (K === null)
K = P8("tengu_prompt_cache_1h_config", {}).allowlist ?? [], ux1(K);

// querySource 必须在 allowlist 中
return A !== undefined && K.some(
(Y) => Y.endsWith("*")
? A.startsWith(Y.slice(0, -1))
: A === Y
)
}

也就是Bedrock且设置了1h环境变量或者付费账号且来源在白名单里缓存时长才是1h,简单vibe了个补丁供佬友使用

claude-1h-cache-patch.zip (4.3 KB)

食用方法node claude-1h-cache-patch.js

也可以用用这位佬友改的啊


这个补丁只适用于首次通过npm全局安装,且后来并没有过自动更新的情况,我把补丁升级了一下,支持npm和native binary(更新后的本地二进制),打完补丁后自动重新签名,可以开启自动监听,当claude code版本更新后,自动重新打补丁(前提是更新后的claude code源码里的锚点字符串 tengu_prompt_cache_1h_config 和 cX5(H)函数名不变),支持Lin…


打完补丁效果如下,我的1h缓存回来啦!

最新回复 (19)
  • jv-kssma 03-24 16:43
    1

    Bedrock啊, 怎麼這麼有米

  • Emqo 楼主 03-24 16:44
    2

    没有啊,我可没米

  • Noale 03-25 02:34
    3

    这是第三方API还是官方订阅?

  • Emqo 楼主 03-25 08:52
    4

    都可以,强制解锁1h

  • Noale 03-25 08:53
    5

    但我之前尝试过,例如any实际上强开也无法获取1h

  • Emqo 楼主 03-25 09:04
    6

    我any被封了测不了啊,但是我这里的渠道测了都可以1h缓存创建

  • Noale 03-25 09:35
    7

    例如什么渠道?

    我这里是能发出去,但降级成了5m(指Any)

  • Emqo 楼主 03-25 09:42
    8

    你可以别的渠道试试,我这里官key,反代都可以啊

  • Noale 03-25 09:43
    9

    官key?也许是加入了白名单之类的

    之前翻代码发现是要白名单才有可能1h

    是否印证了猜想呢

  • Emqo 楼主 03-25 09:44
    10

    没有哦,我不打补丁默认5m的

  • Emqo 楼主 03-25 09:46
    12

    因为我官Key是中转的啊

  • sddxsm 03-25 09:49
    13

    这是哪里看的呀

  • Emqo 楼主 03-25 09:51
    14

    中转使用记录都有吧我这个是sub2api

  • hangsman 03-25 09:54
    15

    any测试没用

  • Emqo 楼主 03-25 09:58
    16

    理论上来说,只要支持就有啊

  • 绪里 03-25 10:03
    17

    这缓存是官方服务器端缓存?是从什么时候开始改成5m的啊

  • Emqo 楼主 03-25 10:07
    18

    从Search 那些tools开始要whitelist的Claude code cli版本之后吧,反正就最近这段时间

  • yahann shen 03-25 10:09
    19

    每次新对话都要这样运行下吗?

  • Emqo 楼主 03-25 10:12
    20

    不需要啊,补丁之后不更新版本就不用再打

* 帖子来源Linux.do
返回