跳到主内容

Claude Code v2.1.319:auto 模式不再降级到本地分类器,四处权限绕过同版修掉

Claude Code v2.1.319 于 2026-11-06 发布:关遥测或走 LLM 网关时,auto 模式不再回退本地分类器,查不了的调用改为询问或拒绝;同版修掉 Bash 环境变量前缀等四处权限绕过。

2026-11-07 · Claude Code 官方 Release Notes(GitHub Releases API 逐 tag 一手核对,2026-11-07)

发布 2026-11-07核实 2026-11-07

要点速览

  • v2.1.319(tag 时间戳 2026-11-06T17:04:01Z,prerelease: false)已转正为 stable,接替 11-04 的 v2.1.318,生产请改钉 v2.1.319。
  • 本版头号:auto 模式的「无兜底」语义。 官方原文:"Changed auto mode with telemetry or feature flags off, including behind LLM gateways: calls the server can't check are asked about or denied, with no fallback to the built-in classifier; set CLAUDE_CODE_AUTO_MODE_SERVER=0 to keep using it (Bedrock, Vertex and Foundry are unchanged)."
    • 含义:关遥测、关特性开关、走 LLM 网关这三种部署下,服务端核验不了的调用今后一律「询问或拒绝」,不再偷偷降级到本地内置分类器。 要回退旧行为,显式设 CLAUDE_CODE_AUTO_MODE_SERVER=0。
    • Bedrock / Vertex / Foundry 三家托管不变。
  • 反向开关同版补上:网关部署下 CLAUDE_CODE_AUTO_MODE_SERVER=1 即便设了 CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS 也会打开服务端检查;如果你用 managed settings 设了后者,必须同时把前者设成 1,否则两者语义打架。
  • 🆕 新增 permissions.denyInsteadOfPrompting:本该等在权限提示上的工具调用直接被拒、但该轮继续,覆盖终端会话、子代理与 teammate。
  • 四处权限绕过在同一版修完(见下节),其中 Bash 环境变量前缀绕过与 worktree 沙箱逃逸属安全面,优先级高于功能变更。
  • claude -p 又补一处假成功:auto 模式下因「拿不到安全检查」而被拒时,此前退出码 0,现在文本与 JSON 输出都改为退出 1。这是本站记录的同一条演进线(v2.1.317 磁盘满/配额耗尽、v2.1.318 非法 JSON)第三次延伸。
  • MCP 工具调用改为后台任务:MCP server 把工具调用当任务跑时,Claude Code 立刻把它移到后台,完成后告知模型;CLAUDE_CODE_DISABLE_MCP_TASK_BACKGROUND=1 可改回「在工具调用内等待」。
  • /context 不再每轮把整个可视网格发给模型:此后模型只读那张表,长会话的后续轮上下文成本会下降。
  • 网关侧补齐预算归属:admin.pooled_conflict_rule 与 admin.pooled_priority_order 用于指定「一个开发者在多个组时,哪个组的 pooled 预算先扣」。

四处权限绕过,官方都写在 Fixes 里

#官方原文要点实际含义
①"Fixed a Bash permission bypass where a crafted environment prefix could hide part of a command from permission checks"在命令前拼一段构造过的环境变量前缀,就能让权限检查只看到命令的一部分。 只要 deny / ask 规则是按命令文本匹配的,这类绕过就成立
②"Fixed a case where a sed command could skip the permission check in accept-edits and auto mode"accept-edits 与 auto 模式下,sed 曾可绕过权限检查——这两个模式恰恰是「最放宽」的两档
③"Fixed a sandbox escape when creating a worktree"创建 worktree 时存在沙箱逃逸。用 --worktree 或 worktree 隔离做安全边界的部署必须复测
④"Fixed a case where /rewind could restore or delete a file through a directory symlink"/rewind 可经目录符号链接越界恢复或删除文件。有 symlink 目录结构的仓库风险更高

另有一条同类修复:"Fixed a case where Bash deny and ask rules missed commands written with quoted words" —— 带引号的词会让 deny / ask 规则匹配失败。四条修复指向同一个结论:权限规则是按文本匹配的,而 shell 允许同一件事有很多种写法。

其他值得读的变更

