Creates a Jobs to be Done canvas capturing the functional, emotional, and social dimensions of a customer job. Use when deeply understanding customer motivations, designing for jobs, or reframing product positioning.
npx skills add https://github.com/product-on-purpose/pm-skills --skill define-jtbd-canvas
<!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
A Jobs to be Done (JTBD) canvas captures the complete picture of why customers "hire" products to make progress in their lives. Based on Clayton Christensen's framework, JTBD goes beyond features and demographics to understand the underlying motivations.functional, emotional, and social.that drive customer behavior.
foundation-persona; the canvas captures the job, the persona captures the persondiscover-interview-synthesis; the canvas's insights must trace to research, not assumptionsdefine-problem-statementdefine-opportunity-treeWhen asked to create a JTBD canvas, follow these steps:
Define who is doing this job. Go beyond demographics to capture the circumstance they're in. The same person can have different jobs in different situations.
Describe when and where this job arises. Jobs are triggered by specific situations. Understanding context helps predict when customers will seek a solution.
Use the format: "When [situation], I want to [motivation], so I can [desired outcome]." The job statement captures the core progress the customer seeks.
What is the practical task the customer needs to accomplish? This is the tangible, measurable part of the job. Be specific about what "done" looks like.
How does the customer want to feel during and after the job? Emotional jobs often drive decisions more than functional ones. Include both desired feelings and feelings to avoid.
How does the customer want to be perceived by others? Social jobs relate to status, identity, and relationships. Not all jobs have strong social dimensions.
What are customers currently "hiring" to do this job? Include direct competitors, indirect alternatives, and non-consumption (doing nothing). Understanding current solutions reveals what to compete against.
What makes customers choose one solution over another? What are the "must haves" vs. "nice to haves"? This informs positioning and prioritization.
Use the template in references/TEMPLATE.md to structure the output. A complete canvas fills every template section: Job Overview; Job Performer; The Circumstance; Job Statement; Functional Job; Emotional Job; Social Job; Competing Solutions; Hiring Criteria; Insights and Implications; Supporting Quotes; and Questions for Further Research.
Before finalizing, verify:
See references/EXAMPLE.md for a completed example.
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
Improves the quality of images, especially screenshots, by enhancing resolution, sharpness, and clarity. Perfect for preparing images for presentations, documentation, or social media posts.
Downloads videos from YouTube and other platforms for offline viewing, editing, or archival. Handles various formats and quality options.
Lightweight WSI tile extraction and preprocessing. Use for basic slide processing tissue detection, tile extraction, stain normalization for H&E images. Best for simple pipelines, dataset preparation, quick tile-based analysis. For advanced spatial proteomics, multiplexed imaging, or deep learning pipelines use pathml.
Microscopy data management platform. Access images via Python, retrieve datasets, analyze pixels, manage ROIs/annotations, batch processing, for high-content screening and microscopy workflows.
Python library for working with DICOM (Digital Imaging and Communications in Medicine) files. Use this skill when reading, writing, or modifying medical imaging data in DICOM format, extracting pixel data from medical images (CT, MRI, X-ray, ultrasound), anonymizing DICOM files, working with DICOM metadata and tags, converting DICOM images to other formats, handling compressed DICOM data, or processing medical imaging datasets. Applies to tasks involving medical image analysis, PACS systems, radiology workflows, and healthcare imaging applications.
This skill should be used when working with pre-trained transformer models for natural language processing, computer vision, audio, or multimodal tasks. Use for text generation, classification, question answering, translation, summarization, image classification, object detection, speech recognition, and fine-tuning models on custom datasets.
Take product-on-purpose/define-jtbd-canvas from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.