| name | aico-pm-prd-writing |
| description | Create comprehensive Product Requirements Documents (PRD) that define what to build and why, focusing on goals, scope, user stories, and success criteria without implementation details.
Use this skill when:
- User asks to "write a PRD", "create PRD", "write requirements document"
- User mentions "requirements document", "product requirements", "product spec"
- Running /pm.plan command to create version planning document
- Starting a new product, major feature, or initiative that needs formal requirements
- Need to document goals, scope, user stories, functional requirements, and success criteria
Output: ALWAYS write PRD files to docs/reference/pm/versions/{version-name}.md
|
PRD Writing
โ ๏ธ CRITICAL RULES - READ FIRST
BEFORE doing anything, you MUST:
-
CHECK EXISTING FILES:
- Look in
docs/reference/pm/versions/ directory
- If version file already exists, READ it first and ask user if they want to update it
- DO NOT create duplicate version files
-
ALWAYS USE THIS SKILL:
- When user says "write PRD", "create PRD", "write requirements" โ USE THIS SKILL
- DO NOT write PRD files directly without using this skill
- This skill ensures proper format and validation
-
ALWAYS SAVE TO CORRECT PATH:
- Path:
docs/reference/pm/versions/{version-name}.md
- NO exceptions, NO other locations
-
READ CONSTITUTION FIRST:
- ALWAYS read
docs/reference/pm/constitution.md before writing PRD
- Use constraints and domain info from constitution
Language Configuration
Before generating any content, check aico.json in project root for language field to determine the output language. If not set, default to English.
Process
- Gather context: Check
docs/reference/pm/ for existing product context
- Define problem & solution: Start with clear problem statement and high-level solution
- Set boundaries: Clearly separate Goals from Non-Goals
- Document requirements: List functional requirements (FR-XXX format)
- Define success: Set measurable success criteria
- Track unknowns: Document open questions for later clarification
- Save PRD: ALWAYS write to
docs/reference/pm/versions/{version-name}.md
PRD Template
# [Feature Name] PRD
> Project: [project-name]
> Created: YYYY-MM-DD
> Last Updated: YYYY-MM-DD
## 1. Overview
- Problem statement
- Proposed solution (high-level)
- Success metrics
## 2. Background
- Current state
- User pain points
- Market context (if relevant)
## 3. Goals & Non-Goals
### Goals
- What this feature WILL accomplish
### Non-Goals
- What this feature will NOT address
## 4. User Stories
[Link to or embed user stories]
## 5. Functional Requirements
- FR-001: [Requirement description]
- FR-002: [Requirement description]
## 6. User Experience
- Key user flows
- Interaction patterns
- Edge cases
## 7. Success Criteria
- Measurable outcomes
- Acceptance criteria
## 8. Open Questions
- Unresolved decisions
- Items needing clarification
Key Rules
- ALWAYS focus on WHAT to build, NOT HOW to implement
- MUST include quantifiable success metrics
- ALWAYS explicitly state what's out of scope in Non-Goals
- MUST save output to
docs/reference/pm/versions/ directory
Common Mistakes
- โ Include implementation details โ โ
Focus on WHAT, not HOW
- โ Vague success metrics โ โ
Quantifiable outcomes
- โ Missing non-goals โ โ
Explicitly state what's out of scope
Iron Law
NO PRD WITHOUT VALIDATED REQUIREMENTS
This rule is non-negotiable. Before writing PRD:
- User pain points must be documented
- Success metrics must be defined
- Scope must be explicitly approved by user
Rationalization Defense
| Excuse | Reality |
|---|
| "Requirements are clear enough" | Implicit requirements cause scope creep |
| "We can refine the PRD later" | Late changes cost 10x more to implement |
| "User will accept anything" | Users always have hidden expectations |
| "It's just a small feature" | Small features grow into big problems |