Conduct a focused technical planning interview to produce an implementable, parallelizable plan or spec with clear dependencies, risks, and open questions.
This skill runs a structured technical interview to turn a rough idea or an existing spec into a detailed, implementable plan. The output is organized for parallel execution: foundations first, then independent workstreams, then merge and integration.
The user will provide one of:
SPEC.md, PLAN.md, RFC.md)Output is always written to PLAN.md in the repo root.
PLAN.md as the output in the repo root. If PLAN.md already exists, update it rather than creating a new file.Summarize what is known, then identify missing details. Focus on:
Use the AskUserQuestion (Claude) and/or request_user_input (Codex) tools in rounds. Ask 1-3 questions per round. Each round should go deeper and avoid repeating what is already known.
CRITICAL RULES:
Question categories to cover as relevant:
Identify:
Write the final plan to PLAN.md. Ensure the plan includes concrete verification steps the agent can run end to end. If the user only wants a plan in chat, provide it inline and mention that it would be written to PLAN.md.
The generated plan MUST follow this structure:
# [Feature Name] Implementation Plan
## Overview
[2-3 sentence summary of what this implements and why]
## Goals
- [Explicit goal 1]
- [Explicit goal 2]
## Non-Goals
- [What this explicitly does NOT do]
## Assumptions and Constraints
- [Known constraints or assumptions]
## Requirements
### Functional
- [Requirement]
### Non-Functional
- [Performance, reliability, security, compliance]
## Technical Design
### Data Model
[Schema changes, new entities, relationships]
### API Design
[New endpoints, request/response shapes, versioning]
### Architecture
[System diagram in text or mermaid, component interactions]
### UX Flow (if applicable)
[Key screens, loading states, error recovery]
---
## Implementation Plan
### Serial Dependencies (Must Complete First)
These tasks create foundations that other work depends on. Complete in order.
#### Phase 0: [Foundation Name]
**Prerequisite for:** All subsequent phases
| Task | Description | Output |
|------|-------------|--------|
| 0.1 | [Task description] | [Concrete deliverable] |
| 0.2 | [Task description] | [Concrete deliverable] |
---
### Parallel Workstreams
These workstreams can be executed independently after Phase 0.
#### Workstream A: [Name]
**Dependencies:** Phase 0
**Can parallelize with:** Workstreams B, C
| Task | Description | Output |
|------|-------------|--------|
| A.1 | [Task description] | [Concrete deliverable] |
| A.2 | [Task description] | [Concrete deliverable] |
#### Workstream B: [Name]
**Dependencies:** Phase 0
**Can parallelize with:** Workstreams A, C
| Task | Description | Output |
|------|-------------|--------|
| B.1 | [Task description] | [Concrete deliverable] |
---
### Merge Phase
After parallel workstreams complete, these tasks integrate the work.
#### Phase N: Integration
**Dependencies:** Workstreams A, B, C
| Task | Description | Output |
|------|-------------|--------|
| N.1 | [Integration task] | [Concrete deliverable] |
---
## Testing and Validation
- [Unit, integration, end-to-end coverage]
- [Manual test plan if needed]
## Rollout and Migration
- [Feature flags, staged rollout, migration steps]
- [Rollback plan]
## Verification Checklist
- [Exact commands or manual steps the agent can run to verify correctness]
- [Expected outputs or success criteria]
## Risk Assessment
| Risk | Likelihood | Impact | Mitigation |
|------|------------|--------|------------|
| [Risk description] | Low/Med/High | Low/Med/High | [Strategy] |
## Open Questions
- [ ] [Question that still needs resolution]
## Decision Log
| Decision | Rationale | Alternatives Considered |
|----------|-----------|------------------------|
| [Decision made] | [Why] | [What else was considered] |
Round 1: High-Level Architecture
Round 2: Edge Cases
Round 3: Parallelization
Round 4: Operational
After sufficient rounds of questions: