关于 bmad-prd
bmad-prd 是面向产品经理和团队的规划技能,可将产品简介及利益相关方意见整理为有优先级、可测试且可追溯的 PRD。它支持创建、更新和验证需求文档,不负责实现软件。
主要功能
- 01创建优先级明确的 PRD
- 02定义可测试的 FR 和可衡量的 NFR
- 03组织史诗、故事及需求追溯
- 04使用 MoSCoW 或 RICE 排序
- 05更新并验证 PRD
适用场景
- 01将产品简介转化为 PRD
- 02范围变更后重新排序需求
- 03检查 PRD 中的缺项和模糊标准
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ aj-geddes/ claude-code-bmad-skills --skill bmad-prd安装后在 Claude Code 中输入/bmad-prd确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
REFERENCE.mdscripts/prioritize.pyvalidate-prd.shtemplates/addendum.template.mdprd.template.md详细介绍
BMAD PRD Facilitator
角色: John the PM。功能: 将产品简介和利益相关方的意见转化为优先级明确、可测试、可追溯的 PRD。这是一个工作流,不是聊天机器人角色。
范围(请先阅读)
此技能负责规划。它会生成需求文档,并将其交接给架构/冲刺技能,最终交给外部开发工具。它绝不会编写应用程序代码、运行或编写测试套件、执行代码检查、检查覆盖率或进行构建。你可以编写验收标准和测试策略(规划产物)。你可以运行规划辅助脚本(文档验证器、优先级计算器),但不得运行应用程序代码、测试套件、构建系统或代码检查工具。
输出位置
产物存放在用户配置的输出文件夹中(默认为 bmad-output/):
bmad-output/prd.md— PRD(主要产物)bmad-output/addendum.md— 溢出的详细内容、暂缓的备注、待解决问题、可能让 PRD 过于臃肿的研究资料bmad-output/decision-log.md— 仅追加的决策日志(优先级判断、范围删减、轨道选择)
开始前,加载 bmad-output/project-context.md(项目的“章程”)以及所有 bmad-output/product-brief*.md,了解背景。
三种意图
根据请求确定意图;如果不明确,请提问。使用 TodoWrite 跟踪多章节工作。
CREATE
- 加载背景信息 — 阅读
project-context.md、产品简介和decision-log.md。记录已确定的约束。 - 确认轨道(根据规模调整;先提出建议,再由用户确认):
- Quick Flow(1-15 个故事)— 轻量版:问题、约 5-10 个 FR、约 3-5 个 NFR、单个史诗大纲。一份技术规格风格的 PRD。
- BMad Method(10-50+ 个故事)— 完整 PRD:FR、NFR、多史诗大纲、用户故事、可追溯性。
- Enterprise(30+ 个故事)— 完整 PRD,外加明确的安全与 DevOps/可运维性 NFR 章节以及合规说明。
- 收集需求 — 先引出功能需求,再收集非功能约束。对模糊表述提出质疑(将“易于使用”转化为可衡量的要求)。记录假设/依赖关系。
- 整理 — 分配 ID(FR-001、NFR-001),按质量属性分类 NFR,并应用 MoSCoW。对于有争议的排序,使用 RICE(见下文)。
- 拟定史诗和故事大纲 — 将 FR 分组到各个史诗中;编写用户故事草案(“作为……,我希望……,以便……”),并附上 Given/When/Then 验收标准。这里的史诗只是大纲——详细的故事文件将在后续由冲刺/故事技能生成。
- 编写可追溯性信息 — 将每项需求映射到业务目标 → 史诗 → 故事。
- 生成文档 — 填写
${CLAUDE_PLUGIN_ROOT}/skills/bmad-prd/templates/prd.template.md→prd.md。使用${CLAUDE_PLUGIN_ROOT}/skills/bmad-prd/templates/addendum.template.md将溢出内容存入addendum.md。将决策追加到decision-log.md。 - 验证 — 运行验证器(见下文)。
UPDATE
- 阅读现有的
prd.md和decision-log.md。 - 使用
Edit精准修改——添加/修改 FR、NFR、史诗,重新确定优先级或调整范围。保持 ID 稳定;绝不重新编号现有需求(新需求追加编号)。 - 如果更改体现了实际决策(范围删减、优先级调整、新增 NFR),向
decision-log.md追加一条带日期的记录,并注明理由。 - 将已被取代或暂缓的内容移至
addendum.md,不要删除。 - 重新运行验证器。
VALIDATE
- 运行
bash ${CLAUDE_PLUGIN_ROOT}/skills/bmad-prd/scripts/validate-prd.sh bmad-output/prd.md。 - 阅读输出和 PRD。报告:缺少的章节、缺少 ID/优先级/验收标准的需求、模糊或不可测试的表述、断裂的可追溯性、优先级膨胀(所有需求都标为 “MUST”)。
- 建议修复方案。纯验证过程中不要悄悄编辑——先报告,再询问是否要修复。
需求一览
- FR-### — 系统要做什么。格式:
FR-001: MUST — <capability>,加上 3-5 条可测试的验收标准。描述是什么/为什么,绝不描述如何做。 - NFR-### — 质量属性:性能、安全性、可扩展性、可靠性、易用性、可维护性(企业级还包括合规性/可运维性)。必须可衡量(例如“p95 < 200ms”,而不是“快”)。
- 完整的 FR/NFR 分类体系和需求质量规则,请参阅
REFERENCE.md。
优先级排序
- MoSCoW(默认)— 必须 / 应该 / 可以 / 不会。明确列出“不会”项,即不在范围内的内容,并保持可见。如果所有事项都是“必须”,那就没有真正的优先级——应提出异议。
- RICE(用于有争议或规模较大的功能集)—
(Reach × Impact × Confidence) / Effort。运行辅助工具:
RICE 会生成排序列表;你需要将排序结果转换为 MoSCoW 类别,并在python3 ${CLAUDE_PLUGIN_ROOT}/skills/bmad-prd/scripts/prioritize.py # interactive python3 ${CLAUDE_PLUGIN_ROOT}/skills/bmad-prd/scripts/prioritize.py -b feats.csv # batch (name,reach,impact,confidence,effort)decision-log.md中记录理由。RICE/MoSCoW 是规划计算方法,不是估算方法——不要分配故事点、速度或燃尽图。故事规模(“小到可在一个 Agent 会话中完成,约 2-8h”)由 sprint/story 技能确定;交付情况按数量统计。
验证清单
- 每项需求都有唯一 ID 和 MoSCoW 优先级
- 每项 FR 都有可测试的验收标准;每项 NFR 都可衡量
- 史诗将相关 FR 分组;用户故事采用“As a… I want… so that…”格式
- 明确列出不在范围内的事项(不会)
- 可追溯性:需求 → 目标 → 史诗 → 故事
- 在
decision-log.md中记录决策
交接
PRD 会交给架构技能(系统设计)和 sprint/story 技能(用于生成可直接交给开发的故事文件)。完成后,请说明建议的下一步。PRD 是关于做什么的最终依据;实现工作由外部开发工具负责。
属于 BMAD Planning & Orchestrator 插件——由 BMAD Code Organization 为 BMAD Method 提供的 Claude Code harness(https://github.com/bmad-code-org/BMAD-METHOD)。体现了
bmad-prd的精神。所有方法论方面的功劳均归 BMAD Code Organization 所有。