AIHub

Claude Code 默认进入 Auto Mode 之后:五档权限模式怎么选、settings.json 安全配置实战

进阶约 11 分钟读完2026-08-24#Claude Code#Auto Mode#权限管理#AI Agent#安全加固#开发者工具
Claude Code 默认进入 Auto Mode 之后:五档权限模式怎么选、settings.json 安全配置实战

2026 年 8 月 14 日,Anthropic 正式把 Claude Code 的 Auto Mode 设为 Pro、Max 和 Team 账号的默认权限模式(Enterprise 和 API 账号暂时保持手动开启)。变化很直接:以前 Claude 每改一个文件、每跑一条命令都要停下来问你,现在它更像一个「偶尔汇报的初级工程师」——接过任务就连贯地干下去,只有安全分类器判定为高风险的操作才会拦下来问你。

对天天用 Claude Code 的人来说,体感变化巨大:多步重构、批量改测试、跑脚本验证这一套流程终于不用守着按确认了。但「默认放手」是把双刃剑——你原来靠「每一步都看一眼」获得的安全感没了,得换成用配置画边界。这篇文章讲清楚三件事:五档权限模式到底差在哪、Auto Mode 下怎么用配置文件画红线、以及目前版本里一个已经坑到不少人的已知问题。

一、五档权限模式:先搞懂你在哪一档

在 Claude Code 输入框旁边按 Shift+Tab 可以循环切换权限模式。这个选择决定了 Claude 在「改文件」和「跑命令」之前要不要先问你:

模式 编辑文件 执行命令 适合场景
Ask(询问) 每次请示 每次请示 不熟悉的代码库、生产仓库
Accept Edits 自动通过 每次请示 纯写代码、不碰命令
Plan(计划) 只读,先出计划 只读 让 Claude 先想清楚再动手
Auto(新默认) 自动通过 分类器过滤后自动通过 日常开发主力档
Bypass Permissions 全部自动 全部自动 沙箱/容器/CI 里的长任务

Auto Mode 和 Bypass 的关键区别在安全分类器:Auto 模式下,Anthropic 的 classifier 会在命令执行前做一轮风险判定,rm -rf、改写系统目录、可疑的网络外传这类操作会被拦下转为询问;Bypass 则是真正的无人值守,什么都不拦。另外有一条硬性规则:.git 和 .claude 这类受保护路径,除 Bypass 外任何模式都不会自动放行,防止 Agent 自己改历史或改自己的配置。

二、默认切换后,先做一次「权限体检」

升级或新登录后,建议按这个清单过一遍:

  1. 确认当前模式:看输入框旁的模式指示,或按 Shift+Tab 循环到你想要的档位。不想被默认 Auto 的,切回 Ask 即可,这只是会话级设置。
  2. 检查项目级配置:看项目根目录的 .claude/settings.json 和 .claude/settings.local.json,确认里面没有历史遗留的 defaultMode 与你的预期冲突。
  3. 清点 allow 规则:以前攒下的 permissions.allow 白名单在 Auto 模式下依然生效,语义没变,但值得重新审视——Auto 时代白名单的「放行半径」实际变大了。
  4. 团队账号单独确认:Team 计划是管理员维度控制的,如果你所在团队的默认被管理员改过,以团队设置为准。

三、用 settings.json 给 Auto Mode 画红线

Auto Mode 的正确打开方式不是「全盘信任」,而是用 allow/deny 规则把高风险操作提前写死。配置写在 ~/.claude/settings.json(全局)或项目的 .claude/settings.json(项目级,可提交进 git 让全组共享):

{
  "permissions": {
    "defaultMode": "auto",
    "allow": [
      "Read(*)",
      "Edit(src/**)",
      "Bash(npm run test:*)",
      "Bash(npm run lint)",
      "Bash(git status)",
      "Bash(git diff:*)"
    ],
    "deny": [
      "Edit(.env*)",
      "Edit(**/secrets/**)",
      "Bash(rm -rf:*)",
      "Bash(git push:*)",
      "Bash(curl:*)",
      "Bash(npm publish:*)"
    ]
  }
}

几个要点:

  • deny 优先级最高,命中 deny 的操作在任何非 Bypass 模式下都会被拦。把「改密钥文件」「git push」「发版」这类不可逆操作写进 deny,是最划算的一招。
  • allow 规则支持命令前缀匹配,Bash(npm run test:*) 只放行测试脚本,不放行任意 npm 命令。宁可多写几条精确的,也不要图省事写 Bash(npm:*)。
  • 项目级 settings.json 提交进仓库后,新同事 clone 下来就自动继承同一套红线,这比在群里喊「大家小心用」有效得多。

四、沙箱与会话协作:这轮更新的另外两个变化

配合 Auto Mode 上线,Claude Code 近期还落地了两块能力,值得一起用上:

  • 文件访问沙箱规则:可以为 Claude 划定可读写目录范围,把 Agent 的活动半径限制在项目目录内,防止它「顺路」去读你 home 目录下的其他东西。和 deny 规则叠加使用,等于给 Auto Mode 上了双保险。
  • 跨会话消息(cross-session messaging):多个 Claude Code 会话之间可以传递状态,配合 Auto Mode 跑长任务时,你可以让一个会话干活、另一个会话监督进度,而不是全程盯着一个终端。

一个推荐的日常组合:Auto Mode + 项目级 deny 红线 + 沙箱目录限制 + 重要操作走 Plan 模式先审一遍。放手让 Agent 跑,但跑道是你修的。

五、注意事项与常见问题

1. 已知 bug:bypassPermissions 设置可能被忽略。 8 月 14 日切换后,有用户报告即使配置了 permissions.defaultMode: "bypassPermissions" 或用 claude --permission-mode bypassPermissions 显式启动,会话仍停留在 Auto 模式(GitHub issue #86478)。CI 流水线里依赖 Bypass 跑无人值守任务的,升级后先实测一次再放量,必要时先锁定旧版本。

2. Auto ≠ 安全。 安全分类器能拦下明显危险的命令,但它不是形式化验证。涉及数据库迁移、线上部署、支付相关代码的仓库,建议保持 Ask 或至少用 deny 把迁移和部署命令锁死。

3. 账单体感会变。 Agent 连续干活意味着 token 消耗速度变快,Auto Mode 下跑大任务前建议先用 /cost 或控制台确认预算,避免「放手半小时,账单吓一跳」。

4. 模式是会话级的。 切换模式不影响配置文件的 defaultMode,下次新会话会回到配置值。想长期改默认,改 settings.json,不要依赖每次手动 Shift+Tab。

小结

Auto Mode 默认化是 Claude Code 从「问答式助手」转向「自主 Agent」的标志性一步:Anthropic 赌的是分类器 + 配置边界足以替代人肉逐步确认。对用户的含义很清晰——省下来的确认时间,应该投资到把 allow/deny 规则和沙箱配置写好上。花二十分钟按本文第三节配好项目级红线,你就能既吃到 Auto Mode 的效率红利,又不把仓库的命门交给一个概率系统。

相关教程

Claude Code 默认进入 Auto Mode 之后:五档权限模式怎么选、settings.json 安全配置实战 | AIHub