Jobs To Be Done logo

Jobs To Be Done

OrganizationPopular
wondelai
jobs-to-be-done

Discover what customers truly need by analyzing the "job" they hire your product to do. Use when the user mentions "customer discovery", "why customers churn", "what job does this solve", "competing against luck", "product-market fit", "switching behavior", "milkshake moment", or "functional vs emotional jobs". Also trigger when investigating why users choose competitors, designing features around real customer needs, or reframing a value proposition. Covers JTBD interviews, competition analysis, and jobs-oriented roadmaps. For product positioning, see obviously-awesome. For rapid validation, see design-sprint. For non-leading interview technique, see mom-test.

Overview

Publisherwondelai
Repositoryskills
Skill namejobs-to-be-done
Stars
2.2K
Forks
228
Bundled files
5
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 5 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by wondelai on GitHub. Read the source before you install it.

Installation

Install the Jobs To Be Done AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/wondelai/skills.git /tmp/skills
mkdir -p .claude/skills
cp -r /tmp/skills/jobs-to-be-done .claude/skills/jobs-to-be-done
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Jobs To Be Done in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Jobs To Be Done on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Jobs To Be Done is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Jobs to Be Done Framework

Framework for discovering innovation based on a fundamental truth: customers don't buy products -- they "hire" them to do a specific job in their lives.

Core Principle

Job to Be Done = the progress a customer wants to make in specific circumstances.

Key elements of the definition:

  • Progress (not goal, not solution) -- the customer wants to move from the current state to a better one
  • Circumstances -- context determines the job, not customer attributes (demographics are useless)
  • Hiring/Firing -- the customer actively chooses a product for the "job"

Scoring

Goal: 10/10. Score 1 point per satisfied row in the Quick Diagnostic (7 rows) plus up to 3 points for depth: +1 if all three job dimensions are evidenced, +1 if the job statement avoids any product/solution name, +1 if competition includes non-consumption. Bands: 9-10 = job stated without the product, all four forces mapped, three dimensions evidenced, non-obvious competition and Little Hire tracked; 5-6 = job named but one or two diagnostic rows fail (usually missing forces or emotional/social dimensions); <=3 = product-first framing, demographic segmentation, or Pull-only thinking. Always state the current score and the specific diagnostic rows to fix.

Three Dimensions of Every Job

Every job has three inseparable dimensions -- omitting any means failure:

DimensionQuestionExample (milkshake)
FunctionalWhat does the customer need to do?Occupy myself during a boring commute
EmotionalHow do they want to feel?Have a small treat for myself
SocialHow do they want to be perceived?As a sensible parent (not buying donuts)

Framework

1. The Job Statement

Core concept: A job statement captures the progress a customer seeks in a specific circumstance, in a structured format separating context, desired progress, and expected outcome.

Why it works: Because jobs are stable while solutions churn, anchoring on the job protects a roadmap from chasing features that the next technology shift makes irrelevant.

Key insights:

  • Format: "When [circumstances], I want to [progress], so I can [outcome]"
  • Circumstances matter more than demographics -- the same person has different jobs in different situations
  • A well-written job statement never mentions your product or any specific solution
  • Jobs are stable over time; solutions change but the underlying job persists

Product applications:

ContextApplicationExample
New product ideationDefine the job before brainstorming features"When I'm commuting alone, I want something to occupy me and satisfy hunger, so I'm not hungry until lunch"
Feature prioritizationEvaluate whether a feature serves the core jobFeatures that advance the stated job beat nice-to-haves
Positioning & messagingUse job statement language in copyLead with circumstance and progress, not product specs

Copy patterns:

  • "When you're [circumstance], you need [progress] -- that's exactly what [product] does"
  • Lead with the situation the customer recognizes, not the product category
  • Mirror the emotional and social dimensions alongside the functional one

See references/innovation-process.md when running an innovation project end-to-end -- the job-hunting methodology, the job atlas, and fill-in statement templates.

2. Forces of Progress (Push, Pull, Anxiety, Habit)

Core concept: The decision to "hire" a new product results from four forces: Push (frustration with the current situation), Pull (attraction of the new solution), Anxiety (fear of the new), and Habit (comfort with the current behavior). Change happens only when Push + Pull > Habit + Anxiety.

Why it works: Most innovation efforts only increase Pull while ignoring the anti-change forces -- which is why great products still fail to gain adoption.

Key insights:

  • Push: "this annoys me"; Pull: "I want this"; Habit: "I've always done it this way"; Anxiety: "what if it doesn't work?"
  • Reducing anxiety and habit is often more effective than increasing push and pull
  • Passive seekers (vaguely aware of a problem) are easier to influence than active seekers who already have criteria

Product applications:

