对比列表

SpecScore 与 BMAD Method

BMAD Method(面向敏捷、由人工智能驱动的突破性开发方法,Breakthrough Method for Agile AI-Driven Development)是一种开源做法,用 AI 代理来做敏捷交付:把工作澄清、排成计划、做出来、再检查,并把决定写下来。产品需求文档(PRD)是用散文说明要构建什么、做给谁;这个方法的工作流地图会先产出一份,然后才是架构和故事。规范驱动开发(SDD)是两边共同所处的更大想法——行为在代码之前被写明。SpecScore 是这种规格的一种开源格式,外加命令行界面(CLI)。持续集成(CI)——每一次提议的变更都会自动查一遍——可以在 SpecScore 文件结构不对时失败。

两者的共同点。

  • 两边都不让代理一边写代码、一边把产品发明出来。
  • 两边都把规划文档以 Markdown 放在仓库里,紧挨着要做的工作。
  • 两边都指望人先批准计划,再让实现往下跑。

BMAD Method 做得好的地方。

2026年10月30日读过的项目 README 把 v6.12 称为稳定版,把 main 分支上的 v7 称为预览。那份 README 里写的 v7 日期,当时已经过了。这些版本线的名字,只当作那一刻的快照。

方法会自己看工作有多大

README 说,小改动直接去做,较大的工作才进入规划。main 上的工作流地图把阶段写明了:一份 PRD(PRD.md)、可选的 UX 规格、带决策记录的 architecture.md、史诗文件和故事文件,然后是一次冲刺。这是一整圈敏捷循环,不是一条提示词。

实现之前有一道关卡

同一张地图列出了 bmad-check-implementation-readiness,它在实现之前返回 PASS、CONCERNS 或 FAIL。v6 的产品经理代理还有一步 validate-PRD。这些是代理自己跑的工作流关卡。它们不是一个你可以拿去指向任意 Markdown 目录树的独立格式检查器。

它确实公开了

这个方法在公开仓库里以MIT 许可发布。README 里的稳定安装命令是 npx bmad-method install,并要求 Node.js 20.12 或更新版本,以及 Python 3.10 或更新版本。网站bmadcode.com说这个方法免费。

功能对比。

BMAD 是过程。SpecScore 是过程可以去对准的产物格式。下表比较的是这两种角色。

能力BMAD MethodSpecScore
主要角色敏捷方法:代理、技能和工作流,从想法一直做到经过验证的代码开放的规格格式 + CLI
规划产物PRD、UX 规格、架构、史诗和故事、冲刺状态——依据 2026年10月30日读到的工作流地图想法、功能、计划、任务,放在 spec/ 目录树里,并带有需求标识
如何检查工作就绪关卡(PASS / CONCERNS / FAIL),以及由代理运行的 validate-PRD 工作流specscore spec lint 跑在 CI 里,结果是确定的。/score 是手动的 AI 评分。
需求标识故事和功能需求写在 PRD 与史诗文件里。不是 SpecScore 的 REQ: slug。REQ: slug,以及验收标准的标识
运行环境README 所写的 v6.12 安装器需要 Node.js 和 Python没有别的,只要一支 Go 二进制文件
许可证MIT,bmad-code-org/BMAD-METHODCC BY 4.0 格式 · Apache-2.0 CLI

SpecScore 增添了什么。

检查是一条命令,不是方法里的一步

BMAD 的就绪结果,是它工作流内部的一个决定。SpecScore 的结果是进程退出码。dogfood.yml 在每一个拉取请求上运行 specscore spec lint。/score 用仓库里配置好的评审者给产物打分;要你自己去调用。CI 不会去调。

$ specscore spec lint

features/apply-discount/README.md:0 [error] oq-section: Open Questions section not found
features/apply-discount/README.md:0 [error] index-entries: Child directory not listed in index: refunds
features/apply-discount/refunds:0 [error] readme-exists: README.md not found

3 violations found (3 errors)

换一种方法,格式还在

BMAD 的文档,形状是它的工作流定下来的。你若停止运行 BMAD,Markdown 还在,但方法之外没有东西再去强制这个形状。一棵 SpecScore 目录树就是契约。别的工作流——包括 BMAD——也可以去写它,检查器照样适用。

故事和需求靠标识连在一起

BMAD 的故事把上下文往后带,免得代理把产品重新决定一遍。SpecScore 把这条关联做成机械的:计划里的任务引用 REQ: slug,specscore: 注解再加上 Verifies: 提交尾注,把代码指回那条标准。

何时使用哪个。

更适合用 BMAD Method 的时候……

  • 你要一整圈敏捷循环——PRD、架构、故事、冲刺——由带着角色化工作流的代理来执行。
  • 你要那道就绪关卡,以及这个方法自带的产品、架构和测试这几方视角。
  • 你在统一团队怎么写提示词,而这个方法的技能就是那套标准。

以下场景适合使用 SpecScore……

  • 标题、链接或状态错了,规格就要让 CI 失败,哪怕那天没有人跑 BMAD 工作流。
  • 你需要跨工具都稳定的需求标识,而不是只活在某一种方法的故事文件里。
  • 你希望有一种开源格式,让另一种过程也可以对准它。

方法可以去写这种格式。

BMAD 回答的是“我们怎么把工作跑起来”。SpecScore 回答的是“哪一份文件才是契约,CI 又怎么知道它还完好”。团队可以留着 BMAD 的 PRD 和故事来谈话,再留一份 SpecScore 功能,放那些必须通过检查的需求。

循环用 BMAD Method。拉取请求要检查的那份产物,用 SpecScore。

其他对比。

同一套格式,与其他规格驱动开发工具并列:

放在同一页:2026 年最佳规范驱动开发工具。

反馈

通过检查的规范。

发现翻译问题或有改进此页面的想法?