无人值守与权限面

  • permissions.denyInsteadOfPrompting 生效后,「会卡住的调用」变成「被拒的调用」——任务不会停,但会少做一步。
  • 自托管 runner:--trust-workspace false 现在连仓库 settings 文件与 skills 里的 hooks 一起停掉(此前只停一部分)。
  • Changed a session's exact Bash or PowerShell ask rule to be refused, not asked about, when a broader deny rule covers the command —— 更宽的 deny 覆盖时,精确的 ask 规则直接失效,不再弹提示。
  • Changed the Bash tool to ask for permission before running 'which' with flags outside a lookup/display set —— which 带非常规参数开始要授权。
  • Changed PostToolUse hooks to run, with up to 10 seconds to finish, on tool calls that finish after a new message interrupts the turn —— 打断之后才完成的工具调用,hooks 仍会跑,且最多给 10 秒。

上下文与成本

  • /context 表格瘦身:每张列表只留最大的 10 行,按需加载的 MCP 工具在调用前按 server 合并为一行。
  • CLAUDE_CODE_DISABLE_FEATURE_FLAGS:停止拉取特性开关但不关遥测,每个开关改用内置默认值。
  • /usage 对「走 Claude apps 网关、没有花费上限」的开发者新增今日 / 本周 / 本月花费。

技能与目录

  • Changed nested skill loading: with the Bash sandbox on, skills in '.claude/skills' folders below the starting folder load only if you start Claude Code there or '/cd' there —— Bash 沙箱开启时,起始目录以下的嵌套 skills 默认不加载,除非你就在那里启动或 /cd 过去。
  • Changed '--add-dir' directories to register plugin marketplaces only once that directory's own trust dialog has been accepted —— 新增目录里的插件市场要等该目录的信任对话框被接受后才注册。

循环与网关

  • 自定节奏的 /loop 在一轮结束且未重新排期时直接结束,不再排一个兜底唤醒;CLAUDE_CODE_LOOP_KEEPALIVE=1 保留旧行为。
  • 网关新增 login_notice(登录页与浏览器验证页显示运维自定义文案)、CLAUDE_GATEWAY_LOG_FORMAT=json(运维日志转 JSON,含 severity / time / message)。
  • 启动告警新增一条时间线:对「没有 desktopHome 却依赖 coworkTabEnabled: false 或 chatSessionRetentionDays」的策略提前告警,原因是 Claude Desktop 将在 11 月 10 日变更——本站记录该日期,具体变更内容官方本条未展开。

AI 之家 观点

一、「没有兜底」才是这个版本真正的语义。 过去 auto 模式的隐含承诺是「服务端管不了的时候,本地分类器兜一层」;本版把这句话改成了「服务端管不了的时候,问你或者拒绝」。这不是收紧权限,是把「能力降级」明确成「行为降级」——用户在网关部署下会感到 auto 模式变笨了,但那正是设计意图。对照 v2.1.295 的 hook fail-closed,这是本站记录的第三次「fail-closed 化」,方向高度一致:宁可停下来,也不静默降级。

二、denyInsteadOfPrompting 是把「卡住」换成「跳过」,不是变安全。 无人值守流水线最怕的从来不是被拒绝,而是被拒绝之后没人知道。这个设置确实让长任务不再挂在一个没人点的对话框上,但代价是模型少做一步、任务照常「成功」结束。开它之前请先想清楚:你要的是一份能跑完的报告,还是一份跑完但可能缺项的报告。建议只对「缺项可接受」的任务开,且要求模型显式汇报被拒的动作。

三、四条权限绕过同版修完,说明「规则按文本匹配」这件事本身是结构性弱点。 环境变量前缀、引号写法、sed、符号链接——四次都不是逻辑漏洞,而是**「同一个操作有很多种写法,而检查只认其中几种」**。任何在 CI 里用 Bash 跑自动化、靠 deny 规则做边界的人,都应该把这条当成长期假设:规则能拦住的只是它认得的那种写法。 真正需要边界的地方,用沙箱(且本版刚修了 worktree 逃逸)与最小权限账号,而不是靠一串字符串规则。

四、两条「看着是优化、实际是行为变更」的条目别漏:/context 不再发整个网格,省钱但模型对上下文的感知会变;Bash 沙箱下嵌套 skills 默认不加载,依赖深层 .claude/skills 的仓库升级后会发现技能「消失」。这两条都不在 Breaking Changes 里。