ContextApplicationExample
Onboarding designReduce anxiety with trials, guarantees, social proofMoney-back guarantee answers "what if it doesn't work?"
Switching campaignsMake migration effortless to defeat habitOne-click data import from competitor
Content marketingAwaken push in passive seekers by naming the frustration"5 signs your current tool is costing you hours every week"

Copy patterns:

  • Address anxiety directly: "No lock-in, cancel anytime, your data is always yours"
  • Name the push: "Tired of [frustration]? There's a better way"
  • Reduce habit friction: "Switch in 5 minutes -- we import everything automatically"

See references/competitive-strategy.md when mapping competitors or writing positioning -- forces analysis, the non-obvious-competition tables, and the jobs-based positioning formula with worked examples.

3. The Big Hire & Little Hire

Core concept: Two distinct decision moments: the Big Hire (purchase/signup, happens once) and the Little Hire (decision to use in the moment, happens repeatedly). Winning the Big Hire does not guarantee the Little Hire.

Why it works: Many products win the sale but lose the customer because they optimize only the purchase decision -- understanding both moments reveals where retention problems truly originate.

Key insights:

  • Big Hire is driven by marketing, onboarding, and first impressions; Little Hire by product quality, UX, and ongoing value
  • Big Hire anxiety is purchase risk; Little Hire anxiety is effort and learning curves
  • Retention problems are almost always Little Hire failures -- purchased but never used

Product applications:

ContextApplicationExample
Retention analysisSeparate Big Hire from Little Hire metricsTrack "first use after signup" and "weekly active usage" apart from signup conversion
Product designOptimize repeated usage, not just first impressionsReduce daily-workflow friction even when onboarding is smooth
Customer successMonitor Little Hire signals to predict churnDeclining usage frequency signals upcoming churn

Copy patterns:

  • Big Hire copy sells the promise: "Transform how you [job]"
  • Little Hire copy sells ease: "One click and you're done"
  • Re-engagement copy addresses the failure: "We've made [specific friction] easier"

See references/case-studies.md when you need a worked precedent to reason from -- full Big Hire / Little Hire breakdowns of SNHU, American Girl, and Intuit.

4. Competitive Landscape (Non-Obvious Competition)

Core concept: True competition is everything a customer can "hire" for the same job, often from completely different categories. Competitors are defined by the job, not by industry classification.

Why it works: Category-based analysis creates blind spots: a milkshake competes with bananas, bagels, and podcasts; Netflix competes with TikTok, sleep, and family conversation. Mapping the full landscape around the job reveals threats and opportunities traditional analysis misses.

Key insights:

  • Non-consumption (doing nothing) is often the biggest competitor
  • Workarounds and compensating behaviors reveal unserved jobs -- people hack, combine, and improvise
  • Integrate where performance is "not good enough" for the job; modularize where it's "good enough"
  • The best positioning answers "what job are we the best hire for?", not "how do we compare to similar products?"

Product applications:

ContextApplicationExample
Competitive analysisMap all hires for the same job across categoriesA PM tool competes with spreadsheets, sticky notes, email, and memory
Positioning strategyPosition against the real alternativePosition against "doing it manually", not a named competitor
Pricing strategyPrice against the job's valueIf the job saves 10 hours/week, price against that time, not similar SaaS

Copy patterns:

  • "Stop using [workaround] for [job] -- there's a purpose-built solution"
  • "You wouldn't hire a [bad fit] to [job] -- so why are you using [current hack]?"
  • Position around the job outcome, not feature comparison charts

5. Customer Discovery Interviews

Core concept: Don't ask customers "what do you need" -- they don't know. Instead, reconstruct the purchase timeline (first thought, search, purchase, usage) to uncover the real job.

Why it works: Customers rationalize decisions after the fact and can't articulate latent needs; walking backward through concrete events reveals the true circumstances, forces, and tradeoffs that drove behavior.

Key insights:

  • First thought: "When did you first look for a solution? What was happening in your life? What frustrated you?"
  • Search: "What alternatives did you consider? What eliminated options? Who did you talk to?"
  • Purchase: "Where were you? What ultimately convinced you? What were you afraid of?"
  • Usage: "Is it doing what you expected? What surprised you? What's still missing?"
  • Signals of undiscovered jobs: workarounds, non-consumption, compensating behaviors, negative emotions toward current solutions
  • Ask only about past events, never hypotheticals ("would you...", "do you wish...") -- a question that names your solution or a benefit leads the subject and produces confirmation, not discovery

Product applications:

ContextApplicationExample
New market entryInterview recent switchersReconstruct what pushed them away and pulled them in
Churn reductionInterview churned customers on their timelineWas it Big Hire (wrong expectations) or Little Hire (poor daily experience)?
Feature discoveryInterview customers using workaroundsSpreadsheets alongside your product reveal an unmet job dimension

