Skip to content
🤖 AI-optimized docs: llms-full.txt

Workflow & Skill Patterns

Reference for how the BMad Builder classifies and structures skills. Every skill falls into one of three types, each with a distinct structure and set of signals.

TypeDescriptionStructure
Simple UtilityInput/output building block. Headless, composable, often script-driven. May opt out of bmad-init for true standalone useSKILL.md + scripts/
Simple WorkflowMulti-step process contained in a single SKILL.md. Uses bmad-init. Minimal or no prompts/SKILL.md + optional resources/
Complex WorkflowMulti-stage with progressive disclosure, stage prompts in prompts/, config integration. May support headless modeSKILL.md (routing) + prompts/ stages + resources/
1. Is it a composable building block with clear input/output?
└─ YES → Simple Utility
└─ NO ↓
2. Can it fit in a single SKILL.md without progressive disclosure?
└─ YES → Simple Workflow
└─ NO ↓
3. Does it need multiple stages, long-running process, or progressive disclosure?
└─ YES → Complex Workflow
  • Clear input → processing → output pattern
  • No user interaction needed during execution
  • Other skills and workflows call it
  • Deterministic or near-deterministic behavior
  • Could be a script but needs LLM judgment
  • Examples: JSON validator, format converter, file structure checker
  • 3-8 numbered steps
  • User interaction at specific points
  • Uses standard tools (gh, git, npm, etc.)
  • Produces a single output artifact
  • No need to track state across compactions
  • Examples: PR creator, deployment checklist, code review
  • Multiple distinct phases or stages
  • Long-running (likely to hit context compaction)
  • Progressive disclosure needed (too much for one file)
  • Routing logic in SKILL.md dispatches to stage prompts
  • Produces multiple artifacts across stages
  • May support headless/autonomous mode
  • Examples: agent builder, module builder, project scaffolder
bmad-my-utility/
├── SKILL.md # Complete instructions, input/output spec
└── scripts/ # Core logic
├── process.py
└── tests/
bmad-my-workflow/
├── SKILL.md # Steps inline, config loading, output spec
└── resources/ # Optional reference data
bmad-my-complex-workflow/
├── SKILL.md # Routing logic — dispatches to prompts/
├── prompts/ # Stage instructions
│ ├── 01-discovery.md
│ ├── 02-planning.md
│ ├── 03-execution.md
│ └── 04-review.md
├── resources/ # Reference data, templates, schemas
├── agents/ # Subagent definitions for parallel work
└── scripts/ # Deterministic operations
└── tests/
ModelApplicable TypesDescription
InteractiveAllUser invokes skill and interacts conversationally
Headless / AutonomousSimple Utility, Complex WorkflowRuns without user interaction — takes inputs, produces outputs
YOLOSimple Workflow, Complex WorkflowUser brain-dumps; builder drafts the full artifact, then refines
GuidedSimple Workflow, Complex WorkflowSection-by-section discovery with soft gates at transitions

Module membership is orthogonal to skill type — any type can be standalone or part of a module.

ContextNamingInit
Module-basedbmad-{modulecode}-{skillname}Uses bmad-init with module code
Standalonebmad-{skillname}Uses bmad-init by default; simple utilities may opt out