Prompt file imported from ebergstedt/factorio-poc (
.claude/commands/pm/ccpm/commands/pm/prd-new.md). Fill in{{arguments}}before use. Copyright stays with the author.
PRD New
Launch brainstorming for new product requirement document.
Usage
/pm:prd-new <feature_name>
Required Rules
IMPORTANT: Before executing this command, read and follow:
.claude/rules/datetime.md- For getting real current date/time
Preflight Checklist
Before proceeding, complete these validation steps. Do not bother the user with preflight checks progress ("I'm not going to ..."). Just do them and move on.
Input Validation
-
Validate feature name format:
- Must contain only lowercase letters, numbers, and hyphens
- Must start with a letter
- No spaces or special characters allowed
- If invalid, tell user: "❌ Feature name must be kebab-case (lowercase letters, numbers, hyphens only). Examples: user-auth, payment-v2, notification-system"
-
Check for existing PRD:
- Check if
.claude/prds/{{arguments}}.mdalready exists - If it exists, ask user: "⚠️ PRD '{{arguments}}' already exists. Do you want to overwrite it? (yes/no)"
- Only proceed with explicit 'yes' confirmation
- If user says no, suggest: "Use a different name or run: /pm:prd-parse {{arguments}} to create an epic from the existing PRD"
- Check if
-
Verify directory structure:
- Check if
.claude/prds/directory exists - If not, create it first
- If unable to create, tell user: "❌ Cannot create PRD directory. Please manually create: .claude/prds/"
- Check if
Instructions
You are a product manager creating a comprehensive Product Requirements Document (PRD) for: {{arguments}}
Follow this structured approach:
1. Discovery & Context
- Ask clarifying questions about the feature/product "{{arguments}}"
- Understand the problem being solved
- Identify target users and use cases
- Gather constraints and requirements
2. PRD Structure
Create a comprehensive PRD with these sections:
Executive Summary
- Brief overview and value proposition
Problem Statement
- What problem are we solving?
- Why is this important now?
User Stories
- Primary user personas
- Detailed user journeys
- Pain points being addressed
Requirements
Functional Requirements
- Core features and capabilities
- User interactions and flows
Non-Functional Requirements
- Performance expectations
- Security considerations
- Scalability needs
Success Criteria
- Measurable outcomes
- Key metrics and KPIs
Constraints & Assumptions
- Technical limitations
- Timeline constraints
- Resource limitations
Out of Scope
- What we're explicitly NOT building
Dependencies
- External dependencies
- Internal team dependencies
3. File Format with Frontmatter
Save the completed PRD to: .claude/prds/{{arguments}}.md with this exact structure:
---
name: {{arguments}}
description: [Brief one-line description of the PRD]
status: backlog
created: [Current ISO date/time]
---
# PRD: {{arguments}}
## Executive Summary
[Content...]
## Problem Statement
[Content...]
[Continue with all sections...]
4. Frontmatter Guidelines
- name: Use the exact feature name (same as {{arguments}})
- description: Write a concise one-line summary of what this PRD covers
- status: Always start with "backlog" for new PRDs
- created: Get REAL current datetime by running:
date -u +"%Y-%m-%dT%H:%M:%SZ"- Never use placeholder text
- Must be actual system time in ISO 8601 format
5. Quality Checks
Before saving the PRD, verify:
- All sections are complete (no placeholder text)
- User stories include acceptance criteria
- Success criteria are measurable
- Dependencies are clearly identified
- Out of scope items are explicitly listed
6. Post-Creation
After successfully creating the PRD:
- Confirm: "✅ PRD created: .claude/prds/{{arguments}}.md"
- Show brief summary of what was captured
- Suggest next step: "Ready to create implementation epic? Run: /pm:prd-parse {{arguments}}"
Error Recovery
If any step fails:
- Clearly explain what went wrong
- Provide specific steps to fix the issue
- Never leave partial or corrupted files
Conduct a thorough brainstorming session before writing the PRD. Ask questions, explore edge cases, and ensure comprehensive coverage of the feature requirements for "{{arguments}}".
