Intent Interview
A structured methodology for extracting, refining, and documenting product/feature requirements through deep interviewing.
Output Artifacts
intent.md (for Code Agents)
Detailed technical specification with:
- •Architecture design
- •Data contracts and schemas
- •Implementation guide with code examples
- •Project structure
- •Decision rationale
overview.md (for Humans)
One-page summary with:
- •Problem statement
- •Core experience flow
- •Architecture diagram (ASCII)
- •Key decisions table
- •Scope and risks
Interview Process
Phase 1: Problem Space
Start by understanding WHAT before HOW.
code
Questions to ask: - What is the core problem? - Who is the target user? - Is this a new product or addition to existing? - What's the priority/urgency?
Phase 2: Deep Dive (Iterative)
Cover these dimensions systematically, 3-4 questions per round:
| Dimension | Key Questions |
|---|---|
| Data | Sources, contracts, validation, conflicts, authentication |
| Rendering | Cross-platform strategy, components, theming, sizing |
| Sync/Update | Real-time requirements, refresh strategy, failure handling |
| Architecture | Storage, sharing, cloud/local, offline capability |
| UX | Configuration flow, error states, feedback mechanisms |
| Edge Cases | Failures, migrations, security, low-end devices |
| Scope | MVP boundaries, what's in/out, phasing |
| Tech Stack | Languages, frameworks, existing code to reuse |
Phase 3: Contradiction Resolution
When answers conflict with earlier choices:
- •Point out the contradiction explicitly
- •Ask for clarification with specific options
- •Update understanding accordingly
Phase 4: Implementation Readiness Check
Before writing specs, verify:
- •Can a code agent implement this without asking questions?
- •Are all technical choices specified?
- •Are edge cases covered?
If gaps exist, continue interviewing.
Question Design
Do
- •Ask non-obvious, probing questions
- •Probe tradeoffs ("if X fails, should we Y or Z?")
- •Use concrete scenarios
- •Offer 3-4 mutually exclusive options
- •Match user's language (中文/English)
Don't
- •Ask yes/no questions
- •Ask obvious implementation details
- •Ask multiple unrelated questions at once
Format
Use AskUserQuestion tool with:
- •1-4 questions per round
- •2-4 options per question
- •Short header (max 12 chars)
- •Clear option descriptions
intent.md Template
markdown
# [Project] Specification ## 1. Overview - Product positioning - Core concept - Priority - Target user - Project scope ## 2. Architecture - Data layer - Rendering layer - Key subsystems ## 3. Detailed Behavior - Update/refresh - Error handling - Data processing ## 4. User Experience - Key flows - Configuration ## 5. Technical Implementation Guide - Project structure - Code examples ## 6. Decisions Summary | Decision | Choice | Rationale | ## 7. MVP Scope - Included - Excluded ## 8. Risks ## 9. Open Items
overview.md Template
markdown
# [Project]: One-line description ## One sentence explanation ## Why? Problem in plain language ## Core experience ASCII flow diagram ## Architecture ASCII component diagram ## Key decisions | Question | Choice | Why | ## Scope In / Out ## Risk + Mitigation ## Next steps
Workflow
code
User describes idea
↓
Phase 1: Problem space (1-2 rounds)
↓
Phase 2: Deep dive (multiple rounds)
↓
Phase 3: Resolve contradictions
↓
Phase 4: Check readiness
↓ (loop if gaps)
Generate intent.md
↓
Ask if overview needed
↓
Generate overview.md
↓
(Optional) Push to repository