Master user story templates including As-a/I-want/So-that format, acceptance criteria (Given-When-Then), story splitting, and INVEST criteria. Use when writing user stories, defining acceptance criteria, splitting stories, refining backlogs, or communicating requirements to development teams. Covers user story best practices, story templates, and agile requirements techniques.
View on GitHubslgoodrich/agents
ai-pm-copilot
January 21, 2026
Select agents to install to:
npx add-skill https://github.com/slgoodrich/agents/blob/main/plugins/ai-pm-copilot/skills/user-story-templates/SKILL.md -a claude-code --skill user-story-templatesInstallation paths:
.claude/skills/user-story-templates/# User Story Templates Comprehensive templates and frameworks for writing effective user stories with clear acceptance criteria, enabling agile development teams to deliver value incrementally. ## What is a User Story? A user story is a concise description of a feature from the end-user's perspective. It follows the format: "As a [user], I want [goal], so that [benefit]." **Purpose**: - Communicate requirements from user perspective - Enable incremental delivery - Facilitate conversation and collaboration - Support estimation and planning - Guide testing and acceptance ## When to Use This Skill **Auto-loaded by agents**: - `requirements-engineer` - For user story formats, epic breakdown, and spike stories **Use when you need**: - Breaking down features into user stories - Writing acceptance criteria - Planning sprints and iterations - Communicating requirements to development teams - Refining product backlogs - Splitting large stories - Validating story quality with INVEST criteria - Estimating and prioritizing work --- ## User Story Format ### Basic Template ``` As a [user type/persona] I want to [action/goal] So that [benefit/value] ``` **Example**: ``` As a small business owner I want to export my invoices as PDF So that I can send professional-looking invoices to clients ``` ### Three Key Components **1. User Type/Persona** (Who) - Specific user segment or role - Good: "free trial user", "team administrator", "mobile app user" - Bad: "user" (too vague), "the system" (not a user) **2. Action/Goal** (What) - What the user wants to accomplish - Good: "filter search results by date range", "receive email notifications" - Bad: "have a button" (describes UI), "use the API" (describes implementation) **3. Benefit/Value** (Why) - Why the user wants this, what value it provides - Good: "so that I can quickly find relevant information" - Bad: "so that it works" (not a benefit), omitting "so that" entirely For detailed guidance on each component, see `asse