Skill Tracer
Skills › BMAD Method › bmad-build › workflow.md

workflow.md

84 lines · skills/bmad-build/workflow.md at bd70c64

Open on GitHub

Most marks come from matching words in the file, so treat them as pointers.

1{% if workflow.route not in ("oneshot", "full", "auto") %}{{ halt("workflow.route must be oneshot, full, or auto, not " ~ workflow.route) }}{% endif %}
2{% if workflow.review not in ("none", "quick", "thorough", "auto") %}{{ halt("workflow.review must be none, quick, thorough, or auto, not " ~ workflow.review) }}{% endif %}
3# Build New Preview Workflow
4
5**Goal:** Turn user intent into a hardened, reviewable artifact.
6
7**CRITICAL:** If a step directs you to another snapshot file, read it fully and follow it. No exceptions.
8
9Subagents, when the capability is available, are an important part of this workflow. Use them as directed by the workflow steps.
10If you need an explicit user instruction to run them, ask once now for the whole workflow run.

{% if workflow.route not in ("oneshot", "full", "auto") %}{{ halt("workflow.route must be oneshot, full, or auto, not " ~ workflow.route) }}{% endif %} {% if workflow.review not in ("none", "quick", "thorough", "auto") %}{{ halt("workflow.review must be none, quick, thorough, or auto, not " ~ workflow.review) }}{% endif %}

Build New Preview Workflow

Goal: Turn user intent into a hardened, reviewable artifact.

CRITICAL: If a step directs you to another snapshot file, read it fully and follow it. No exceptions.

Subagents, when the capability is available, are an important part of this workflow. Use them as directed by the workflow steps. If you need an explicit user instruction to run them, ask once now for the whole workflow run.

Raw lines 1 to 11
Starts an agent Subagents :9
12## READY FOR DEVELOPMENT STANDARD
14A plan is "Ready for Development" when:
16- **Actionable**: Every task has a file path and specific action.
17- **Logical**: Tasks ordered by dependency.
18- **Testable**: All ACs use Given/When/Then, and each is a check the implementer can prove it met without pointing at code.
19- **Complete**: No placeholders or TBDs.
20- **Sufficient**: No known requirement, acceptance, dependency, or implementation gaps remain unresolved.
21- **Coherent**: No unresolved ambiguities or internal contradictions.

READY FOR DEVELOPMENT STANDARD

A plan is "Ready for Development" when:

  • Actionable: Every task has a file path and specific action.
  • Logical: Tasks ordered by dependency.
  • Testable: All ACs use Given/When/Then, and each is a check the implementer can prove it met without pointing at code.
  • Complete: No placeholders or TBDs.
  • Sufficient: No known requirement, acceptance, dependency, or implementation gaps remain unresolved.
  • Coherent: No unresolved ambiguities or internal contradictions.
Raw lines 12 to 22
23## SCOPE STANDARD
25A plan should target a **single user-facing goal** within **900–1600 tokens**:
27- **Single goal**: One cohesive feature, even if it spans multiple layers/files. Multi-goal means >=2 **top-level independent shippable deliverables** — each could be reviewed, tested, and merged as a separate PR without breaking the others. Never count surface verbs, "and" conjunctions, or noun phrases. Never split cross-layer implementation details inside one user goal.
28 - Split: "add dark mode toggle AND refactor auth to JWT AND build admin dashboard"
29 - Don't split: "add validation and display errors" / "support drag-and-drop AND paste AND retry"
30- **900–1600 tokens**: Optimal range for LLM consumption. Below 900 risks ambiguity; above 1600 risks context-rot in implementation agents.
31- **Neither limit is a gate.** Both are proposals with user override.

SCOPE STANDARD

