- name
- plan-to-beads
- description
- Translate a polished markdown plan into self-contained beads in .beads/beads.jsonl. Treat this as a distinct translation problem, not task extraction. Use after /plan-synthesize produces a stable hybrid plan.
- argument-hint
- <plan-file>
# /plan-to-beads — translate plan → executable memory
Bead space is different from plan space. A beautiful plan does not
automatically produce a good bead graph. **Treat this as a
translation problem:** every rich-in-context element in the plan must
end up embedded in a bead, so a fresh agent can execute the bead
without reopening the plan.
Plan file: **$ARGUMENTS** (e.g.
`.flywheel/plans/2026-04-20-async-validation-hybrid.md`).
## Prompt
Use the verbatim prompt at `.flywheel/prompts/plan-to-beads.md`.
Point it at `$ARGUMENTS`.
## What "good" looks like
Each new bead in `.beads/beads.jsonl` must have:
- `id` with prefix `fg-` (numbering continues from the last existing
bead; preserve `fg-0`).
- `description` rich enough to execute without the plan — embed
rationale, acceptance criteria, failure modes, invariants touched.
- `tests` populated with concrete unit and e2e obligations.
- correct `depends_on` / `blocks` edges.
- `labels` that reflect subsystem (`core`, `executor`, `tools`,
`models`, `permissions`, `sandbox`, `persistence`, `ui`, …).
- `priority` on P0–P4 (0 = critical, 4 = backlog).
## What **NOT** to do
- Don't write pseudo-beads in a markdown document. Edit
`.beads/beads.jsonl` directly.
- Don't simplify. If unsure, include more context in the description,
not less.
- Don't lose features during translation. Run Operator 4
(plan-to-beads transfer audit) afterwards:
`.flywheel/operators/4-plan-to-beads-transfer-audit.md`.
## After
Run `/polish-beads` 4–6 times before any implementation.
GitHub에서 보기