8月14日起,Claude Code Pro/Max/Team 计划新会话默认切换为 Auto 模式,大部分操作无需手动审批。推送 main 分支默认允许,需注意安全边界已改变。
从今天开始——2026 年 8 月 14 日——Auto 模式将成为 Pro、Max 和 Team 计划中新 Claude Code 会话的默认权限模式。如果你从未触碰过权限设置,下一次会话启动时会弹出一个一次性切换提示,之后 Claude 的大多数操作都不会再询问你。
这是一个实实在在的行为变化,而非 UI 调整。本文会详细介绍分类器实际批准了什么、多数人觉得意外的默认行为(允许推送到 main)、如何在你想要的地方保留人工检查点,以及如何切换回原来的模式。以下内容均来自截至今日的官方文档。
权限模式文档明确陈述了这一变更:自 2026 年 8 月 14 日起,Pro、Max 和 Team 计划的新会话以 Auto 模式启动。你仍然可以随时切换模式,你自己设置的现有默认值只有在你接受一次性切换提示时才会改变,而组织管理的默认值完全不受影响。
有三个细节值得单独拎出来说:
仅影响新会话,且仅限 Pro、Max 和 Team。 你自己设置的 defaultMode 会保留。如果你的设置中已有 "defaultMode": "plan"(或其他任何值),除非你接受了切换提示,否则不会有任何变化。组织层面管理的默认值不受触动。 如果你的管理员通过托管设置分发了某种模式,今天的变更对你毫无影响。
Auto 模式不是"跳过权限"。它会将操作路由到一个独立的分类器模型,由该模型在每次操作执行前进行审查。分类器会阻止任何超出你请求范围的操作、针对无法识别为你所有的基础设施的操作,或由 Claude 读取到的恶意内容驱动的操作(prompt 注入)。
在分类器被调用之前,仍有两层规则在运行:
permissions.deny 规则直接阻止操作。分类器和你自己声明的意图都无法覆盖它。permissions.ask 规则强制弹出提示。显式的 ask 规则代表你明确要求被询问,因此分类器无法自动批准匹配的操作。
所以 Auto 模式改变的是未列入名单的操作的默认行为,而非你显式设置的规则。
推送和 PR 默认是被允许的。 Auto 模式允许推送到你所在仓库的任何分支——包括默认分支——以及创建 Pull Request。(在 v2.1.211 之前,分类器仅允许你的工作分支、Claude 创建的分支以及常规推送到默认分支;当下的默认行为范围更广。)
其中仍有防护措施:名称表明是部署目标的分支(production、release、gh-pages)会按其自身语境被评判,包括作为生产部署。强制推送、提交中包含 secret 以及历史重写仍会被软阻止。
软阻止可以通过明确意图解除。 分类器会区分"清理仓库"(不会授权强制推送)和"强制推送这个分支"(会)。一般性请求不算明确意图;必须指明具体操作。
狭窄的允许规则会完全绕过分类器。 类似 Bash(npm test) 的规则会带入 Auto 模式并在分类器之前解析——只有像 Bash(*) 这样的宽泛规则会被挂起。因此,带有破坏性参数的窄前缀规则可能悄无声息地通过。如果你希望每个 shell 命令都被分类,可以设置:
{
"autoMode": {
"classifyAllShell": true
}
}
(需要 v2.1.193+。它以延迟换覆盖范围。)
如果你喜欢 Auto 模式但唯独不想要推送和 PR,可以添加作用域限定的 ask 规则——它们在分类器之前被评估,并且总是会提示:
{
"permissions": {
"ask": [
"Bash(git push *)",
"Bash(gh pr create *)"
]
}
}
对于绝对不能跨越的边界,请使用 permissions.deny(团队场景下最好放在托管设置中)。在对话中声明边界("在我审核之前不要推送")也有效——分类器会读取它——但当上下文压缩移除该消息时它可能丢失。任何持久化的内容,请使用 ask 或 deny 规则。
按会话切换: 按 Shift+Tab 循环切换模式,或通过 claude --permission-mode manual 启动。
设为持久默认值, 在 ~/.claude/settings.json 中设置:
{
"permissions": {
"defaultMode": "manual"
}
}
manual 是 default(v2.1.200+;两者均可)的别名。有一个放置陷阱:"defaultMode": "auto" 如果来自仓库的 .claude/settings.json 或 .claude/settings.local.json 会被忽略——自 v2.1.142 起,仓库不能给自己授予 Auto 模式。你自己的 opt-in 或 opt-out 应放在用户设置中。(如果你不确定哪个设置文件优先级更高,我写过完整的优先级顺序说明。)
组织管理员可以通过在托管设置中将 permissions.disableAutoMode 设为 "disable" 来为所有人禁用 Auto 模式。
Auto 模式的拒绝操作会被记录:打开 /permissions 并查看 Recently denied 标签页。在拒绝条目上按 r 可以让 Claude 重试。反复被拒绝到同一目标通常意味着分类器不知道那个基础设施是你的——在用户或托管设置的 autoMode.environment 中声明它,然后通过以下命令验证:
claude auto-mode config
claude auto-mode defaults 打印内置规则列表,claude auto-mode critique 审查你编写的自定义规则。配置参考中有一个警告:如果你设置了 environment、allow、soft_deny 或 hard_deny 而没有包含字面量 "$defaults" 条目,你会替换掉该部分整个内置列表——包括 force-push 和 curl | bash 的软阻止。除非你打算完全自己管理整个列表,否则请在数组中保留 "$defaults"。
Auto 模式的分类器也改变了 Plan 模式:随着 Auto 模式可用,useAutoModeDuringPlan 设置默认开启,所以规划期间的 shell 命令由分类器审查而非弹出提示。如果你想要 Plan 模式阻止的确切语义以及批准一个计划后会切换到什么,可以参看昨天的帖子。如果你的 allow/ask/deny 匹配心智模型还很模糊,这篇会讲清楚规则语法。
文档本身给出的诚实表述是:Auto 模式减少提示,但不保证安全。在你信任其大方向的任务上使用它——并在你无论如何都希望看到的操作上设置 ask 规则。
我维护着 Rulestack——为 Claude Code、Cursor 和 Codex 准备的经过测试的规则包和技能,与此类变更保持同步。想要关注 AI 编程工具的每日更新日志,请在 Bluesky 上关注 @ai-shop.bsky.social。