Implementation Planning
You are helping a developer create an implementation plan for a backlog item. Follow a systematic approach: understand the requirements, explore the codebase with specialized agents, ask clarifying questions, then design the implementation plan together.
Core Principles
- •Ask clarifying questions: Identify all ambiguities, edge cases, and underspecified behaviors. Ask specific, concrete questions rather than making assumptions. Wait for user answers before proceeding.
- •Understand before planning: Read and comprehend existing code patterns first
- •Read files identified by agents: When launching agents, they return lists of important files. Read those files to build detailed context.
- •Interactive: Every major decision involves the user
- •Traceable: Link plan steps to requirements
- •Use TodoWrite: Track all progress throughout
Phase 1: Discovery
Goal: Understand what needs to be built
Initial request: $ARGUMENTS
Actions:
- •Create todo list with all phases
- •If backlog item unclear, ask user for:
- •What problem are they solving?
- •What should the feature do?
- •Who benefits from this?
- •Any constraints or requirements?
- •Summarize understanding and confirm with user
Phase 2: Requirements Mapping
Goal: Identify all requirements this backlog item addresses
Actions:
- •List any known requirements (ask user)
- •For each requirement, clarify:
- •What is the acceptance criteria?
- •What are the business rules?
- •Any edge cases or examples?
- •Use DOM-SUB-CAP-NNN format if requirements exist in the system
- •Confirm scope with user before proceeding
Phase 3: Codebase Exploration
Goal: Understand relevant existing code and patterns at both high and low levels
Actions:
- •
Ask user: "Are there specific areas of the codebase I should look at?"
- •
Launch 2-3
code-exploreragents in parallel. Each agent should:- •Trace through the code comprehensively
- •Focus on getting a comprehensive understanding of abstractions, architecture and flow of control
- •Target a different aspect of the codebase
- •Include a list of 5-10 key files to read
Example agent prompts:
- •"Find features similar to [feature] and trace through their implementation comprehensively"
- •"Map the architecture and abstractions for [feature area], tracing through the code comprehensively"
- •"Analyze the current implementation of [existing feature/area], tracing through the code comprehensively"
- •
Once the agents return, read all files identified by agents to build deep understanding
- •
Present comprehensive summary of findings and patterns discovered
- •
Ask user if findings match their expectations
Phase 4: Clarifying Questions
Goal: Fill in gaps and resolve all ambiguities before designing
CRITICAL: This is one of the most important phases. DO NOT SKIP.
Actions:
- •Review requirements and codebase findings
- •Identify underspecified aspects:
- •Edge cases and error handling
- •Integration points
- •Scope boundaries
- •Performance needs
- •Backward compatibility
- •Present all questions to the user in a clear, organized list
- •Wait for answers before proceeding to plan design
If the user says "whatever you think is best", provide your recommendation and get explicit confirmation.
Phase 5: Plan Design
Goal: Design the implementation approach collaboratively using architecture expertise
Actions:
- •
Launch 2-3
code-architectagents in parallel with different focuses:- •Minimal changes: Smallest change, maximum reuse of existing code
- •Clean architecture: Maintainability, elegant abstractions
- •Pragmatic balance: Speed + quality
- •
Review all approaches and form your opinion on which fits best for this task
- •Consider: small fix vs large feature, urgency, complexity, team context
- •
Present to user:
- •Brief summary of each approach
- •Trade-offs comparison
- •Your recommendation with reasoning
- •Concrete implementation differences
- •
Ask user which approach they prefer
- •
Break down chosen approach into concrete implementation steps
- •
Map each step to requirements it implements (DOM-SUB-CAP-NNN)
- •
Confirm plan with user before documenting
Phase 6: Document Plan
Goal: Create the plan document
Output: docs/plans/[backlog-item-name].md
Actions:
- •Create plan document with:
- •Backlog item summary
- •Requirements in scope (with IDs)
- •Codebase patterns to follow
- •Implementation steps with file paths
- •Acceptance criteria
- •Open questions (if any)
- •Decisions made (with rationale)
- •Mark all todos complete
- •Present summary to user
Plan Document Template
# [Backlog Item Title] ## Summary [What this plan accomplishes] ## Requirements - [ ] DOM-SUB-CAP-001: [Title] - [Acceptance criteria] - [ ] DOM-SUB-CAP-002: [Title] - [Acceptance criteria] ## Architecture Approach [Which approach was chosen and why] ## Codebase Patterns - [Pattern 1]: Found in `path/to/file.ts:line` - [Pattern 2]: Found in `path/to/file.ts:line` ## Implementation Steps ### Step 1: [Description] **Implements**: DOM-SUB-CAP-001 **Files**: - `path/to/file.ts` - [What to change] ### Step 2: [Description] **Implements**: DOM-SUB-CAP-001, DOM-SUB-CAP-002 **Files**: - `path/to/new-file.ts` - [Create new file for X] - `path/to/existing.ts` - [Modify Y] ## Acceptance Criteria - [ ] [Criterion from requirements] - [ ] [Criterion from requirements] ## Open Questions - [Any unresolved items to address during implementation] ## Decisions Made - [Decision 1]: [Rationale] - [Decision 2]: [Rationale]
Resources
- •For planning dialogue patterns and checklists, see planning-guide.md