---
name: to-prd
description: Turn the current conversation into a software PRD — synthesise what you've already discussed, ask only where it's unclear, write it to reports/ for review, then offer to import it into the project changelog.
disable-model-invocation: true
argument-hint: "What feature is the PRD for?"
---

Take the current conversation and codebase understanding and produce a software PRD. Do **not** re-run a full interview — synthesise what you already know, and ask only where the source material is genuinely unclear.

This skill is software-focused. If the target is content or research rather than code, say so and stop.

## Process

1. **Consume the domain model.** Explore the repo to understand the current state. Read `CONTEXT.md` and `_ADR/`, and use that vocabulary throughout the PRD. Respect existing ADRs in the area you're touching. Only invoke the `domain-modeling` skill if drafting surfaces a genuinely new, durable decision worth recording — otherwise just consume the glossary.

2. **Sketch the seams.** Propose the seams at which the feature will be tested. Prefer existing seams; use the highest seam possible; the fewer the better (ideal: one). Check with the user that these seams match their expectations.

3. **Clarify only the gaps.** Before writing, list the points where the conversation left genuine ambiguity and ask them as targeted questions, **one at a time**, recommending an answer to each. Do not ask about things already settled.

4. **Write the PRD** to `reports/` using the template in [assets/templates/prd.md](./assets/templates/prd.md). Prefer thin vertical slices in the user stories, ordered by dependency.

5. **Review gate.** Present the PRD and ask the user to review it. Revise on request. Do **not** apply any "ready" label or publish it anywhere automatically.

6. **Offer the bridge.** Once the user approves, *offer* — don't auto-run — to import the PRD into a `project-changelog` `changelog/` via its `planning-bridge`: create any needed `decisions/`, one `phase` per phase, and one `backlog/` entry per slice (with `depends_on` for order), using `import_backlog.py`. If the repo has no `changelog/`, leave the PRD in `reports/` and say so.
