problem-statement — Claude Code skill: purpose and install
Turn a user’s obstacle into a concise problem statement that captures their goal, what gets in the way, and why it matters. Use it during discovery or while framing work for a PRD.
npx skills add deanpeters/Product-Manager-Skills --skill problem-statement -a claude-codeWhat problem-statement does
The skill guides you from the person experiencing a problem to their desired outcome, barriers, root cause, and emotional impact. It then brings those details together in a short statement, with relevant context and constraints. This helps teams discuss the problem before settling on a solution.
The fill-in structure lives in template.md. Interview notes or other user research make a stronger starting point; without that context, research the problem instead of guessing. This skill frames the problem, not the solution, so it does not replace a PRD.
What it helps with
- frame a user problem before discussing solutions
- identify who is blocked and what is stopping them
- turn a vague complaint into an actionable problem statement
- distinguish a user need from a feature request
- prepare a concise problem statement for a PRD
Example prompts for the agent
- Help me describe which users are stuck, what they want to achieve, and what is getting in their way.
- Turn these interview notes into a user problem statement with relevant constraints.
- Frame this user problem for a PRD without proposing a solution.
How to install problem-statement
1Skills CLI (Vercel)
npx skills add deanpeters/Product-Manager-Skills --skill problem-statement -a claude-code2Manually: put the files in place
~/.claude/skills/problem-statement/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/problem-statement/
1Skills CLI (Vercel)
npx skills add deanpeters/Product-Manager-Skills --skill problem-statement -a codex2Manually: put the files in place
.agents/skills/problem-statement/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add deanpeters/Product-Manager-Skills --skill problem-statement -a cursor2Manually: put the files in place
.cursor/skills/problem-statement/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install deanpeters/Product-Manager-Skills problem-statement2Manually: put the files in place
.github/skills/problem-statement/SKILL.md1Skills CLI (Vercel)
npx skills add deanpeters/Product-Manager-Skills --skill problem-statement -a gemini-cli2Platform CLI
gemini skills install https://github.com/deanpeters/Product-Manager-Skills --path skills/problem-statementManually: put the files in place
.devin/skills/problem-statement/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add deanpeters/Product-Manager-Skills --skill problem-statement -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about problem-statement
How do I install problem-statement in Claude Code?
Run npx skills add deanpeters/Product-Manager-Skills --skill problem-statement -a claude-code. The skill is installed at ~/.claude/skills/problem-statement/SKILL.md.
What does problem-statement do?
It helps frame a problem around the person affected, their goal, the obstacle, its underlying cause, and its human impact, then condenses that into a concise statement.
What information should I provide to problem-statement?
Start with who the user is and what they are struggling to do; interview findings or other research help add context. If that evidence is missing, investigate the problem rather than inventing details.