Replace vscode://file/ absolute URI links with workspace-root-relative
markdown links using #L anchors — portable across machines and worktrees.
Add code -r open-in-editor step with graceful fallback, and Ctrl+click
navigation tip for reviewers.
Step 5 now builds a concern-ordered trail of clickable vscode://file/
links with brief framing and appends it to the spec before committing.
Stops are sequenced by concern (not by file), lead with the entry point,
and use ≤15-word framing focused on design rationale. Single-concern
trails omit grouping labels. The trail is a standalone review artifact
useful without any skill.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Update per-agent bmad-skill-manifest.yaml files and remove the
now-redundant shared bmad-skill-manifest.yaml after capabilities
were inlined into SKILL.md.
Replace dynamic manifest loading with static Capabilities tables directly
in each agent's SKILL.md. This eliminates the bmad-manifest.json files and
simplifies agent activation by removing the manifest parsing step.
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
default-party.csv and team-fullstack.yaml are never read by any code.
Party mode reads from the installed agent-manifest.csv generated by
manifest-generator.js during install.
Move step files from steps/ subdirectory to the skill root directory
and update path references in workflow.md and step-02-plan.md.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(agents): convert all BMM agents to conformant skill structure
Replace legacy XML-based .agent.yaml files with new SKILL.md + bmad-manifest.json
format for all 9 BMM agents (analyst, architect, dev, pm, qa, sm,
quick-flow-solo-dev, ux-designer, tech-writer). Each agent now has:
- SKILL.md with persona, activation flow (bmad-init, project context, dynamic menu)
- bmad-manifest.json with capabilities referencing external skills
- bmad-skill-manifest.yaml for party-mode agent-manifest.csv generation
Tech-writer includes internal prompt files for write-document, mermaid-gen,
validate-doc, and explain-concept capabilities.
Also includes core bmad-init skill and removes legacy agent compilation tests
that referenced the old .agent.yaml format.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(installer): support new SKILL.md agent format in manifest generation
Update getAgentsFromDir to detect directories with bmad-skill-manifest.yaml
where type=agent and extract metadata directly from the YAML fields. This
allows the agent-manifest.csv to be populated from both old-format compiled
.md agents (XML parsing) and new-format SKILL.md agents (YAML manifest).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(installer): install type:agent skills to IDE native skills directory
The collectSkills scanner only recognized type:skill manifests, causing
new-format agents (type:agent in bmad-skill-manifest.yaml) to be added
to agent-manifest.csv but not installed to .claude/skills/. Now both
type:skill and type:agent are recognized as installable skills, while
collectAgents still processes type:agent dirs for the agent manifest
even when claimed by the skill scanner.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(installer): suppress canonicalId warning for type:agent skills
Agent-type skill manifests legitimately use canonicalId for agent-manifest
mapping (e.g., bmad-analyst). Only warn for regular type:skill manifests.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(skills): update analyst manifest and simplify bmad-init instructions
Switch analyst's create-brief menu entry to the new product-brief-preview
skill. Simplify bmad-init SKILL.md by removing hardcoded code fences and
making the script path relative to the skill directory.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(bmm): update tech-writer CSV refs to new skill path
The module-help.csv still referenced the old agent YAML path for
tech-writer entries. Update to skill:bmad-agent-tech-writer to match
the conformant skill structure.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Refined through adversarial review to accurately reflect the skills
state-analysis, question-answering, and workflow-recommendation
capabilities with precise trigger phrases that avoid false positives.
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Skip the interactive "What do you want to review?" menu when the user
already stated review mode in the invocation (e.g., "review staged
changes"). Adds keyword matching, sprint-tracking fallback, and
graceful fall-through to the existing interactive flow.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Address findings from adversarial review: clarify spec_file as path
variable (F4), add file list construction rule (F8), HALT on unparseable
diffs (F9), differentiate empty findings handling (F5), merge evidence
during dedup instead of dropping (F6), and fix NEXT step paths (F1).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The CSV parse instructions were incorrectly truncated to 3 columns.
Restore all 7: category, technique_name, description,
facilitation_prompts, best_for, energy_level, typical_duration.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Revert step renumbering in retrospective (no validator rule)
- Revert full-scan-instructions, quick-dev-preview, quick-spec changes
- Restore duration/energy/time content in brainstorming steps 02a-d, 03
(SEQ-02 time estimate removal was misapplied to display templates)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Revert SKILL.md wording change in product-brief-preview (not a
validation issue)
- Revert single-curly to double-curly conversions in create-architecture
and create-epics-and-stories where the originals were display
placeholders for LLM output, not template variables
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Restore original menu options [V], [S], [A], [X] that were incorrectly
replaced with [C], [A] during validation pass. The menu reduction was
not covered by any validation rule.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Bare filenames like `step-e-02-review.md` in "Read fully and follow:"
directives need `./` prefix for consistent relative path resolution.
Fixes 9 references across edit-prd, create-prd, and brainstorming.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace `[workflow.md](workflow.md)` with bare `workflow.md` in all 34
SKILL.md files. Redundant markdown link syntax adds noise for LLM
consumers. Also update the validator example to match.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Bare filenames are cleaner than [file.md](file.md) for LLM-consumed
skill files — the markdown link wrapper adds nothing when display text
and URL are identical.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
STEP-04 compliance: add HALT directives to 5 additional menu locations
in brainstorming steps (01b, 02a, 02b, 02c, 02d). Also fixes bracket
typo [3 -> [3] in step-01b-continue.md.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
EOF
)
STEP-04 compliance: add explicit HALT directives after menu presentations
in brainstorming (4 locations) and generate-project-context (2 locations)
to prevent LLM from auto-selecting options without waiting for user input.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- STEP-06: Remove name/description from step frontmatter in edit-prd (5 files)
and validate-prd (14 files) — these belong only in SKILL.md
- REF-02: Fix brainstorming step-02a/b/c/d CSV parse instructions to match
actual brain-methods.csv columns (3 cols, not 7)
- SEQ-02: Remove time estimates from brainstorming step-02a/b/c/d and step-03,
replace time-based thresholds with idea-count criteria
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Run skill-validator against all 36 skills on HEAD (42b1d0f6). Fixes:
- PATH-01: relative path corrections in product-brief-preview, brainstorming,
distillator, generate-project-context, edit-prd, quick-dev-new-preview
- PATH-04: remove 5 intra-skill path variables from edit-prd
- REF-01: single-curly template vars → double-curly in create-architecture,
create-epics-and-stories, create-story
- REF-02: fix dangling file refs in advanced-elicitation, validate-prd, edit-prd
- REF-03: update rule to prefer natural language `Invoke the skill` form;
fix stale persona ref in qa-generate-e2e-tests
- SEQ-01: "skip to" → "proceed to" in quick-dev-new-preview
- SEQ-02: remove time estimates from document-project, quick-spec
- SKILL-06: add "Use when" trigger to review-edge-case-hunter
- STEP numbering: renumber step n="0.5" to integer sequence in retrospective
Also updates REF-03 rule in tools/skill-validator.md to clarify that
natural language invocation is canonical — no skill: prefix required.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace three inconsistent skill reference patterns (frontmatter variables
with raw paths, frontmatter variables with skill: prefix, inline Execute
skill: syntax) with a single natural-language convention across all workflow
and task step files.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Party-mode moved from core/workflows/ to core/skills/ in PR #1959,
breaking 11 file references. Convert all to skill:bmad-party-mode
matching the convention used by skill:bmad-advanced-elicitation.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* prototype preview of new version of product brief skill
* chore: re-enable bmad-builder external module
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* config loading with existing location
* refactor: rename bmad-bmm-product-brief-preview to bmad-product-brief-preview
Drop the redundant bmm prefix from the product brief preview skill folder
to align with the standard naming convention.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add core tools reference and apply Diataxis style fixes
Add comprehensive reference doc for all 11 built-in core tools (tasks
and workflows) that ship with every BMad installation — bmad-help,
brainstorming, party-mode, distillator, advanced-elicitation, both
review tools, both editorial tools, shard-doc, and index-docs. Each
entry follows the Configuration Reference structure with purpose,
use cases, how it works, inputs, and outputs.
Style fixes across existing docs:
- reference/commands.md: convert #### headers to bold text, replace
sparse task table with link to new core-tools reference
- how-to/get-answers-about-bmad.md: remove horizontal rule between
sections (Diataxis violation)
- how-to/project-context.md: consolidate 4 consecutive tip admonitions
into single admonition with bullet list, add AGENTS.md reference
Also includes:
- Add bmad-distillator task to core module with compression agents,
format reference, splitting strategy, and analysis scripts
- Add Distillator entry to module-help.csv
- Rename supports-autonomous to supports-headless in product-brief
manifest
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* core items to skills folder
* fix calls to invoke party mode
* fix calls to invoke party mode and AE as skills
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The market-research workflow now lives entirely in
bmad-market-research/ as a native skill directory.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add co-located HALT instructions after every menu in all 6 step files
- Fix step-05 to route to step-06 instead of declaring workflow complete
- Rename market-steps/ to steps/ for standard naming convention
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move validate-prd from a workflow entry in create-prd manifest to a
self-contained skill at src/bmm/workflows/2-plan-workflows/bmad-validate-prd/.
Update pm.agent.yaml and module-help.csv to use skill: URI.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Strip name/description from all step frontmatter (STEP-06), remove
intra-skill path variables and inline them (PATH-04), move outputFile
to workflow.md (WF-03), fix stale step-11-complete refs (REF-02),
fix product_knowledge typo (REF-01), rewrite continuation logic
to use a lookup table, and strip legacy source workflow frontmatter.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move the create-prd workflow into src/core/tasks/bmad-create-prd/ as a
self-contained native skill with SKILL.md, workflow.md, steps-c/, data/,
and templates/. Update all internal path references from absolute
{project-root}/_bmad/... to relative paths. Mark the source
workflow-create-prd.md as standalone:false to prevent duplicate manifest
entries. Update pm.agent.yaml and module-help.csv to use skill:bmad-create-prd.
Remove installed_path and unused intra-skill path variables from
workflow.md (PATH-02, PATH-04).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove installed_path and intra-skill path variables from
workflow.md (PATH-02, PATH-04).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove installed_path definition and intra-skill path variables
from workflow.md (PATH-02, PATH-04).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove name/description from step frontmatter (STEP-06) and add
missing HALT before user menu in step-04-final-validation (STEP-04).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove name/description from step frontmatter (STEP-06) and inline
nextStepFile/templateFile path variables as literal relative paths
(PATH-04).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move edit-prd workflow and steps-e/ out of the shared create-prd directory
into its own bmad-edit-prd skill directory with SKILL.md, workflow.md, and
bmad-skill-manifest.yaml. Update pm.agent.yaml and module-help.csv to use
skill:bmad-edit-prd. Fix validationWorkflow path in step-e-04 to use
absolute {project-root} reference since relative path breaks after move.
Remove name/description from step frontmatter (STEP-06), inline
intra-skill path variables (PATH-04), prefix bare external path
with {project-root} (PATH-03), and normalize template placeholders
to double-curly convention (REF-01).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Step files are inside steps/ so inter-step references must be
./step-NN.md not ./steps/step-NN.md (which would double-nest).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The agent menu entry for QS was still using a raw file path
instead of the skill dispatcher, inconsistent with module-help.csv.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move technical-research workflow into bmad-technical-research/ skill
package with SKILL.md, bmad-skill-manifest.yaml, and properly
namespaced step files. Update module-help.csv to use skill: ref.
Remove duplicate technical-steps/ from old location and fix all
cross-references to use the new bmad-technical-research/ path.
Remove name/description frontmatter from workflow.md and sub-workflow
files (deep-dive-workflow.md, full-scan-workflow.md). Metadata belongs
exclusively in SKILL.md for native skill packages.
* convert qa-generate-e2e-tests to native skill packaging
* fix(bmm): remove workflow metadata and normalize refs for qa-generate-e2e-tests
Remove name/description from workflow.md (belongs in SKILL.md).
Normalize installed_path to relative. Update QA agent exec to skill URI.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* chore: convert correct-course workflow to native skill
* fix(skill): patch correct-course native skill metadata
* fix(skill): inline hardcoded path variables in correct-course
Remove installed_path, checklist, and project_context variables that
just indirected single-use hardcoded paths. Use bare values inline.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* refactor(skills): convert create-epics-and-stories workflow to native skill
* fix(skills): normalize create-epics-and-stories metadata
* fix: remove workflow_path indirection, use direct relative paths
Replace the custom workflow_path variable with direct relative paths
(../workflow.md, ../templates/epics-template.md) in all step files.
Also remove duplicate epicsTemplate entry in step-01.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: remove unused frontmatter refs from step files
Drop thisStepFile, workflowFile, and epicsTemplate (where unused in
body) from all step frontmatter. Only keep variables actually
referenced in step body content.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: convert partyModeWorkflow to skill ref, drop unused task refs
- partyModeWorkflow now uses skill:bmad-party-mode (it is a skill)
- remove advancedElicitationTask and partyModeWorkflow from steps 1/4
where they are not referenced in the body
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* refactor: inline all frontmatter refs, use canonical skill invocation
- Remove all file/task reference variables from step frontmatter
- Inline paths directly where used in body text
- Use canonical "invoke the skill" phrasing for skill references
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Planning workflows loaded document_output_language from config but never
enforced it in step files. Only communication_language was enforced,
causing generated artifacts (product briefs, PRDs, UX specs, project
docs) to be written in the conversation language instead of the
configured document output language.
Add explicit document_output_language enforcement in all content-
generating step files across create-product-brief, create-prd,
create-ux-design, generate-project-context, and document-project
workflows.
Closes#1966
- Fix bare directory ref missing /workflow.md in step-02-generate.md
- Remove stale workflowType: 'party-mode' from workflow.md and step-03
- Remove unused decorative aliases from quick-dev-new-preview workflow
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
- Rename party-mode → bmad-party-mode (canonical ID convention)
- Change bmad-skill-manifest.yaml from type:workflow to type:skill
- Add SKILL.md with frontmatter for installer discovery
- Remove installed_path, use relative ./steps/ refs internally
- Update module-help.csv to skill:bmad-party-mode
- Update compiler.js hardcoded PM menu path
- Update 43 cross-references to IDE-agnostic _bmad/ path
- Update test fixtures for renamed directory
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
The create-epics-and-stories workflow previously relegated UX Design
requirements to a vague "Additional Requirements" list, causing
actionable UX work items (design tokens, component proposals,
accessibility audits) to be silently dropped from the epic/story
breakdown.
Changes:
- step-01: Elevate UX Design extraction to first-class with dedicated
UX-DR identifiers and thorough extraction guidance
- step-03: Add UX Design integration guidance for story creation and
final validation coverage check
- epics-template: Add dedicated UX Design Requirements section
Co-authored-by: Brian <bmadcode@gmail.com>
The code review workflow required finding 3-10 issues minimum per review
and forced the agent to keep looking if fewer than 3 were found. This
created an endless review cycle where every review manufactures issues
even after previous fixes were applied, because the workflow cannot
conclude with "no issues found."
Replace the hard minimum with a zero-issue sanity check that allows
clean reviews after a thorough re-examination, while preserving the
adversarial review approach for genuine issues.