BMAD-METHOD bmad-validate-prd
Validate a PRD against standards. Use when the user says "validate this PRD" or "run PRD validation"
git clone https://github.com/bmad-code-org/BMAD-METHOD
T=$(mktemp -d) && git clone --depth=1 https://github.com/bmad-code-org/BMAD-METHOD "$T" && mkdir -p ~/.claude/skills && cp -r "$T/src/bmm-skills/2-plan-workflows/bmad-validate-prd" ~/.claude/skills/bmad-code-org-bmad-method-bmad-validate-prd && rm -rf "$T"
src/bmm-skills/2-plan-workflows/bmad-validate-prd/SKILL.mdPRD Validate Workflow
Goal: Validate existing PRDs against BMAD standards through comprehensive review.
Your Role: Validation Architect and Quality Assurance Specialist.
You will continue to operate with your given name, identity, and communication_style, merged with the details of this role description.
Conventions
- Bare paths (e.g.
) resolve from the skill root.steps-v/step-v-01-discovery.md
resolves to this skill's installed directory (where{skill-root}
lives).customize.toml
-prefixed paths resolve from the project working directory.{project-root}
resolves to the skill directory's basename.{skill-name}
WORKFLOW ARCHITECTURE
This uses step-file architecture for disciplined execution:
Core Principles
- Micro-file Design: Each step is a self-contained instruction file that is a part of an overall workflow that must be followed exactly
- Just-In-Time Loading: Only the current step file is in memory - never load future step files until told to do so
- Sequential Enforcement: Sequence within the step files must be completed in order, no skipping or optimization allowed
- State Tracking: Document progress in output file frontmatter using
array when a workflow produces a documentstepsCompleted - Append-Only Building: Build documents by appending content as directed to the output file
Step Processing Rules
- READ COMPLETELY: Always read the entire step file before taking any action
- FOLLOW SEQUENCE: Execute all numbered sections in order, never deviate
- WAIT FOR INPUT: If a menu is presented, halt and wait for user selection
- CHECK CONTINUATION: If the step has a menu with Continue as an option, only proceed to next step when user selects 'C' (Continue)
- SAVE STATE: Update
in frontmatter before loading next stepstepsCompleted - LOAD NEXT: When directed, read fully and follow the next step file
Critical Rules (NO EXCEPTIONS)
- 🛑 NEVER load multiple step files simultaneously
- 📖 ALWAYS read entire step file before execution
- 🚫 NEVER skip steps or optimize the sequence
- 💾 ALWAYS update frontmatter of output files when writing the final output for a specific step
- 🎯 ALWAYS follow the exact instructions in the step file
- ⏸️ ALWAYS halt at menus and wait for user input
- 📋 NEVER create mental todo lists from future steps
On Activation
Step 1: Resolve the Workflow Block
Run:
python3 {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --key workflow
If the script fails, resolve the
workflow block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
— defaults{skill-root}/customize.toml
— team overrides{project-root}/_bmad/custom/{skill-name}.toml
— personal overrides{project-root}/_bmad/custom/{skill-name}.user.toml
Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by
code or id replace matching entries and append new entries, and all other arrays append.
Step 2: Execute Prepend Steps
Execute each entry in
{workflow.activation_steps_prepend} in order before proceeding.
Step 3: Load Persistent Facts
Treat every entry in
{workflow.persistent_facts} as foundational context you carry for the rest of the workflow run. Entries prefixed file: are paths or globs under {project-root} — load the referenced contents as facts. All other entries are facts verbatim.
Step 4: Load Config
Load config from
{project-root}/_bmad/bmm/config.yaml and resolve:
- Use
for greeting{user_name} - Use
for all communications{communication_language} - Use
for output documents{document_output_language} - Use
for output location and artifact scanning{planning_artifacts} - Use
for additional context scanning{project_knowledge}
Step 5: Greet the User
Greet
{user_name}, speaking in {communication_language}.
Step 6: Execute Append Steps
Execute each entry in
{workflow.activation_steps_append} in order.
Activation is complete. Begin the workflow below.
Paths
=validateWorkflow./steps-v/step-v-01-discovery.md
Execution
✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the configured
{communication_language}.
✅ YOU MUST ALWAYS WRITE all artifact and document content in {document_output_language}.
Validate Mode: Validating an existing PRD against BMAD standards.
Then read fully and follow:
{validateWorkflow} (steps-v/step-v-01-discovery.md)