五、给使用者四条动作:① 生产改钉 v2.1.319;② 走网关的,先决定 CLAUDE_CODE_AUTO_MODE_SERVER 取 0 还是 1,并检查 managed settings 里有没有 DISABLE_EXPERIMENTAL_BETAS 与之冲突;③ 用 --worktree 或 symlink 目录的,复测沙箱与 /rewind;④ 依赖深层 .claude/skills 的,升级后确认技能仍加载。

待核实

  • permissions.denyInsteadOfPrompting 开启后被拒动作是否留下可读日志——官方只说「该轮继续」,未说明可观测性。
  • CLAUDE_CODE_AUTO_MODE_SERVER 在同时被 managed settings 与进程环境设置时的优先级——本版修了一个「只在 managed settings 里设 URL 时被忽略」的边角,未给出通用优先级规则。
  • Claude Desktop 11 月 10 日变更的具体内容——官方只在新版启动告警里提及,正文未展开。
  • MCP tasks 后台化后,任务失败如何回传给模型——官方只写「完成时告知结果」。
  • v2.1.319 的 npm stable 通道是否已同步——本站本轮未核对 npm dist-tags(v2.1.318 发布时曾出现 stable 落后于 latest 的情况),建议安装前自查 npm view @anthropic-ai/claude-code dist-tags。

来源

延伸阅读:Claude Code 工具卡、hook fail-closed 那一次、Agent 沙箱百科、上下文压缩百科。

常见问题

升级到 v2.1.319 后 auto 模式会不会突然频繁要权限?

如果你关掉了遥测或特性开关、或走的是 LLM 网关,会。本版起服务端无法核验的调用不再回退到内置分类器,而是直接问你或拒绝。想保留旧行为,设 CLAUDE_CODE_AUTO_MODE_SERVER=0。Bedrock / Vertex / Foundry 三种托管不受影响。

denyInsteadOfPrompting 和原来的 deny 规则有什么区别?

原来的 deny 是按命令匹配拦死某个操作;denyInsteadOfPrompting 是按「这一轮会不会卡在权限提示上」判断——会卡的直接拒绝,但该轮继续往下走,不会整体停住。终端会话、子代理、teammate 都适用。

这次修了哪些安全漏洞?

官方 Fixes 里能明确读出的有四处:① Bash 权限检查可被精心构造的环境变量前缀绕过;② sed 在 accept-edits 与 auto 模式下可跳过权限检查;③ 创建 worktree 时存在沙箱逃逸;④ /rewind 可经由目录符号链接恢复或删除文件。

相关对比

Aider vs Claude Code:终端 AI 编程双雄怎么选

Aider vs Claude Code 2026 选型对比:开源 BYOK 多模型 vs Anthropic 订阅长任务 Agent,从编程能力、多模型支持、价格、Git 集成、国内可用性和适合人群判断,帮你选对终端 AI 编程工具。

Claude Code vs Cline:CLI AI Agent 怎么选?2026 对比

Claude Code vs Cline 2026 选型对比:Anthropic 官方闭源 CLI Agent vs Apache-2.0 开源 VS Code 插件。从模型绑定、工作流、MCP 支持、价格、隐私和适合人群 6 个维度帮你选对 CLI AI 编程工具。

Claude Code vs Codex CLI:终端 AI Agent 双雄对比

Claude Code vs Codex CLI 2026 选型对比:Anthropic 与 OpenAI 两大官方终端 Agent 的模型、长任务、MCP 生态、Windows 支持、订阅打包价格和国内可用性全方位对比,帮你判断该用哪个终端 AI Agent,以及能不能两个一起用。

Claude Code vs Crush:Anthropic 官方 vs 多模型 TUI(2026 实测选型)

Claude Code vs Crush 怎么选:Anthropic 官方 CLI(长任务最稳),对上 Charmbracelet 开源 TUI(多模型切换 + LSP)。按模型、长任务、价格对比。

Cursor vs Claude Code:什么时候用哪个?(2026 实测选型)

Cursor 和 Claude Code 到底怎么选?一句话结论 + 决策树 + 价格实测 + 国内可用性对比。GUI 派选 Cursor,终端长任务派选 Claude Code,最优解其实是共存。

Devin vs Claude Code:AI 编程 Agent 怎么选?异步自主 vs 终端同步对比

Devin vs Claude Code 2026 选型对比:Cognition 异步自主 Cloud Agent vs Anthropic 终端同步 CLI Agent,从形态、工作模式、长任务能力、并发、价格、中文支持和适合人群 8 个维度判断,帮你选对 AI 编程 Agent。

相关评测