APM

>Agent Skill

@yellinzero/aico-pm-prd-writing

skilldevelopment

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

apm::install
$apm install @yellinzero/aico-pm-prd-writing
apm::skill.md
---
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:**

1. **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

2. **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

3. **ALWAYS SAVE TO CORRECT PATH**:
   - Path: `docs/reference/pm/versions/{version-name}.md`
   - NO exceptions, NO other locations

4. **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

1. **Gather context**: Check `docs/reference/pm/` for existing product context
2. **Define problem & solution**: Start with clear problem statement and high-level solution
3. **Set boundaries**: Clearly separate Goals from Non-Goals
4. **Document requirements**: List functional requirements (FR-XXX format)
5. **Define success**: Set measurable success criteria
6. **Track unknowns**: Document open questions for later clarification
7. **Save PRD**: ALWAYS write to `docs/reference/pm/versions/{version-name}.md`

## PRD Template

```markdown
# [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:

1. User pain points must be documented
2. Success metrics must be defined
3. 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   |