Claude Code 计划模式怎么用:四种权限模式的区别
一句话答案:计划模式(Plan Mode)让 Claude 只读不写,先调查并给出方案,等你确认后才动手。它适合「先看思路再批准」的任务,与权限模式(manual / acceptEdits / auto)是两件独立的事。
很多新手把计划模式当成「更安全的自动模式」,其实不是。它解决的是「我怎么知道它要干什么」的问题,不是「它能不能执行命令」的问题。
计划模式是什么
结论:计划模式把「提出方案」和「实施」分开。Claude 先读代码、查文件、理解任务,然后给出一份方案,停在那里等你批准。批准后它才进入实施。
「只读」不等于「不能用工具」。计划模式下 Claude 仍能读文件、列目录、跑只读命令(比如 git status、ls、搜索),但它不会修改文件、不会执行有副作用的命令。这是与「完全不让碰」的区别。
四种权限模式的区别
权限模式决定实施阶段哪些动作需要你批准,与是否在计划模式无关:
| 模式 | 行为 | 适合什么 |
|---|---|---|
| plan | 只读规划,等待批准 | 先看方案再动手 |
| manual | 默认;改文件、跑命令前逐条问你 | 日常开发,想控制每一步 |
| acceptEdits | 自动接受文件修改;命令仍要批准 | 改代码但不想每条都点 |
| auto | 自动批准所有动作(有后台安全检查) | 长时间无人值守任务,需信任环境 |
manual 是默认模式。acceptEdits 只管文件修改,不管命令执行。auto 最省事但风险最高,仅在你确认环境安全、任务可回滚时用。
怎么进入和退出计划模式
三种方式:
- 会话中按
Shift+Tab:循环切换权限模式。从默认状态按第一下进acceptEdits,第二下进plan。 - 输入
/plan:直接进入计划模式。 - 启动时带参数:
claude --permission-mode plan。
退出同样用 Shift+Tab 循环到你想要的模式。注意「按两下」是从默认状态算起的,如果你已经在其它模式,要看当前选中的是哪个。
什么时候值得先规划
结论:任务范围需要确认、改动跨多个文件、或者你不确定它理解得对不对时,先规划。小改动、单文件、目标明确的任务直接做更快。
值得规划的场景:重构一个模块、给功能加测试、迁移配置、修一个你不熟悉的 bug。它会先把相关文件读一遍,列出「我打算改 A、B、C,原因是…」,你确认后再动手,避免它改了一半你才发现方向错了。
计划模式与模型的关系
/model 里的 opusplan 是用 Opus 做规划、其它工作用 Sonnet 的模型搭配,与计划权限模式不是一回事。一个是「用哪个模型想」,一个是「要不要先想再做」。两者可以独立组合。
计划模式省 token 吗
结论:可能省,但不要把「计划」当成省 token 的手段。它省的是「反复试错」的成本:先看方案不对就改方案,比改完代码再回滚便宜。但计划本身要读文件、要生成方案,也消耗 token。准确的表述是「减少不必要的搜索与修改轮次」,不是「计划模式更省」。
常见问题
Shift+Tab 按了几下没反应?
看终端底部状态栏当前显示的模式名称,循环切换时以它为准,不要死记「按两下」。
计划模式下它能跑命令吗?
能跑只读命令(读文件、列目录、查状态),不能跑有副作用的命令(写文件、安装、删除、提交)。
怎么让每次启动都进计划模式?
在 ~/.claude/settings.json 里设 "permissions": { "defaultMode": "plan" }。
opusplan 就是计划模式吗?
不是。opusplan 是「用 Opus 规划」的模型配置;计划模式是「先规划再实施」的权限模式。
相关阅读
- Claude Code 教程:从安装到第一次会话:安装、
/init、跑测试的完整流程 - Claude Code 报错 prompt too long 怎么处理:上下文满了怎么释放
- 模型与切换:常用 model ID 与
/model指令 - 常见问题:限速与公平使用