AI 编程与智能体

[Claude Code #2] /plan 模式:修改前先就设计达成一致

Claude Code 的计划模式(plan mode)要求先批准计划,再修改代码。本文整理如何通过 Shift+Tab·/plan 启用、3 种批准选项、使用 Ctrl+G 编辑计划,以及默认设置。

4 分钟阅读
[Claude Code #2] /plan 模式:修改前先就设计达成一致 封面图

把大型任务交给 AI 编程工具时,它有时会走偏。因为它还没等你确定方向,就开始修改文件了。

等修改扩散到十个文件后才发现“方向不对”,已经晚了。回滚的成本并不低。

Claude Code 的计划模式会反转这个顺序。先在它接触代码前查看计划,批准后才开始编辑。

如果你已经在Claude Code 第 1 篇中使用/init完成项目设置,本篇介绍如何安全开始大型修改。

计划模式的作用

在计划模式下,Claude 只会调查和提出建议。

官方权限模式文档的说明很清楚:读取文件、运行探索性 Shell 命令、编写计划,但不编辑源代码。

在用户批准计划之前,编辑会被阻止。无论 AI 说得多有说服力,它都无法动代码(启用 bypass permissions 的会话除外)。

三种启用方式

最快的方法是在会话中按 Shift+Tab。根据官方工作流文档,权限模式会按 default → acceptEdits → plan 的顺序循环。

如果只想应用于一次请求,请在提示词前加上/plan

/plan 将支付模块 Stripe替换为自定义实现

如果要从一开始就在计划模式下启动,请在终端中使用标志。

claude --permission-mode plan

如果不批准计划就退出,再次按 Shift+Tab 即可。

计划批准流程

Claude 完成计划后,会询问如何继续。共有三个选项。

一是批准并自动继续。之后它会继续执行,不再逐一询问编辑操作。

另一种是批准,但每次编辑都手动确认。对于敏感代码,这种方式更安全。

最后是继续规划。留在计划模式中,通过“把这部分改成这样”来完善计划。

展示 Claude Code 计划模式中调查、编写计划和批准流程的流程图
这就是计划模式的流程。后续编辑会根据批准方式而有所不同。

如果想直接修改计划,请按 Ctrl+G。建议的计划会在默认文本编辑器中打开,修改后即可继续。

批准后会退出计划模式,并切换到与你选择相符的权限模式。如果没有单独设置名称,批准时还会根据计划内容自动为会话命名。

规划期间调查仍会继续

计划模式并不意味着完全不能运行命令。

读取文件等只读命令会照常执行。其他 Shell 命令会请求批准;如果环境支持 auto mode,则由分类模型代为审核(默认设置)。

因此,“运行测试并制定计划”之类的请求,也可以在计划模式中经过一次批准后完成。

设为默认值

也可以按项目将计划模式设为默认值。在.claude/settings.json中加入一行即可。

{
  "permissions": {
    "defaultMode": "plan"
  }
}

这样,该项目的会话都会以计划模式启动,不会因误操作直接进入编辑。VS Code 扩展启动的会话则单独使用扩展设置(claudeCode.initialPermissionMode)。

什么时候适合使用

没必要在所有任务中使用计划模式。为修复错别字也要求计划,就有些过度了。

以下情况最能体现它的价值。

  • 涉及多个文件的重构或结构调整
  • 面对陌生代码库,想先确认处理方向时
  • 想先经过团队评审或自己检查,再决定如何修改时

相反,修改范围仅限一个文件的小修小补,使用默认模式就足够了。

人物和机器人在 AGREE THEN EDIT 字样与设计图前握手的插图
先握手,再修改

总结

计划模式把“先改了再说”变成“先达成一致,再修改”。

通过 Shift+Tab 或/plan前缀启用,检查并修改计划后批准,编辑才会开始。修改越大,花几分钟规划就越能显著降低回滚成本。

下一篇将介绍计划模式背后的完整权限系统,包括/permissions、权限模式循环,以及 allow、ask、deny 规则。

来源与确认标准

延伸阅读