Job Stories

Added March 10, 2026 Source: Pawel Huryn

Generate job stories that articulate user needs through the ‘When [situation], I want to [motivation], so I can [outcome]’ format. This approach helps you focus on the underlying Jobs-to-be-Done. Each story comes with detailed acceptance criteria to guide development.

Installation

This skill is self-contained. Copy the SKILL.md below directly into your project to get started.

.claude/skills/job-stories/SKILL.md    # Claude Code
.cursor/skills/job-stories/SKILL.md    # Cursor

Or install as a personal skill (available across all your projects):

~/.claude/skills/job-stories/SKILL.md

You can also install using the skills CLI:

npx skills add phuryn/pm-skills --skill job-stories

Requires Node.js 18+.

SKILL.md

---
name: job-stories
description: "Create job stories using the 'When [situation], I want to [motivation], so I can [outcome]' format with detailed acceptance criteria. Use when writing job stories, creating JTBD-style backlog items, or expressing user situations and motivations."
---
# Job Stories

Create job stories using the 'When [situation], I want to [motivation], so I can [outcome]' format. Generates stories with detailed acceptance criteria focused on user situations and outcomes.

**Use when:** Writing job stories, expressing user situations and motivations, creating JTBD-style backlog items, or focusing on user context rather than roles.

**Arguments:**
- `$PRODUCT`: The product or system name
- `$FEATURE`: The new feature to break into job stories
- `$DESIGN`: Link to design files (Figma, Miro, etc.)
- `$CONTEXT`: User situations or job scenarios

## Step-by-Step Process

1. **Identify user situations** that trigger the need
2. **Define motivations** underlying the user's behavior
3. **Clarify outcomes** the user wants to achieve
4. **Apply JTBD framework:** Focus on the job, not the role
5. **Create acceptance criteria** that validate the outcome is achieved
6. **Use observable, measurable language**
7. **Link to design mockups** or prototypes
8. **Output job stories** with detailed acceptance criteria

## Story Template

**Title:** [Job outcome or result]

**Description:** When [situation], I want to [motivation], so I can [outcome].

**Design:** [Link to design files]

**Acceptance Criteria:**
1. [Situation is properly recognized]
2. [System enables the desired motivation]
3. [Progress or feedback is visible]
4. [Outcome is achieved efficiently]
5. [Edge cases are handled gracefully]
6. [Integration and notifications work]

## Example Job Story

**Title:** Track Weekly Snack Spending

**Description:** When I'm preparing my weekly allowance for snacks (situation), I want to quickly see how much I've spent so far (motivation), so I can make sure I don't run out of money before the weekend (outcome).

**Design:** [Figma link]

**Acceptance Criteria:**
1. Display Spending Summary with 'Weekly Spending Overview' section
2. Real-Time Update when expense logged
3. Progress Indicator (progress bar showing 0-100% of weekly budget)
4. Remaining Budget Highlight in prominent color
5. Detailed Spending Log with breakdown by category
6. Notifications at 80% budget threshold
7. Weekend-Specific Reminder at 90% by Thursday evening
8. Easy Access and Navigation to detailed breakdown

## Output Deliverables

- Complete set of job stories for the feature
- Each story follows the 'When...I want...so I can' format
- 6-8 acceptance criteria focused on outcomes
- Stories emphasize user situations and motivations
- Clear links to design and prototypes

---

### Further Reading

- [Jobs-to-be-Done Masterclass with Tony Ulwick and Sabeen Sattar](https://www.productcompass.pm/p/jobs-to-be-done-masterclass-with) (video course)

Originally by Pawel Huryn, adapted here as an Agent Skills compatible SKILL.md.

This skill follows the Agent Skills open standard, supported by Claude Code, Cursor, Codex, Gemini CLI, and 20+ more editors.

Works with

Agent Skills format — supported by 20+ editors. Learn more