mirror of
https://github.com/bmad-code-org/BMAD-METHOD.git
synced 2026-10-29 17:51:48 +08:00
* feat(bmm): consolidate research trio into bmad-deep-recon
Replace bmad-market-research, bmad-domain-research, and bmad-technical-research
(5,136 lines of near-duplicate legacy step files) with one modern skill,
bmad-deep-recon (~650 lines):
- Research-master-orchestrator persona; conclusions never rest on training
data alone; lead-following rounds with coverage/novelty-exhaustion stops
- Six type packs as ~25-line policy+craft cards (market, domain, technical,
competitive, user-voice, academic-lit) + select decision shape layering a
weighted-matrix method over any type
- Three acquisition modes: Generate (subagent fan-out), Delegate (engine
registry: CLI/MCP, engine-first strategy), Import (provenance-tracked)
- Claims-ledger verification (normal/high/max) with independence rules and
optional red-team pass; cited synthesis with staleness map
- Effort presets (quick/standard/deep) over four knobs (subagents,
sources/round, depth, validation); precedence request > knob > preset
- Plan gate with surface discovery (MCPs/CLIs/engines), routing table, and
time estimate; use_workflows and subagent_models config
- Create/Refresh/Deepen intents, memlog run-folder workspace, headless JSON
- v6 shims forward the three old IDs with type pre-set; analyst menu,
catalog, marketplace, docs and translation mirrors updated
* feat(bmm): runtime output_format for bmad-deep-recon (v7 artifact protocol)
Replace the output_formats array with output_format = auto|html|md|both
(default auto): interactive runs render the HTML briefing, headless or
skill-invoked runs present the canonical markdown only. research.md always
exists in the workspace as the machine-readable report; the briefing is its
regenerable face. First instance of the v7 artifact protocol (memlog = truth,
md = distillation under contract, html = face).
* feat(core): move bmad-deep-recon to core-skills; address review findings
Move: research is not code-project-specific — home it in core-skills
(brainstorming precedent) so CIS and core-only installs get it. Skill ID
unchanged; standalone marketplace plugin added; catalogs moved to Core;
{planning_artifacts} falls back to {output_folder} on core-only installs.
v6 shims stay in bmm-skills (the legacy trio were bmm skills).
Review fixes (CodeRabbit):
- Engine briefs are now file-based: invoke templates substitute
{brief_file} (a skill-generated path), never inline brief text — quotes
and shell metacharacters in researched content can't shape a command.
- Refresh/Deepen preserve verification statuses for out-of-scope claims.
- HTML briefing: http(s)-only source links, escape source-derived text.
- user-voice pack: redact usernames/handles/emails from verbatim quotes;
communities complement surveys (triangulate) rather than beat them.
- engine.md: explicit single-writer rule — digests return to the lead,
which alone writes research.md in plan order.
* feat(core): deep-recon v2 — draft/process/run, faster defaults, research firewall
Rework after first real-run feedback (slow, token-heavy, locally biased
report, end-pass verification degraded quality, digests stranded in
subagent contexts):
- Three modes replace the acquisition-mode machinery: Draft (build a
deep-research prompt the user runs in their own subscribed tool),
Process (file a finished report into imports/, extract to digests/,
distill research.md summary + metadata so downstream never reprocesses),
Run (native fan-out, first-class). Bare research asks get the choice up
front with the trade stated honestly.
- Engine/Delegate registry cut: the Draft->Process round-trip is the
integration with dedicated deep-research tools; engine.md -> run.md.
- Files-first: digests hit {doc_workspace}/digests/ on landing, sections
commit per dimension, synthesis reads files never conversation memory,
dead runs resume from disk.
- Research firewall: persistent_facts default now empty, assistants get
only their brief, project context frames questions but is inadmissible
as evidence.
- Verification at landing, not end-of-run: normal = spot-check
load-bearing claims only; red_team default off; heavy passes behind
high/max. Presets rescaled faster (standard 3 subagents/8 sources/
depth 2).
- Multi-agent research lessons folded into run.md and the plan gate:
decomposition topology (breadth/depth/straightforward), per-assistant
tool-call budgets, query craft with OODA pause, shared source-quality
card, stop-and-write valve, mechanical citation check at finalize.
- Ripple: v6 shims, catalogs, marketplace, docs one-liners (all five
languages), template gains source: provenance field.
* feat(core): deep-recon quality pass — carve SKILL.md, recon_kit scripts, single-source verification
- SKILL.md 3989→2091 tokens: Draft/Process/Refresh+Deepen/Finalize carved to
references/{draft,process,lifecycle,finalize}.md; Run effort knobs + plan
gate moved into run.md; Overview and pack prose trimmed
- verification.md: red-team pass is the single adversarial mechanism (max
runs it at full breadth — no double-spawn); level semantics single-sourced
- scripts/recon_kit.py + tests: citations cross-check, memlog claim tally
(ref=/status= convention, last wins), staleness date math from per-class
windows, deterministic run-folder slugs, escaped source-appendix HTML
- Draft wired with preferred/banned source policies and an open-floor opening
- external_sources examples (Tavily/Sonar/xAI X-Search MCPs); source-quality
card: answer engines are aggregators — chase their citations
* docs: Deep Recon explanation page + integration
- new docs/explanation/deep-recon.md: three modes, mode-choice guidance,
research types, native-run internals diagram, firewall/verification, refresh
- analysis-phase.md research section rewritten for bmad-deep-recon
- core-tools.md: deep-recon in thinking-skills table, full catalog entry,
migration note for the merged market/domain/technical trio
- workflow-map.md + getting-started.md link the new page
- vi-vn developer guide: last stale old-skill flow mention updated
4.2 KiB
4.2 KiB
title, description, sidebar
| title | description | sidebar | ||
|---|---|---|---|---|
| 工作流地图 | BMad Method 各阶段 workflow 与产出速查 |
|
BMad Method(BMM)通过分阶段 workflow 逐步构建上下文,让智能体始终知道“做什么、为什么做、如何做”。这张地图用于快速查阅阶段目标、关键 workflow 和对应产出。
如果你不确定下一步,优先运行 bmad-help。它会基于你当前项目状态和已安装模块给出实时建议。
阶段 1:分析(可选)
在正式规划前,先验证问题空间与关键假设。
| Workflow | 目的 | 产出 |
|---|---|---|
bmad-brainstorming |
通过引导式创意方法扩展方案空间 | brainstorming-report.md |
bmad-deep-recon |
验证假设或在候选方案间做选择——可为你的深度研究工具起草提示词、加工其报告,或直接在此研究;覆盖市场、领域、技术、竞争、用户之声与学术研究;经核实、有引用、可刷新 | 研究报告或摘要 + 可选 HTML 简报 |
bmad-create-product-brief |
沉淀产品方向与战略愿景 | product-brief.md |
阶段 2:规划
定义“为谁做、做什么”。
| Workflow | 目的 | 产出 |
|---|---|---|
bmad-prd |
明确 FR/NFR 与范围边界 | PRD.md |
bmad-ux |
在 UX 复杂场景下补齐交互与体验方案 | DESIGN.md, EXPERIENCE.md |
bmad-spec |
将任意意图输入(brief、PRD、转录、想法笔记)提炼为精炼的 SPEC.md 契约及配套文件 —— 先锁定“做什么”,再谈“怎么做” |
SPEC.md 及配套文件,位于 {output_folder}/specs/spec-{slug}/ |
阶段 3:解决方案设计(Solutioning)
定义“如何实现”并拆分可交付工作单元。
| Workflow | 目的 | 产出 |
|---|---|---|
bmad-architecture |
显式记录技术决策与架构边界 | architecture.md(含 ADR) |
bmad-create-epics-and-stories |
将需求拆分为可实施的 epics/stories | epics 文件与 story 条目 |
bmad-check-implementation-readiness |
实施前 gate 检查 | PASS / CONCERNS / FAIL 结论 |
阶段 4:实施
按 story 节奏持续交付与校验。
| Workflow | 目的 | 产出 |
|---|---|---|
bmad-sprint-planning |
初始化迭代追踪(通常每项目一次) | sprint-status.yaml |
bmad-create-story |
准备下一个可实施 story | story-[slug].md |
bmad-dev-story |
按规范实现 story | 可运行代码与测试 |
bmad-code-review |
验证实现质量 | 通过或变更请求 |
bmad-correct-course |
处理中途重大方向调整 | 更新后的计划或重路由 |
bmad-sprint-status |
跟踪冲刺与 story 状态 | 状态更新 |
bmad-retrospective |
epic 完成后复盘 | 经验与改进项 |
Quick Flow(并行快线)
当任务范围小且目标清晰时,可跳过阶段 1-3 直接推进:
| Workflow | 目的 | 产出 |
|---|---|---|
bmad-quick-dev |
统一快流:意图澄清、规划、实现、审查、呈现 | spec-*.md + 代码变更 |
上下文管理
每个阶段产出都会成为下一阶段输入:PRD 约束架构,架构约束开发,story 约束实现。没有这条链路,智能体更容易在跨 story 时出现不一致决策。
:::tip[Project Context 建议]
创建 project-context.md,把项目特有约定(技术栈、命名、组织、测试策略)写成共享规则,能显著降低实现偏差。
:::
创建方式:
- 手动创建:在
_bmad-output/project-context.md记录项目规则 - 自动生成:运行
bmad-generate-project-context从架构或代码库提取