requirements-interview
The Requirements stage of the plan-gate — fills plan.md's Requirements section via structured Q&A where the agent proposes a cited best-guess per question and the supervisor reviews. Reached through plan-gate (which owns the brainstorm→plan entry), not as an independent trigger.
- License 许可
- MIT
- 所属仓库
- muratovv/ai-hats
- 最近更新
- 2026-11-05
- Stars
- ★ 3
- Forks
- 1
01 前言 Front Matter
- name
- requirements-interview
- ai_hats
- { "type": "skill", "schema_version": 1 }
- license
- MIT
- description
- The Requirements stage of the plan-gate — fills plan.md's Requirements section via structured Q&A where the agent proposes a cited best-guess per question and the supervisor reviews. Reached through plan-gate (which owns the brainstorm→plan entry), not as an independent trigger.
03 SKILL.md 正文
Requirements Interview
The Requirements stage of plan-gate: structured Q&A that fills the
Requirements section of plan.md before a task leaves brainstorm.
The interview is review-shaped, not interrogation-shaped: for every
question, the agent proposes a best-guess answer grounded in the
codebase/docs and the supervisor confirms or overrides.
When to Use
Reach this stage through plan-gate, not as a standalone brainstorm→plan
trigger — plan-gate is the single entry point and routes here to fill the
Requirements section.
- Run it when that section is empty and the request leaves >2 independent assumptions about user intent.
- Skip when requirements are already unambiguous from the request — fill the section directly.
- Sibling stage:
design-minimalismowns the adjacentScope & Out-of-scopesection — don't do scope-justification here. - Next stage: once you've stated the value (Q1 "Goal & user value"),
devils-advocatechallenges it inApproach & counter— is it needed? did we miss anything? another way? Loop with it until the value settles, then hand off to scope.
Checklist
Walk through these with the user. Skip any that are already unambiguous from the request. Ask in order; stop when you have enough to plan.
Procedure for each question — collect, propose, review
Before voicing any question from the list below:
- Collect context. Read / Glob / Grep relevant files (existing patterns, similar tasks in the backlog, docs/, ADRs, task.yaml of related cards). One targeted pass — not a full codebase tour.
- Propose a best-guess answer with a source citation. Format:
"My current best guess: <answer>, because
<path>:<line>shows<verbatim or paraphrase>." If the source is a prior task or HYP, cite the ID. If context is genuinely silent, say "context silent on this — please supply" and only then ask the open question. - Supervisor reviews. Supervisor confirms, corrects, or overrides. The interview becomes a one-turn review per question, not a multi-round interrogation.
Without step 1, the recommended answer is hallucination. A best-guess pulled from training-data prior is exactly what we are trying to replace with grounded review.
Questions
- Goal & user value — Who is this for, and what changes for them when it's done?
- Acceptance criteria — How will we know it's done? List 2-4 concrete checks.
- Edge cases & failure modes — What should happen on errors, empty inputs, concurrency, or partial state?
- Non-functional requirements — Performance, reliability, compatibility, observability needs?
- Constraints & non-goals — What is explicitly out of scope? What must NOT change?
- Dependencies & blockers — Anything we're waiting on (other tasks, systems, people)?
- Kill criteria — Under what condition should we abandon the task instead of shipping a partial version?
Output
After the interview, update the task description so a fresh agent can pick it up without re-asking:
rack transition <ID> --set description="<answers organized by section>"
Mirror the question headings (Goal, Acceptance, Edge cases, etc.) so future
readers see what was confirmed vs left N/A. Each non-N/A answer carries
either a source citation (path:line, task ID, ADR ID) or an explicit
"supervisor override: <reason>" — so the next agent can audit the
provenance of each line.
Completion
- Task description has answers (or explicit
N/A — <reason>) for questions 1-3 minimum - Every non-N/A answer carries a source citation OR a "supervisor override" tag
- All user-mentioned constraints captured (cross-check with scope-guard)
- Plan can be drafted without material assumptions about user intent
Anti-Patterns
- Asking a question whose answer is visible in the code/docs. Read first; ask only when context is silent or ambiguous. Cheap exploration costs less than a supervisor turn.
- Recommended answer without a source citation. A best-guess
unanchored to
path:line/ task-ID / ADR is a hallucination dressed as review. The whole point of the citation is that supervisor can jump to the source in one click. - Citing a source that doesn't actually say what you claim. Worse than no citation — it's a false anchor. Read the file you're citing.
- Asking all 7 questions when only 1-2 are unclear — wastes the user's time
- Accepting vague answers ("make it good") without a follow-up
- Skipping the interview on tasks described in one sentence — that's exactly when ambiguity is highest
- Deferring questions until plan/execute — a misaligned plan costs more to redo than a 2-minute interview
04 同仓库更多 Skills
tool-evaluation-protocol
Time-bounded protocol for evaluating new tools, libraries, or methodologies before adoption. Use when evaluating a candidate dependency for the project, researching a methodology (e.g. ML/LLM frameworks, testing approaches), or following up on a hype-driven recommendation.
systematic-debugging
4-phase bug-fix protocol (evidence, pattern, hypothesis, verify). Use when investigating any error, failure, or unexpected behavior, handling bug reports from users or monitoring, or diagnosing test failures with non-obvious causes.
skill-template
Canonical template and validation guide for ai-hats skills. Use when creating a new skill, reviewing an existing one for structural compliance, or deciding which pattern fits a new behavior.
skill-optimization
Audit and refactor library components to eliminate redundancy and staleness. Use during periodic library maintenance, after adding multiple new skills or rules, when a role's token budget is too high, or after retrospectives identify component issues.
silent-fallback-gate
PreToolUse hook — refuses an Edit or Write that adds an inert broad except. Use when a Python edit was blocked for a silent fallback.
retro-to-framework
Convert an observation about agent behavior — from a retrospective or from a single incident — into a framework-level change (hook, rule, skill, skill update). Use after a retrospective identifies problems that are not project-specific, after an incident where an agent misapplied a component it had read, when CLAUDE.md band-aids accumulate (more than 3 per-project rules that could be generic), or when the same problem recurs across multiple projects.