Skip to content
Back to skills

Write A Prd

ASecurity

Creates PRD via interactive interview + codebase exploration + module design. Triggers: write PRD, product requirements, plan new feature, PRD interview.

  • 177 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added May 27, 2026
developmentgobashtestinggitapi

Works with

  • terminal
  • api

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned May 27, 2026

npx -y skills add softspark/ai-toolkit --skill write-a-prd --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Write A Prd?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Write A Prd
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/softspark-write-a-prd/badge)](https://www.skillsdirectory.com/skills/softspark-write-a-prd)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: write-a-prd
description: "Creates PRD via interactive interview + codebase exploration + module design. Triggers: write PRD, product requirements, plan new feature, PRD interview."
user-invocable: true
effort: high
argument-hint: "[feature or problem description]"
allowed-tools: Read, Grep, Glob, Bash, Agent
---

# Write a PRD

$ARGUMENTS

Create a PRD through structured interview, codebase exploration, and module design, then submit as a GitHub issue.

## Usage

```
/write-a-prd [feature or problem description]
```

## What This Command Does

1. **Gathers** detailed problem description from user
2. **Explores** the codebase to verify assertions and understand current state
3. **Interviews** relentlessly about every design branch until shared understanding
4. **Sketches** major modules — actively seeking deep modules (small interface, deep implementation)
5. **Writes** the PRD and submits as GitHub issue via `gh issue create`

## Process

### 1. Gather Problem Description

Ask the user for a detailed description of:
- The problem they want to solve
- Any potential ideas for solutions
- Who the users/actors are

### 2. Explore the Codebase

Use Agent (subagent_type=Explore) to understand:
- Current architecture relevant to the feature
- Existing patterns and conventions
- Integration points
- Related code that might be affected

### 3. Interview Relentlessly

Walk down each branch of the design tree, resolving dependencies between decisions one-by-one. For each question, provide your recommended answer.

Ask questions one at a time. If a question can be answered by exploring the codebase, explore instead of asking.

### 4. Sketch Modules

Identify major modules to build or modify. Look for opportunities to extract **deep modules** — modules that encapsulate significant functionality behind a simple, testable interface.

Check with the user:
- Do these modules match their expectations?
- Which modules need tests?

### 5. Write and Submit PRD

Use the template below. Submit as GitHub issue via `gh issue create`. Share the URL.

## PRD Template

<prd-template>

## Problem Statement

The problem from the user's perspective.

## Solution

The solution from the user's perspective.

## User Stories

Extensive numbered list:

1. As an <actor>, I want a <feature>, so that <benefit>

Cover ALL aspects of the feature.

## Implementation Decisions

- Modules to build/modify
- Interface designs for those modules
- Architectural decisions
- Schema changes
- API contracts

Do NOT include specific file paths or code snippets — they go stale quickly.

## Testing Decisions

- What makes a good test (external behavior, not implementation details)
- Which modules to test
- Prior art for tests in the codebase

## Out of Scope

What is explicitly NOT part of this PRD.

## Further Notes

Any additional context.

</prd-template>

## Visual Companion (Optional)

When upcoming questions will involve visual content (mockups, layouts, diagrams), offer the browser companion:

> "Some of what we're working on might be easier to explain visually. I can show mockups and diagrams in a browser. Want to try it?"

**This offer MUST be its own message.** Do not combine with other questions. Wait for response.

If accepted, start the server and use it for visual questions only. Text/conceptual questions stay in terminal.

See [reference/visual-companion.md](reference/visual-companion.md) for details.

## Rules

- Interview relentlessly — don't settle for vague answers
- No file paths or code snippets in the PRD (durability principle)
- User stories must be extensive and cover all aspects
- Submit immediately via `gh issue create` — don't ask for review
- Deep modules over shallow modules

Files in this skill

  • SKILL.md3.7 KB
  • reference/visual-companion.md2.5 KB
  • scripts/frame-template.html2.2 KB
  • scripts/poll.js576 B
  • scripts/visual-server.cjs2.6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.