home / skills / willsigmon / sigstack / deep-interview
This skill conducts a focused iOS-spec interview that drives polished implementation specs and reduces rework through early, pointed questions.
npx playbooks add skill willsigmon/sigstack --skill deep-interviewReview the files below or copy the command above to add this skill to your agents.
---
name: Deep Interview
description: Structured requirements interview that produces polished implementation specs. Grills the user with pointed, iOS-relevant questions before writing code.
allowed-tools: Read, Write, Glob, AskUserQuestion
model: sonnet
---
# Deep Interview
**Spec-first development. Ask hard questions now, avoid expensive rework later.**
## The Pattern
```
Feature description → Pointed questions (8-15 rounds) → Polished @spec.md → Implementation
```
## When to Use
- New flows touching 3+ screens
- New data models or persistence changes
- Architectural decisions with real trade-offs
- Features with non-obvious edge cases
- Anything where "just build it" would lead to rework
## When NOT to Use
- Bug fixes
- Single-screen UI tweaks
- Adding a button with obvious behavior
- Text/color/spacing changes
## Question Taxonomy (iOS-Adapted)
Focus questions on what actually matters for iOS app development:
### Always Cover
```
1. Core invariant — the one thing that must never break
2. Data model — what's stored, where, relationships
3. UI/UX flows — screens, states (loading/empty/error/success)
4. State management — @Observable, environment, bindings
5. Edge cases — what goes wrong, blast radius
```
### Cover If Relevant
```
6. Offline behavior & sync (CloudKit, conflict resolution)
7. Permissions & entitlements (camera, notifications, etc.)
8. Accessibility (VoiceOver, Dynamic Type)
9. Performance (large lists, memory, battery)
10. Future extension points
```
### Skip Unless Explicitly Needed
```
- Tenancy models
- i18n / l10n
- API contract design
- Enterprise scale concerns
- Observability / analytics
```
## Asking Style
### One Cluster at a Time
Ask 1-3 closely related questions per round. Never dump 10 questions.
### Teach While Asking
Brief context before the question — one sentence explaining why it matters.
Don't lecture. The user is learning, not being tested.
### Use Structured Choices When Sharp
AskUserQuestion with concrete options when it narrows the decision space.
Open-ended when the answer space is too wide for multiple choice.
### Pointed, Not Generic
```
Bad: "What database do you want?"
Good: "When the user closes mid-edit, should changes auto-save, require
explicit save, or be discarded?"
```
## Exit Conditions
Stop interviewing when at least two are true:
- User says "done" / "write the spec" / "that's enough"
- ≥ 8 rounds asked, no new topics in last 2 rounds
- Spec can be written with < 5 remaining questions
## Spec Output
Write to `@spec.md` (or versioned: `@spec-v2.md`, `@feature-spec.md`).
10 sections max. Omit empty sections:
1. Goal
2. Non-goals
3. Core Invariants
4. User Stories & Acceptance Criteria
5. Data Model
6. UI/UX Flows
7. Edge Cases & Error Handling
8. Testing Approach
9. Known Trade-offs
10. Open Questions (should be < 3)
## Integration with SigStack
After spec is approved, hand off to normal execution flow:
- Decision phase confirms approach
- Spawn agents for implementation
- Spec serves as the source of truth for all agents
Use when: New feature interview, spec writing, requirements gathering, "grill me", "deep spec"
This skill runs a structured, iOS-focused requirements interview that converts answers into a polished implementation spec. It asks pointed, incremental questions (8–15 rounds typical) to uncover invariants, data models, UI states, and edge cases before any code is written. Use it to avoid costly rework and to produce a clear spec that teams can implement or hand off to agents.
The skill conducts one cluster of 1–3 related questions per round, giving brief context for why each choice matters. It follows an iOS-adapted taxonomy (core invariant, data model, UI/UX states, state management, edge cases) and covers additional topics like offline sync, permissions, and accessibility only when relevant. When exit conditions are met, it generates a concise @spec.md with up to 10 sections as the single source of truth for implementation and handoff.
How many question rounds are typical?
Expect 8–15 rounds; stop earlier if answers are decisive and the spec can be written with few remaining questions.
Will the skill write implementation code?
No — it produces a polished, actionable spec that serves as the source of truth. After approval, the spec can be handed off to implementation agents or engineers.
Which iOS topics are always covered?
Core invariant, data model, UI/UX flows (states), state management, and edge cases are always prioritized.