--- name: prd-creator description: This skill helps PMs draft lightweight PRDs. It should be used when a PM wants to define a new feature, brainstorm requirements, or prep for sprint planning. Triggers include "I have a feature idea", "help me write a PRD", "let's break this into stories", or "what do I need for sprint planning". Optimized for speed — generates minimal viable documentation through conversation, not heavy templates. --- # PRD Creator ## Philosophy We document for **alignment**, not approval. A PRD answers: 1. What are we building and why? 2. Who is it for? 3. How do we know it worked? 4. What's the smallest thing we can ship? 5. Any compliance blockers? ## Workflow Modes ### Discovery Mode When PM has a rough idea, guide them through conversationally: 1. **Problem** — "What's the user pain or opportunity?" 2. **Evidence** — "How do you know this matters?" (even anecdotal is fine) 3. **Why now?** — "Why this over other things we could build? What's the cost of waiting?" 4. **Persona** — "Who specifically has this problem?" 5. **Success** — "If this works, what changes? How will we measure it?" 6. **First slice** — "What's the smallest version that tests the hypothesis?" 7. **Risks** — "Any compliance, security, or regulatory concerns? Any technical blockers?" Don't ask all at once. Have a conversation. Fill gaps with reasonable assumptions and flag them as open questions. See [references/examples.md](references/examples.md) for a sample Discovery conversation. ### Draft Mode When ready to write, use `assets/prd-template.md`. The template includes: - **Overview** — What the feature does and why it matters - **Background** — Context, research, and strategic rationale - **Goals & Success Metrics** — Measurable outcomes and targets - **User Stories** — Stories with US-### IDs in As a / I want / So that format - **Requirements** — Functional and non-functional requirements - **User Experience** — Key workflows, edge cases, and error states - **Technical Considerations** — Dependencies, constraints, architecture - **Acceptance Criteria** — Testable conditions for completion - **Open Questions** — Unresolved items with Q-### IDs - **Out of Scope** — What's explicitly excluded - **Timeline & Milestones** — Key dates and phases - **Risks & Mitigations** — What could go wrong and how to address it ### Story Expansion Mode Use this mode to add acceptance criteria to stories before exporting to Jira. The PM workflow is: 1. **Draft PRD** → Write stories in user story format (As a / I want / so that) 2. **Expand stories** → Add acceptance criteria using this mode 3. **Export to Jira** → Use `jira-prd-export` to create epics/stories with full ACs **To expand a story:** 1. Take an existing user story (e.g., US-001) 2. Generate acceptance criteria in Given/When/Then format 3. Use AC-###.# IDs (e.g., AC-001.1, AC-001.2) 4. Reference `references/story-patterns.md` for common patterns See [references/examples.md](references/examples.md) for story expansion examples. ### Epic Generation Mode When organizing stories into epics: - 1 epic = 1-2 sprints of work max - Group related user stories under a theme - Each epic gets a clear objective and success criteria See [references/examples.md](references/examples.md) for epic format example. ## Interacting with Codebase When PM asks about existing features or feasibility: 1. Search codebase for relevant files 2. Summarize what exists in plain language 3. Note integration points or constraints 4. Don't over-engineer — flag technical questions for eng ## Output Formats | Need | Output | |------|--------| | Quick alignment | Markdown in chat, no file needed | | Sprint planning | PRD file → `confluence-prd-export` → `jira-prd-export` | | Symphony pipeline | PRD file → `prd-analyst` → `requirements.json` | ## ID Conventions Consistent IDs enable traceability through the Symphony pipeline: | Type | Format | Example | |------|--------|---------| | User Story | US-### | US-001, US-002 | | Acceptance Criteria | AC-###.# | AC-001.1, AC-001.2 | | Open Question | Q-### | Q-001, Q-002 | ## Integration with Symphony PRDs created with this skill feed into Symphony's planning pipeline: ``` prd-creator → PRD.md → prd-analyst → requirements.json → plan-writer → implementation-plan.md ``` The `prd-analyst` agent extracts: - User stories → `user_stories[]` - Acceptance criteria → `acceptance_criteria[]` - Success metrics → `success_metrics[]` - Open questions → `open_questions[]` - Risks and constraints → `constraints[]` ## Task Tracking Use TodoWrite to track progress through each workflow mode. ### Discovery Mode ```json TodoWrite([ {"content": "Understand the problem and user pain", "status": "pending", "activeForm": "Understanding the problem"}, {"content": "Gather evidence for why this matters", "status": "pending", "activeForm": "Gathering evidence"}, {"content": "Identify target persona(s)", "status": "pending", "activeForm": "Identifying personas"}, {"content": "Define success metrics", "status": "pending", "activeForm": "Defining success metrics"}, {"content": "Scope the first slice / MVP", "status": "pending", "activeForm": "Scoping MVP"}, {"content": "Identify risks and compliance concerns", "status": "pending", "activeForm": "Identifying risks"} ]) ``` ### Draft Mode ```json TodoWrite([ {"content": "Write Overview section", "status": "pending", "activeForm": "Writing Overview"}, {"content": "Write Background section", "status": "pending", "activeForm": "Writing Background"}, {"content": "Write Goals & Success Metrics", "status": "pending", "activeForm": "Writing Goals & Success Metrics"}, {"content": "Write User Stories with US-### IDs", "status": "pending", "activeForm": "Writing User Stories"}, {"content": "Write Requirements (Functional + Non-Functional)", "status": "pending", "activeForm": "Writing Requirements"}, {"content": "Write User Experience (Workflows, Edge Cases)", "status": "pending", "activeForm": "Writing User Experience"}, {"content": "Write Technical Considerations", "status": "pending", "activeForm": "Writing Technical Considerations"}, {"content": "Write Acceptance Criteria", "status": "pending", "activeForm": "Writing Acceptance Criteria"}, {"content": "Document Open Questions with Q-### IDs", "status": "pending", "activeForm": "Documenting questions"}, {"content": "Define Out of Scope", "status": "pending", "activeForm": "Defining Out of Scope"}, {"content": "Write Risks & Mitigations", "status": "pending", "activeForm": "Writing Risks & Mitigations"} ]) ``` ### Story Expansion Mode ```json TodoWrite([ {"content": "Select user story to expand", "status": "pending", "activeForm": "Selecting story"}, {"content": "Generate acceptance criteria (Given/When/Then)", "status": "pending", "activeForm": "Generating acceptance criteria"}, {"content": "Assign AC-###.# IDs", "status": "pending", "activeForm": "Assigning AC IDs"}, {"content": "Review against story-patterns.md", "status": "pending", "activeForm": "Reviewing patterns"} ]) ``` Mark each task completed only after the PM confirms alignment. For Discovery Mode, tasks may be revisited as the conversation evolves. ## Keep It Light - Keep to as few pages as is feasible - Assumptions are fine — flag them as Q-### items - Details emerge in Story Expansion Mode - The AI can regenerate/expand sections later - Perfect is the enemy of shipped