write-stories

write-stories is a command for Claude Code from phuryn/pm-skills. It costs 20 tokens per session (918 once invoked), scanned A, original, MIT.

A command for breaking a feature into backlog items such as user stories, job stories, or WWA items. Backlog items are small pieces of planned work, and acceptance criteria describe how to check them.

In plain words
What is it for?
Use it to split features or PRDs into user stories, job stories, or Why-What-Acceptance items with acceptance criteria and design references.
Why use it?
It turns a large or vague feature into smaller, testable pieces that a development team can discuss and build. It also lets teams use the story format they already prefer.

Command for Claude Code

Written for Claude Code: argument-hint in frontmatter.

Part of the pm-execution plugin — 16 skills, 11 commands shipped together

About the project

phuryn/pm-skills is a marketplace of reusable skills, commands, and plugins that guide AI assistants through product-management work such as discovery, strategy, planning, metrics, launches, and growth. It is for product managers and teams using Claude Code, Cowork, or compatible assistants. The catalogue entries are the project's own workflows and extensions.

phuryn/pm-skills · 26,001 stars · on GitHub · productcompass.pm

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add commands/phuryn/pm-skills/write-stories
Clone the repo
git clone --depth 1 https://github.com/phuryn/pm-skills

Made for: Claude Code.

Or install pm-execution, the plugin that ships this one along with the rest of its 16 skills, 11 commands.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for write-stories

README.md
[![agentmods](https://agentmods.dev/badge/commands/phuryn/pm-skills/write-stories.svg)](https://agentmods.dev/commands/phuryn/pm-skills/write-stories)
Your own site
<a href="https://agentmods.dev/commands/phuryn/pm-skills/write-stories"><img src="https://agentmods.dev/badge/commands/phuryn/pm-skills/write-stories.svg" alt="Measured on agentmods" height="20"></a>
Per session 20 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 918 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00020 $0.00918
Opus 5 $0.00010 $0.00459
Sonnet 5 $0.00004 $0.00184
Haiku 4.5 $0.00002 $0.00092

Measured 6d ago against content hash 63c0947a6849, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-05, from the pricing page.

Security

Grade A, and why

write-stories scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

pm-execution/commands/write-stories.md · 113 lines

How it starts

The opening of the file, as written. The whole thing — 113 lines — stays where its author put it; the contents beside it link to each section on GitHub.

/write-stories -- Backlog Item Generator

Break a feature into well-structured backlog items. Choose from three formats based on your team's preference, each with full acceptance criteria.

Invocation

/write-stories user Allow users to export reports as PDF and CSV
/write-stories job Notification system for task deadlines
/write-stories wwa Dark mode for the mobile app
/write-stories [upload a PRD or feature spec]      # asks format preference
/write-stories                                      # asks for feature and format

Formats

User Stories

Format: "As a [user type], I want [capability], so that [benefit]" Apply the user-stories skill:

  • Follow the 3 C's: Card (brief), Conversation (context), Confirmation (acceptance criteria)
  • Validate against INVEST: Independent, Negotiable, Valuable, Estimable, Small, Testable
  • Include design links or mockup references where relevant

Job Stories

Format: "When [situation], I want to [motivation], so I can [outcome]" Apply the job-stories skill:

  • Focus on the situation and context, not the user role
  • Ground in real user scenarios observed in research
  • Ideal for JTBD-oriented teams

WWA (Why-What-Acceptance)

Format: Why [strategic context] → What [deliverable] → Acceptance [criteria] Apply the wwas skill:

  • Includes strategic reasoning (why we're building this)
  • Produces independent, valuable, testable items
  • Good for cross-functional teams that need business context

Workflow

Step 1: Accept the Feature

Accept in any form: PRD, feature description, user research finding, or verbal idea. If a PRD is provided, extract the requirements to decompose.

Step 2: Determine Format

If not specified in the invocation, ask:

  • "Which format does your team use? User stories, Job stories, or WWA?"
  • If unsure, recommend user stories as the default

Step 3: Decompose the Feature

  • Break the feature into 5-15 independent stories (small enough to complete in one sprint)
  • Ensure each story is independently valuable (delivers user value on its own)
  • Order by dependency and priority
  • Write 3-5 acceptance criteria per story
  • Flag stories that need design input or technical spikes

Read the full file on GitHub · 113 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 113 lines · 20 tokens per session scan A 63c0947a6849

Subscribe to this mod's changes

write-stories is a command published in the GitHub repository phuryn/pm-skills (26,001 stars, last pushed 2mo ago), licensed MIT. It adds 20 tokens to every session and 918 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.