计划模式:三思而后行,一次执行

发布: (2026年2月3日 GMT+8 02:30)
6 分钟阅读
原文: Dev.to

Source: Dev.to

请提供您希望翻译的完整文本内容,我将按照要求将其翻译为简体中文并保留原有的格式、Markdown 语法以及技术术语。谢谢!

在行动前先清除战争迷雾

“快速行动,打破常规”有其适用之处。但在复杂的代码库中,快速前进往往意味着破坏你甚至不知道存在的东西。你正在重构的那个 API 端点?它被 47 处调用,包括你三个月前忘记的一个 webhook。

Source:

什么是计划模式?

计划模式让 Claude 在不做任何更改的情况下读取、搜索、分析并推理整个代码库。这是一个侦察阶段,帮助你在执行任何修改之前形成完整的思维模型。

  • 只读访问 – Claude 可以浏览文件、追踪依赖并运行分析,但不能写入或执行会改变状态的命令。

  • 切换开/关

    Shift+Tab, Shift+Tab → 激活计划模式
    Shift+Tab          → 返回普通(执行)模式

当计划模式激活时,你会看到指示器:

🔍 PLAN MODE

此时你可以提出开放式问题,例如:

  • “将系统从 REST 迁移到 GraphQL 会有哪些影响?”
  • “分析我们认证系统中的数据流向。”
  • “找出所有处理支付的地方,并解释每个地方的错误处理方式。”

Claude 将返回详细的分析而不触碰任何文件

切换到执行

一旦收集到所需的洞见,切换回普通模式:

Shift+Tab → Normal Mode (or Act Mode)

Claude 恢复写入权限,您可以自信地发出具体的更改请求。

默认使用计划模式的好处

1. 减少焦虑与过度规范

计划模式消除了意外副作用的担忧,让你专注于想要了解的内容,而不是该避免的做法

2. 更快的决策制定

在计划模式下花 10–15 分钟绘制依赖关系、调用点和潜在冲突,往往能为后续节省数小时的调试时间。

3. 更安全的代码审查

“解释这个 PR 改动了什么,并识别潜在问题。”

这正是计划模式的完美任务——完整分析,零意外修改风险。

4. 探索与入职

使用计划模式进行开放式探索、培训新成员,或进行“假设”分析(例如,“如果我们移除这个已废弃的模块会怎样?”),而不会有破坏代码库的风险。

Source:

真实场景案例

“我大约 90 % 的时间都使用计划模式。我的工作不是尽可能多写代码,而是做出正确的决策。Claude 在计划模式下是我的思考伙伴。” — 中型创业公司首席工程师

典型会话

阶段 1 – 侦查(计划模式)

  • Show me how notifications work in our system.
  • What are all the ways a user can trigger a notification?
  • What would change if we wanted to add rate limiting to notifications?
  • Identify the dependencies between the notification service and the user service.

阶段 2 – 决策
(分析答案,决定方案。)

阶段 3 – 执行(普通模式)

  • Implement notification rate limiting. Add 100/hour per user.
  • Handle the race condition by using Redis INCR with EXPIRE.

“执行阶段专注且精准,因为规划阶段已经非常彻底。结果是干净、明确的改动,而不是零散的编辑。”

类比:策略游戏中的侦查

  • 未进行侦查时: 将单位派入未知领土,抱着侥幸心理。
  • 进行侦查时: 揭示地图,识别威胁和机遇,从而做出明智的决策。

复杂的代码库也有自己的“战争迷雾”。Plan Mode 能清除它,将盲目的高速转化为有目的的行动。

小贴士与最佳实践

  • 将计划模式设为默认 – 在大多数会话中以只读模式运行。
  • 先提出宽泛的探索性问题,再逐步细化到具体实现细节。
  • 记录发现(例如,将 Claude 的分析复制到设计文档中),以保留全团队的思维模型。
  • 仅在计划具体且明确时切换到普通模式,并且有清晰、有限的变更请求。

未来路线图

  • Day 30: LSP 集成,实现即时诊断、跳转到定义和类型信息——Claude 将看到与你的编辑器完全相同的内容。
  • Upcoming: 真正的 IDE 级别代码智能,提供更丰富的分析和更快的反馈循环。

三思而后行。一次执行。

下次你准备请求大幅更改时,先尝试 Shift+Tab 两次。在执行之前先探索——你可能会对发现的内容感到惊讶。

Back to Blog

相关文章

阅读更多 »