Copy patterns:

  • Use exact customer language from interviews in marketing copy
  • "We heard you say [verbatim quote] -- so we built [feature]"
  • Frame benefits in the circumstances and emotions customers actually described

6. Designing for the Job

Core concept: Build the entire experience -- features, metrics, organization -- around helping the customer accomplish their job, not around internal capabilities or feature parity.

Why it works: When every decision answers "will this help the customer better accomplish their job?", teams avoid feature bloat and build coherent products; if you can't answer it, you don't understand the job yet.

Key insights:

  • Replace customer satisfaction metrics with "did the job get done?"
  • Replace NPS with "reasons for hiring and firing"; replace feature usage with "progress on the job"
  • Organize teams and processes around jobs, not internal capabilities or product components

Product applications:

ContextApplicationExample
Metrics designMeasure job completion"Time from problem to resolution", not "features used per session"
Product roadmapPrioritize across job dimensionsA functional fix that ignores the emotional dimension may not move the needle
Organizational alignmentStructure teams around jobsA "morning commute job" team owns content, packaging, and distribution

Copy patterns:

  • "Built for [the job], not for [the category]"
  • "Everything you need to [job] -- nothing you don't"
  • Emphasize outcome and progress, not features and specifications

See references/organizational-change.md when adoption is the bottleneck rather than the analysis -- escaping the feature-factory trap, winning executive buy-in, and managing the change.

Common Mistakes

MistakeWhy It FailsFix
Defining jobs narrowly around your productMisses the real competitive landscapeDefine the job from the customer's perspective, never mentioning your product
Ignoring emotional and social dimensionsFunctional-only jobs miss why customers choose and stayAlways complete all three dimensions
Confusing jobs with goals or tasksGoals too abstract ("be healthy"), tasks too specific ("click button")Jobs = progress in specific circumstances
Only increasing PullGreat products fail when switching costs and fear stay highMap all four forces; design interventions for Anxiety and Habit
Winning the Big Hire, ignoring the Little HireHigh acquisition, high churn -- purchased but never usedTrack and optimize repeated usage separately from purchase
Asking customers "what do you want?"Rationalization and incremental feature requestsUse timeline-based interviews reconstructing actual behavior
Defining competition by categoryBlind spots from adjacent categories and non-consumptionMap every alternative hire for the job, including doing nothing

Quick Diagnostic

QuestionIf NoAction
Can you state the job in one sentence without mentioning your product?Product-focused, not job-focusedWrite: "When [circumstances], I want to [progress], so I can [outcome]"
Have you mapped all four forces?Over-investing in Pull, ignoring barriersDesign specific interventions for Anxiety and Habit
Do you know the emotional and social dimensions?May win functionally but lose on experienceRun discovery interviews on feelings and social context
Have you identified non-obvious competitors?Competitive blind spotsList everything hireable for the job, including non-consumption
Are you tracking Little Hire separately from Big Hire?Can't tell acquisition problems from retention problemsSeparate purchase-conversion and repeated-usage metrics
Can your team explain how each feature serves the job?Building without strategic groundingRequire proposals to name the job dimension served
Have you interviewed customers about their purchase timeline?Job understanding based on assumptionsRun 10+ interviews reconstructing first-thought-to-usage

When the inline Quick Diagnostic above is not enough -- you are diagnosing a symptom (low signups, high churn, "used wrong") or need JTBD-specific metrics -- see references/diagnostics.md: the "why aren't they buying" symptom table, churn-pattern tables, and traditional-vs-JTBD metric swaps.

Further Reading

For the complete methodology, case studies, and deeper insights:

About the Author

Clayton M. Christensen (1952-2020) was the Kim B. Clark Professor of Business Administration at Harvard Business School, best known for the theory of disruptive innovation introduced in The Innovator's Dilemma (1997). He developed Jobs to Be Done as a practical innovation methodology in Competing Against Luck (2016) and was repeatedly ranked the world's #1 management thinker by Thinkers50.

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Jobs To Be Done AI skill do?

Discover what customers truly need by analyzing the "job" they hire your product to do. Use when the user mentions "customer discovery", "why customers churn", "what job does this solve", "competing against luck", "product-market fit", "switching behavior", "milkshake moment", or "functional vs emotional jobs". Also trigger when investigating why users choose competitors, designing features around real customer needs, or reframing a value proposition. Covers JTBD interviews, competition analysis, and jobs-oriented roadmaps. For product positioning, see obviously-awesome. For rapid validatio...

Why use Jobs To Be Done on TypingMind?

Because you install it once and use it with any model. Jobs To Be Done is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Jobs To Be Done in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/wondelai/skills/tree/main/jobs-to-be-done. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Jobs To Be Done?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Jobs To Be Done?

As many as you like. As long as a model supports skills, you can use Jobs To Be Done with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Jobs To Be Done AI skill free?

Yes. It is published on GitHub by wondelai under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