A plan should target a single user-facing goal within 900–1600 tokens:

  • Single goal: One cohesive feature, even if it spans multiple layers/files. Multi-goal means >=2 top-level independent shippable deliverables — each could be reviewed, tested, and merged as a separate PR without breaking the others. Never count surface verbs, "and" conjunctions, or noun phrases. Never split cross-layer implementation details inside one user goal.
  • Split: "add dark mode toggle AND refactor auth to JWT AND build admin dashboard"
  • Don't split: "add validation and display errors" / "support drag-and-drop AND paste AND retry"
  • 900–1600 tokens: Optimal range for LLM consumption. Below 900 risks ambiguity; above 1600 risks context-rot in implementation agents.
  • Neither limit is a gate. Both are proposals with user override.
Raw lines 23 to 32
33## Conventions
35- Whenever this workflow captures or records a version-control revision, obtain the full canonical identifier directly from version control and preserve it verbatim.

Conventions

  • Whenever this workflow captures or records a version-control revision, obtain the full canonical identifier directly from version control and preserve it verbatim.
Raw lines 33 to 36
37## On Activation

On Activation

Raw lines 37 to 38
39### Step 1: Execute Prepend Steps
41Execute each of these steps in order before proceeding (`_None._` means skip):
43{{ workflow.activation_steps_prepend }}

Step 1: Execute Prepend Steps

Execute each of these steps in order before proceeding (_None._ means skip):

{{ workflow.activation_steps_prepend }}

Raw lines 39 to 44
45### Step 2: Load Persistent Facts
47Treat every entry below 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 (`_None._` means none):
49{{ workflow.persistent_facts }}

Step 2: Load Persistent Facts

Treat every entry below 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 (_None._ means none):

{{ workflow.persistent_facts }}

Raw lines 45 to 50
51### Step 3: Execute Append Steps
53Execute each of these steps in order (`_None._` means skip):
55{{ workflow.activation_steps_append }}

Step 3: Execute Append Steps

Execute each of these steps in order (_None._ means skip):

{{ workflow.activation_steps_append }}

Raw lines 51 to 56
57## WORKFLOW ARCHITECTURE
59This uses **step-file architecture** for disciplined execution:
61- **Micro-file Design**: Each step is self-contained and followed exactly
62- **Just-In-Time Loading**: Only load the current step file
63- **Sequential Enforcement**: Complete steps in order, no skipping
64- **State Tracking**: Persist progress via plan frontmatter and in-memory variables
65- **Append-Only Building**: Build artifacts incrementally

WORKFLOW ARCHITECTURE

This uses step-file architecture for disciplined execution:

  • Micro-file Design: Each step is self-contained and followed exactly
  • Just-In-Time Loading: Only load the current step file
  • Sequential Enforcement: Complete steps in order, no skipping
  • State Tracking: Persist progress via plan frontmatter and in-memory variables
  • Append-Only Building: Build artifacts incrementally
Raw lines 57 to 66
67### Step Processing Rules
691. **READ COMPLETELY**: Read the entire step file before acting
702. **FOLLOW SEQUENCE**: Execute sections in order
713. **WAIT FOR INPUT**: Halt at checkpoints and wait for human
724. **LOAD NEXT**: When directed, read fully and follow the next step file

Step Processing Rules

  1. READ COMPLETELY: Read the entire step file before acting
  2. FOLLOW SEQUENCE: Execute sections in order
  3. WAIT FOR INPUT: Halt at checkpoints and wait for human
  4. LOAD NEXT: When directed, read fully and follow the next step file
Raw lines 67 to 73
Involves a person WAIT FOR INPUT :71
Involves a person and wait :71
74### Critical Rules (NO EXCEPTIONS)
76- **NEVER** load multiple step files simultaneously
77- **ALWAYS** read entire step file before execution
78- **NEVER** skip steps or optimize the sequence
79- **ALWAYS** follow the exact instructions in the step file
80- **ALWAYS** halt at checkpoints and wait for human input

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 follow the exact instructions in the step file
  • ALWAYS halt at checkpoints and wait for human input
Raw lines 74 to 81
Involves a person and wait :80
82## FIRST STEP
84Read fully and follow: `{{ rendered("step-01-clarify-and-route.md") }}` to begin the workflow.

FIRST STEP

Read fully and follow: {{ rendered("step-01-clarify-and-route.md") }} to begin the workflow.

Raw lines 82 to 84