plan-interview
Skill1 starsChanged 4 months agoMITView on GitHub
Interview the user one question at a time, branch-by-branch, until every decision in their plan or design is resolved and shared understanding is reached. Each question gets a recommended answer with rationale; questions answerable from the codebase are resolved by reading the code instead of asking. Use whenever the user wants to stress-test a plan interactively, walk through a design tree, resolve open decisions before implementing, or hits you with phrases like 'grill me on this', 'interview me about this plan', 'walk me through the decisions', 'help me clarify this design', or 'what am I missing'.
7 other projects use a version of this.
Adopted by
Most recently taken up by
- Loffee5422/plan-interview-skilltheir own version, first seen Oct 9, 2026
- talhaMah56/claude_skillstheir own version, first seen Sep 12, 2026
- moriwo-dev-ai/amateras-registrytheir own version, first seen Jul 26, 2026
- pujakesuma/my-claude-skillstheir own version, first seen May 10, 2026
- pskoett/pskoett-ai-skillstheir own version, first seen Apr 13, 2026
- sbpark2930-ui/claude-skillstheir own version, first seen Apr 5, 2026
Other versions7 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 7
- pskoett/pskoett-ai-skills★ 327same name
- Loffee5422/plan-interview-skill★ 2same name
- sbpark2930-ui/claude-skills★ 2same name
- pujakesuma/my-claude-skills★ 1same name
- shawn-sandy/claude-skills★ 1same name
- moriwo-dev-ai/amateras-registry★ 0same name
- talhaMah56/claude_skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository24 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- architecture-auditSkill
- autodreamSkill
- deep-discoverySkill
- generic-by-designSkill
- gitops-cd-developerSkill
- gitops-pipeline-developerSkill
- golang-script-developerSkill
- humanizerSkill
- information-architectureSkill
- interactive-deck-builderSkill
- javascript-script-developerSkill
- linux-script-developerSkill
- makefile-script-developerSkill
- pre-commit-setupSkill
- python-script-developerSkill
- qaSkill
- skill-builderSkill
- teacher-modeSkill
- terraform-module-developerSkill
- typescript-script-developerSkill
- ui-deslopSkill
- xquik-x-dataSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
24 rules. 0 are common, 21 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 5 edited versions we read keep these.
21
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 42
If the user wants a final stress-test report without round-trips, route to deep-discovery.
- Very specific: line 50
Provide your recommended answer with the question: Always. Format: Question: <single question>.
- Distinctive: line 52
Repeat until no open branches remain: When the tree is fully resolved, stop.
- Distinctive: line 66
After every answer the user gives, update the tree and ask the next question in the same shape.
- Distinctive: line 86
Try the code first: If a question is "what's the current auth flow", you should read the code, not ask.
- Distinctive: line 87
Sequence by dependency, not by checklist order: If decision B depends on decision A, ask A first.
- Distinctive: line 89
Stop when the tree is empty: Don't invent new questions to keep the interview going.
- Distinctive: line 90
Don't accept vague answers: If the user says "we should probably handle errors gracefully", that's not resolved — push for the concrete …
- Distinctive: line 92
Do not re-derive the user's stated facts: If the user already named the database, framework, or runtime, do not ask "what are we using?" …
- Distinctive: line 98
Read every artifact the user gave you (plan, doc, code, prior conversation) before asking anything.
- Distinctive: line 101
Ask one question at a time.
- Distinctive: line 103
Update the tree after every user answer before asking the next question.
- Distinctive: line 106
Stop when the tree is empty.
- Distinctive: line 107
If the user calls "stop", stop immediately and summarize what's resolved + what's still open.
- Distinctive: line 111
Do not ask multiple questions in one turn.
- Distinctive: line 112
Do not ask questions without offering a recommendation.
- Distinctive: line 113
Do not ask the user things that are clearly findable in the code or in the artifact they already gave you.
- Distinctive: line 114
Do not accept hedged or vague answers as resolved.
- Distinctive: line 115
Do not march the questions in artifact order — sequence by dependency.
- Distinctive: line 116
Do not re-ask resolved decisions in different words.
- Distinctive: line 117
Do not invent questions to keep the interview running once the tree is empty.
- Very specific: line 118
Do not switch to batch self-interrogation halfway through — that's deep-discovery's job.
- Distinctive: line 119
Do not write code or implementation while the interview is open.
- Distinctive: line 120
Do not summarize until the interview is actually over (tree empty or user-stopped).
“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Plan Interview
A relentless, interactive interview pattern. One question at a time. Each question resolves a single decision in the plan or design tree. Each question ships with a recommended answer and rationale. Anything answerable from the codebase is answered by reading the code, not by asking. The loop ends when no open branches remain.
When to use
- The user pasted a plan, design doc, RFC, or PR description and wants it stress-tested before implementation.
- The user said "grill me", "interview me", "walk me through this", "what am I missing", "find the gaps in this plan".
- You are about to implement something non-trivial and the spec has obvious unresolved branches (auth model, error semantics, rollout strategy, etc.).
- The user explicitly asked for shared-understanding alignment before code is written.
Skip this skill for: trivial work where the answer is obvious, batch self-interrogation (use deep-discovery for that), or pure code review of an existing diff (use qa or a code-review pattern instead).
How this is different from deep-discovery
deep-discoveryis a self-dialogue: you ask 100 questions internally and produce a synthesis. The user sees only the result.plan-interviewis interactive: you ask the user one question, wait for their answer, then ask the next. The user sees every question.
If the user wants a final stress-test report without round-trips, route to deep-discovery. If they want to think through the plan with you, stay here.
Workflow
- Read what they gave you. Plan, design doc, RFC, code in a branch, whatever. Take inventory of every decision the artifact does or does not answer.
- Build a decision tree. Group open decisions into branches. Identify dependencies — some decisions are blocked by others. Load
references/decision-tree.mdfor branch-tracking patterns. - Try the codebase first. For every candidate question, ask: "Could this be answered by reading the code or running a small command?" If yes, resolve it that way and don't ask. Load
references/codebase-first.mdfor the heuristic. - Ask the highest-value open question. Pick the question that unblocks the most downstream branches. One question per turn, never a multi-question dump. Load
references/question-patterns.mdfor question shape and the recommended-answer pattern. - Provide your recommended answer with the question. Always. Format:
Question: <single question>. My recommendation: <answer>. Why: <one or two sentences>.This gives the user a starting point to react to instead of generating from scratch. - Wait for the answer. Update the tree. Their answer may resolve the question, change the tree, or open new branches. Update before asking the next.
- Repeat until no open branches remain. When the tree is fully resolved, stop. Summarize the resolved plan and confirm shared understanding.
Required output shape per question
**Q[n]: <single question>**
**My recommendation:** <concrete answer>
**Why:** <one or two sentences of rationale>
<optional: trade-off note, alternatives, or what this unblocks downstream>After every answer the user gives, update the tree and ask the next question in the same shape. When done:
**Plan resolved.** Open decisions: 0. Summary:
- <decision 1> → <chosen answer>
- <decision 2> → <chosen answer>
...Available resources
references/question-patterns.md— what makes a good interview question, the recommended-answer pattern, how to phrase trade-off questions.references/decision-tree.md— tracking branches and dependencies, choosing the next-highest-value question, when an answer reshapes the tree.references/codebase-first.md— heuristic for "could the code answer this?" before asking the user.assets/examples/full-example.md— full worked interview on a sample plan.
Top gotchas (always inline — do not skip)
- One question per turn. Always. Multi-question dumps lose the user. Even when three questions are tightly related, ask one and let the answer reshape the next two.
- Always include a recommended answer. "What should we do about X?" with no recommendation makes the user generate from scratch. "I'd lean toward A because Y — does that fit?" is faster and more honest. The user can always say "no, let's do B".
- Try the code first. If a question is "what's the current auth flow", you should read the code, not ask. Asking questions the code can answer wastes the user's time and makes you look lazy.
- Sequence by dependency, not by checklist order. If decision B depends on decision A, ask A first. Don't march through the plan top-to-bottom — ask whichever open question unblocks the most.
- The tree changes as answers come in. A "definitely needed" question can become moot once the user picks a different approach upstream. Update the tree after every answer; never ask a question whose premise the previous answer killed.
- Stop when the tree is empty. Don't invent new questions to keep the interview going. The goal is shared understanding, not maximum question count.
- Don't accept vague answers. If the user says "we should probably handle errors gracefully", that's not resolved — push for the concrete behavior. "Graceful how — retry once and surface, or fail closed and alert?"
- Preserve answered decisions. Once the user has answered a question, don't re-ask it later in different words. Keep a list of resolved decisions and check against it.
- Do not re-derive the user's stated facts. If the user already named the database, framework, or runtime, do not ask "what are we using?" Read what they wrote.
- Stop interviewing when the user says they're done. "OK that's enough, let's build" is a hard stop. Summarize what's resolved, flag what's still open, and exit. Don't sneak more questions into the summary.
- The recommendation has to be a real recommendation. "It depends" is not a recommendation. Pick one, justify it, and let the user push back.
What you DO
- Read every artifact the user gave you (plan, doc, code, prior conversation) before asking anything.
- Build a decision tree of open branches and their dependencies.
- For each candidate question, check if the codebase can answer it; if so, resolve from code.
- Ask one question at a time. Always with a concrete recommendation and short rationale.
- Pick the question that unblocks the most downstream branches first.
- Update the tree after every user answer before asking the next question.
- Push back on vague answers — get to a concrete decision.
- Track resolved decisions and never re-ask them.
- Stop when the tree is empty. Summarize the resolved plan.
- If the user calls "stop", stop immediately and summarize what's resolved + what's still open.
What you do NOT do
- Do not ask multiple questions in one turn.
- Do not ask questions without offering a recommendation.
- Do not ask the user things that are clearly findable in the code or in the artifact they already gave you.
- Do not accept hedged or vague answers as resolved.
- Do not march the questions in artifact order — sequence by dependency.
- Do not re-ask resolved decisions in different words.
- Do not invent questions to keep the interview running once the tree is empty.
- Do not switch to batch self-interrogation halfway through — that's
deep-discovery's job. - Do not write code or implementation while the interview is open. The interview's deliverable is a resolved plan, not a partial implementation.
- Do not summarize until the interview is actually over (tree empty or user-stopped).
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

