|
1 | 1 | --- |
2 | 2 | name: interview-spec |
3 | | -description: Interview the user about a spec or plan file, asking in-depth questions about technical implementation, UI/UX, concerns, and tradeoffs. Use when refining requirements, planning features, or fleshing out specifications. |
| 3 | +description: Interview me about the plan |
| 4 | +argument-hint: [plan] |
4 | 5 | --- |
5 | 6 |
|
6 | | -# Spec Interview |
| 7 | +Read this plan file $1 and interview me in detail using the AskUserQuestionTool about |
| 8 | +literally anything: technical implementation, UI & UX, concerns, tradeoffs, etc. |
| 9 | +but make sure the questions are not obvious. |
7 | 10 |
|
8 | | -Deep-dive interview process to refine specifications and uncover hidden requirements. |
9 | | - |
10 | | -## Process |
11 | | - |
12 | | -1. **Read the spec file** provided by the user (e.g., `SPEC.md`, `plan.md`) |
13 | | -2. **Interview continuously** using AskUserQuestion tool until spec is complete |
14 | | -3. **Update the spec file** with all gathered information |
15 | | - |
16 | | -## Interview Guidelines |
17 | | - |
18 | | -### Ask non-obvious questions |
19 | | - |
20 | | -Don't ask surface-level questions. Dig deeper: |
21 | | - |
22 | | -- **Bad**: "What should the button do?" |
23 | | -- **Good**: "If the user clicks the button while a background sync is in progress, should we queue the action, cancel the sync, or show a conflict modal?" |
24 | | - |
25 | | -### Cover all dimensions |
26 | | - |
27 | | -| Area | Example questions | |
28 | | -| --------------- | ------------------------------------------------------------------------- | |
29 | | -| **Technical** | Data flow, state management, error handling, caching, offline behavior | |
30 | | -| **UI/UX** | Edge cases, empty states, loading states, error states, accessibility | |
31 | | -| **Tradeoffs** | Performance vs simplicity, flexibility vs consistency, build vs buy | |
32 | | -| **Concerns** | Security implications, scalability limits, maintenance burden | |
33 | | -| **Integration** | How it affects existing features, migration path, backwards compatibility | |
34 | | - |
35 | | -### Question patterns |
36 | | - |
37 | | -- "What happens when X fails?" |
38 | | -- "How should this behave if the user has [edge case]?" |
39 | | -- "What's the expected behavior when [two things conflict]?" |
40 | | -- "Is [assumption] correct, or should we handle [alternative]?" |
41 | | -- "What's more important here: [tradeoff A] or [tradeoff B]?" |
42 | | -- "Have you considered [non-obvious implication]?" |
43 | | - |
44 | | -### Keep interviewing until |
45 | | - |
46 | | -- All edge cases are addressed |
47 | | -- Error handling is defined |
48 | | -- UI states are specified (loading, empty, error, success) |
49 | | -- Technical constraints are documented |
50 | | -- Tradeoffs are explicitly decided |
51 | | -- User confirms spec is complete |
52 | | - |
53 | | -## Output |
54 | | - |
55 | | -After interview, update the spec file with: |
56 | | - |
57 | | -- Clarified requirements |
58 | | -- Documented decisions |
59 | | -- Edge cases and error handling |
60 | | -- Technical constraints |
61 | | -- Open questions (if any remain) |
| 11 | +Be very in-depth and continue interviewing me continually until it’s complete, then write the spec to the file. |
0 commit comments