BMAD-METHOD/docs/zh-cn/how-to/quick-fixes.md

5.8 KiB
Raw Permalink Blame History

title description sidebar
快速修复 如何进行快速修复和临时更改
order
5

直接使用 DEV 智能体进行 bug 修复、重构或小型针对性更改,这些操作不需要完整的 BMad Method 或 Quick Flow。

何时使用此方法

  • 原因明确且已知的 bug 修复
  • 包含在少数文件中的小型重构(重命名、提取、重组)
  • 次要功能调整或配置更改
  • 探索性工作,以了解不熟悉的代码库

:::note[前置条件]

  • 已安装 BMad Methodnpx bmad-method install
  • AI 驱动的 IDEClaude Code、Cursor 或类似工具) :::

选择你的方法

情况 智能体 原因
修复特定 bug 或进行小型、范围明确的更改 DEV agent 直接进入实现,无需规划开销
更改涉及多个文件,或希望先有书面计划 Quick Flow Solo Dev 在实现前创建 quick-spec使智能体与你的标准保持一致

如果不确定,请从 DEV 智能体开始。如果更改范围扩大,你始终可以升级到 Quick Flow。

步骤

1. 加载 DEV 智能体

在 AI IDE 中启动一个新的聊天,并使用斜杠命令加载 DEV 智能体:

/bmad-agent-bmm-dev

这会将智能体的角色和能力加载到会话中。如果你决定需要 Quick Flow请在新的聊天中加载 Quick Flow Solo Dev 智能体:

/bmad-agent-bmm-quick-flow-solo-dev

加载 Solo Dev 智能体后,描述你的更改并要求它创建一个 quick-spec。智能体会起草一个轻量级规范,捕获你想要更改的内容和方式。批准 quick-spec 后,告诉智能体开始 Quick Flow 开发周期——它将实现更改、运行测试并执行自我审查,所有这些都由你刚刚批准的规范指导。

:::tip[新聊天] 加载智能体时始终启动新的聊天会话。重用之前工作流的会话可能导致上下文冲突。 :::

2. 描述更改

用通俗语言告诉智能体你需要什么。具体说明问题,如果你知道相关代码的位置,也请说明。

:::note[示例提示词] Bug 修复 -- "修复允许空密码的登录验证 bug。验证逻辑位于 src/auth/validate.ts。"

重构 -- "重构 UserService 以使用 async/await 而不是回调。"

配置更改 -- "更新 CI 流水线以在运行之间缓存 node_modules。"

依赖更新 -- "将 express 依赖升级到最新的 v5 版本并修复任何破坏性更改。" :::

你不需要提供每个细节。智能体会读取相关的源文件,并在需要时提出澄清问题。

3. 让智能体工作

智能体将:

  • 读取并分析相关的源文件
  • 提出解决方案并解释其推理
  • 在受影响的文件中实现更改
  • 如果存在测试套件,则运行项目的测试套件

如果你的项目有测试,智能体会在进行更改后自动运行它们,并迭代直到测试通过。对于没有测试套件的项目,请手动验证更改(运行应用、访问端点、检查输出)。

4. 审查和验证

在提交之前,审查更改内容:

  • 通读 diff 以确认更改符合你的意图
  • 自己运行应用程序或测试以再次检查
  • 如果看起来有问题,告诉智能体需要修复什么——它可以在同一会话中迭代

满意后,使用描述修复的清晰消息提交更改。

:::caution[如果出现问题] 如果提交的更改导致意外问题,请使用 git revert HEAD 干净地撤销最后一次提交。然后启动与 DEV 智能体的新聊天以尝试不同的方法。 :::

学习你的代码库

DEV 智能体也适用于探索不熟悉的代码。在新的聊天中加载它并提出问题:

:::note[示例提示词] "解释此代码库中的身份验证系统是如何工作的。"

"向我展示 API 层中的错误处理发生在哪里。"

"ProcessOrder 函数的作用是什么,什么调用了它?" :::

使用智能体了解你的项目,理解组件如何连接,并在进行更改之前探索不熟悉的区域。

你将获得

  • 已应用修复或重构的修改后的源文件
  • 通过的测试(如果你的项目有测试套件)
  • 描述更改的干净提交

不会生成规划产物——这就是这种方法的意义所在。

何时升级到正式规划

在以下情况下考虑使用 Quick Flow 或完整的 BMad Method

  • 更改影响多个系统或需要在许多文件中进行协调更新
  • 你不确定范围,需要规范来理清思路
  • 修复在工作过程中变得越来越复杂
  • 你需要为团队记录文档或架构决策

术语说明

  • agent:智能体。在人工智能与编程文档中,指具备自主决策或执行能力的单元。
  • quick-spec:快速规范。一种轻量级的规范文档,用于快速捕获和描述更改的内容和方式。
  • Quick Flow快速流程。BMad Method 中的一种工作流程,用于快速实现小型更改。
  • refactoring:重构。在不改变代码外部行为的情况下改进其内部结构的过程。
  • breaking changes:破坏性更改。可能导致现有代码或功能不再正常工作的更改。
  • test suite:测试套件。一组用于验证软件功能的测试用例集合。
  • CI pipelineCI 流水线。持续集成流水线,用于自动化构建、测试和部署代码。
  • async/await异步编程语法。JavaScript/TypeScript 中用于处理异步操作的语法糖。
  • callbacks:回调函数。作为参数传递给其他函数并在适当时候被调用的函数。
  • endpoint端点。API 中可访问的特定 URL 路径。
  • diff:差异。文件或代码更改前后的对比。
  • commit:提交。将更改保存到版本控制系统的操作。
  • git revert HEADGit 命令,用于撤销最后一次提交。