claude code 怎么切回手动审批
新会话默认 auto 后如何切回 manual:Shift+Tab、启动参数与 settings.json,含三连 block 回落与组织 disable。

8 月 14 日起很多 Pro/Max/Team 新 session 默认 auto。claude code 怎么切回手动审批:会话内按 Shift+Tab 循环模式即可立刻回到 manual;要持久默认则写 ~/.claude/settings.json 或启动时加 claude --permission-mode manual。
当前 session 内立刻切回
Shift+Tab 在 auto、manual、plan 等模式间循环,改的是当前 session 的运行策略,不会自动写回磁盘。桌面端也可在模式下拉菜单选 manual。若你刚接受过一次「把默认改成 auto」的提示,仍可在本会话内切回 manual,只是下次新开 session 还会按磁盘上的 defaultMode 进来。
8 月 14 默认变更的背景见 claude code auto mode 默认改什么;本文只给操作路径。auto 被分类器连续拦三次,或单 session deny 满 20 次,产品也会自动 escalate 到 manual,这时 Shift+Tab 可能已在 manual,无需你再找设置项。
headless 跑 claude -p 时若触达 deny 上限且无 UI,进程可能直接退出;批处理脚本应预期这一回落,或在 managed settings 里为 CI 账户 pin manual。VS Code 扩展侧栏的模式下拉与 CLI 共用同一 permission state,在 IDE 里切 manual 与终端 Shift+Tab 效果相同。
plan mode 与 manual 不同:plan 先出方案再动文件,manual 是逐条 tool 批准。若你的目标是「每条 Bash 都弹窗」,选 manual 而不是 plan;plan 里 shell 在 auto 可用时仍可能走 classifier 而非传统 prompt,见文档 useAutoModeDuringPlan 默认行为。
启动参数固定 manual
单次任务可从命令行指定:
claude --permission-mode manual
适合 CI 包装脚本、或你明确希望「这一趟每条 Bash 都弹窗」。与 Claude Code CLI 基础 里其它启动 flag 可叠加;改的是 permission mode,不是模型或 plan 开关。
v2.1.200 起配置值 default 与 CLI 里的 manual 等价,文档两处写法互通。若脚本里仍写 default,行为同样是手动批准。wrapper 脚本可在检测到 CI=true 时自动 append --permission-mode manual,避免无人值守机器上 auto 推 git。
Remote Control 或 cloud handoff session 仍尊重启动时的 mode;从手机续到桌面不会 magically 改回 auto,除非 effective settings 里 default 就是 auto。多 pane 并行时每个 session 独立切 mode,Shift+Tab 只影响当前 pane。
settings.json 持久默认
用户级 ~/.claude/settings.json:
{
"permissions": {
"defaultMode": "manual"
}
}
保存后新 session 状态栏应显示 manual。注意:仓库 .claude/settings.json 不能把整仓默认设成 auto(v2.1.142+),但个人 user settings 里 pin manual 有效,且不会被 8 月 14 rollout 静默覆盖,除非你主动接受 switch prompt。
Team admin 在 managed settings 设 permissions.disableAutoMode: "disable" 可组织级关闭 auto,成员个人 settings 里的 auto 可能被策略压住。合规场景下 manual 默认常与 claude code auto mode 生产怎么用 里的「高 stakes 仍人工复核」并列,但组织 disable 是硬开关,不依赖个人自觉。
settings 优先级有多层:managed、user、project、local。不确定 effective 值时跑 claude config。若 switch prompt 曾把 user 改成 auto,手动改回 "defaultMode": "manual" 并拒绝后续 prompt 即可恢复旧习惯;managed 里若 admin 强制 auto,个人 manual 可能无效,需找 admin 改 policy。
分类器拦太多次时的自动回落
即使你想开 auto,产品也会在连续 3 次 deny 或单 session 累计 20 次 deny 后切到 manual。这是安全阀,不是 bug。/permissions 里 Recently denied 可看重放;按 r 可让 Claude 重试被拦动作。
若频繁误拦导致老回落 manual,可在 user 或 managed 的 autoMode.environment 里声明「哪些 infra 是你的」,再用 claude auto-mode config 核对。误拦机制与 tier 分流见 claude code auto mode 分类器怎么工作,本文不展开模型 pipeline。
回落后 session 不会自动跳回 auto;你要继续 auto 得再 Shift+Tab 切回去,或新开 session 吃 defaultMode。长 refactor 任务若在中途变 manual,常见原因是反复碰 soft-block(force push、未知 infra);修 environment 声明比关 auto 更对症。
只想部分动作仍要人点
切回 manual 是「全部 tool call 走批准 UI」。若你希望其余 auto、仅 push/PR 人工看,应保留 auto 并加 permissions.ask,例如 Bash(git push *);ask 规则在分类器之前,不会被 auto 静默放行。永久边界用 permissions.deny 写在 managed 更稳,聊天里口头「别 push」可能在 context 压缩后丢失。
classifyAllShell: true 是另一条路:仍开 auto,但每条 shell 都过 classifier,latency 换覆盖。与 full manual 相比,Read/Edit 仍可能不弹窗;要「只有 Bash 人工、其余 auto」通常用 ask 规则而不是 manual。
切回 manual 后,窄 allow 规则重新生效且 bypass classifier;若你曾因 auto 搁置了 Bash(*),回 manual 时要确认 repo 里是否仍留着过宽的 allow,避免从 auto 的安全默认滑到 manual 下的裸奔 allow。
组织 disable 与个人 pin 谁赢
managed disableAutoMode: "disable" 会压过个人 "defaultMode": "auto"。反方向:个人 pin manual 不能 override admin 强制 auto 的 managed policy。8 月 14 consumer rollout 不会改 managed,但 admin 若趁此窗口统一发 policy,成员可能以为「被 8 月 14 改了」其实是 admin 推送。
新入职成员若从未见过 Bash 批准 UI,manual pin 后第一次长 session 可能被点 Yes 点到烦,这是预期摩擦。培训材料里应展示 Shift+Tab 与 /permissions,并说明 auto 仍是产品默认方向,manual 是团队自选护栏。与 claude code 2.1.223 权限修复 同版本的审批 UI 在 manual 下仍应完整显示命令,升级后再训新人。
从 auto 切 manual 不会清空本会话已执行的操作;已 push 的 commit 不会回滚。若你在 auto 下发现 agent 行为越界,先 Shift+Tab 到 manual 再查 git status,必要时用 platform revert,而不是假设「切 manual 等于 undo」。Cloud session handoff 到本地时 permission mode 随 session 状态走,不因 handoff 自动变 auto。
Desktop 菜单与 CLI 的 mode 指示器应同步;若状态栏仍显示 auto 但 Bash 开始弹窗,可能已触达 deny 上限自动回落 manual,或 admin 刚推送 managed policy。此时不必再改 settings,先完成当前审批队列,再 claude config 核对 defaultMode 是否仍是你 pin 的值。
写进 CLAUDE.md 的「始终 manual」口头指令不能替代 settings;context 压缩后可能丢失。 durable 切回应靠 defaultMode 或 --permission-mode manual,与 Claude Code CLI 基础 里其它持久配置同一层级。