Commit Graph

9 Commits

Author SHA1 Message Date
Alex Verkhovsky e36f219c81
refactor(catalog): rename after/before to preceded-by/followed-by (#2360)
* refactor(catalog): rename after/before columns to preceded-by/followed-by

The bare prepositions `after` and `before` had no subject anchor, leaving
the dependency direction ambiguous: "X has Y in its `after` column" reads
plausibly as either "Y comes after X" or "X comes after Y". An LLM
catalog consumer just got the direction wrong because of this.

`preceded-by` / `followed-by` are passive-voice participles whose grammar
locks the subject (the skill in this row) and forces a single reading:
"X is preceded by Y" can only mean Y comes first.

Rename applied to:
- module-help.csv headers (bmm-skills, core-skills)
- bmad-help SKILL.md schema doc + descriptions
- installer.js mergeModuleHelpCatalogs header string
- plugin-resolver.js _buildSynthesizedHelpCsv header string
- bmad-manifest.json keys (bmad-product-brief, bmad-prfaq)
- distillate-format-reference.md example manifest

The separate `required` column continues to carry hard-gate semantics;
the renamed columns are pure soft sequencing hints, as already documented
in bmad-help.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* style(installer): wrap long header strings per prettier

* feat(installer): warn on non-canonical module-help.csv headers

mergeModuleHelpCatalogs now compares each per-module file's header
against the canonical schema and emits a one-shot prompts.log.warn per
module on drift, naming both the expected and actual header. Data
continues to load positionally so external modules built against the
old after/before schema still install cleanly — the warning is the
maintainer signal to rename their columns.

Centralize the canonical header in modules/module-help-schema.js so the
merger and the synthesizer (PluginResolver._buildSynthesizedHelpCsv)
read the same source of truth; future column renames are one edit.

Verified by installing all four bmad-org external modules
(bmb, cis, gds, tea) — every one ships the legacy after/before header
today and now fires an advisory warning while still merging cleanly
into _bmad/_config/bmad-help.csv with the canonical column names.

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-01 12:28:50 -07:00
Brian 48a7ec8bff
fix: align bmad-help.csv with documented schema and clean up source rows (#2278) (#2349)
* fix(installer): preserve module-help.csv schema in merged bmad-help.csv (#2278)

The installer's mergeModuleHelpCatalogs was rewriting the merged catalog
under a different schema (module,phase,name,code,sequence,workflow-file,...)
than the documented source schema in every module's module-help.csv
(module,skill,display-name,menu-code,description,action,args,phase,...).

Worse, the parsing assumed the wrong source column order, so column data
was scrambled in the merged output. SKILL.md docs the source schema, so
the bmad-help skill was navigating a catalog whose actual columns no
longer matched its mental model.

Drop the transformation and the agent enrichment columns (which had no
consumers anywhere in the codebase). Emit rows verbatim in the source
schema, padding short rows and filling empty module fields. Sort by
module then phase, stable within phase to preserve authored order.

Closes #2278

* fix(catalog): normalize module-help.csv rows to documented 13-column schema

Many rows in core-skills/module-help.csv and bmm-skills/module-help.csv
were missing one column between description and phase, leaving them at
12 fields instead of 13. CSV consumers that read by header position
were silently mapping data into the wrong columns (description into
action, phase into args, required into before, etc).

Inserted an empty cell at column index 5 across all 31 affected rows
to restore alignment with the documented header
(module,skill,display-name,menu-code,description,action,args,phase,
after,before,required,output-location,outputs).
2026-04-27 23:54:21 -05:00
Brian 59b07c33e2
feat(bmad-help): llms.txt support for general questions (#2230)
* feat(bmad-help): add _meta rows and llms.txt support for general questions

Register llms.txt URLs in module-help.csv via _meta rows so bmad-help
can fetch module documentation when users ask questions that don't map
to a specific skill.

* refactor(bmad-help): streamline llms.txt docs into existing skill sections
2026-04-08 09:53:27 -05:00
Alex Verkhovsky 1b776f565b
feat: add bmad-checkpoint-preview skill (#2145)
* feat: add bmad-checkpoint skill for guided human change review

Copies the av-human-review experiment skill into BMAD-METHOD as
bmad-checkpoint, following established multi-step skill conventions
(SKILL.md → workflow.md → step chain). Registered in module-help.csv
under 4-implementation phase.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* chore: rename bmad-checkpoint to bmad-checkpoint-preview

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* refactor(checkpoint): inline workflow into SKILL.md and add global step rules

Remove separate workflow.md — its content now lives directly in SKILL.md
with merged frontmatter. Replace scattered standing rules with a structured
Global Step Rules section (path:line format, front-load output, comm style).

* refactor(checkpoint): reference global step rules from SKILL.md in step-01

* refactor(checkpoint): deduplicate step rules against global step rules

Steps 2–4 now reference Global Step Rules in SKILL.md instead of
restating path:line format, front-load, and silence rules locally.
Step-specific rules (concern-based org, design judgment, risk
awareness, experiential testing) are preserved.

* fix(checkpoint): move main_config out of SKILL.md frontmatter

SKILL.md frontmatter should only contain name and description.
Hardcode the config path inline in the INITIALIZATION section.

* docs(checkpoint): update skill description and trigger phrases

Rewrite description to reflect the skills purpose as an LLM-assisted
human-in-the-loop review. Add checkpoint trigger, drop stale triggers.

* fix(checkpoint): align trail format with global step rules and add token budget

Use CWD-relative path:line in fallback trail (not markdown links),
cap full-file reads at ~50k tokens, remove over-prompted empty-tree SHA.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>

* refactor(checkpoint): rewrite FIND THE CHANGE as numbered priority cascade

Replace the ad-hoc change-finding logic with a clean 1-5 cascade
modeled after quick-dev Intent Check: explicit argument, recent
conversation, sprint tracking, current git state, ask. Extract
spec/commit pairing into a separate ENRICH step that runs after
any cascade level resolves. Add planning_artifacts to SKILL.md
initialization.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(checkpoint): clarify review_mode and terse-commit instructions in step-01

Replace opaque Review Mode table with explicit set-variable instructions.
Scope terse commit message handling to bare-commit mode only.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(checkpoint): make review_mode a numbered cascade, not independent bullets

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(checkpoint): simplify change_type from table to one-liner

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(checkpoint): make link-to-source conditional on source existing

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(checkpoint): make surface area stats best-effort with baseline cascade

Replace rigid with-spec/bare-commit split with a 4-level fallback:
baseline_commit, merge-base, HEAD~1, skip. Omit metrics that
cannot be computed rather than failing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor(checkpoint): extract fallback trail generation into generate-trail.md

Reduce step-01 bloat by moving the conditional trail generation
sub-routine into its own file, loaded only when review mode is
not full-trail.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(checkpoint): add early-exit routing and wrap-up step

Replace undefined "I've seen enough" exits with proper early-exit
handling across steps 02-04. Extract wrap-up logic into dedicated
step-05-wrapup.md. Fix step-02 menu text that incorrectly promised
"code review" when step-03 does risk surfacing.

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 10:12:14 -07:00
Brian abfc56bd2c
feat: add bmad-prfaq skill as alternative analysis path (#2157)
* feat: add bmad-prfaq skill as alternative to product brief

Add Working Backwards PRFAQ challenge skill for stress-testing product
concepts through Amazon's PRFAQ methodology. Includes press release
drafting, customer FAQ, internal FAQ, and verdict stages with subagent
support for artifact scanning and web research.

- New bmad-prfaq skill with 5-stage interactive gauntlet and headless mode
- Subagents for artifact analysis and web research (graceful degradation)
- Research-grounded output directive for current market/competitive data
- Always produces distillate for downstream PRD consumption
- Fix manifest array syntax in both prfaq and product-brief manifests
- Drop number prefixes from reference files
- Update docs: getting-started, workflow-map, agents, skills reference
- Add analysis-phase explainer doc with comparison table and decision guide
- Update workflow-map-diagram.html with prfaq card
- Add -H and -A args to CSV for both skills
- Add unist-util-visit as devDependency (was imported but undeclared)

* fix: harden bmad-prfaq for compaction resilience and context efficiency

Add coaching persona re-anchors to all stage prompts so the behavioral
directive survives context compaction. Add do-not-read guards at resume
detection, headless mode, and input gathering to prevent parent agent
context bloat. Add Stage 1 coaching notes capture. Adapt template and
press release stage for non-commercial concept types. Cap subagent
response token budgets.

* fix: add config.user.yaml to file-ref validator allowlist

Also update PRFAQ config path to use correct _config/bmm/ prefix.
2026-03-28 17:16:41 -05:00
Brian cfe40fccd5
refactor: modernize module-help CSV format and rewrite bmad-help as outcome-based skill (#2120)
New CSV format: module,skill,display-name,menu-code,description,action,args,phase,after,before,required,output-location,outputs

- Replace sequence numbers with after/before dependency graph
- Drop command, workflow-file, agent, options columns
- Add action column for multi-action skills (tech-writer, create-story)
- Add args column for CLI shortcut hints
- Make description optional (only when adding flow/routing context beyond frontmatter)
- Expand module names for clarity
- Rewrite bmad-help SKILL.md from procedural 8-step execution to outcome-based design
- Fix eslint config to ignore gitignored lock files (pnpm-lock.yaml, bun.lock)
2026-03-24 23:46:48 -05:00
Alex Verkhovsky b3cf338118
refactor(quick-dev): rename tech-spec prefix to spec (#2109)
* refactor(quick-dev): rename tech-spec prefix to spec

* docs: update tech-spec references to spec
2026-03-23 00:09:05 -06:00
Brian a092209267
refactor(analysis): consolidate product brief skills and clean up research (#2070)
Replace bmad-create-product-brief (step-based wizard) and
bmad-product-brief-preview (multi-agent) with a single unified
bmad-product-brief skill. Remove accidentally duplicated market
research step files and template. Update research skill
descriptions to use more natural trigger language.
2026-03-19 20:48:47 -05:00
Brian 0380656de6
refactor: consolidate agents into phase-based skill directories (#2050)
* refactor: consolidate agents into phase-based skill directories

Remove separate agent/workflow/skill directories (src/bmm/agents,
src/bmm/workflows, src/core/skills, src/utility/agent-components) and
reorganize all content into phase-based structures under src/bmm-skills
(1-analysis, 2-plan-workflows, 3-solutioning, 4-implementation) and
src/core-skills. Eliminates the agent/skill distinction by treating
agents as skills within their workflow phase.

* fix: update broken file references to use new bmm-skills paths

* docs: update all references for unified bmad-quick-dev workflow

Remove all references to the old separate bmad-quick-spec and
bmad-quick-dev-new-preview workflows. The new bmad-quick-dev is a
unified workflow that handles intent clarification, planning,
implementation, review, and presentation in a single run.

Updated files across English docs, Chinese translations, source
skill manifests, website diagram, and build tooling.
2026-03-18 01:01:33 -05:00