plugins/pm-discovery/skills/job-story-mapper/SKILL.md
Write Jobs-to-be-Done (JTBD) job stories and map customer jobs across functional, social, and emotional dimensions. Use when defining user needs, writing job stories, conducting JTBD research, or reframing features around customer outcomes. Produces a job story map with opportunity scoring, pain intensity ratings, and product opportunity analysis.
npx skillsauth add mohitagw15856/pm-claude-skills job-story-mapperInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Stop writing features. Start understanding jobs. This skill translates product requirements and user interviews into precise job stories that keep the team focused on outcomes — not outputs.
A "job" is the progress a customer is trying to make in a given situation. People don't buy products — they hire them to get a job done.
Three dimensions of every job:
Great products address all three. Most roadmaps only address the functional one.
Template:
When [situation/trigger], I want to [motivation/goal], so I can [expected outcome].
Not a user story: User stories focus on roles and features: "As a [role] I want [feature] so that [benefit]." Job stories focus on situations and motivations: "When [I'm in this specific situation] I want [this capability] so I can [achieve this outcome]."
The situation is the most important part. "When I'm in the middle of a sprint and my PM asks for an update" is a much richer trigger than "As a developer."
One sentence: What is the core job your product is hired for?
"Help [user type] [accomplish outcome] when [context]."
What are all the sub-tasks within the main job? (Use a job map: Define → Locate → Prepare → Confirm → Execute → Monitor → Modify → Conclude)
Where does the job fall down today? Where do customers use workarounds?
One job story per distinct situation-motivation pair.
Which job stories are underserved? Which have existing solutions? Where is your differentiation?
Core Job Statement:
When [context], [user type] wants to [main job outcome], so they can [ultimate goal].
Job Map:
| Step | Sub-Job | Current Solution | Pain Points | Underserved? | |---|---|---|---|---| | Define | [What user does] | [Tool/method used] | [Frustration] | H/M/L | | Locate | | | | | | Prepare | | | | | | Confirm | | | | | | Execute | | | | | | Monitor | | | | | | Modify | | | | | | Conclude | | | | |
Job Stories (prioritised by underservice):
Job Story 1 — [Situation label]
When [specific situation], I want to [motivation], so I can [outcome].
Functional dimension: [What they need to get done] Emotional dimension: [How they want to feel] Social dimension: [How they want to be perceived]
Current workaround: [What they do today] Pain intensity: [High / Medium / Low] Frequency: [How often this situation occurs] Product opportunity: [What we could build to address this]
Repeat for each major job story.
Opportunity Scoring: Rate each job story on:
development
Build a framework for creating shareable, high-reach social media content. Use when asked to plan viral content, develop a shareable content strategy, create a hook writing system, or build a repeatable process for content that gets shared. Produces a platform-specific viral content framework with hook formulas, content structures, shareability triggers, and a content testing system.
development
Generate article or newsletter thumbnail candidates using the Gemini API from inside Claude Code. Claude reads article copy, proposes composition concepts, writes image generation prompts incorporating brand specs, calls Gemini to generate the images, evaluates the results via computer vision, and returns ranked candidates with rationale. Use when asked to create thumbnails, generate cover images, or produce visual candidates for an article or newsletter.
testing
Flips Claude's default from "find reasons you're right" to "find reasons you're wrong." A genuine thinking partner, not a mirror with grammar. Use before high-stakes decisions, plans, assumptions, or pitches you haven't stress-tested.
development
Scrapes a Substack Notes page and exports engagement data (likes, comments, restacks) to a formatted .xlsx file with conditional formatting and summary stats.