# Claude Code 计划模式：怎样让它先出计划再动手

> Claude Code 计划模式让 Claude 先研究你的代码、写出计划，在你批准之前不改任何文件。按 Shift+Tab 直到状态栏显示 plan mode on，或者输入 /plan 加一个任务，也可以用 `claude --permission-mode plan` 启动。计划写好后，你可以用自动模式批准，或者逐条审核每处修改，也可以让 Claude 继续改计划。

Mindket 编辑部 · 发布于 2026-11-04 · 更新于 2026-11-05 · https://mindket.com/cn/learn/claude-code/claude-code-plan-mode

## 要点

- 计划模式会读文件、运行 shell 命令来摸清情况，写出计划，在你批准计划之前一直挡住修改。
- 三种进入方式：`Shift+Tab`，带可选任务的 `/plan`，或者 `claude --permission-mode plan`。
- 用 `Ctrl+G` 可以在自己的文本编辑器里打开计划，在 Claude 动手之前改一改。
- 计划模式是六种权限模式之一，从自动模式按第一次 `Shift+Tab` 会落在手动模式，不是计划模式。

## 开始之前

你需要装好 Claude Code，并在终端里打开一个项目文件夹，这两样第 1 课里都讲过。[Anthropic 的常用工作流页面](https://code.claude.com/docs/en/common-workflows)建议，想在改动落盘之前先过目的修改，就用计划模式，所以选一个会动到不止一个文件的任务。

先运行 `claude --version`。[Anthropic 的权限模式页面](https://code.claude.com/docs/en/permission-modes)说，Claude Code v2.1.283 或更新版本里，新的交互式终端会话和 VS Code 会话默认从自动模式开始，在这个模式下由一个分类器模型替你审查操作。起点不同，到计划模式要按几次 `Shift+Tab` 也就不同。

## 先要计划，再让它改文件

计划模式是一种权限模式。你可以在会话里用 `Shift+Tab` 打开它，在提示符上用 `/plan`，或者在启动时加参数。下面的代码展示后两种，步骤里三种都讲到了。

````bash
# Start a session in plan mode
claude --permission-mode plan

# Inside a running session, plan one task
/plan fix the auth bug
````

1. 在项目里打开终端，运行 `claude`。提示符下面的状态栏会写出当前模式，比如 `⏵⏵ auto mode on` 或 `⏸ manual mode on`。
2. 进入计划模式。按 `Shift+Tab` 直到状态栏显示 `⏸ plan mode on`，或者输入 `/plan` 再跟一个任务。在 Windows 上，如果 `Shift+Tab` 没反应，Anthropic 列出的替代键是 `Alt+M`。
3. 描述任务。写清症状、该去哪个文件夹找，以及做到什么算完成。Claude 会翻看你的文件、运行 shell 命令，然后写出计划，不会改你的源码。
4. 读计划。哪一步不对，就选“No, keep planning”，告诉 Claude 要改什么。想自己动手改，按 `Ctrl+G`，计划会在你默认的文本编辑器里打开。
5. 计划没问题就批准。选“Yes, manually approve edits”可以逐条审核每处修改，选“Yes, and use auto mode”就让 Claude 接着干。批准之后会退出计划模式，Claude 开始修改。

## 从计划到第一次修改，中间发生了什么

Claude 负责研究，你负责拍板。Anthropic 的页面说，计划模式让 Claude 研究并提出修改建议但不动手，在你批准计划之前，修改一直被挡住。

计划阶段的 shell 命令取决于会话类型。自动模式可用，并且 `useAutoModeDuringPlan` 设置开着（默认就是开的）时，由分类器审查这些命令，不再问你。没有自动模式时，内置只读命令之外的任何命令，都会弹出提示等你批准。

有一种会话完全不挡修改。在带有绕过权限选项的交互式终端会话里，Claude 仍然被要求只做计划不改文件，但它尝试的修改会直接执行，不再提示。在 `claude -p` 运行和 VS Code 聊天面板里，计划模式的拦截依然有效。

**从 /plan 到第一次修改**

1. 你进入计划模式。`Shift+Tab`、`/plan` 或者 `--permission-mode plan` 参数。
2. Claude 开始研究。它打开需要的文件，运行 shell 命令，修改仍被挡住。
3. Claude 给出计划。它会问接下来怎么办。你可以先按 `Ctrl+G` 改计划。
4. 你来选择。用自动模式批准，批准并逐条审核修改，或者继续改计划。
5. 批准就是退出计划模式。Claude 切到你所选项对应的模式，然后开始修改。

## 六种权限模式里的计划模式

按[页面](https://code.claude.com/docs/en/permission-modes)记录的终端循环顺序：从自动模式出发，第一次 `Shift+Tab` 切到手动模式，再按就依次经过接受修改模式和计划模式。所以会话以自动模式起步时，计划模式要按三次。用 `/plan` 就不用数了。

不是每种模式都在这个循环里。自动模式可用时才出现，`bypassPermissions` 只有用相应参数或设置启动后才出现，`dontAsk` 永远不会出现，要用 `--permission-mode dontAsk` 来设置。

其他界面也有计划模式。在 VS Code 里点模式指示器选 Plan。桌面应用在输入框下方有模式选择器，在那里选 Plan 只对当前会话生效。在 [claude.ai/code](https://claude.ai/code) 上，下拉菜单提供 Accept edits、Plan 和 Auto。

| 模式 | 不用询问就能执行的操作 | 适合场景 |
| --- | --- | --- |
| `default`，界面里叫 Manual | 只读操作 | 亲自审核每个操作，敏感工作 |
| `acceptEdits` | 读取、文件修改，以及 `mkdir`、`touch`、`mv`、`cp` 这类常见文件系统命令 | 边改边审查代码 |
| `plan` | 读取，自动模式可用时再加上分类器批准的命令 | 修改之前先摸清代码库 |
| `auto` | 所有操作，后台做安全检查 | 长任务，减少频繁的确认提示 |
| `dontAsk` | 工作目录内的文件读取和预先批准的工具，会触发提示的操作一律拒绝 | 锁定的 CI 和脚本 |
| `bypassPermissions` | 所有操作 | 只用于隔离的容器和虚拟机 |

## Claude Code 的作者和他的团队怎么用计划模式

Boris Cherny 在 Anthropic 做出了 Claude Code。他 2026 年 1 月[在 X 上发的配置串](https://x.com/bcherny/status/2007179845336527000)里说，他的大多数会话都从计划模式开始。目标是一个拉取请求时，他会和 Claude 来回讨论，直到满意这份计划，再让它动手，通常一次就改对。他当时写的进入方式是“shift+tab 按两次”。现在会话默认从自动模式开始，要按三次，或者直接用 `/plan`。

同月月底，他[分享了团队自己的技巧](https://x.com/bcherny/status/2017742745365057733)。一位工程师先让一个 Claude 写计划，再开第二个 Claude，以资深工程师的眼光审查它。另一位在任务一走偏就切回计划模式重新规划，不硬着头皮往下推。这两招用的都是上面步骤里的“No, keep planning”，而且是在任何修改落地之前。

到 2026 年 5 月，他的[头号技巧](https://x.com/bcherny/status/2058519809214607704)成了自动模式：不再有权限提示，他可以同时开好几个会话并行。这就是计划结束时的“Yes, and use auto mode”。信得过计划时选它，还想逐条看修改时，选手动批准那一项。

> 如果我的目标是写一个拉取请求，我会用计划模式，和 Claude 来回讨论，直到我满意它的计划。
>
> Boris Cherny, Claude Code 的作者，Anthropic，引文为译文, [X](https://x.com/bcherny/status/2007179845336527000) (2026-11-05 查阅)

[![Boris Cherny（@bcherny）2026 年 1 月 2 日在 X 上的配置串第 6 条：大多数会话都从计划模式开始（shift+tab 按两次）。如果我的目标是写一个拉取请求，我会用计划模式，和 Claude 来回讨论，直到我满意它的计划。](https://mindket.com/blog/shots/x-bcherny-plan-mode-tip.webp?v=f84fd882034a)](https://x.com/bcherny/status/2007179845336527000)

Boris Cherny 在 X 上，2026 年 1 月 2 日

[![Boris Cherny（@bcherny）2026 年 1 月 31 日在 X 上分享的 Claude Code 团队技巧第 2 条：复杂任务都从计划模式开始。有人先让一个 Claude 写计划，再开第二个 Claude 以资深工程师的身份审查它。](https://mindket.com/blog/shots/x-bcherny-team-plan-tips.webp?v=9903ac10da8b)](https://x.com/bcherny/status/2017742745365057733)

Boris Cherny 在 X 上，2026 年 1 月 31 日

> X 官方嵌入卡片的截图，拍摄于 2026 年 11 月 5 日，时间为 UTC。X 在第二条帖子处用“Show more”截断了后面的内容。点击截图可到 X 上打开原帖。

## 常见错误

- 只按一次 `Shift+Tab` 就输入任务。从自动模式出发，它落在手动模式，不是计划模式。看状态栏有没有 `⏸ plan mode on`，或者直接输入 `/plan`。
- 批准时不看就点。第一个批准选项会让 Claude 在自动模式下开始工作。想看到每一处修改，就选“Yes, manually approve edits”。自动模式不可用时，第一个选项会写成“Yes, auto-accept edits”。
- 拿含糊的提示去做计划。“fix the login bug”让 Claude 没什么可依据的。Anthropic 改写后的提示，还要求在修复之前先写一个能复现这个错误的失败测试。
- 把计划模式设在扩展不看的地方。项目的 `.claude/settings.json` 可以把 `defaultMode` 设成 `plan`，但 VS Code 扩展从不读项目设置来决定起始模式。要在 VS Code 的用户设置里改 `claudeCode.initialPermissionMode`。
- 相信带绕过权限选项的会话里的计划模式。那里不强制执行拦截，真想要硬性的停顿，就用普通的手动模式。

## 动手试试

- 在一个项目里运行 `claude --permission-mode plan`，让它为某个表单或函数加输入校验出一份计划。检查状态栏是不是 `⏸ plan mode on`，并且 `git status` 里仍然没有被改动的文件。
- 按 `Ctrl+G`，在编辑器里改一步，保存，再回到会话。
- 选“No, keep planning”，说明要改什么，然后用“Yes, manually approve edits”批准，并逐条看每处修改。
- 在普通会话里反复按 `Shift+Tab`，把经过的每种模式在状态栏上的文字记下来。

## 下一课：斜杠命令

现在你能让 Claude 在碰代码之前先想一想了。[第 3 课](https://mindket.com/cn/learn/claude-code/claude-code-slash-commands)讲斜杠命令，包括 `/plan`，以及怎样写你自己的命令。

计划模式背后有个帮手：Plan 是内置的子智能体之一，Mindket 讲子智能体的文章里有说明。计划好不好，还取决于 Claude 对项目已经知道多少，这正是 CLAUDE.md 文件的用处。

## 自测一下

1. 在终端里，哪条命令可以直接在计划模式下启动 Claude Code 会话？

   A. `claude --plan`
   B. `claude --permission-mode plan`
   C. `claude -p plan`
   D. `claude /plan`

   答案：B。 `--permission-mode plan` 参数让会话从计划模式开始，在运行中的会话里输入 `/plan` 也一样。

2. 计划里有一步不对，你想在 Claude 动手之前自己改计划，该怎么做？

   A. 选“Yes, and use auto mode”，以后再改
   B. 按 `Esc`，把整个任务重新输入一遍
   C. 运行 `/compact` 把计划缩短
   D. 按 `Ctrl+G`，在文本编辑器里打开计划

   答案：D。 `Ctrl+G` 会在你默认的文本编辑器里打开计划，保存之后回到会话即可。

3. 会话从自动模式起步，你按了一次 `Shift+Tab`，现在是什么模式？

   A. 手动模式
   B. 计划模式
   C. 接受修改模式

   答案：A。 从自动模式出发，第一次按键落在手动模式，计划模式要按三次，用 `/plan` 就不用数了。

4. Claude 给出计划后，你想在批准之后仍然逐条审核每处修改，该选哪一项？

   A. “Yes, and use auto mode”
   B. “No, keep planning”
   C. “Yes, manually approve edits”

   答案：C。 这一项批准计划，同时让你审核每处修改，而自动模式那一项会让 Claude 不再询问地接着干。

## 常见问题

### 怎样不批准计划就离开计划模式？

继续按 Shift+Tab。每按一次就切到循环里的下一种模式，状态栏会显示它的名字。选“No, keep planning”则相反，会留在计划模式里。以后想重新做计划，循环回来，或者在下一条提示前面加 /plan。

### /plan 命令是做什么的？

单独输入 `/plan`，只是把你切进计划模式。后面加一段描述，比如 `/plan fix the auth bug`，Claude 还会马上开始处理这个任务。[命令参考](https://code.claude.com/docs/en/commands)把它和其他命令列在一起。

### 计划模式和自动模式是一回事吗？

不是。计划模式负责研究和提出建议，自动模式在执行操作的同时，由另一个分类器模型审查每个操作。两者有两处交集：批准计划可以让会话以自动模式继续，而在计划模式下，自动模式可用时也由这个分类器审查 shell 命令。

### 怎样让项目里每次会话都从计划模式开始？

把 `{ "permissions": { "defaultMode": "plan" } }` 写进项目的 `.claude/settings.json`。之后你在这个项目里打开的每个终端会话，都从计划模式开始。VS Code 有它自己的设置，上面的常见错误里写了。

### 做计划能用比改代码更强的模型吗？

可以，用 `opusplan` 这个别名。它在计划模式用 Opus，执行时切到 Sonnet。在 `/model` 里选它，或者用 `claude --model opusplan` 启动。想让两个阶段都用 1M 上下文窗口，就设成 `opusplan[1m]`，用 `/model` 设置它需要 Claude Code v2.1.265 或更新版本。

### 为什么在 Windows 上按 Shift+Tab 没反应？

Anthropic 的页面把原因归到 Node 或 Bun 运行环境上。当运行环境没有启用 VT 输入模式时，Claude Code 用 Alt+M 代替 Shift+Tab 来循环切换权限模式。试试 Alt+M，同时看状态栏上的模式名。

## 资料来源

- [Claude Code docs: Choose a permission mode](https://code.claude.com/docs/en/permission-modes) (2026-11-04 查阅)
- [Claude Code docs: Commands](https://code.claude.com/docs/en/commands) (2026-11-04 查阅)
- [Claude Code docs: Interactive mode](https://code.claude.com/docs/en/interactive-mode) (2026-11-04 查阅)
- [Claude Code docs: Common workflows](https://code.claude.com/docs/en/common-workflows) (2026-11-04 查阅)
- [Claude Code docs: Model configuration](https://code.claude.com/docs/en/model-config) (2026-11-04 查阅)
- [Claude Code docs: Best practices](https://code.claude.com/docs/en/best-practices) (2026-11-04 查阅)
- [Boris Cherny on X: tip 6, plan mode, 2 January 2026](https://x.com/bcherny/status/2007179845336527000) (2026-11-05 查阅)
- [Boris Cherny on X: tips from the Claude Code team, 31 January 2026](https://x.com/bcherny/status/2017742745365057733) (2026-11-05 查阅)
- [Boris Cherny on X: use auto mode, 24 May 2026](https://x.com/bcherny/status/2058519809214607704) (2026-11-05 查阅)

[开始第 3 课](https://mindket.com/cn/learn/claude-code/claude-code-slash-commands)
