How User Stories Are Managed Within the pm-product-discovery Framework
The pm-product-discovery framework delays user story creation until after discovery and prioritization are complete, then prompts users to generate structured stories via the pm-execution package.
The phuryn/pm-skills repository implements a strict separation between product discovery and execution phases. Within the pm-product-discovery module, user stories are not drafted during initial ideation; instead, the framework guides teams through assumption mapping and prioritization first, then offers to convert the highest-priority items into properly formatted backlog items.
The Discovery-First Workflow
Managing user stories in this framework follows a deliberate four-phase sequence that ensures only validated priorities become backlog items.
- Discovery and Prioritization – Run either
/discoverfor full-cycle discovery or/triage-requestsfor feature-request triage. - Prompt for Stories – After prioritization, the tool explicitly asks whether to create user stories for the top-ranked items.
- Generation – Upon confirmation, the framework invokes the user-stories skill from the pm-execution package.
- Hand-off – Generated stories feed directly into execution phases like backlog grooming and sprint planning.
This workflow ensures that every user story ties to a prioritized assumption or feature validated during discovery.
Triggering Story Creation from Discovery Commands
The framework provides two primary entry points for initiating the user story workflow, each offering a prompt at the appropriate workflow stage.
Triage Requests Command
When running /triage-requests to process incoming feature requests, the command executes a full triage cycle including brainstorming and assumption identification. At line 109-110 of pm-product-discovery/commands/triage-requests.md, the tool presents the prompt:
"Want me to create user stories for the top‑priority items?"
Answering affirmatively triggers the generation process for the highest-ranked features identified during the triage session.
Discovery Command
For new product concepts, the /discover command compiles a complete discovery plan. According to lines 22-23 in pm-product-discovery/commands/discover.md, the final checkpoint asks:
"Should I estimate effort and create user stories for the MVP?"
This prompt appears after the discovery plan is finalized, allowing teams to generate stories scoped specifically to the Minimum Viable Product.
User Story Generation via the pm-execution Package
When the user confirms story creation, the framework does not generate the stories internally. Instead, it invokes the dedicated user-stories skill located in pm-execution/skills/user-stories/SKILL.md.
This skill enforces standard Agile practices by applying the 3 C's (Card, Conversation, Confirmation) and INVEST criteria (Independent, Negotiable, Valuable, Estimable, Small, Testable). The output includes:
- Structured story titles
- Detailed descriptions
- Design links
- Acceptance criteria
The generated stories become the formal input for execution phases, bridging the gap between discovery insights and development work.
Practical Usage Examples
Creating Stories After Triage
Run the triage command on your feature list, then confirm the prompt to generate stories:
# Execute triage on incoming requests
/triage-requests <features.txt>
# Respond to the prompt
Want me to create user stories for the top‑priority items? yes
Creating Stories After Discovery
Execute a full discovery cycle for your concept, then approve the MVP story generation:
# Run discovery for a new product idea
/discover "AI writing assistant for non‑native speakers"
# Confirm at the final checkpoint
Should I estimate effort and create user stories for the MVP? yes
Behind-the-Scenes Skill Invocation
The discovery commands call the user-stories skill through the following definition in pm-execution/skills/user-stories/SKILL.md:
name: user-stories
description: "Create user stories following the 3 C's (Card, Conversation, Confirmation) and INVEST criteria..."
# Invoked automatically when discovery prompts receive affirmative responses
Summary
- User stories are created after discovery, not during initial ideation, ensuring every story maps to a validated priority.
- Two commands trigger generation:
/triage-requestsfor feature triage and/discoverfor new product concepts. - Prompts appear at workflow endpoints: Line 109-110 of
triage-requests.mdand lines 22-23 ofdiscover.mdcontain the specific confirmation prompts. - Execution relies on pm-execution: The
user-storiesskill inpm-execution/skills/user-stories/SKILL.mdhandles actual generation using 3 C's and INVEST criteria. - Seamless hand-off: Generated stories feed directly into backlog grooming and sprint planning workflows.
Frequently Asked Questions
When are user stories created in the pm-product-discovery framework?
User stories are created only after the discovery team has completed prioritization activities. The framework explicitly delays story generation until the /discover or /triage-requests commands have surfaced and ranked the highest-priority features or assumptions, preventing premature backlog items based on unvalidated ideas.
What criteria are used for user story generation?
The framework invokes the user-stories skill from the pm-execution package, which applies the 3 C's (Card, Conversation, Confirmation) and INVEST criteria. This ensures outputs are Independent, Negotiable, Valuable, Estimable, Small, and Testable, with complete acceptance criteria and design links.
How does the framework connect discovery to execution?
After discovery commands prompt the user and receive confirmation, the pm-product-discovery module calls the user-stories skill located in the pm-execution package. This architectural separation ensures discovery insights translate into properly formatted, execution-ready backlog items without manual transcription or format conversion.
Can I create user stories without running discovery first?
According to the source code in phuryn/pm-skills, the user story generation workflow is tightly coupled to the discovery commands. The prompts in triage-requests.md and discover.md are the only documented triggers for invoking the user-stories skill, meaning the framework expects teams to validate priorities through discovery before generating stories.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →