$npx -y skills add jmstar85/oh-my-githubcopilot --skill deep-interviewSocratic deep interview with mathematical ambiguity gating. Activate when user says: deep interview, interview me, ask me everything, don't assume, make sure you understand, ouroboros, socratic, I have a vague idea, not sure exactly what I want.
| 1 | # Deep Interview |
| 2 | |
| 3 | Ouroboros-inspired Socratic questioning with mathematical ambiguity scoring. Replaces vague ideas with crystal-clear specifications by asking targeted questions that expose hidden assumptions. |
| 4 | |
| 5 | ## Pipeline |
| 6 | `deep-interview` → `ralplan` (consensus refinement) → `omg-autopilot` (execution) |
| 7 | |
| 8 | ## When to Use |
| 9 | - User has a vague idea and wants thorough requirements gathering |
| 10 | - Task is complex enough that jumping to code would waste cycles |
| 11 | - User wants mathematically-validated clarity before execution |
| 12 | |
| 13 | ## When NOT to Use |
| 14 | - Detailed specific request with file paths → execute directly |
| 15 | - Quick fix → delegate to @executor or `/ralph` |
| 16 | - User says "just do it" → respect their intent |
| 17 | |
| 18 | ## Interactive Hook Protocol |
| 19 | |
| 20 | **MANDATORY**: Use `vscode_askQuestions` for ALL user-facing questions in this skill (when available). |
| 21 | If `vscode_askQuestions` is NOT available (e.g., Copilot CLI), present numbered options in markdown and ask the user to respond with a number or freeform text. |
| 22 | This ensures structured input collection with selectable options, consistent UX, and clear decision tracking. |
| 23 | |
| 24 | ### When to Fire Hooks |
| 25 | | Trigger Point | Question Type | Options Required | |
| 26 | |---------------|---------------|------------------| |
| 27 | | Phase 2 each round | Ambiguity-targeted question | 3-5 options + freeform | |
| 28 | | Phase 3 challenges | Assumption validation | Yes/No + "It depends..." | |
| 29 | | Phase 4 spec review | Confirm crystallized spec | Approve / Revise / Add constraints | |
| 30 | | Phase 5 execution bridge | Choose next workflow | 5 predefined options | |
| 31 | |
| 32 | ### Hook Format Rules |
| 33 | - **header**: Short unique ID, e.g. `"interview-round-3"`, `"spec-approval"` |
| 34 | - **question**: The Socratic question targeting the weakest clarity dimension |
| 35 | - **options**: Provide 3-5 selectable answers that represent likely user intents |
| 36 | - First option: most common/expected answer (mark as `recommended`) |
| 37 | - Last option: always include an "Other / Let me explain..." escape hatch |
| 38 | - **allowFreeformInput**: Always `true` — user can override any option with their own words |
| 39 | - After receiving the answer, score ambiguity immediately and report progress |
| 40 | |
| 41 | ### Example Hook Call |
| 42 | ``` |
| 43 | vscode_askQuestions([{ |
| 44 | header: "goal-scope", |
| 45 | question: "What's the primary output you expect? (Ambiguity: 72% → targeting Goal Clarity)", |
| 46 | options: [ |
| 47 | { label: "A working CLI tool", recommended: true }, |
| 48 | { label: "A library/SDK for other developers" }, |
| 49 | { label: "A web application with UI" }, |
| 50 | { label: "A background service/daemon" }, |
| 51 | { label: "Other / Let me explain..." } |
| 52 | ], |
| 53 | allowFreeformInput: true |
| 54 | }]) |
| 55 | ``` |
| 56 | |
| 57 | ## Phases |
| 58 | |
| 59 | ### Phase 1: Initialize |
| 60 | 1. Parse the user's idea |
| 61 | 2. Detect brownfield vs greenfield (use @explore to check codebase) |
| 62 | 3. For brownfield: map relevant codebase areas |
| 63 | 4. Initialize ambiguity score at 100% |
| 64 | |
| 65 | ### Phase 2: Interview Loop |
| 66 | Repeat until ambiguity <= 20% or user exits early: |
| 67 | |
| 68 | 1. **Generate question** targeting the WEAKEST clarity dimension |
| 69 | 2. **HOOK: Ask ONE question via `vscode_askQuestions`** with: |
| 70 | - Current ambiguity score in the question text |
| 71 | - 3-5 contextual options derived from codebase analysis and prior answers |
| 72 | - `allowFreeformInput: true` always |
| 73 | 3. **Score ambiguity** across dimensions after receiving answer: |
| 74 | - Goal Clarity (40% weight for greenfield, 35% brownfield) |
| 75 | - Constraint Clarity (30% / 25%) |
| 76 | - Success Criteria (30% / 25%) |
| 77 | - Context Clarity (N/A / 15% for brownfield) |
| 78 | 4. **Report progress** with dimension scores and gaps |
| 79 | 5. **Track ontology** (key entities, stability ratio) |
| 80 | |
| 81 | ### Phase 3: Challenge Agents |
| 82 | - Round 4+: **Contrarian** - challenge core assumptions |
| 83 | - **HOOK**: Present assumption + counter-argument, ask user to confirm/revise via `vscode_askQuestions` |
| 84 | - Round 6+: **Simplifier** - probe for complexity removal |
| 85 | - **HOOK**: Present simplification options, ask user which can be dropped |
| 86 | - Round 8+: **Ontologist** - find the essence (if ambiguity > 30%) |
| 87 | |
| 88 | ### Phase 4: Crystallize Spec |
| 89 | When ambiguity <= threshold, generate spec to `.omg/specs/deep-interview-{slug}.md`: |
| 90 | - Goal, Constraints, Non-Goals, Acceptance Criteria |
| 91 | - Assumptions Exposed & Resolved |
| 92 | - Ontology (Key Entities) with convergence tracking |
| 93 | - Interview Transcript |
| 94 | - **HOOK: Spec approval** — present spec summary via `vscode_askQuestions`: |
| 95 | ``` |
| 96 | header: "spec-approval" |
| 97 | question: "Review the crystallized spec. Ready to proceed?" |
| 98 | options: [Approve & continue, Revise specific sections, Add more constraints, Restart interview] |
| 99 | ``` |
| 100 | |
| 101 | ### Phase 5: Execution Bridge |
| 102 | **HOOK: Present execution options** via `vscode_askQuestions`: |
| 103 | ``` |
| 104 | header: "execution-bridge" |
| 105 | question: "Spec is complete (ambi |