planlisted
Install: claude install-skill melchimaelran/pact
# plan — spec to epics and stories
See [`workflow-map.md`](../../references/workflow-map.md) and
[`state-model.md`](../../references/state-model.md). Next step: `pact build`.
**Reuse-first** ([`reuse-first.md`](../../references/reuse-first.md)): plan from
the spec, `project.md`, and any existing `tasks/`. Do not re-derive settled
architecture. Pick the simplest epic/story structure that covers the spec.
## Progress tracking
Open a `TodoWrite` list, one item per phase.
## Phase 0 — schema gate
`pact schema --gate`. Mismatch -> `/pact:migrate`. No `.pact/` -> `/pact:init`.
## Phase 1 — input
- `$ARGUMENTS` is the path to a `spec.md` at `status: ready`. If it is `draft`,
stop and send the user to `pact spec` to finish it. If `planned` / `done`,
ask whether this is a re-plan.
- Read the spec, `project.md`, the constitution, `accepted` DRs.
- Confirmation mode: `[plan].confirmation` (`two-pass` default in `full`,
`one-pass` in `lite`); `--one-pass` overrides.
## Phase 2 — trivial-work shortcut
If the spec is `type: chore` or `type: docs` **and** the work is a single small
change with no code structure, do **not** create epics. Create one story directly
under a minimal plan folder (`tasks/<date>_<slug>/epics/01_<slug>/stories/01_*.md`)
with the acceptance criteria straight from the spec, set the spec to
`status: planned`, regenerate views, and hand off to `pact build`. Skip the rest.
## Phase 3 — epic breakdown
An epic is a **vertical slice of user-visible capabil