bmad-planning-orchestrator/skills/bmad-init/SKILL.md
Initialize a BMAD planning workspace: pick a scale-adaptive TRACK (Quick Flow / BMad Method / Enterprise) interactively, then scaffold the output folder, a config file, an empty decision-log.md, and a project-context.md "constitution". Use when the user says "initialize BMAD", "set up BMAD", "start a new BMAD project", "scaffold the planning workspace", "bmad init", "create the bmad config", or is beginning planning and has no bmad-output/ folder yet. Also use when the user asks "which track should I use?" or "what scale is my project?". This is the FIRST skill to run before any other planning workflow (brief, PRD, architecture, stories).
npx skillsauth add aj-geddes/claude-code-bmad-skills bmad-initInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Set up the planning workspace and choose the TRACK that scales the rest of the BMAD planning workflows. This is a planning skill: it creates folders and seed documents only. It never writes application code, runs tests, or builds anything.
Under the configured output folder (default bmad-output/):
bmad-output/
├── config.yaml # project name, track, output paths, languages
├── decision-log.md # empty threaded decision log (grows across workflows)
├── project-context.md # the project "constitution" loaded by every later skill
└── stories/ # empty; future story files land here
config.yaml is the single source of truth other skills read to find the output
folder and the chosen track.
| Track | Story count | Planning artifacts | |-------|-------------|--------------------| | Quick Flow | 1–15 stories | tech-spec only | | BMad Method | 10–50+ stories | PRD + Architecture (+ optional UX) | | Enterprise | 30+ stories | PRD + Architecture + Security + DevOps planning |
The track is a planning-need decision, not a points/velocity decision. Story count is a rough signal only; let scope, cross-team coordination, and risk drive the call. A heuristic may suggest a default — the user always confirms.
Check for an existing workspace. Glob for bmad-output/config.yaml (or a
custom output folder if the user names one). If it exists, read it and ask whether
to keep, re-run idempotently (safe — existing files are preserved), or change the
track. Do not clobber a populated decision-log.md or project-context.md.
Gather rough scope signals in conversation (don't interrogate):
Suggest a track. Run the helper to print the three tracks and a suggested default, then state your recommendation and ask the user to confirm or override:
bash "${CLAUDE_PLUGIN_ROOT}/skills/bmad-init/scripts/select-track.sh" --stories <N> --teams <one|many> --compliance <yes|no>
Heuristic the helper applies (you may reason past it):
Scaffold. Once the user confirms name + track, run:
bash "${CLAUDE_PLUGIN_ROOT}/skills/bmad-init/scripts/init-project.sh" \
--name "<project name>" \
--track <quick-flow|bmad-method|enterprise> \
--output "bmad-output"
The script is idempotent: it creates missing folders and seeds any missing
template files, but never overwrites decision-log.md or project-context.md
if they already contain content. It always (re)writes config.yaml.
Open the constitution. Walk the user through filling the first sections of
project-context.md (project goal, primary users, constraints, non-goals). This
is the document every downstream skill loads, so a few good sentences here pay off.
Record the track choice and rationale as the first entry in decision-log.md.
Hand off. Recommend the next planning step based on track:
config.yaml and append
the change to decision-log.md with a date and reason. Do not wipe other files.bash "${CLAUDE_PLUGIN_ROOT}/skills/bmad-init/scripts/init-project.sh" --validate --output "bmad-output"
See REFERENCE.md for the full config schema, track decision detail, and the
project-context section guide.
Part of the BMAD Planning & Orchestrator plugin — a Claude Code harness for the BMAD Method by the BMAD Code Organization (https://github.com/bmad-code-org/BMAD-METHOD). Implements the spirit of
bmad-init. All methodology credit belongs to the BMAD Code Organization.
testing
Solutioning-phase UX planning skill (optional; activate when the project has a UI). Produces TWO planning documents: DESIGN.md (the visual system — design tokens, color palette, typography, spacing, component specs, WCAG 2.1 AA contract) and EXPERIENCE.md (user journeys, flow diagrams, screen states, error/empty/loading handling). Use when the user says "design the UX", "create UX planning docs", "define the design system", "map the user flows", "UX for this feature", "wireframe the flows", "what are the user journeys", "accessibility design", "WCAG compliance", "design tokens", "responsive design plan", "mobile-first design", or "create DESIGN.md / EXPERIENCE.md". Runs after architecture is drafted and before stories are created. Supports Create / Update / Validate intents.
testing
Quick Flow lightweight technical specification for small-scope work (1-15 stories). Replaces the full PRD + architecture pair when scope is small and requirements are clear. Produces bmad-output/tech-spec.md as the single planning artifact before story creation. Use when the user says: "write a tech spec", "create a technical specification", "I need a tech spec for this feature", "quick spec", "small project spec", "we don't need a full PRD", "just a tech spec", "spec out this change", "document this feature". QUICK FLOW TRACK ONLY (1-15 stories). If scope grows beyond ~15 stories or involves multiple teams / external integrations at scale, stop and redirect to bmad-prd + bmad-architecture instead — those skills are built for that complexity. Supports three intents: Create (new spec), Update (revise an existing tech-spec.md), Validate (review a draft for completeness against BMAD criteria).
tools
Orchestration handoff bridge: emits and maintains sprint-status.yaml as the project's sequencing system-of-record. Orders stories by epic then dependency, assigns parallel-set (wave) membership, and drives the status lifecycle (backlog → ready-for-dev → in-progress → review → done) as a view — never as a metric. Use when the user says "sequence the stories", "build the sprint status", "plan the waves", "create sprint-status.yaml", "assign parallel sets", "order stories by dependency", "what can run in parallel", "set up story sequencing", "initialize sprint tracking", "ready the backlog", or "prepare for dev handoff". Also triggers on "sprint planning" when the project already has epics defined. SCOPE: SEQUENCING AND ORCHESTRATION ONLY. No velocity, no burndown, no committed points, no coverage metrics. Capacity is expressed as wave width (concurrent story count), not points. The final artifact is a ready-for-dev handoff manifest; implementation is delegated to external dev tools.
development
Distills ANY messy input — brain dump, transcript, long PRD, stakeholder notes, feature request, voice memo — into a tight five-field SPEC.md kernel that any downstream planning skill can consume. The five fields are: Problem, Capabilities, Constraints, Non-Goals, Success Metrics. Use when the user says "create a spec", "write a spec for", "distill this into a spec", "I have a brain dump", "turn this into something structured", "clean up these notes", "make a SPEC from", "I want to define the problem", "help me scope this", "summarize what we're building", "I have a PRD but need a kernel", "what are we actually solving?", or drops raw text/transcript and asks for structure. Also use when starting any new initiative and a clean shared definition is missing.