/plan-interview
Ensures alignment between user and Claude during feature/spec planning through a structured interview process. Use this skill when the user invokes /plan-interview before implementing a new feature, refactoring, or any non-trivial implementation task. The skill runs an upfront
$ npx -y skills add pskoett/pskoett-ai-skills --skill plan-interview --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/plan-interview
Context preview
The summary Claude sees to decide when to auto-load this skill.
Ensures alignment between user and Claude during feature/spec planning through a structured interview process. Use this skill when the user invokes /plan-interview before implementing a new feature, refactoring, or any non-trivial implementation task. The skill runs an upfront
SKILL.md
plan-interview.SKILL.mdname: plan-interview
description: |
Ensures alignment between user and Claude during feature/spec planning through a structured interview process.
Use this skill when the user invokes /plan-interview before implementing a new feature, refactoring, or any non-trivial implementation task. The skill runs an upfront interview to gather requirements across technical constraints, scope boundaries, risk tolerance, and success criteria before any codebase exploration.
Do NOT use this skill for: pure research/exploration tasks, simple bug fixes, or when the user just wants standard planning without the interview process.
Plan Interview Skill
Install
gh skill install pskoett/pskoett-skills plan-interview
Fallback using the Agent Skills CLI:
npx skills add pskoett/pskoett-skills/skills/plan-interview
Philosophy
Every skill in this collection is built around a core philosophy — a principle that agents struggle to internalize on their own.
This skill's philosophy: **"Make the change easy, then make the change."**
Agents default to plowing straight through implementation, no matter how tangled the path. They rarely pause to ask: "Would a preparatory refactor make this change simple instead of hard?" Planning is where that question gets asked. During codebase exploration and plan generation, actively look for structural friction — code that makes the target change awkward, brittle, or overly complex. When you find it, the plan should propose a preparatory step: make the change easy first, then make the change itself. Two clean steps beat one heroic slog.
Purpose
Run a structured requirements interview before planning implementation. This ensures alignment between you and the user by gathering explicit requirements rather than making assumptions.
When Invoked
User calls `/plan-interview <task description>`.
**Skip this skill** if the task is purely research/exploration (not implementation).
Interview Process
Phase 1: Upfront Interview (Before Exploration)
Check your available tools for `AskUserQuestion`. If it exists, use it to interview the user in **thematic batches of 2-3 questions** — this is the preferred method as it creates a structured prompt for the user to respond to. If `AskUserQuestion` is not available (e.g., GitHub Copilot or other providers without it), ask the same questions directly in chat and pause for responses before continuing.
Required Question Domains
Cover ALL four domains before proceeding:
1. **Technical Constraints**
- Performance requirements
- Compatibility needs
- Existing patterns to follow
- Architecture understanding (if codebase is unfamiliar)
2. **Scope Boundaries**
- What's explicitly OUT of scope
- MVP vs full vision
- Dependencies on other work
3. **Risk Tolerance**
- Acceptable tradeoffs (speed vs quality)
- Tech debt tolerance
- Breaking change acceptance
4. **Success Criteria**
- How will we know it's done?
- What defines "working correctly"?
- Testing/validation requirements
Question Generation
- Generate questions **dynamically** based on the task - no fixed template
- Group related questions into thematic batches
- **2-3 questions per batch** (do not exceed)
- Continue until you have **actionable specificity** (can describe concrete implementation steps)
Planning Depth Calibration
Before leaving the interview phase, classify the task and choose a planning depth:
- **Simple/trivial** (small bug fix, isolated change): minimal plan, at most 1 refinement pass
- **Moderate** (feature work in known area): standard plan, usually 1-2 refinement passes
- **Complex/high-risk** (multi-file, new architecture, unfamiliar codebase, migrations, auth, concurrency): deep plan with iterative refinement until improvements flatten
Let the user override this (`fast` vs `deep`) if they have a clear preference.
Handling Edge Cases
| Scenario | Action | |----------|--------| | Contradictory requirements | Make a recommendation with rationale, ask for confirmation | | User pivots requirements | Restart interview fresh with new direction | | Interrupted session | Ask user: continue where we left off or restart? |
Anti-Patterns to Avoid
- Do NOT ask variations of the same question
- Do NOT make major assumptions without asking
- Do NOT over-engineer plans for simple tasks
Phase 2: Codebase Exploration
After interview completes, explore the codebase to understand:
- Existing patterns relevant to the task
- Files that will be affected
- Integration points
- Potential risks
- **Structural friction** — Is the current code shape fighting the planned change? Would a preparatory refactor (rename, extract, restructure) make the actual implementation straightforward? If yes, propose it as a distinct first step in the plan.
For complex or unfamiliar projects, do a brief context refresh before deep planning:
- Re-read `AGENTS.md` and `README.md` if present and relevant
- Identify the current architecture boundaries and conventions before refining the plan
- If the session was interrupted or context drifted, refresh these again before another refinement round
Knowledge Audit (Between Exploration and Planning)
Before writing the plan, explicitly ask: **"Does the knowledge needed to complete this task exist somewhere I can reach?"**
For each significant implementation step, classify where the required knowledge lives:
- **Codebase** — Existing patterns, conventions, or code that demonstrates how to do it. Found during exploration.
- **Prompt/context** — User-provided requirements, constraints, or domain knowledge from the interview.
- **Training data** — General programming knowledge, well-known libraries, standard patterns the model reliably knows.
- **Nowhere reachable** — The knowledge isn't in any of the above. The agent would be guessing.
When a step falls into "nowhere reachable": 1. **Stop and surface it.** Do not fill th
Read more
name: plan-interview description: | Ensures alignment between user and Claude during feature/spec planning through a structured interview process. Use this skill when the user invokes /plan-interview before implementing a new feature, refactoring, or any non-trivial implementation task. The skill runs an upfront interview to gather requirements across technical constraints, scope boundaries, risk tolerance, and success criteria before any codebase exploration. Do NOT use this skill for: pure research/exploration tasks, simple bug fixes, or when the user just wants standard planning without the interview process.
Plan Interview Skill
Install
gh skill install pskoett/pskoett-skills plan-interview
Fallback using the Agent Skills CLI:
npx skills add pskoett/pskoett-skills/skills/plan-interview
Philosophy
Every skill in this collection is built around a core philosophy — a principle that agents struggle to internalize on their own.
This skill's philosophy: **"Make the change easy, then make the change."**
Agents default to plowing straight through implementation, no matter how tangled the path. They rarely pause to ask: "Would a preparatory refactor make this change simple instead of hard?" Planning is where that question gets asked. During codebase exploration and plan generation, actively look for structural friction — code that makes the target change awkward, brittle, or overly complex. When you find it, the plan should propose a preparatory step: make the change easy first, then make the change itself. Two clean steps beat one heroic slog.
Purpose
Run a structured requirements interview before planning implementation. This ensures alignment between you and the user by gathering explicit requirements rather than making assumptions.
When Invoked
User calls `/plan-interview <task description>`.
**Skip this skill** if the task is purely research/exploration (not implementation).
Interview Process
Phase 1: Upfront Interview (Before Exploration)
Check your available tools for `AskUserQuestion`. If it exists, use it to interview the user in **thematic batches of 2-3 questions** — this is the preferred method as it creates a structured prompt for the user to respond to. If `AskUserQuestion` is not available (e.g., GitHub Copilot or other providers without it), ask the same questions directly in chat and pause for responses before continuing.
Required Question Domains
Cover ALL four domains before proceeding:
1. **Technical Constraints**
- Performance requirements
- Compatibility needs
- Existing patterns to follow
- Architecture understanding (if codebase is unfamiliar)
2. **Scope Boundaries**
- What's explicitly OUT of scope
- MVP vs full vision
- Dependencies on other work
3. **Risk Tolerance**
- Acceptable tradeoffs (speed vs quality)
- Tech debt tolerance
- Breaking change acceptance
4. **Success Criteria**
- How will we know it's done?
- What defines "working correctly"?
- Testing/validation requirements
Question Generation
- Generate questions **dynamically** based on the task - no fixed template
- Group related questions into thematic batches
- **2-3 questions per batch** (do not exceed)
- Continue until you have **actionable specificity** (can describe concrete implementation steps)
Planning Depth Calibration
Before leaving the interview phase, classify the task and choose a planning depth:
- **Simple/trivial** (small bug fix, isolated change): minimal plan, at most 1 refinement pass
- **Moderate** (feature work in known area): standard plan, usually 1-2 refinement passes
- **Complex/high-risk** (multi-file, new architecture, unfamiliar codebase, migrations, auth, concurrency): deep plan with iterative refinement until improvements flatten
Let the user override this (`fast` vs `deep`) if they have a clear preference.
Handling Edge Cases
| Scenario | Action | |----------|--------| | Contradictory requirements | Make a recommendation with rationale, ask for confirmation | | User pivots requirements | Restart interview fresh with new direction | | Interrupted session | Ask user: continue where we left off or restart? |
Anti-Patterns to Avoid
- Do NOT ask variations of the same question
- Do NOT make major assumptions without asking
- Do NOT over-engineer plans for simple tasks
Phase 2: Codebase Exploration
After interview completes, explore the codebase to understand:
- Existing patterns relevant to the task
- Files that will be affected
- Integration points
- Potential risks
- **Structural friction** — Is the current code shape fighting the planned change? Would a preparatory refactor (rename, extract, restructure) make the actual implementation straightforward? If yes, propose it as a distinct first step in the plan.
For complex or unfamiliar projects, do a brief context refresh before deep planning:
- Re-read `AGENTS.md` and `README.md` if present and relevant
- Identify the current architecture boundaries and conventions before refining the plan
- If the session was interrupted or context drifted, refresh these again before another refinement round
Knowledge Audit (Between Exploration and Planning)
Before writing the plan, explicitly ask: **"Does the knowledge needed to complete this task exist somewhere I can reach?"**
For each significant implementation step, classify where the required knowledge lives:
- **Codebase** — Existing patterns, conventions, or code that demonstrates how to do it. Found during exploration.
- **Prompt/context** — User-provided requirements, constraints, or domain knowledge from the interview.
- **Training data** — General programming knowledge, well-known libraries, standard patterns the model reliably knows.
- **Nowhere reachable** — The knowledge isn't in any of the above. The agent would be guessing.
When a step falls into "nowhere reachable": 1. **Stop and surface it.** Do not fill th
A collection of skills for AI agents. Follows the Agent Skills specification. This repository is my personal skill testing ground.
Other skills on pskoett-ai-skills.
- /agent-teams-simplify-and-harden
Implementation + audit loop using parallel agent teams with structured simplify, harden, and document passes. Spawns implementation agents to do the work, then audit agents to find complexity, security gaps, and spec deviations, then loops until code compiles cleanly, all tests
Open skill - /context-surfing
Monitors context window health throughout a session and rides peak context quality for maximum output fidelity. Activates automatically after plan-interview and intent-framed-agent. Stays active through execution and hands off cleanly to simplify-and-harden and self-improvement
Open skill - /control-session-orchestrator
Control-plane workflow for coordinating multi-agent, multi-session project work from a single Codex, GitHub Copilot, or agent-app control session. Use this skill whenever the user asks to orchestrate agents, create or steer worker sessions, run a workflow-like effort, fan out
Open skill - /eval-creator-ci
[Beta] CI-only eval regression runner using gh-aw (GitHub Agentic Workflows). Runs all eval cases in .evals/ on a schedule or per-PR, reports pass/fail results, and can block merges on regressions. Also creates new eval cases from promoted patterns flagged by
Open skill - /eval-creator
[Beta] Creates permanent eval cases from promoted learnings and runs regression checks against them. Turns failures into test cases that prevent silent regression. This is the outer loop''s regress-test step. Use when a learning is promoted and has a clear pass/fail condition,
Open skill - /intent-framed-agent
Frames coding-agent work sessions with explicit intent capture and drift monitoring. Use when a session transitions from planning/Q&A to implementation for coding tasks, refactors, feature builds, bug fixes, or other multi-step execution where scope drift is a risk.
Open skill

