Agent skill

Job Stories

by borghei in borghei/Claude-Skills

Jobs-to-Be-Done story writing that focuses on user situations and motivations rather than personas.

MITAuto-check passedProduct & Project Management

Install Job Stories

skills CLI
$ npx skills add borghei/Claude-Skills --skill job-stories -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install borghei/Claude-Skills job-stories --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/borghei/Claude-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/project-management/execution/job-stories .claude/skills/job-stories && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
job-stories
GitHub stars
891
Token cost
~1.6k tokens
SKILL.md length
769 words
Files
9 (incl. scripts, references, assets)
Skills in repo
354
Repo updated
First seen
Licence
MIT

At a glance

Jobs-to-Be-Done story writing that focuses on user situations and motivations rather than personas.

  • Works in 4 steps: Run the JTBD discovery canvas (or pull… → Write one job story per cluster in the… → Apply INVEST; split any story that fails… → …
  • Write When/Want/So backlog items
  • SKILL.md covers Overview, Core Capabilities, When to Use and Clarify First, plus 4 more sections
  • Runs Python scripts from its folder

What it does

Job Stories is an agent skill from borghei/Claude-Skills. Jobs-to-Be-Done story writing that focuses on user situations and motivations rather than personas. Use to write When/Want/So backlog items, run a JTBD discovery canvas, apply INVEST, and convert user stories to job stories.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 12 other files, including scripts, reference files and assets (for example `assets/job_story_template.md`, `examples/wayfinder-onboarding-job-stories.md` and `references/job-stories-playbook.md`).

It sits in Product & Project Management, covering User stories and Creative writing and fiction. The repository describes itself as: 385 AI skills, 77 expert agents, and 900 stdlib Python tools for every team: engineering, PM, marketing, C-level, compliance, business ops, research, and a LinkedIn toolkit… The licence is MIT.

When your agent uses it

  • Write When/Want/So backlog items
  • Run a JTBD discovery canvas
  • Convert user stories to job stories

Example prompts

  • “/job-stories”

Requirements

  • Python 3

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Run the JTBD discovery canvas (or pull from research) to find job-pain-gain clusters.
  2. Write one job story per cluster in the When/Want/So format.
  3. Apply INVEST; split any story that fails the Small or Independent test.
  4. Add 6-8 observable, outcome-focused acceptance criteria per story.

What it can do on your machine

Read from SKILL.md and the folder at commit 4a698e8. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 3 files in scripts/ (Python), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Job Stories loads about 1.6k tokens when it runs, and up to ~11k if it reads all its reference files. Until then it costs about 59 tokens; SKILL.md has 769 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~59
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~11k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from borghei/Claude-Skills at commit 4a698e8, republished under its MIT licence (© borghei). 769 words, ~1,631 tokens.

Download SKILL.mdSave it as .claude/skills/job-stories/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.
name
job-stories
description
Jobs-to-Be-Done story writing that focuses on user situations and motivations rather than personas. Use to write When/Want/So backlog items, run a JTBD discovery canvas, apply INVEST, and convert user stories to job stories.
license
MIT + Commons Clause
metadata.version
1.0.1
metadata.author
borghei
metadata.category
project-management
metadata.domain
pm-execution
metadata.updated
2026-06-15
metadata.tech-stack
jtbd, jobs-to-be-done, invest-criteria

Job Stories Expert

Overview

Write job stories using the Jobs-to-Be-Done (JTBD) framework. Unlike traditional user stories that focus on roles ("As a user..."), job stories focus on the situation, motivation, and desired outcome. This shift produces requirements that are more grounded in real user context and less likely to encode assumptions about who the user is.

The format is When [situation], I want to [motivation], so I can [outcome]. Removing the role and describing the situation matters because the same person has different needs in different situations, different people in the same situation share needs, and situations are observable and testable while roles are abstract labels.

Core Capabilities

  • JTBD discovery canvas — surface functional/social/emotional jobs, pains, and gains, then map each to a job-story component.
  • Story writing — author situations, motivations, and outcomes that are specific, solution-agnostic, and benefit-focused.
  • Quality gating — apply the six INVEST criteria and write 6-8 outcome-focused acceptance criteria per story.
  • Conversion & facilitation — convert traditional user stories to job stories and run story-writing workshops.

When to Use

  • Feature definition -- When you need to articulate what to build and why, grounded in user context.
  • Backlog creation -- When populating a backlog with work items that stay focused on user outcomes.
  • Requirement workshops -- When collaborating with stakeholders to define what "done" looks like.
  • Design briefs -- When giving designers context about the situation and motivation behind a feature.
When NOT to Use
  • When you need strategic backlog items with business context -- use wwas/ instead.
  • When you need lightweight stories for a team already fluent in user story format.
  • When the work is purely technical with no direct user-facing situation.

Clarify First

Before writing job stories, confirm these inputs. If any is unknown or vague, ASK — do not assume:

  • Situation / trigger — the "When" anchors the entire story; a vague situation produces a persona-style story in disguise
  • Underlying job & motivation — the functional/social/emotional job behind the "I want to"; without it the story encodes a solution, not a need
  • Desired outcome / progress — the "so I can" the user is trying to reach; drives the outcome-focused acceptance criteria
  • Source of user research — interviews/observation/support data vs guesswork; without grounding, situations get invented and may not reflect reality

Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.

Quick Start

When [situation], I want to [motivation], so I can [outcome].
  1. Run the JTBD discovery canvas (or pull from research) to find job-pain-gain clusters.
  2. Write one job story per cluster in the When/Want/So format.
  3. Apply INVEST; split any story that fails the Small or Independent test.
  4. Add 6-8 observable, outcome-focused acceptance criteria per story.
Show full SKILL.md (332 more words)Show less

References

Load the reference that matches the task — keep this file lean and pull detail on demand:

  • references/job-stories-playbook.md — the full procedure: JTBD discovery canvas template + canvas-to-story mapping, format details, writing-quality tables, INVEST table, story-card template, acceptance-criteria guidelines, worked example, troubleshooting, and success criteria. Read when writing or refining stories.
  • references/jtbd-guide.md — JTBD theory, job-story vs user-story comparison, techniques for discovering situations, and story-splitting strategies. Read to understand the framework or decide which story format to use.
  • references/red-flags.md — common ways job stories go wrong, each with a bad/good example and how to catch it. Read before stories enter sprint planning.
  • assets/job_story_template.md — ready-to-use job story card template. Use when drafting a story.

Scope & Limitations

In Scope: Writing job stories using JTBD "When/Want/So" format, applying INVEST quality criteria, writing outcome-focused acceptance criteria, converting existing user stories to job stories, facilitating story-writing workshops, integrating job stories with Jira backlog items.

Out of Scope: Strategic backlog items with business context (hand off to wwas/), product ideation and opportunity discovery (hand off to discovery/brainstorm-ideas/), detailed technical specifications, UX research and user interviewing methodology.

Limitations: Job stories work best when the team has access to real user research (interviews, observation, support data). Without user context, teams will invent situations that may not reflect reality. The format is less natural for purely technical or infrastructure work where there is no direct user situation. Job stories and user stories are complementary -- some teams use both formats for different types of work.

Integration Points

IntegrationDirectionWhat Flows
wwas/ComplementaryWWAS adds strategic "Why" context; job stories add situational "When" context. Use both when needed
summarize-meeting/Meetings -> StoriesDiscovery conversations and refinement sessions produce the situations that inform job stories
../jira-expert/Stories -> JiraCompleted job stories become Jira tickets with structured descriptions
discovery/brainstorm-ideas/Ideas -> StoriesValidated product ideas decompose into job stories for the backlog
execution/brainstorm-okrs/OKRs -> StoriesTeam objectives define the outcomes that job stories should connect to
execution/prioritization-frameworks/Stories -> PrioritizationJob stories scored via RICE or other frameworks for sprint planning

© borghei, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 8 other files (scripts, references, assets) in project-management/execution/job-stories of borghei/Claude-Skills.

  • SKILL.md
  • assets/job_story_template.md
  • examples/wayfinder-onboarding-job-stories.md
  • references/job-stories-playbook.md
  • references/jtbd-guide.md
  • references/red-flags.md
  • scripts/invest_validator.py
  • scripts/story_converter.py
  • scripts/story_quality_checker.py

Open the folder on GitHubat commit 4a698e8

Compare with similar skills

Job Stories next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Job Stories compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Job Stories this skillborghei/Claude-Skills891—~1.6kAutomated safety check: PassMIT
Synthesis Buildacogood/diffmode_free163—~5.3kAutomated safety check: PassApache-2.0
Synthesis Exploreacogood/diffmode_free163—~5.3kAutomated safety check: PassApache-2.0
User Story Writerdeanpeters/Product-Manager-Skills7.2k2 repos~2.9kAutomated safety check: PassCustom licence
Ralph Tui Create Beadssubsy/ralph-tui2.5k1 repos~2.6kAutomated safety check: PassMIT
Agile Product Owneralirezarezvani/claude-skills28k3 repos~3.2kAutomated safety check: PassMIT

Similar skills

  • Synthesis Build

    acogood/diffmode_free

    Synthesis BUILD stage — the FINAL stage of the Diffmode growth-tactics pipeline (fuses white-space ideation + founder-fit adaptation & merge — formerly two separate synthesis passes — into ONE…

    163 GitHub stars~5.3k tokensUpdated 2 mo ago
    Product & Project ManagementAuto-check passed
  • Synthesis Explore

    acogood/diffmode_free

    Synthesis EXPLORE stage for the Diffmode growth-tactics pipeline (fuses the blind-combination draw + emergent-mechanism derivation — formerly two separate synthesis steps — into ONE…

    163 GitHub stars~5.3k tokensUpdated 2 mo ago
    Writing & ContentAuto-check passed
  • User Story Writer

    deanpeters/Product-Manager-Skills

    Writes user stories in Mike Cohn's format with Gherkin acceptance criteria, turning user needs into development-ready work with testable conditions.

    7.2k GitHub starsUsed in 2 repos~2.9k tokens
    Product & Project ManagementAuto-check passed
  • Ralph Tui Create Beads

    subsy/ralph-tui

    Convert PRDs to beads for ralph-tui execution. An agent skill from subsy/ralph-tui.

    2.5k GitHub starsUsed in 1 repo~2.6k tokens
    Product & Project ManagementAuto-check passed
  • Agile Product Owner

    alirezarezvani/claude-skills

    Writes INVEST-checked user stories with acceptance criteria, splits epics, plans sprints from velocity and ranks the backlog with a weighted score.

    28k GitHub starsUsed in 3 repos~3.2k tokens
    Product & Project ManagementAuto-check passed
  • Convert PRDs to beads for ralph-tui execution using beads-rust (br CLI).

    2.5k GitHub starsUsed in 1 repo~2.8k tokens
    Product & Project ManagementAuto-check passed

More from borghei/Claude-Skills

All 354 skills in this repo
  • Agent Harness

    borghei/Claude-Skills

    Test and evaluation harness for AI agents — scenario suites, deterministic replay, regression diffing, cost and latency budgets.

    891 GitHub stars~3.1k tokensUpdated 3 days ago
    Auto-check passed
  • Agents In The Team

    borghei/Claude-Skills

    Run delivery when AI coding and ops agents take tickets. An agent skill from borghei/Claude-Skills.

    891 GitHub stars~4.2k tokensUpdated 3 days ago
    Auto-check passed
  • AI Content Disclosure

    borghei/Claude-Skills

    Check AI-generated marketing content and reviews for required disclosures under the EU AI Act, FTC rules and platform AI-label policies.

    891 GitHub stars~3.4k tokensUpdated 3 days ago
    Auto-check passed
  • AI Prototyping

    borghei/Claude-Skills

    Idea to AI-generated prototype to customer validation to engineering handoff.

    891 GitHub stars~3.6k tokensUpdated 3 days ago
    Auto-check passed
  • Analytics Engineer

    borghei/Claude-Skills

    Analytics engineering across data modeling, dbt, transformation, and semantic layers.

    891 GitHub stars~3.4k tokensUpdated 3 days ago
    Auto-check passed
  • Ansoff Matrix

    borghei/Claude-Skills

    Ansoff Matrix — 4-quadrant framework for growth options: market penetration, market/product development, and diversification.

    891 GitHub stars~2.2k tokensUpdated 3 days ago
    Auto-check passed

Questions about Job Stories

What does Job Stories do?

Jobs-to-Be-Done story writing that focuses on user situations and motivations rather than personas. Job Stories is an agent skill from borghei/Claude-Skills. Jobs-to-Be-Done story writing that focuses on user situations and motivations rather than personas.

When should I use Job Stories?

Job Stories fits situations like: write When/Want/So backlog items; run a JTBD discovery canvas; convert user stories to job stories.

How do I install Job Stories in Claude Code?

Run `npx skills add borghei/Claude-Skills --skill job-stories -a claude-code`. Or copy the skill folder (project-management/execution/job-stories in borghei/Claude-Skills) into .claude/skills/job-stories in your project. Claude Code loads it when a task matches its description.

How do I install Job Stories in Codex?

Run `npx skills add borghei/Claude-Skills --skill job-stories -a codex`. Or copy the skill folder (project-management/execution/job-stories in borghei/Claude-Skills) into .agents/skills/job-stories in your project. Codex loads it when a task matches its description.

Can I use Job Stories in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add borghei/Claude-Skills --skill job-stories -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/job-stories, .gemini/skills/job-stories, .github/skills/job-stories and .opencode/skills/job-stories in your project.

What does Job Stories need to run?

Going by SKILL.md and its folder, Job Stories needs Python for the scripts in its folder. Our summary lists: Python 3.

Does Job Stories access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Job Stories safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Job Stories use?

Job Stories is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Job Stories use?

About 1.6k tokens (SKILL.md is roughly 6.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 8.9k tokens, read only when the agent opens those files.

What are the alternatives to Job Stories?

Skills that share tags, products or a category with Job Stories: Synthesis Build (acogood/diffmode_free, 163 stars), Synthesis Explore (acogood/diffmode_free, 163 stars), User Story Writer (deanpeters/Product-Manager-Skills, 7.2k stars) and Ralph Tui Create Beads (subsy/ralph-tui, 2.5k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Job Stories?

borghei (a GitHub user) maintains it in borghei/Claude-Skills, which has 891 GitHub stars. The repository holds 354 skills in this directory. The repository was last updated on October 7, 2026.

Source: borghei/Claude-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.