.cursor/skills/deep-interview/SKILL.md
Socratic deep interview with mathematical ambiguity gating before autonomous execution. Use when the user has a vague idea and wants thorough requirements gathering, says "interview me" or "don't assume", or the task is too complex to jump straight to code. Do NOT use when the user has a specific request with file paths and acceptance criteria, already has a plan file, or says "just do it".
npx skillsauth add Samuel-Harris/Bytes-and-Nibbles-Website deep-interviewInstall 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.
Socratic questioning with mathematical ambiguity scoring. Replaces vague ideas with crystal-clear specifications by asking targeted questions, measuring clarity across weighted dimensions, and refusing to proceed until ambiguity drops below a configurable threshold (default: 20%).
explore subagents BEFORE asking the user about themsubagent_type: "explore": check if cwd has existing source code, package files, or git historyexplore subagent to map relevant codebase areas, store as codebase_contextStarting deep interview. I'll ask targeted questions to understand your idea thoroughly before building anything. After each answer, I'll show your clarity score. We'll proceed to execution once ambiguity drops below 20%.
Your idea: "{initial_idea}" Project type: {greenfield|brownfield} Current ambiguity: 100% (we haven't started yet)
Repeat until ambiguity ≤ threshold OR user exits early:
Build the question targeting the dimension with the LOWEST clarity score. Questions should expose ASSUMPTIONS, not gather feature lists.
| Dimension | Question Style | Example | | ---------------------------- | ------------------------------- | --------------------------------------------------------------------------------- | | Goal Clarity | "What exactly happens when...?" | "When you say 'manage tasks', what specific action does a user take first?" | | Constraint Clarity | "What are the boundaries?" | "Should this work offline, or is internet connectivity assumed?" | | Success Criteria | "How do we know it works?" | "If I showed you the finished product, what would make you say 'yes, that's it'?" | | Context Clarity (brownfield) | "How does this fit?" | "The existing auth uses JWT. Should we extend that or add a separate flow?" |
Use AskQuestion with contextually relevant options plus a free-text option:
Round {n} | Targeting: {weakest_dimension} | Ambiguity: {score}%
{question}
After receiving the answer, score clarity across all dimensions (0.0–1.0 each):
For each dimension produce: score, one-sentence justification, and gap (what's still unclear if score < 0.9).
Calculate ambiguity:
ambiguity = 1 - (goal × 0.40 + constraints × 0.30 + criteria × 0.30)ambiguity = 1 - (goal × 0.35 + constraints × 0.25 + criteria × 0.25 + context × 0.15)Round {n} complete.
| Dimension | Score | Weight | Weighted | Gap |
| -------------------- | ----- | ------ | ------------ | ---------------- |
| Goal | {s} | {w} | {s*w} | {gap or "Clear"} |
| Constraints | {s} | {w} | {s*w} | {gap or "Clear"} |
| Success Criteria | {s} | {w} | {s*w} | {gap or "Clear"} |
| Context (brownfield) | {s} | {w} | {s*w} | {gap or "Clear"} |
| **Ambiguity** | | | **{score}%** | |
{score <= threshold ? "Clarity threshold met! Ready to proceed." : "Focusing next on: {weakest_dimension}"}
At specific round thresholds, shift the questioning perspective. Each mode is used ONCE then normal questioning resumes.
| Mode | Activates | Purpose | Prompt Injection | | ---------- | ----------------------------- | --------------------- | --------------------------------- | | Contrarian | Round 4+ | Challenge assumptions | "What if the opposite were true?" | | Simplifier | Round 6+ | Remove complexity | "What's the simplest version?" | | Ontologist | Round 8+ (if ambiguity > 0.3) | Find essence | "What IS this, really?" |
Track which modes have been used in TodoWrite to prevent repetition.
When ambiguity ≤ threshold (or hard cap / early exit):
date '+%Y-%m-%d_%H-%M-%S' in the terminal to get the current timestamp.cursor/artefacts/interviews/{timestamp}_{slug}_interview.md (e.g., 2026-03-04_14-22-10_auth-refactor_interview.md)# Interview: {title}
## Metadata
- Rounds: {count}
- Final Ambiguity Score: {score}%
- Type: greenfield | brownfield
- Generated: {timestamp}
- Threshold: {threshold}
- Status: {PASSED | BELOW_THRESHOLD_EARLY_EXIT}
## Clarity Breakdown
| Dimension | Score | Weight | Weighted |
| ------------------ | ----- | ------ | ------------- |
| Goal Clarity | {s} | {w} | {s\*w} |
| Constraint Clarity | {s} | {w} | {s\*w} |
| Success Criteria | {s} | {w} | {s\*w} |
| Context Clarity | {s} | {w} | {s\*w} |
| **Total Clarity** | | | **{total}** |
| **Ambiguity** | | | **{1-total}** |
## Goal
{crystal-clear goal statement derived from interview}
## Constraints
- {constraint 1}
- {constraint 2}
## Non-Goals
- {explicitly excluded scope 1}
- {explicitly excluded scope 2}
## Acceptance Criteria
- [ ] {testable criterion 1}
- [ ] {testable criterion 2}
- [ ] {testable criterion 3}
## Assumptions Exposed & Resolved
| Assumption | Challenge | Resolution |
| ------------ | ----------------------- | ------------------ |
| {assumption} | {how it was questioned} | {what was decided} |
## Technical Context
{brownfield: relevant codebase findings from explore subagent}
{greenfield: technology choices and constraints}
## Ontology (Key Entities)
| Entity | Fields | Relationships |
| -------- | ---------------- | --------------- |
| {entity} | {field1, field2} | {relates to...} |
## Interview Transcript
<details>
<summary>Full Q&A ({n} rounds)</summary>
### Round 1
**Q:** {question}
**A:** {answer}
**Ambiguity:** {score}% (Goal: {g}, Constraints: {c}, Criteria: {cr})
...
</details>
| Score Range | Meaning | Action | | ----------- | -------------------- | ------------------------------- | | 0.0–0.1 | Crystal clear | Proceed immediately | | 0.1–0.2 | Clear enough | Proceed (default threshold) | | 0.2–0.4 | Some gaps | Continue interviewing | | 0.4–0.6 | Significant gaps | Focus on weakest dimensions | | 0.6–0.8 | Very unclear | May need reframing (Ontologist) | | 0.8–1.0 | Almost nothing known | Early stages, keep going |
development
# Code Review Instructions ## Introduction You are a senior software engineer. ## Exploring the changes Run `git --no-pager diff origin/main...HEAD` to identify the differences between this branch and the main branch. Perform any other necessary git diffs to explore the changes made in this branch. ## Rules: - You absolutely must not edit any of the code. - Investigate any potential issue you find, to validate whether it actually is an issue. ## Code Review Checklist (internal) Work thro
testing
Iterative planning consensus loop. Orchestrates Planner, Architect, and Critic agents in rounds until the plan is approved or max iterations reached. Use for complex tasks that need a validated plan before implementation.
development
Audit a repository's Cursor configuration or evaluate whether a specific artefact (rule, skill, command, subagent) is correctly placed. Use when optimising the repo for Cursor, improving indexing, adding or assessing rules/skills, or deciding where information should live.
development
Generate a holistic product vision from Linear tickets. Pulls backlog, to-do, and in-progress tickets and synthesises them into a status-agnostic overview. Use when starting a new feature to understand the bigger picture, onboarding to the project, or when AI needs context on long-term goals. Supports refreshing existing masterplans with latest data.