plugins/teamcraft-jcg/skills/discover-problem/SKILL.md
Facilitate a live problem discovery session with a client or stakeholders. Designed for use during a meeting or call — helps the PM guide structured exploration of a problem space before any requirements are written. Produces a discovery summary in Confluence that seeds capture-requirements. Works in Claude Cowork and Claude Code.
npx skillsauth add codingthefuturewithai/claude-code-primitives teamcraft-jcg:discover-problemInstall 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.
Facilitate structured problem discovery with a client or stakeholder — the session that happens before requirements can be written. The PM is in a live conversation. The goal is not to document what the client already knows; it is to help the client discover what the real problem is, surface hidden assumptions, and narrow to a problem statement clear enough to become a PRD.
A well-run discovery session ends with: a sharp problem statement, identified root causes, competing hypotheses ranked by evidence, known gaps that need research before committing to a solution, and a clear recommendation on whether to proceed directly to requirements or validate further first.
Start by asking the PM what situation they are walking into — who is in the room, what the client has said so far, and whether there are any existing documents to load as context. If they point to a Confluence page, load it with mcp__sooperset-mcp-atlassian__confluence_get_page.
Guide the discovery through the problem space. The depth and order follow the conversation, not a fixed script. What matters is reaching a clear problem statement:
Understand the pain — what is happening that should not be, or not happening that should be? Who experiences it and how often? What does it cost — in time, money, errors, missed opportunities?
Find the root — what causes the problem? Challenge surface symptoms. Ask why until the real driver emerges. If multiple causes exist, name them separately.
Surface competing hypotheses — what are the different ways this problem could be solved? Do not evaluate yet — list them. Include the client's initial ideas.
Assess what is known vs. assumed — for each hypothesis, what evidence supports it? What is being assumed? What would need to be true for this to be the right solution?
Identify gaps — what do we not know that we need to know before committing to a direction? Is more research needed, or is there enough to write requirements now?
When a visual would make the problem clearer — a process flow, a data model, a user journey, a rough UI concept — generate it inline. Mermaid diagrams for flows and relationships. HTML artifacts for interactive UI concepts. Visuals are part of the session, not a separate step. Use them whenever a picture clarifies faster than words.
The frontend-design plugin, if installed, will automatically improve the quality of any HTML mockup generated during this session.
When the session reaches a natural stopping point, produce a discovery summary. See references/example-discovery-summary.md for the expected structure and depth.
Show the complete summary for review before storing. Confirm content with the PM.
Ask which Confluence space to store the discovery summary in. Use mcp__sooperset-mcp-atlassian__confluence_search to surface available spaces if the user doesn't know the space key. Once the space is confirmed, use mcp__sooperset-mcp-atlassian__confluence_get_page_children to browse its structure and recommend a parent page location based on what already exists. Confirm the location before creating with mcp__sooperset-mcp-atlassian__confluence_create_page.
Share the Confluence page URL and page ID. If the problem is well-enough understood to write requirements, the natural next step is capture-requirements — point at this discovery summary as the primary input. If more research is needed first, say so explicitly and name what questions need answers before a PRD session makes sense.
development
Launch (or re-launch) the user's live, multi-project work board. The dashboard is a single HTML file copied to a stable user-side location at ~/.claude/teamcraft-board.html and opened in the user's default browser. It has two views via a header toggle — a drag-and-drop Kanban Board and a live Status tab with analytics (work by status, throughput, cycle time, aging, blocked chains, recomputed on every poll). Each project is added via a header dropdown; the dashboard polls each project's .teamcraft/work directly from the browser and updates in real time. Use when the user says 'show me the kanban', 'work board', 'open the board', 'board view', 'kanban view', 'live dashboard', 'visual dashboard', 'live status dashboard', 'status dashboard', 'project metrics', 'throughput/cycle-time view', 'HTML view of work items', 'drag-and-drop board', or asks to see/move/track work visually.
development
Run a retrospective — AI compiles evidence from recent work, facilitates human reflection, and captures process decisions back into living docs. Use when the user says 'run a retro', 'let's do a retrospective', 'run a retrospective on the last 2 weeks', 'let's reflect on how that feature went', or 'time for a retro'.
development
Re-evaluate what Claude needs to be told about this project as the codebase evolves. Some gotchas become obvious from the code (remove them). New gotchas emerge. Decisions change. Use when the user says 'refresh the rules', 'update Claude's context', 'are the rules still accurate', 'clean up claude rules', or after significant codebase changes.
development
Report project status from work items and git history — either as a quick, interpreted read here in the session, or by pointing the developer to the live Status dashboard (the work board's Status tab). Covers work by status, what's in flight, cycle times, throughput, backlog priorities, aging alerts, blocked chains, and how commit activity lines up with the board. Use when the user says 'project status', 'show me the project status', 'what's the status of the work items', 'how are we doing', 'generate a status report', or asks for a status dashboard.