/wish — Plan Before You Build
Convert a validated idea into an executable wish document at.genie/wishes/<slug>/WISH.md.
When to Use
- User describes non-trivial work that needs planning before implementation
- User wants to scope, decompose, or formalize a feature/change
- Prior
/brainstormoutput exists and needs to become actionable
Flow
- Gate check — if the request is fuzzy, auto-trigger
/brainstormfirst. - Align intent — ask one question at a time until success criteria are clear.
- Define scope — explicit IN and OUT lists (OUT cannot be empty).
- Decompose into groups — split into small, loosely coupled execution groups.
- Write wish — create
.genie/wishes/<slug>/WISH.md. - Add verification — every group gets acceptance criteria + a validation command.
- Declare dependencies —
depends-onbetween groups and cross-wish dependencies. - Handoff — auto-invoke
/reviewon the WISH.md.
Wish Document Sections
| Section | Required | Notes |
|---|---|---|
| Status / Slug / Date | Yes | Status: DRAFT on creation |
| Summary | Yes | 2–3 sentences: what and why |
| Scope IN / OUT | Yes | OUT cannot be empty |
| Decisions | Yes | Key choices with rationale |
| Success Criteria | Yes | Checkboxes, each testable |
| Execution Strategy | Yes | Wave-based parallel/sequential plan |
| Execution Groups | Yes | Goal, deliverables, acceptance criteria, validation |
| Dependencies | No | depends-on / blocks using slug |
| QA Criteria | No | Post-merge verification |
| Assumptions / Risks | No | Flag what could invalidate the plan |
Execution Strategy
Every wish must define waves — this forces the planner to think about ordering, parallelism, and dependencies upfront:Rules
- No implementation during
/wish— planning only - No vague tasks (“improve everything”) — every task must be testable
- Keep tasks bite-sized and independently shippable
- Declare cross-wish dependencies early
- OUT scope must contain at least one concrete exclusion