教程2026-10-29 · 智涌AI

Claude Code 自动压缩怎么设:/autocompact 窗口与优先级

Claude Code 自动压缩窗口头图:终端展示 /autocompact 500k、--autocompact、CLAUDE_CODE_AUTO_COMPACT_WINDOW 与 /compact 命令及优先级

用 1M 上下文的模型跑 Claude Code,默认要到大约 967K token 才自动压缩。在那之前,每条消息都背着越来越长的历史发出去,慢、费额度,前面定下的约束也容易被埋掉。/autocompact 管的就是这个时机:上下文涨到多少就压缩。下面按 Claude Code 官方文档(2026-10-29 北京时间查阅)讲清四种设法、谁覆盖谁、压缩后留下什么,以及怎么挑一个合适的数。

前置条件:版本够新,先看一眼当前窗口

四种设法,从临时到全局

怎么设写法作用范围备注
斜杠命令/autocompact 500k当前模型,本次和以后的会话存进用户设置的 modelSettings,/autocompact auto 恢复默认
设置文件"autoCompactWindow": 200000所有模型同一文件里,按模型存的值优先
启动参数claude --autocompact 300k只这一次启动不改已保存的值,也不受托管设置压制
环境变量CLAUDE_CODE_AUTO_COMPACT_WINDOW=500000脚本、云环境优先级最高;此时 /autocompact 只报告、不保存

命令和参数接受三种写法:纯数字 200000、带后缀 500k / 1M、100 到 1000 之间的裸数字(按千算,200 就是 20 万)。范围是 100K 到 1M。

同一个 200,写在 /autocompact 后面是 20 万,写进环境变量是 200 个 token。

环境变量只认纯 token 数(新版本另认 k/M 后缀),CLAUDE_CODE_AUTO_COMPACT_WINDOW=200 会被当成 200,再被抬到 100K 下限,启动时给一条警告。脚本里写满 200000 最省事。

谁覆盖谁:排查「设了不生效」

  1. 环境变量:设了且值合法,压过命令、参数和设置。状态栏的 used_percentage 按模型完整窗口算,这时它不再代表离压缩还有多远。
  2. 启动参数 --autocompact:压过保存的设置,只管这次启动。claude --autocompact auto 可以临时回到默认窗口。
  3. 托管设置:组织下发了窗口,你敲 /autocompact 会照样保存,但当前会话仍按托管值走,命令会提示这一点。
  4. 用户设置:按模型保存的值优先于同文件里顶层的 autoCompactWindow。v2.1.288 之前命令写的是顶层键,所有模型共用一个值。

想彻底不自动压缩,设置里写 "autoCompactEnabled": false,或单次会话设 DISABLE_AUTO_COMPACT=1,手动 /compact 仍可用;DISABLE_COMPACT=1 连手动也关掉。关掉自动压缩,闲置压缩(idle compaction)也一起关。

不设的话,默认几点压缩

场景默认压缩点
原生 1M 窗口(Fable、Sonnet 5 及以后、Haiku 5.5、Opus 4.7 及以后)约 967K
Sonnet 4.6 / Opus 4.6 未开扩展上下文200K 边界
设了 CLAUDE_CODE_DISABLE_1M_CONTEXT=1原生 1M 的模型也在 200K 压缩
云端会话接近模型上限时
网关别名等不认识的模型 ID按 Claude Code 为该 ID 假定的窗口

走 LLM 网关时,Claude Code 认不出 my-gateway-opus 这类别名,启动会警告并按 200K 假定窗口。官方给了四种修正:先 claude update 看新版本认不认;是已知模型换了名字的,用 modelOverrides 把 Anthropic 模型 ID 映射过去;真实窗口是 1M 的,在 ID 后面加 [1m];其他窗口设 CLAUDE_CODE_MAX_CONTEXT_TOKENS=400000 这样的值。

压缩后还剩什么:别把关键规则放在会被总结掉的地方

自动压缩和手动 /compact 一样,是把历史总结成摘要。官方列了每类内容的去向,挑最常踩的几条:

怎么写一份压缩后还能撑住的 CLAUDE.md,见站内 CLAUDE.md 怎么写。

窗口怎么挑:三个常见场景

窗口调小只决定「什么时候压」,压的时候保什么,还得靠手动补一刀:开始一个新的大任务前跑 /compact focus on the auth bug fix 这类带重点的压缩;换到无关任务直接 /clear;走错了路用 /rewind 回到出错前,别让错误尝试进摘要。

常见坑

完成标准

最后

今天就在常用项目里敲一次不带参数的 /autocompact,看清当前窗口,再按上面的场景定一个数,跑一周回来调。

关注公众号「智涌AI速递」

每天的 AI 快讯、实用教程和 AI项目实测,也会同步发到微信公众号。在微信里搜索「智涌AI速递」就能关注;不用微信的话,可以用 RSS 订阅本站。