/conclave-planning [—all]
The primary command after /conclave-init. On the first run it generates the full backlog and architecture; on every run it facilitates Sprint Planning and activates a sprint.
/conclave-planning # plan Sprint 1 (generate + plan on first run)
/conclave-planning --all # plan ALL sprints from the product document in one passThis is one of the two structural Scrum gates Conclave enforces — required in every profile, cannot be skipped.
Two phases
Phase A — Generation (first run only)
Runs when conclave/product/backlog.md doesn’t exist yet or has fewer than 3 stories.
The command reads product_doc_path from config.md and spawns two AI agents in parallel:
- Product Manager — produces the full Product Backlog (stories with MoSCoW priority, T-shirt estimates, sprint groupings) plus Gherkin acceptance criteria (minimum 2 Given/When/Then scenarios per story).
- Tech Lead — produces the Architectural Foundation: stack confirmation, component diagram, ADRs, cross-cutting concerns, and a technical risk table.
All generated prose is written in the project_language set during /conclave-init.
Before Phase A runs, the command asks:
- Sprint count target — how many sprints to map the product document to (only relevant with
--all). - Sprint 1 story count — how many stories for Sprint 1 (default 4).
- Hard constraints — any deadlines, banned dependencies, or compliance requirements.
Phase A produces:
conclave/product/backlog.md— the full ordered Product Backlog.conclave/product/architecture.md— the Architectural Foundation with ADRs.conclave/sprints/SPRINT-001/stories/<PREFIX>-NNN-<slug>.md— one file per story (usingstory_prefixfromconfig.md).conclave/sprints/SPRINT-001/acceptance/AC-<PREFIX>-NNN.md— Gherkin criteria per story.conclave/sprints/SPRINT-001/spec.mdandmeta.mdwithstatus: draft.
Phase B — Planning ceremony (always runs)
Runs every time, after Phase A when applicable.
- Locates the draft sprint(s). Without
--all: the lowest-numberedSPRINT-NNNwithstatus: draft. With--all: all sprints withstatus: draft, ordered by number. - Loads context:
config.md, roster, backlog, DoR, architecture, sprint files. - Asks the team for inputs — depth scales with the profile:
- Always: sprint dates, facilitator name.
- Full-scrum: per-dev capacity adjustments, carryover commitments.
- Delegates in two waves — PM + TL in parallel first (Wave 1), then SM alone (Wave 2):
- Wave 1 — TL validates feasibility and assigns a
discipline(frontend | backend | qa | design | devops | multi) to each story; PM validates scope. - Wave 2 — SM assigns each story to a roster member whose
Disciplinematches.
- Wave 1 — TL validates feasibility and assigns a
- Reconciles outputs: PM scope swaps (surfaced for accept/reject), DoR validation, coverage gap resolution, capacity check (warns on over-commit > 20%).
Multi-sprint mode — --all
With --all:
- Sprint 1 (lowest-numbered draft) →
status: active. Full interactive planning applies. - Remaining sprints → stay
status: draft, but receive a fullplanning.md, story assignments, and discipline tags. They are pre-planned and ready to activate when the preceding sprint closes.
Useful after /conclave-init when you have a product document covering multiple sprints — plan everything upfront knowing the plan will be refined when each sprint actually activates.
What it produces
conclave/sprints/SPRINT-NNN/meta.mdupdated withstatus: active(first sprint) orstatus: draft(subsequent with--all), target dates.conclave/sprints/SPRINT-NNN/spec.mdupdated with assignees, disciplines.- Each
stories/<PREFIX>-NNN-*.mdfrontmatter updated:assigneeanddisciplineset,status: ready. conclave/sprints/SPRINT-NNN/planning.md— the meeting record.conclave/product/backlog.mdupdated to show selected stories asin-progressin the active sprint.
Requirements
conclave/config.mdmust exist (run/conclave-initfirst).product_doc_pathinconfig.mdmust point to an existing file (Phase A reads it).
Profile awareness
| Profile | Capacity questions | Backlog grooming | Carryover questions |
|---|---|---|---|
lean | skipped | absorbed into planning | skipped |
full-scrum | asked per-dev | separate (assumed already done) | asked |
custom | depends on flags | depends on flags | depends on flags |
Guardrails
- Refuses if
conclave/config.mddoesn’t exist (“run/conclave-initfirst”). - Refuses if
product_doc_pathis empty or the file doesn’t exist (Phase A needs it). - Refuses to run if no sprint exists in
draft. - Cannot re-run on the same sprint after it goes
active. - With
--all, already-activesprints are skipped silently. - Never commits.
After it runs
Each assigned dev runs /conclave-dev <PREFIX>-NNN for their story.