Claude Code Plugins

Community-maintained marketplace

Feedback

generate-prd

@jayprimer/ppt
0
0

Generate or update PRD documents interactively with the user. Use this skill when the user wants to create new product requirements, refine existing PRD docs, or document a new feature. Asks clarifying questions iteratively to produce complete, accurate requirements.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name generate-prd
description Generate or update PRD documents interactively with the user. Use this skill when the user wants to create new product requirements, refine existing PRD docs, or document a new feature. Asks clarifying questions iteratively to produce complete, accurate requirements.

Generate PRD

Interactively create or update Product Requirements Documents through guided conversation with the user.

When to Use

  • User wants to document a new feature or product
  • User has a vague idea that needs refinement
  • Existing PRD needs expansion or clarification
  • Before starting implementation to ensure clear requirements

Approach

Interactive and Iterative:

  • Never assume - always ask
  • Ask one focused question at a time (or small related group)
  • Build understanding incrementally
  • Validate assumptions before documenting
  • Refine through multiple rounds

Workflow

Step 1: Understand Intent

Determine what the user wants:

  1. New PRD - Creating from scratch
  2. Update PRD - Modifying existing document
  3. Expand PRD - Adding detail to existing section

Ask: "Are you creating a new feature/product, or updating an existing PRD?"

If updating, read the existing PRD first.

Step 2: Gather Core Concept

Start with the big picture:

Questions to ask:

  • "What problem does this solve?" / "Why is this needed?"
  • "Who is this for?" (target users/personas)
  • "What's the one-sentence description?"

Don't proceed until you have:

  • Clear problem statement
  • Target audience
  • Core value proposition

Step 3: Define Scope

Clarify boundaries iteratively:

Questions to ask:

  • "What are the must-have features?" (MVP scope)
  • "What is explicitly out of scope?"
  • "Are there related features we should NOT include?"
  • "What existing functionality does this interact with?"

Refine with follow-ups:

  • "You mentioned X - does that include Y?"
  • "When you say 'users can do Z', do you mean all users or specific roles?"
  • "Should this work on mobile/desktop/both?"

Step 4: Detail Requirements

For each feature/requirement, ask:

Functional:

  • "What happens when the user does X?"
  • "What inputs are required?"
  • "What outputs/results should they see?"
  • "What are the error cases?"

Non-functional:

  • "Any performance requirements?" (response time, throughput)
  • "Security considerations?" (auth, permissions, data handling)
  • "Scalability needs?" (users, data volume)

Prioritization:

  • "Is this a must-have, should-have, or nice-to-have?"
  • "What's the relative priority between X and Y?"

Step 5: Validate Understanding

Before writing, confirm understanding:

"Let me summarize what I understand:

**Problem:** [problem statement]
**Solution:** [high-level approach]
**Users:** [target audience]

**Core Features:**
1. [feature 1]
2. [feature 2]

**Out of Scope:**
- [exclusion 1]

Does this accurately capture your requirements?"

Ask for corrections before proceeding.

Step 6: Draft PRD

Create or update docs/1-prd/{feature-name}.md:

# {Feature Name}

## Overview
Brief description of the feature and its purpose.

## Problem Statement
What problem this solves and why it matters.

## Target Users
Who this is for and their needs.

## Requirements

### Functional Requirements
| ID | Requirement | Priority |
|----|-------------|----------|
| FR-01 | Description | Must-have |
| FR-02 | Description | Should-have |

### Non-Functional Requirements
| ID | Requirement | Target |
|----|-------------|--------|
| NFR-01 | Performance | < 200ms response |
| NFR-02 | Security | Role-based access |

## User Stories
- As a [user], I want to [action] so that [benefit]

## Acceptance Criteria
- [ ] Criterion 1
- [ ] Criterion 2

## Out of Scope
- What is explicitly NOT included

## Dependencies
- Other features or systems this depends on

## Open Questions
- Unresolved items needing decision

Step 7: Review and Refine

Present draft to user:

"Here's the draft PRD. Please review:

[Show key sections]

Questions:
1. Is the scope correctly captured?
2. Are the priorities right?
3. Anything missing or incorrect?"

Iterate until user approves:

  • Make requested changes
  • Ask follow-up questions if changes are unclear
  • Re-validate after significant changes

Step 8: Finalize

Once approved:

  1. Write final version to docs/1-prd/
  2. Confirm file location with user
  3. Suggest next steps (analyze-gaps, sync-planning)

Question Patterns

Clarifying vague statements:

User Says Ask
"It should be fast" "What response time is acceptable? Under 1 second? 200ms?"
"Users can manage X" "What actions specifically? Create, edit, delete, view?"
"It needs to be secure" "What security level? Authentication? Authorization? Encryption?"
"Like feature Y" "Which aspects of Y? The UI, the workflow, the data model?"

Uncovering hidden requirements:

  • "What happens if the user does X incorrectly?"
  • "Who approves/reviews this action?"
  • "Is there an audit trail needed?"
  • "What notifications should be sent?"
  • "How does this affect existing data?"

Resolving ambiguity:

  • "You mentioned both A and B - are these the same thing or different?"
  • "Should this happen automatically or require user action?"
  • "Is this per-user, per-organization, or global?"

Anti-patterns to Avoid

Don't Do Instead
Assume requirements Ask explicitly
Write long PRD before validating Validate incrementally
Ask too many questions at once One topic at a time
Use technical jargon Match user's language
Skip edge cases Ask about errors/exceptions
Guess priorities Ask user to prioritize

Example Conversation Flow

User: I want to add a search feature

Claude: I'll help you define the search feature. First, a few questions:
        1. What content will users be searching? (products, documents, users, etc.)
        2. Who needs this search capability?

User: Users need to search through their documents

Claude: Got it - document search for users. To understand the scope:
        - Should this be full-text search or just by title/metadata?
        - Any filters needed? (date, type, author)

User: Full-text, and yes filter by date and document type

Claude: Clear. A few more details:
        - How fast should results appear? Real-time as they type, or after submit?
        - How many documents might a user have? (affects performance needs)

User: Real-time would be nice. Maybe up to 1000 docs per user.

Claude: Let me summarize before drafting:

        **Feature:** Full-text document search
        **Users:** All users searching their own documents
        **Scope:**
        - Full-text search with real-time results
        - Filters: date range, document type
        - Scale: up to 1000 docs per user

        **Out of scope** (confirm):
        - Searching other users' documents
        - Advanced query syntax

        Does this capture it correctly?

User: Yes, that's right

Claude: [Drafts PRD and presents for review]
        [Iterates based on feedback]
        [Writes final version to docs/1-prd/document-search.md]

Integration with Other Skills

After generate-prd Use
analyze-gaps Compare new PRD with existing codebase
sync-planning Create tickets for the new requirements

Output

  • New or updated PRD in docs/1-prd/{feature-name}.md
  • User has validated all requirements
  • Ready for implementation planning