Claude Code v2.1.299 / v2.1.300:空闲自动压缩上线,Mods 拿到改写权,remote-control 的 --sandbox 被移除
Claude Code v2.1.299 起对 200K+ token 会话空闲约 54 分钟自动压缩,抢在一小时提示缓存过期前完成;v2.1.300 新增 /advisor、OpenTelemetry GenAI 语义属性与 prompt.change 钩子。
2026-10-15 · Claude Code 官方 CHANGELOG(v2.1.299 / v2.1.300 原始条目,一手核对)
发布 2026-10-15核实 2026-10-15要点速览
- v2.1.299 上线「空闲自动压缩」:一个 200K+ token 的会话空闲约 54 分钟后会被自动压缩——卡在一小时提示缓存过期之前,这样你回来发下一条消息时不必把整段历史重新处理一遍。
- 开关齐备:
CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS改 200K 这个阈值,settings.json 里写"idleCompaction": false关掉。两项都要求 v2.1.290 及以上。 - v2.1.300 给 Mods 松绑:
agent.spawn钩子从此可以改写工作流 agent 的prompt和model——此前它只能选择拒绝;新增prompt.change钩子(prompt 框文本被非键入方式改动时触发:历史回填、清空、撤销、插件填充)。 /advisor出现在 Claude Platform on AWS:在你用/advisor、advisorModel或--advisor选一个之前,不会有任何 advisor 运行;CLAUDE_CODE_DISABLE_ADVISOR_TOOL=1可整体关闭。- 行为变更:
claude remote-control的--sandbox/--no-sandbox已被移除——官方说明这两个参数此前就没有效果,现在传入会直接报错退出;改用 settings 里的sandbox.enabled。 - 官方 CHANGELOG 中
2.1.297与2.1.298两节缺失(从 2.1.299 直接跳回 2.1.296)。本站未获知缺失原因,不作推断。
① 空闲自动压缩:把「一小时缓存窗口」用满
这条是两版里对日常体感影响最大的一个。官方原文要点:
- 触发条件:会话 ≥200K token 且空闲约 54 分钟。
- 为什么是 54 分钟:官方把它卡在一小时 prompt cache 过期之前——压缩动作本身还吃得到缓存价,而不是等到缓存失效后再按全价重算。
- 可调:
CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS改最小 token 数,settings.json 的"idleCompaction": false整个关掉。两者都要求 v2.1.290 及以上。
为什么值得单独说:过去 Claude Code 的长会话成本模型有个隐性断点——你离开一小时再回来,缓存已经失效,第一条消息要按全价把 200K 上下文重新吃一遍。 空闲压缩把这个断点提前消化掉。对「早上开一个会话、中间去开会、下午接着问」这种真实节奏,省的是钱也是首字延迟。
代价也要写清楚:压缩是有损的(见 上下文压缩)。空闲压缩触发时你不在场,无法像手动 /compact 那样先确认保留什么。如果你依赖会话里的某段原始输出,别指望它一定原样留着——要么关掉这个功能,要么在离开前自己压一次。
② v2.1.300:Mods 从「能拒绝」升级到「能改写」
| 钩子 / 能力 | 变化 | 影响 |
|---|---|---|
agent.spawn | 可改写工作流 agent 的 prompt 与 model | 此前只能 refuse,现在可以做「按场景换模型」的编排 |
prompt.change(新增) | prompt 框文本被非键入方式改动时触发:历史回填、清空、撤销、插件填充 | 补全了 prompt.submit / prompt.edit 之外的第三类入口 |
prompt.submit 的 $.prompt.media | 可读取提示里附带图片 / 文档的字节(限 managed settings 安装的 mod) | 企业侧做附件合规扫描有了落点 |
$.session.identity() | 读取会话登录方式、组织与邮箱 | 同上 |
$.ui.view({ agentId }) | 在主视图展示某个 agent 的 transcript | mod 侧可观测性 |
这一组改动的性质是「授权下放」:Mods 从一开始的「装饰 + 拦截」,到 2.1.289-292 能拦截工具调用,再到现在能改写子 agent 的模型与提示,权力是逐版扩的。对企业是好消息(管控粒度更细),对个人用户意味着:你装的 mod 能替你决定用哪个模型跑子任务——安装来源要更谨慎。
收紧的一面:hook 的 updatedInput 现在会被当成 Claude 自己的输入校验
官方原文:updatedInput from PreToolUse and PermissionRequest hooks is now validated like Claude's own input——未知键会被丢弃,工具本身拒绝的输入会直接拒掉这次调用。
翻译:此前 hook 改写工具入参时,塞一个工具不认识的字段可能就这么混过去了;现在不行。写过 hook 的团队升级后要回归一遍自己的 PreToolUse 改写逻辑。
③ 可观测性:OpenTelemetry 对齐 GenAI 语义约定
- 新增
cache_creation_5m_tokens与cache_creation_1h_tokens到api_request事件——缓存写入按生命周期拆开统计(5 分钟 vs 1 小时)。 - 新增 GenAI 语义约定属性到 trace span:
gen_ai.provider.name、gen_ai.conversation.id、gen_ai.tool.name、error.type。
第一条的实用价值高于第二条:把缓存写入按 5m/1h 拆开之后,你才能算清「我到底该买 5 分钟缓存还是 1 小时缓存」——这两档写入价不同,之前混在一个数里没法归因。配合上面 2.1.299 的空闲压缩,长会话成本的账本终于能对上了。
④ 两处「看起来是小改动、实际会咬人」的变更
claude remote-control 移除 --sandbox / --no-sandbox:官方明确这两个参数此前就没有任何效果,现在传入会报错退出。如果你的启动脚本里带了这两个 flag,升级后会直接起不来。替代是在 settings 里配 sandbox.enabled——注意这意味着沙箱配置从「命令行参数」变成了「配置文件」,CI 里记得同步改。
退出时 1.5 秒后强杀后台命令:官方把「还在跑的后台命令」的宽限设为 1.5 秒,之后强杀;此前在全屏模式下它们可能被留着继续跑。
AI 之家 观点
这两版的主线是同一件事:把「长会话」从一种用法变成一种被产品正式支持的形态。
回头看这条线非常清楚——2.1.287~292 修的是长会话跑崩的问题,2.1.293 让 Haiku 5.5 默认化降低长会话成本,2.1.296 给了 autoCompactWindow,现在 2.1.299 补上「空闲时也帮你压」。每一步都在降低「开一个会话然后忘了它」的代价。 这不是 bugfix 的堆砌,是一个明确的产品判断:agent 的真实使用形态就是长时间挂着,而不是一问一答。
第二个判断:空闲压缩是「替你做决定」,本站对这类改动一向持保留态度。 官方把默认打开,理由充分(多数人不会手动压,过期后更贵),但压缩永远是有损的,而触发时机恰好是你不在场的时候。建议:依赖会话内原始产出的场景关掉它("idleCompaction": false),把它当成「省钱开关」而不是「默认正确」。凡是「自动帮你丢信息」的功能,默认都应该先怀疑一次。
第三个观察:Mods 的权限边界在快速扩张,而配套的审计能力是同版本补齐的。 2.1.300 一边放开 agent.spawn 改写权,一边加了 $.session.identity() 和 OTel 属性——这个顺序是对的:先给可观测性,再给改写权,而不是反过来。对比本站此前在 Gemini CLI v0.64.0 资讯里的判断——两家都在把 agent 往「可以被企业托管」的方向推,只是 Anthropic 走的是「管控 + 审计」,Google 走的是「崩溃恢复 + 原子写」。
待核实
- v2.1.299 / v2.1.300 的厂商公布发布日:Claude Code 官方 CHANGELOG 的版本标题下不含日期,本站仅能确认「2026-10-15 核对时这两节已在 main 分支」,不臆造发布日。
- 2.1.297 / 2.1.298 为何缺失:官方 CHANGELOG 直接从 2.1.299 跳到 2.1.296,本站未获知原因(可能是内部版本或回滚),不作推断。
/advisor的具体能力与可选 advisor 清单:官方仅给出开关与触发方式,未列出 advisor 种类与默认行为,未写入确定结论。- 空闲压缩的压缩策略细节:官方未说明压缩后保留哪些内容、是否与手动
/compact同一策略,未做一手实测。 --disallow-tools与disallowed_tools(v2.1.299 新增,用于claude plugin eval排除内建工具):仅有 CHANGELOG 一句描述,未读 CLI 参考文档。
来源
- Claude Code 官方 CHANGELOG(main 分支,一手核对)
- Claude Code 官方文档
- 延伸阅读:Claude Code 工具卡、上下文压缩概念页、Haiku 5.5 发布资讯、Claude Code v2.1.295 钩子 fail-closed 资讯、Codex 工具卡
口径说明:本文所有条目均取自 Claude Code 官方仓库 CHANGELOG 原文(一手),功能描述由官方原文归纳,未转录第三方汇总。CHANGELOG 版本标题不含日期,文中「2026-10-15」为本站核对当日,非厂商公布发布日。凡官方未给出的内容,均已列入待核实,不作推断。