
bmad-init
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).
- Installs
- 93
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/aj-geddes/claude-code-bmad-skills --skill bmad-init- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads bmad-init automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
BMAD Init — Workspace Scaffolder
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.
What it produces
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.
The three TRACKS (never numbered Levels)
| 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.
Workflow
-
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):
- One-line project description.
- Roughly how many distinct pieces of work / stories? (ranges are fine)
- Multiple teams or just one builder?
- Hard compliance / security / infra requirements?
-
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):
- compliance/infra = yes, or 30+ stories → Enterprise
- 10+ stories, or PRD/architecture clearly needed → BMad Method
- otherwise → Quick Flow
-
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.mdorproject-context.mdif they already contain content. It always (re)writesconfig.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 indecision-log.md. -
Hand off. Recommend the next planning step based on track:
- Quick Flow → tech-spec, then sprint-planning / story creation.
- BMad Method → product brief → PRD → architecture.
- Enterprise → product brief → PRD → architecture (+ security & DevOps planning).
Three intents
- Create — fresh workspace (the common case).
- Update — change the track or rename the project: edit
config.yamland append the change todecision-log.mdwith a date and reason. Do not wipe other files. - Validate — confirm the workspace is well-formed:
bash "${CLAUDE_PLUGIN_ROOT}/skills/bmad-init/scripts/init-project.sh" --validate --output "bmad-output"
Guardrails
- No numbered Levels anywhere — only the three named tracks.
- No story points, velocity, burndown. Delivery is count-based (stories remaining / completion rate). Story sizing target: small enough for one agent session (~2–8h); split anything larger.
- This skill stops at scaffolding. It hands off to other planning skills; it never implements, tests, lints, or builds.
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.
FAQ
What does the bmad-init skill do?
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).
How do I install bmad-init?
Run npx skills add https://github.com/aj-geddes/claude-code-bmad-skills --skill bmad-init in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/bmad-init/ (personal) or .claude/skills/bmad-init/ (project).
Which AI agents can use bmad-init?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is bmad-init safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains bmad-init?
It is published by aj-geddes in aj-geddes/claude-code-bmad-skills. It has 93 recorded installs.
More from aj-geddes/claude-code-bmad-skills
business-analyst
aj-geddes/claude-code-bmad-skills
Product discovery and requirements analysis specialist. Conducts stakeholder interviews, market research, problem discovery, and creates product briefs. Use for product brief, brainstorm, research, discovery, requirements gathering, problem analysis, user needs, competitive analysis, and setting foundation before product planning. Hands off to product manager when analysis complete.
product-manager
aj-geddes/claude-code-bmad-skills
Product requirements and planning specialist. Creates PRDs and tech specs with functional/non-functional requirements, prioritizes features using MoSCoW/RICE frameworks, breaks down epics into user stories, and ensures requirements are testable and traceable. Use for PRD creation, requirements definition, feature prioritization, tech specs, epics, user stories, and acceptance criteria.
system-architect
aj-geddes/claude-code-bmad-skills
Designs system architecture, selects tech stacks, defines components and interfaces, addresses non-functional requirements. Trigger words - architecture, system design, tech stack, components, scalability, security, API design, data model, NFR, patterns, microservices, monolith
ux-designer
aj-geddes/claude-code-bmad-skills
Designs user experiences, creates wireframes, defines user flows, ensures accessibility. Trigger keywords - UX design, wireframe, user flow, accessibility, WCAG, mobile-first, responsive, UI design, user journey, interface design, user experience, design system, component design, interaction design
creative-intelligence
aj-geddes/claude-code-bmad-skills
Facilitates structured brainstorming sessions, conducts comprehensive research, and generates creative solutions using proven frameworks. Trigger keywords - brainstorm, ideate, research, SCAMPER, SWOT, mind map, creative, explore ideas, market research, competitive analysis, innovation, problem solving, feature generation
scrum master
aj-geddes/claude-code-bmad-skills
Sprint planning and agile workflow specialist. Breaks epics into user stories, estimates complexity using story points, plans sprint iterations, and tracks velocity. Trigger keywords - sprint planning, user story, story points, velocity, backlog, sprint, epic breakdown, estimation, burndown, agile planning.
Popular code quality & workflow skills
grill-me
mattpocock/skills
A relentless interview to sharpen a plan or design.
improve-codebase-architecture
mattpocock/skills
Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
handoff
mattpocock/skills
Compact the current conversation into a handoff document for another agent to pick up.
domain-modeling
mattpocock/skills
Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.
codebase-design
mattpocock/skills
Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.
diagnosing-bugs
mattpocock/skills
Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.