Skip to main content
skill CX Codex

define-problem-statement — Claude Code skill: frame the problem

Builds a problem framing document: who feels the pain, what it costs the business, and which metrics will show success.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add product-on-purpose/pm-skills --skill define-problem-statement -a claude-code
Open on GitHub

What define-problem-statement does

The skill walks the agent through six steps. First it asks which user segment hits the problem, and pushes for specifics instead of "users" in general. Then come pain points, business context, success metrics with baselines and targets, constraints, and open questions.

Output follows the template in references/TEMPLATE.md and fills every section: Problem Summary, User Impact, Business Context, Success Criteria, Constraints & Considerations, Open Questions. A completed example sits in references/EXAMPLE.md. A quality checklist keeps the problem tied to a segment, the impact backed by data, and the metrics carrying both a baseline and a target.

It is the wrong pick when the problem is already agreed and engineering wants a spec — reach for deliver-prd instead. To propose and compare solution approaches, use develop-solution-brief; for customer motivation, define-jtbd-canvas. If the "problem" is still an unvalidated assumption, frame it with define-hypothesis and test it first. That last point matters: committing a team to an unproven idea is the expensive mistake this skill exists to prevent.

What it helps with

  • frame the problem before the team starts building
  • pull a drifted project back to its original intent
  • explain to leadership why this work matters now
  • check whether a proposed solution addresses the core pain
  • onboard a new teammate with the initiative's context

Example prompts for the agent

  • Help me frame the problem for a new initiative: segment is mobile shoppers at checkout
  • The project drifted from its original goal — rebuild the problem statement
  • I need to brief leadership on priorities, so draft a document with business context and metrics

How to install define-problem-statement

1Skills CLI (Vercel)

npx skills add product-on-purpose/pm-skills --skill define-problem-statement -a claude-code

2Manually: put the files in place

~/.claude/skills/define-problem-statement/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/define-problem-statement/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about define-problem-statement

How do I install define-problem-statement in Claude?

Run npx skills add product-on-purpose/pm-skills --skill define-problem-statement -a claude-code. The skill lands at ~/.claude/skills/define-problem-statement/SKILL.md.

What does define-problem-statement do?

It guides the agent from user segment through success metrics and produces a problem framing document. The template and a filled example live in references/TEMPLATE.md and references/EXAMPLE.md.

How is it different from deliver-prd or develop-solution-brief?

Use deliver-prd once the problem is agreed and you need a spec. develop-solution-brief is for proposing and comparing solution approaches. This skill pins down the problem itself.

Source text

SKILL.md · Apache-2.0
---
name: define-problem-statement
description: Creates a clear problem framing document with user impact, business context, and success criteria. Use when starting a new initiative, realigning a drifted project, or communicating up to leadership.
license: Apache-2.0
metadata:
  phase: define
  version: "2.1.0"
  updated: 2026-06-10
  category: problem-framing
  frameworks: [triple-diamond, lean-startup, design-thinking]
  author: product-on-purpose
---
<!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
# Problem Statement

A problem statement is a concise document that frames the problem you're solving, articulates the impact on users and the business, and defines clear success criteria. It serves as the foundation for all subsequent product work by ensuring alignment on *what* problem to solve before jumping to *how* to solve it.

## When to Use

- Starting a new initiative or project to establish shared understanding
- Realigning a drifted project back to its original intent
- Communicating up to leadership or stakeholders about priorities
- Evaluating whether a proposed solution actually addresses the core problem
- Onboarding new team members to provide context

## When NOT to Use

- The problem is already agreed and engineering needs the spec -> use `deliver-prd`
- You want to propose and compare solution approaches -> use `develop-solution-brief`
- You are capturing customer motivation rather than a business problem -> use `define-jtbd-canvas`
- The "problem" is really an unvalidated assumption -> frame it with `define-hypothesis` and test it before committing a team to it

## Instructions

When asked to create a problem statement, follow these steps:

1. **Identify the User Segment**
   Ask who is experiencing this problem. Get specific about the user persona, role, or segment. Avoid vague descriptions like "users" - instead target "mobile shoppers completing checkout" or "enterprise admins managing 50+ users."

2. **Understand the Pain Points**
   Explore what friction, frustration, or unmet need the user experiences. Ask probing questions to understand the severity and frequency of the problem. Look for evidence from user research, support tickets, or behavioral data.

3. **Establish Business Context**
   Connect the user problem to business impact. How does this problem affect revenue, retention, growth, or strategic goals? Why should the organization invest in solving this now versus later?

4. **Define Success Metrics**
   Identify how you will measure success. What metrics will move if this problem is solved? Establish current baselines and target improvements. Be specific and time-bound.

5. **Surface Constraints and Considerations**
   Note any technical limitations, resource constraints, regulatory requirements, or dependencies that will shape the solution space.

6. **Capture Open Questions**
   Document what you don't know yet. What assumptions need validation? What additional research is needed?

## Output Format

Use the template in `references/TEMPLATE.md` to structure the output. A complete problem statement fills every template section: Problem Summary; User Impact; Business Context; Success Criteria; Constraints & Considerations; and Open Questions.

## Quality Checklist

Before finalizing, verify:

- [ ] Problem is specific to a defined user segment (not "all users")
- [ ] Impact is quantified with data or reasonable estimates
- [ ] Success metrics have baselines and targets
- [ ] Problem describes the "what" without prescribing the "how"
- [ ] Business context explains why this matters now
- [ ] Open questions are captured for follow-up

## Examples

See `references/EXAMPLE.md` for a completed example.

© product-on-purpose · Apache-2.0 · product-on-purpose/pm-skills

Similar skills

Everything for Notes, tasks and projects →

From the same set68

deliver-prd Generates a Product Requirements Document to align teams and agents before engineering begins. CX Codex +1 1,000installs deliver-user-stories Turns a PRD or feature description into user stories in persona-action-benefit form, with Given/When/Then acceptance criteria and an INVEST check. CX Codex +1 891installs deliver-edge-cases Catalogs edge cases, error states, race conditions, and recovery paths for a feature. It maps failure modes during specification or QA test planning. CX Codex +1 873installs discover-competitive-analysis Builds a structured teardown of 3–5 direct and indirect competitors: features, pricing, positioning, a 2x2 map and strategic calls. CX Codex +1 832installs define-hypothesis Turns an assumption about user behavior into a falsifiable statement with success metrics and a validation plan, before you design any experiment. CX Codex +1 806installs develop-adr A skill that writes Architecture Decision Records: the context, the choice, and what it costs you later. Useful when the team picks a database, framework or pattern. CX Codex +1 792installs deliver-launch-checklist Builds a cross-functional pre-launch checklist: engineering, design, marketing, support, legal, operations. For launches that span several teams. CX Codex +1 786installs define-opportunity-tree Turns a measurable outcome into a tree of customer opportunities, candidate solutions and assumption tests. Useful when feature ideas pile up without structure. CX Codex +1 774installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor