软件教程

Claude Code 2.1.316:给子智能体单独调低思考档位,顺手修掉 Windows 上 Grep 卡死

这次更新在管钱,不在炫功能

Claude Code 2.1.316 于 10 月 31 日发布,55 项改动里 34 项是修 bug,新增功能几乎全指向管理与成本控制。对每天在终端里跑十几个子智能体的人,这比多一个花哨命令实用得多。

三个环境变量,直接省钱

第一个是 CLAUDE_CODE_SUBAGENT_EFFORT。此前子智能体没有单独设置时,会直接继承主会话的思考档位;主会话开到 ultrathink,几十个子任务就跟着按最贵的档位烧 token。现在可以给子智能体定一个独立默认值:

export CLAUDE_CODE_SUBAGENT_EFFORT=medium

它只对没有显式指定档位的子智能体生效,主会话和已有配置都不受影响。第二个是 CLAUDE_CODE_DISABLE_ULTRATHINK=1,彻底关掉 ultrathink 这个关键词,适合共享环境或 CI,避免有人在文档、提交信息里手滑打出来把档位顶上去。第三个 CLAUDE_CODE_DISABLE_LOOPED_CROSS_CERT_DROP 是给用私有 CA 的服务器兜底的,普通用户不用管。

企业网关与几个直接影响日常的修复

组织侧新增两件事。一是 pooled_budget,通过 spend limits 管理 API 给一个组设共享月度预算,叠加在每个成员的独立额度之上:成员自己还有余量,但组预算用完就停。配置形如 {"group_id": "eng-team", "pooled_budget": 5000}。

二是 managed.policy_mode: layered。以前网关只应用第一条匹配到的策略,后面的直接忽略;分层模式下所有匹配策略都会生效并按顺序合并,组织基线、项目限制、开发者权限可以叠加,不用把规则复制一遍。

同时网关开始逐个校验请求里点名的模型是否在 availableModels、deniedModels 和 models 之内,点名被封禁的模型会直接返回 400 并指出字段。这是一条被补上的口子,之前确实能绕过去。

这几个开关的共同点:以前的功能是给开发者方便,现在这批是把花出去的钱关进笼子。

修复项里最值得说的是三处。

Windows 上 Grep 和 Glob 在超时后偶尔永久挂起,导致整个工具调用看起来像卡死,这次修了;macOS 和 Linux 上 Claude Code 自行退出后残留的 shell 命令,现在会被正确终止;PowerShell hook 返回退出码 2 却漏放行命令的问题也修了;--restricted 会话在存在宽泛 Read 允许规则时仍可能上传工作目录外的文件,这个安全缺口同样补上。

还有一条时间限制要记住:Opus 4.8 的 fast mode 已于 10 月 30 日弃用,11 月 30 日彻底移除,之后带 speed: "fast" 的请求会直接报错,不会静默回退到普通模式。还在用的,现在就该迁到 Opus 5.5。想验证自己踩没踩坑,把子智能体档位打印出来看一眼,比读发布说明快。