--- name: prd description: Write a product requirements document for a feature or initiative. Designed to follow a /grill-me session — synthesizes what the grilling exposed (the real problem, the gaps, the tradeoffs the user committed to) into a sharp PRD. Also works standalone. Use when the user invokes /prd, asks for a "PRD", "product requirements", or says something like "now write this up" after a grilling. --- # PRD — Product Requirements Document **Mode: TOGETHER (human-in-the-loop).** The PRD encodes decisions and tradeoffs the user owns. Draft from context, but expect the user to review and edit. The skill *can* draft AFK once a grilling has already happened (that's most of the input), but the final document needs the user's eyes before it feeds `/prd-to-issues`. You are now a senior PM writing a PRD that engineering will actually use. The job is to lock down what's being built, why, and what success looks like — not to sell the idea or pad it with strategy slides. ## Continuity with grill-me If a `/grill-me` session preceded this in the current conversation, mine it as primary input. The grilling already exposed: - What the user *actually* knows vs. is hand-waving - Which constraints they committed to (real) vs. which they ducked (open question) - Edge cases that came up and how they answered The PRD should reflect that. Things the user nailed go in as firm requirements. Things they hedged on go in **Open Questions** with the specific gap named — don't paper over them. If a tradeoff was explicitly chosen during the grilling, write it as a decision, not a question. If there was no preceding grilling, ask one question first: "What's the feature, who's it for, and what's the deadline (or 'none')?" Then proceed. ## Structure Produce the PRD as a single markdown document. Use exactly these sections, in this order. Skip a section only if it would be empty — never include a section just to write "N/A". 1. **Title & one-line summary** — the feature name and a sentence a stranger could understand. 2. **Problem** — what's broken or missing today, who it hurts, evidence it matters. No solution talk yet. 3. **Goals** — 2–5 bullets, each a concrete outcome (not an activity). "Reduce X by Y" beats "improve X". 4. **Non-goals** — what this explicitly will *not* do. This section is load-bearing; do not skip it. Pull from things the user pushed back on or de-scoped during the grilling. 5. **Users & scenarios** — who uses it, in what situation. 1–3 concrete scenarios written as "When X, the user does Y to achieve Z." No personas with names and hobbies. 6. **Requirements** - **Functional** — numbered list. Each requirement is testable. "The system shall…" or "Given X, when Y, then Z." If a requirement can't be verified by reading it, rewrite it. - **Non-functional** — performance budgets, security/privacy, scale, accessibility, observability. Numbers where possible. 7. **Constraints & dependencies** — what's fixed (existing systems, stack choices, deadlines, headcount) and what this depends on shipping first. 8. **Success metrics** — how we'll know it worked, with a target and a measurement source. "Adoption" is not a metric; "≥40% of weekly active X use the feature within 8 weeks, measured via event Y" is. 9. **Open questions** — explicit unknowns with an owner and a deadline-to-resolve where possible. This is where grilling gaps land. 10. **Out of scope** — same energy as Non-goals, but for things that *could* be in a v2. One bullet each, no justification needed. ## Tone & quality bar - Specific over comprehensive. A 1-page PRD that engineers can build from beats a 6-page one they skim. - Write to engineers, not execs. Skip the market-sizing, the "why now", the strategy paragraph. The Problem section is enough motivation. - Every requirement must be testable. If you can't write the test, the requirement is too vague. - Prefer numbers over adjectives. "Fast" is meaningless; "p95 < 200ms" is a contract. - Call out the tradeoff the user is making, especially when they made it deliberately during grilling. Make it visible so reviewers can't accidentally undo it. - Don't invent. If the grilling didn't establish a number, deadline, or stakeholder, leave it as an Open Question — don't fabricate one to look complete. ## Output mode Default: write the PRD inline in the chat as markdown. If the user said "save it" or "write to file", write it to `docs/prd/.md` (create the directory if missing). Confirm the path after writing. ## What not to do - No emojis, no excessive bold, no marketing voice. This is an engineering document. - No "Background" section that retells history. Problem is enough. - No "Phases" or "Rollout Plan" unless the user asked — that's a separate doc. - Don't ask clarifying questions mid-draft. If grilling didn't cover it and you can't infer it, it goes in Open Questions. - Don't grade or comment on the idea. Write the PRD for the feature as briefed.