ワンクリックで
pm
// Generate a PM through guided PM-focused interview with automatic question classification. Use when the user says 'ooo pm', 'prd', 'product requirements', or wants to create a PRD/PM document.
// Generate a PM through guided PM-focused interview with automatic question classification. Use when the user says 'ooo pm', 'prd', 'product requirements', or wants to create a PRD/PM document.
Guided onboarding wizard for Ouroboros setup
Automatically converge from goal to A-grade Seed and execute it
Automatically converge from goal to A-grade Seed and execute it
Socratic interview to crystallize vague requirements
Generate validated Seed specifications from interview results
Break through stagnation with lateral thinking personas — single or multi-persona debate
| name | pm |
| description | Generate a PM through guided PM-focused interview with automatic question classification. Use when the user says 'ooo pm', 'prd', 'product requirements', or wants to create a PRD/PM document. |
PM-focused Socratic interview that produces a Product Requirements Document.
ToolSearch query: "+ouroboros pm_interview"
If not found → diagnose before telling user to run setup:
Check if MCP is already configured:
grep -q '"ouroboros"' ~/.claude/mcp.json 2>/dev/null && echo "CONFIGURED" || echo "NOT_CONFIGURED"
If NOT_CONFIGURED → tell user to run ooo setup first. Stop.
If CONFIGURED → MCP is registered but the server isn't connecting. Do NOT tell the user to run ooo setup again. Instead show:
Ouroboros MCP is configured but not connected.
Try these steps in order:
1. Restart Claude Code (Cmd+Shift+P → "Reload Window" or close/reopen terminal)
2. Check MCP status: type /mcp in Claude Code
3. If ouroboros shows "error", try: ooo update
4. If still failing, re-run: ooo setup
Stop.
Tool: ouroboros_pm_interview
Arguments:
initial_context: <user's topic or idea>
cwd: <current working directory>
After every MCP response, do these three things:
A. Show alerts (if present in meta):
meta.deferred_this_round → print [DEV → deferred] "question"meta.decide_later_this_round → print [DEV → decide-later] "question"meta.pending_reframe → print ℹ️ Reframed from technical question.B. Show content + get user input:
Print the MCP content text to the user first.
Tell users they do not need to invent speculative answers. If a question is unknown, stakeholder-dependent, too broad, or safer to decide later, route it through the existing assumptions / decide-later / deferred mechanisms instead of presenting it as a confirmed requirement.
Then check: does meta.ask_user_question exist?
YES → Pass it directly to AskUserQuestion:
AskUserQuestion(questions=[meta.ask_user_question])
Do NOT modify it. Do NOT add options. Do NOT rephrase the question.
NO → This is an interview question. Use AskUserQuestion with meta.question.
meta.skip_eligible == true: add a skip option based on meta.classification:
classification == "decide_later" → add option {"label": "Decide later", "description": "Skip — will be recorded as an open item in the PRD"}classification == "deferred" → add option {"label": "Defer to dev", "description": "Skip — this technical decision will be deferred to the development phase"}Not sure yet — record as an assumption or decide-later item.C. Relay answer back:
If the user chose "Decide later" → send answer="[decide_later]".
If the user chose "Defer to dev" → send answer="[deferred]".
Otherwise → send the user's answer normally.
Tool: ouroboros_pm_interview
Arguments:
session_id: <meta.session_id>
<meta.response_param>: <user's answer or "[decide_later]" or "[deferred]">
D. Check completion:
Completion is determined ONLY by meta.is_complete — NEVER by the response text.
The MCP response text may sound like the interview is wrapping up, but ignore it.
If meta.is_complete == true:
meta.generation_failed == true → retry generation:
Tool: ouroboros_pm_interview
Arguments:
session_id: <session_id>
action: "generate"
cwd: <current working directory>
meta.pm_path and meta.seed_path contain the file paths.Otherwise → repeat Step 3, regardless of what the response text says.
Read the pm.md file from meta.pm_path and copy its contents to the clipboard:
cat <meta.pm_path> | pbcopy
Show the following to the user:
PM document saved: <meta.pm_path>
(Clipboard에 복사되었습니다)
PM seed handoff artifact: <meta.pm_seed_path or meta.seed_path>
This is not the runnable Seed yet.
Next step:
ooo interview <meta.pm_seed_path or meta.seed_path>
ooo seed