The canonical build chain is grill-with-docs → to-prd → to-issues → implement, with tdd as the red-green loop implement drives internally rather than a chain step of its own. - Update the chain diagram on grill-with-docs, to-prd, to-issues, and tdd. - Reframe tdd's "Where it fits": it's the engine inside the implement step, still independently reachable, no longer the terminal. - Point to-prd and to-issues at implement as the thing that builds the tickets, giving implement the inbound links it previously lacked. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
59 lines
3.5 KiB
Markdown
59 lines
3.5 KiB
Markdown
Quickstart:
|
|
|
|
```bash
|
|
npx skills add mattpocock/skills --skill=to-prd
|
|
```
|
|
|
|
```bash
|
|
npx skills update to-prd
|
|
```
|
|
|
|
[Source](https://github.com/mattpocock/skills/tree/main/skills/engineering/to-prd)
|
|
|
|
## What it does
|
|
|
|
`to-prd` turns the current conversation and your codebase understanding into a product requirements document, then publishes it to your issue tracker.
|
|
|
|
It does **not** interview you again. By the time you reach for it, the alignment work is done — `to-prd` synthesises what is already known rather than asking a fresh round of questions.
|
|
|
|
## When to reach for it
|
|
|
|
You invoke this by typing `/to-prd` — the agent won't reach for it on its own.
|
|
|
|
Reach for it once a change has been talked through and the domain language is settled, and you want that shared understanding written down as a spec before any code is written. If you *haven't* aligned yet, grill first — for that, use [grill-with-docs](https://aihero.dev/skills-grill-with-docs). To split the finished PRD into tickets, use [to-issues](https://aihero.dev/skills-to-issues).
|
|
|
|
## Prerequisites
|
|
|
|
`to-prd` publishes into your issue tracker, so [setup-matt-pocock-skills](https://aihero.dev/skills-setup-matt-pocock-skills) must have configured the tracker and triage labels for this repo first. It applies the `ready-for-agent` label itself — no separate triage pass needed.
|
|
|
|
## What the PRD includes
|
|
|
|
- **Problem statement** — what is broken or missing, and why it's worth solving, in the project's own vocabulary.
|
|
- **Solution** — the shape of the fix at a high level, before any implementation detail.
|
|
- **User stories** — an extensive, numbered list of the concrete behaviours the change must support, each one independently checkable.
|
|
- **Implementation decisions** — the choices already settled during the conversation, so they aren't relitigated later.
|
|
- **Testing decisions** — the seams the feature will be tested at, and what "done" looks like.
|
|
- **Out-of-scope items** — what this change deliberately does *not* cover, to keep the ticket bounded.
|
|
- **Further notes** — anything else worth carrying forward that doesn't fit the sections above.
|
|
|
|
## Deep modules
|
|
|
|
Before writing the PRD, `to-prd` sketches the **seams** at which the feature will be tested and looks for **deep module** opportunities — a lot of functionality hidden behind a small, stable interface. It prefers existing seams to new ones and the highest seam possible, ideally just one across the whole change.
|
|
|
|
That matters for agentic development: a good interface gives tests something durable to target, so the code underneath can change without the tests moving.
|
|
|
|
## It's working if
|
|
|
|
- It starts writing the PRD instead of asking you a fresh round of questions.
|
|
- It checks the seams with you before writing, and proposes as few as possible.
|
|
- The PRD comes back in your project's domain vocabulary, not generic boilerplate.
|
|
|
|
## Where it fits
|
|
|
|
`to-prd` is a step in the main build chain:
|
|
|
|
```txt
|
|
grill-with-docs → to-prd → to-issues → implement
|
|
```
|
|
|
|
Reach for it after the plan and domain language are resolved, and before you break the work into implementation tickets. Its key neighbours are [grill-with-docs](https://aihero.dev/skills-grill-with-docs), which sharpens the context so the PRD is precise, and [to-issues](https://aihero.dev/skills-to-issues), which turns the PRD into independently-grabbable issues for [implement](https://aihero.dev/skills-implement) to build. When you're unsure which skill or flow fits, [ask-matt](https://aihero.dev/skills-ask-matt) routes you.
|