定义
Plan Mode 是一种受限的工作模式:它允许你读取与分析代码,但不允许直接进行改动或执行。其核心目标是,在动手写代码之前,先将需求、影响范围、操作步骤和验证方式都梳理清楚、达成一致。
下表清晰地展示了 Plan Mode 下允许和禁止的操作:
| 动作 |
Plan Mode |
| 读文件/探索代码库 |
✅ |
| 分析代码 |
✅ |
| 编辑文件 |
❌ |
| 运行命令/测试 |
❌ |
适用场景
在哪些情况下你应该启用 Plan Mode 呢?它特别适合以下几种场景:
- 新接手一个陌生仓库,对目录结构和代码逻辑还不熟悉。
- 需求边界模糊不清,需要进一步澄清和明确具体要做的事情。
- 影响面较大的任务,例如代码重构、技术栈迁移或涉及多个模块的改动。
- 风险敏感的操作,比如涉及数据一致性、兼容性保证或需要制定详细回滚策略的任务。
Skill 卡片(可复用流程)
你可以将以下流程视为一个可复用的“技能卡片”,在需要时直接套用。
- 输入:需求描述、约束条件、相关的模块范围。
- 输出:一份可执行的计划,包含步骤、文件清单、风险点、验证方式以及待解决的问题。
执行步骤:
- 确认目标与范围:明确要做什么,更重要的是,明确“不做什么”。
- 在 Plan Mode 下阅读:仔细阅读关键的文件与脚本入口,了解上下文。
- 形成计划:列出具体的改动点、实施步骤、潜在风险以及验证方案。
- 列出未决问题:将所有边界不清或存疑的问题列出来,在进入执行阶段前必须将它们解决或达成共识。

Plan Prompt 模板(团队可直接用)
为了便于在团队中推广,你可以直接使用以下提示词模板来发起一个 Plan Mode 任务:
请进入 Plan Mode,为下面任务输出执行计划(不要写代码):
- 目标:
- 不做什么:
- 约束(兼容性/风险/时间):
要求:
1) 先列出需要阅读/检查的文件与脚本入口(只列清单)
2) 给出计划:步骤、涉及文件、关键改动点、风险与回滚
3) 列出未决问题(边界/异常/验收口径)
4) 最后输出一个编号步骤列表(便于执行)
放进 AGENTS.md 的三条规则
如果你在定义团队协作的代理人(Agent)规范,可以将以下三条关于 Plan Mode 的核心规则写入 AGENTS.md 文件中:
## Plan Mode
- Plans must be concise; use short bullets.
- End plans with unresolved questions (edge cases, error handling, unclear requirements).
- End every plan with a numbered execution list.
常见问题与修正
在实践中,我们可能会遇到一些偏差。以下是一些常见问题及其修正建议:
- 计划写成了长篇文章:应改为简短的句子和列表形式,并在末尾附上编号的步骤列表。
- 规划与执行混在一起:牢记 Plan Mode 只负责“读、分析、计划”,不进行任何代码修改。
- 没读关键文件就开始写计划:务必先补全代码上下文,再制定计划,这是计算机基础中逻辑严谨性的体现。
- 规划后清空了上下文:尽量保持规划阶段读取的信息在后续执行阶段仍然可用,避免信息断层。
快速检查清单
在执行前,用这个清单快速过一遍你的计划是否完整:
- [ ] 计划中包含了涉及的文件清单与具体改动点。
- [ ] 明确了验证方式(例如 lint 检查、单元测试、类型检查、构建验证等)。
- [ ] 列出了未决问题清单,并且在执行前已经澄清。
- [ ] 最后输出了可执行的编号步骤列表。
小结
Plan Mode 的核心价值在于 “先把问题说清楚,再动手写代码” 。它并不替代你的编码与执行能力,但能作为一种工程实践的有效约束,显著减少因误解而产生的返工和试错成本,让开发流程更加稳健。希望这篇指南能帮助你在云栈社区和日常工作中更高效地应用这一模式。
|