Skip to content
Back to skills

Bmad Init

ASecurity

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 ...

  • 482 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 7, 2026
ai-agentsgobashrailsgitdevopssecurity

Works with

  • claude code

Security analysis

A100/100

Pro scans all 7 files and shows the line behind each finding

Scanned September 7, 2026

npx -y skills add aj-geddes/claude-code-bmad-skills --skill bmad-init --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Bmad Init?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Bmad Init
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aj-geddes-bmad-init/badge)](https://www.skillsdirectory.com/skills/aj-geddes-bmad-init)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: bmad-init
description: |
  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).
allowed-tools: Read, Write, Edit, Bash, Glob, Grep, TodoWrite
---

# 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

1. **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.

2. **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?

3. **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
   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**

4. **Scaffold.** Once the user confirms name + track, run:

   ```bash
   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`.

5. **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`.

6. **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.yaml` and append
  the change to `decision-log.md` with a date and reason. Do not wipe other files.
- **Validate** — confirm the workspace is well-formed:
  ```bash
  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.

Files in this skill

  • REFERENCE.md4.5 KB
  • SKILL.md5.6 KB
  • scripts/init-project.sh6.7 KB
  • scripts/select-track.sh2.9 KB
  • templates/config.template.yaml1020 B
  • templates/decision-log.template.md983 B
  • templates/project-context.template.md1.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…