Skip to content

超过 200K 不再卡在「需要 1M 上下文额度」:Claude Code 改为自动压缩继续 ​

长会话做到一半,突然弹出一句 "Usage credits required for 1M context",然后整个会话停住——如果你遇到过,CLI 2.1.311 的这条修复就是为你准备的。

之前发生了什么 ​

Claude Code 的会话分两种上下文规格:标准上下文(200K token)和 1M 长上下文。1M 上下文需要额外的用量额度,标准会话本不该用到它。

但在旧版本里,标准上下文会话一旦某次请求的体积超过 200K token,就会被当成 1M 请求处理,结果是直接报出需要 1M 额度的错误并停下。你没有主动开 1M,却被一个额度提示挡住,只能手动 /compact 或开新会话。

2.1.311 的处理方式 ​

更新说明写得很直接:标准上下文会话的请求超过 200K token 时,Claude Code 现在会压缩对话,然后继续。

也就是说,这种情况被拉回到了正常路径:上下文快满了,就做一次压缩,把较早的对话浓缩成摘要,再接着干活。对你来说,基本感觉不到中断。

同一版本里还有两条相关改进,值得一起了解:

  • 压缩更稳:如果模型的回复里没有摘要,Claude Code 通常会再要一次摘要,而不是直接用空内容替换对话。
  • 压缩后读到最新的记忆文件:修复了自动压缩后,Claude 看到的 MEMORY.md、CLAUDE.md 还是旧内容的问题(如果你在会话早些时候改过它们)。

实用建议 ​

  1. 升级即可:这是行为修复,不需要改配置。运行 claude update 或用你的包管理器升级到 2.1.311 以上。
  2. 压缩不是免费的:自动压缩会丢失部分细节。做大任务时,把关键约束写进 CLAUDE.md,比指望摘要记住更可靠。
  3. 主动拆任务:如果一个会话经常顶到 200K,考虑把调研类工作交给子代理,主会话只保留结论。
  4. 确实需要长上下文:如果你的任务真的离不开大窗口,再考虑开启 1M 上下文并准备好相应额度,而不是让标准会话硬撑。

小结 ​

这次修复把一个「莫名其妙的额度报错」变回了「正常的上下文管理」。长会话用户升级后,最直观的感受就是:不再被一句额度提示半路拦下。

Claude-cn.org,专注于 Claude Code 中文教程