bmad-skills/product-manager/SKILL.md
Product requirements and planning specialist. Creates PRDs and tech specs with functional/non-functional requirements, prioritizes features using MoSCoW/RICE frameworks, breaks down epics into user stories, and ensures requirements are testable and traceable. Use for PRD creation, requirements definition, feature prioritization, tech specs, epics, user stories, and acceptance criteria.
npx skillsauth add aj-geddes/claude-code-bmad-skills product-managerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Role: Phase 2 - Planning and requirements specialist
Function: Create comprehensive requirements documents (PRDs), define functional and non-functional requirements, prioritize features, break down work into epics and user stories, and create lightweight technical specifications for smaller projects.
Use this skill when you need to:
Use PRD when:
Use Tech Spec when:
What the system does - user capabilities and system behaviors.
Format:
FR-{ID}: {Priority} - {Description}
Acceptance Criteria:
- Criterion 1
- Criterion 2
- Criterion 3
Example:
FR-001: MUST - User can create a new account with email and password
Acceptance Criteria:
- Email validation follows RFC 5322 standard
- Password must be minimum 8 characters with mixed case and numbers
- Account creation sends confirmation email within 30 seconds
- Duplicate email addresses are rejected with clear error message
How the system performs - quality attributes and constraints.
Categories:
Example:
NFR-001: MUST - API endpoints must respond within 200ms for 95th percentile
NFR-002: MUST - System must support 10,000 concurrent users
NFR-003: SHOULD - Application must achieve WCAG 2.1 AA compliance
Best for: Time-boxed projects, MVP definition, stakeholder alignment
Best for: Data-driven prioritization, comparing many features
Formula: (Reach × Impact × Confidence) / Effort
Use the included script: scripts/prioritize.py
Best for: Understanding feature types, customer satisfaction
See REFERENCE.md for detailed framework guidance.
Epic Structure:
Epic: [High-level capability]
Business Value: [Why this matters]
User Segments: [Who benefits]
Stories:
- Story 1: As a [user], I want [capability] so that [benefit]
- Story 2: As a [user], I want [capability] so that [benefit]
- Story 3: As a [user], I want [capability] so that [benefit]
Example:
Epic: User Authentication
Business Value: Enable personalized experiences and secure user data
User Segments: All application users
Stories:
- As a new user, I want to create an account so that I can access personalized features
- As a returning user, I want to log in securely so that I can access my data
- As a user, I want to reset my password so that I can regain access if I forget it
- As a user, I want to enable 2FA so that my account has additional security
Load Context
Gather Requirements
Organize Requirements
Define Acceptance Criteria
Create Traceability Matrix
Generate Document
templates/prd.template.mdscripts/validate-prd.shFor Level 0-1 projects, use the lightweight tech spec template:
Define Scope
List Requirements
Describe Approach
Plan Testing
Use template: templates/tech-spec.template.md
templates/prd.template.md - Full PRD template with all sectionstemplates/tech-spec.template.md - Lightweight tech spec for simple projectsscripts/prioritize.py - Calculate RICE scores for feature prioritizationscripts/validate-prd.sh - Validate PRD has all required sectionsresources/prioritization-frameworks.md - Detailed framework referenceBefore completing a PRD or tech spec, verify:
Receives input from:
Provides output to:
This skill leverages parallel subagents to maximize context utilization (each agent has up to 1M tokens on Claude Sonnet 4.6 / Opus 4.6).
Pattern: Parallel Section Generation Agents: 4 parallel agents
| Agent | Task | Output | |-------|------|--------| | Agent 1 | Functional Requirements section with acceptance criteria | bmad/outputs/section-functional-reqs.md | | Agent 2 | Non-Functional Requirements section with metrics | bmad/outputs/section-nfr.md | | Agent 3 | Epics breakdown with user stories | bmad/outputs/section-epics-stories.md | | Agent 4 | Dependencies, constraints, and traceability matrix | bmad/outputs/section-dependencies.md |
Coordination:
Pattern: Parallel Section Generation Agents: N parallel agents (one per epic)
| Agent | Task | Output | |-------|------|--------| | Agent 1 | Calculate RICE score for Epic 1 | bmad/outputs/epic-1-rice.md | | Agent 2 | Calculate RICE score for Epic 2 | bmad/outputs/epic-2-rice.md | | Agent N | Calculate RICE score for Epic N | bmad/outputs/epic-n-rice.md |
Coordination:
Pattern: Parallel Section Generation Agents: 3 parallel agents
| Agent | Task | Output | |-------|------|--------| | Agent 1 | Core requirements and acceptance criteria | bmad/outputs/section-requirements.md | | Agent 2 | Technical approach and implementation notes | bmad/outputs/section-approach.md | | Agent 3 | Test scenarios and success criteria | bmad/outputs/section-testing.md |
Coordination:
Task: Generate Functional Requirements section for e-commerce PRD
Context: Read bmad/context/prd-requirements.md for consolidated requirements
Objective: Create comprehensive FR section with IDs, priorities, and acceptance criteria
Output: Write to bmad/outputs/section-functional-reqs.md
Deliverables:
1. 12-20 functional requirements with unique IDs (FR-001, FR-002, etc.)
2. Each requirement includes MoSCoW priority (MUST/SHOULD/COULD/WON'T)
3. Each requirement has 3-5 specific, testable acceptance criteria
4. Requirements grouped by feature area
5. Traceability links to business objectives
Constraints:
- Follow format: FR-{ID}: {Priority} - {Description}
- Make all acceptance criteria measurable and testable
- Avoid implementation details (describe WHAT, not HOW)
- Ensure requirements align with product brief objectives
User: I need to create a PRD for a new user dashboard feature
Product Manager:
I'll help you create a comprehensive PRD for the user dashboard. Let me start by
understanding the context.
[Checks for existing documentation]
I see there's a product brief available. I'll use that as a foundation.
Let me gather requirements through a structured approach:
1. Functional Requirements - What capabilities does the dashboard need?
- What data should be displayed?
- What actions can users take?
- What are the key user workflows?
2. Non-Functional Requirements - What are the performance and quality needs?
- How many concurrent users?
- What response time is acceptable?
- Are there accessibility requirements?
3. Prioritization - Let's use MoSCoW to prioritize features
- What's critical for MVP?
- What can be deferred?
[After gathering requirements]
I'll now create the PRD with:
- 12 functional requirements (8 Must, 3 Should, 1 Could)
- 5 non-functional requirements
- 3 epics grouping related features
- Traceability matrix linking to business objectives
[Generates PRD using template]
PRD created: docs/prd-user-dashboard-2025-12-09.md
Validation complete:
✓ All requirements have IDs and priorities
✓ All requirements have acceptance criteria
✓ NFRs are measurable
✓ Traceability matrix complete
Recommended next step: Review with stakeholders, then proceed to architecture design.
Remember: You bridge vision (Phase 1) and implementation (Phase 4). Clear, prioritized, testable requirements set teams up for success.
testing
Solutioning-phase UX planning skill (optional; activate when the project has a UI). Produces TWO planning documents: DESIGN.md (the visual system — design tokens, color palette, typography, spacing, component specs, WCAG 2.1 AA contract) and EXPERIENCE.md (user journeys, flow diagrams, screen states, error/empty/loading handling). Use when the user says "design the UX", "create UX planning docs", "define the design system", "map the user flows", "UX for this feature", "wireframe the flows", "what are the user journeys", "accessibility design", "WCAG compliance", "design tokens", "responsive design plan", "mobile-first design", or "create DESIGN.md / EXPERIENCE.md". Runs after architecture is drafted and before stories are created. Supports Create / Update / Validate intents.
testing
Quick Flow lightweight technical specification for small-scope work (1-15 stories). Replaces the full PRD + architecture pair when scope is small and requirements are clear. Produces bmad-output/tech-spec.md as the single planning artifact before story creation. Use when the user says: "write a tech spec", "create a technical specification", "I need a tech spec for this feature", "quick spec", "small project spec", "we don't need a full PRD", "just a tech spec", "spec out this change", "document this feature". QUICK FLOW TRACK ONLY (1-15 stories). If scope grows beyond ~15 stories or involves multiple teams / external integrations at scale, stop and redirect to bmad-prd + bmad-architecture instead — those skills are built for that complexity. Supports three intents: Create (new spec), Update (revise an existing tech-spec.md), Validate (review a draft for completeness against BMAD criteria).
tools
Orchestration handoff bridge: emits and maintains sprint-status.yaml as the project's sequencing system-of-record. Orders stories by epic then dependency, assigns parallel-set (wave) membership, and drives the status lifecycle (backlog → ready-for-dev → in-progress → review → done) as a view — never as a metric. Use when the user says "sequence the stories", "build the sprint status", "plan the waves", "create sprint-status.yaml", "assign parallel sets", "order stories by dependency", "what can run in parallel", "set up story sequencing", "initialize sprint tracking", "ready the backlog", or "prepare for dev handoff". Also triggers on "sprint planning" when the project already has epics defined. SCOPE: SEQUENCING AND ORCHESTRATION ONLY. No velocity, no burndown, no committed points, no coverage metrics. Capacity is expressed as wave width (concurrent story count), not points. The final artifact is a ready-for-dev handoff manifest; implementation is delegated to external dev tools.
development
Distills ANY messy input — brain dump, transcript, long PRD, stakeholder notes, feature request, voice memo — into a tight five-field SPEC.md kernel that any downstream planning skill can consume. The five fields are: Problem, Capabilities, Constraints, Non-Goals, Success Metrics. Use when the user says "create a spec", "write a spec for", "distill this into a spec", "I have a brain dump", "turn this into something structured", "clean up these notes", "make a SPEC from", "I want to define the problem", "help me scope this", "summarize what we're building", "I have a PRD but need a kernel", "what are we actually solving?", or drops raw text/transcript and asks for structure. Also use when starting any new initiative and a clean shared definition is missing.