From workflow
Create a PRD through user interview, codebase exploration, and module design, then submit as a GitHub issue. Use when user wants to write a PRD, create a product requirements document, or plan a new feature.
How this skill is triggered — by the user, by Claude, or both
Slash command
/workflow:workflow-create-prdThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill will be invoked when the user wants to create a PRD. You may skip steps if you don't consider them necessary.
This skill will be invoked when the user wants to create a PRD. You may skip steps if you don't consider them necessary.
Before anything else, determine how the user wants to start:
Check if any exploration files exist under .specs/features/ (use Glob to look for .specs/features/*/exploration.md).
If exploration files are found, present the list of feature folders and ask:
"I found previous idea exploration files in
.specs/features/. Would you like to use one of them as the basis for this PRD, or start fresh with a new idea?"
.specs/features/<date>-<feature-name>/exploration.md and use its content to pre-fill the context. Reuse the same folder (<date>-<feature-name>) for all outputs in this skill — do NOT create a new dated folder. Skip to Step 2 (codebase exploration) — do not re-interview about things already captured./workflow-explore-ideia first to develop it further before creating the PRD. If they prefer to proceed directly, continue to Step 1.If no exploration files are found, ask:
"Would you like to start by exploring the idea together with
/workflow-explore-ideia, or describe your idea directly so we can create the PRD?"
/workflow-explore-ideia..specs/features/<YYYY-MM-DD>-<kebab-case-feature-name>/.Gather requirements through interactive Q&A using AskUserQuestion. Ask ONE question at a time — do NOT dump all questions at once.
You SHOULD:
Questions to ask (in order):
After gathering all answers, save the requirements to .specs/features/<date>-<feature-name>/01-requirements.md (use the folder resolved in Step 0):
# Requirements: $FEATURE
## Feature Description
[From Q1]
## API Contract
[From Q2 — endpoints, methods, request/response shapes]
## Acceptance Criteria
- [ ] [Criterion 1]
- [ ] [Criterion 2]
## Data and Persistence
[From Q4 — entities, relationships, schema changes]
## Integrations
[From Q5 — external services, queues, other microservices]
## Non-Functional Requirements
[From Q6 — latency, security, transactions, audit]
## Out of Scope
[From Q7]
Explore the repo to verify the user's assertions and understand the current state of the codebase relevant to this feature. Use Glob, Read, and Bash to analyze the project.
Focus on:
package.json, pom.xml, pyproject.toml, etc.)Keep findings in context for use in Steps 3 and 4.
With the requirements doc and codebase findings as anchors, resolve any remaining ambiguities before writing the PRD. Ask one question at a time. Focus on:
Only ask questions not already answered by the requirements doc or codebase exploration.
Sketch out the major modules you will need to build or modify to complete the implementation. Actively look for opportunities to extract deep modules that can be tested in isolation.
A deep module (as opposed to a shallow module) is one which encapsulates a lot of functionality in a simple, testable interface which rarely changes.
Check with the user that these modules match their expectations. Check with the user which modules they want tests written for.
Once you have a complete understanding of the problem and solution, use the template below to write the PRD.
Save the PRD to a file using the Write tool.
File path: .specs/features/<date>-<feature-name>/prd.md (same folder resolved in Step 0).
The file content should be the full PRD produced from the template below, with a frontmatter header:
---
title: <Feature Name>
date: <YYYY-MM-DD>
status: Draft
exploration: <relative path to exploration file, or "none">
---
After saving, confirm to the user and ask what they want to do next:
"PRD saved at
.specs/features/<date>-<feature-name>/prd.md. Ready to move to implementation planning? Invoke/workflow-prd-to-plan(or say 'plan this feature') when you'd like to proceed."
This workflow ends here. Do NOT invoke /workflow-prd-to-plan or any implementation agent. Wait for the user to explicitly request the next step.
The problem that the user is facing, from the user's perspective.
The solution to the problem, from the user's perspective.
A LONG, numbered list of user stories. Each user story should be in the format of:
This list of user stories should be extremely extensive and cover all aspects of the feature.
A list of implementation decisions that were made. This can include:
Do NOT include specific file paths or code snippets. They may end up being outdated very quickly.
A list of testing decisions that were made. Include:
A description of the things that are out of scope for this PRD.
Any further notes about the feature.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
npx claudepluginhub wesleyegberto/software-engineering-skills --plugin workflow