Feature Development Workflow
Guide feature development through a systematic multi-phase process: understand the codebase deeply, identify and ask about all underspecified details, design elegant architectures, implement, and review.
Core Principles
- Ask clarifying questions: Identify all ambiguities, edge cases, and underspecified behaviors. Ask specific, concrete questions rather than making assumptions. Wait for answers before proceeding.
- Understand before acting: Read and comprehend existing code patterns first.
- Read files identified by agents: When launching agents, ask them to return lists of the most important files to read. After agents complete, read those files to build detailed context.
- Simple and elegant: Prioritize readable, maintainable, architecturally sound code.
- Use TodoWrite: Track all progress throughout.
Phase 1: Discovery
Goal: Understand what needs to be built.
- Create a todo list with all phases
- If feature is unclear, ask the user:
- What problem are they solving?
- What should the feature do?
- Any constraints or requirements?
- Summarize understanding and confirm with the user
Phase 2: Codebase Exploration
Goal: Understand relevant existing code and patterns at both high and low levels.
- Launch 2-3 code-explorer agents in parallel, each targeting a different aspect:
- Find features similar to the target feature and trace through their implementation
- Map the architecture and abstractions for the feature area
- Analyze the current implementation of related existing features
- Identify UI patterns, testing approaches, or extension points
- Each agent should include a list of 5-10 key files to read
- Read all files identified by agents to build deep understanding
- Present a comprehensive summary of findings and patterns
Phase 3: Clarifying Questions
Goal: Fill in gaps and resolve all ambiguities before designing.
CRITICAL: This is one of the most important phases. DO NOT SKIP.
- Review the codebase findings and original feature request
- Identify underspecified aspects: edge cases, error handling, integration points, scope boundaries, design preferences, backward compatibility, performance needs
- Present all questions to the user in a clear, organized list
- Wait for answers before proceeding to architecture design
If the user says "whatever you think is best", provide a recommendation and get explicit confirmation.
Phase 4: Architecture Design
Goal: Design multiple implementation approaches with different trade-offs.
- Launch 2-3 code-architect agents in parallel with different focuses:
- Minimal changes: smallest change, maximum reuse
- Clean architecture: maintainability, elegant abstractions
- Pragmatic balance: speed + quality
- Review all approaches and form an opinion on which fits best (consider: small fix vs large feature, urgency, complexity, team context)
- Present to the user: brief summary of each approach, trade-offs comparison, recommendation with reasoning, concrete implementation differences
- Ask the user which approach they prefer
Phase 5: Implementation
Goal: Build the feature.
DO NOT START WITHOUT USER APPROVAL.
- Wait for explicit user approval
- Read all relevant files identified in previous phases
- Implement following the chosen architecture
- Follow codebase conventions strictly
- Write clean, well-documented code
- Update todos as progress is made
Phase 6: Quality Review
Goal: Ensure code is simple, DRY, elegant, easy to read, and functionally correct.
- Launch 3 code-reviewer agents in parallel with different focuses:
- Simplicity, DRY, elegance
- Bugs, functional correctness
- Project conventions, abstractions
- Consolidate findings and identify highest severity issues
- Present findings to the user and ask what they want to do (fix now, fix later, or proceed as-is)
- Address issues based on user decision
Phase 7: Summary
Goal: Document what was accomplished.
- Mark all todos complete
- Summarize:
- What was built
- Key decisions made
- Files modified
- Suggested next steps
1---2name: developing-features3description: This skill should be used when the user asks to "build a feature", "implement a feature", "add new functionality", "develop a feature", "create a new feature", or when embarking on a multi-phase feature development workflow that requires codebase understanding, architecture design, clarifying questions, implementation, and quality review.4---56# Feature Development Workflow78Guide feature development through a systematic multi-phase process: understand the codebase deeply, identify and ask about all underspecified details, design elegant architectures, implement, and review.910## Core Principles1112- **Ask clarifying questions**: Identify all ambiguities, edge cases, and underspecified behaviors. Ask specific, concrete questions rather than making assumptions. Wait for answers before proceeding.13- **Understand before acting**: Read and comprehend existing code patterns first.14- **Read files identified by agents**: When launching agents, ask them to return lists of the most important files to read. After agents complete, read those files to build detailed context.15- **Simple and elegant**: Prioritize readable, maintainable, architecturally sound code.16- **Use TodoWrite**: Track all progress throughout.1718## Phase 1: Discovery1920**Goal**: Understand what needs to be built.21221. Create a todo list with all phases232. If feature is unclear, ask the user:24 - What problem are they solving?25 - What should the feature do?26 - Any constraints or requirements?273. Summarize understanding and confirm with the user2829## Phase 2: Codebase Exploration3031**Goal**: Understand relevant existing code and patterns at both high and low levels.32331. Launch 2-3 **code-explorer** agents in parallel, each targeting a different aspect:34 - Find features similar to the target feature and trace through their implementation35 - Map the architecture and abstractions for the feature area36 - Analyze the current implementation of related existing features37 - Identify UI patterns, testing approaches, or extension points382. Each agent should include a list of 5-10 key files to read393. Read all files identified by agents to build deep understanding404. Present a comprehensive summary of findings and patterns4142## Phase 3: Clarifying Questions4344**Goal**: Fill in gaps and resolve all ambiguities before designing.4546**CRITICAL**: This is one of the most important phases. DO NOT SKIP.47481. Review the codebase findings and original feature request492. Identify underspecified aspects: edge cases, error handling, integration points, scope boundaries, design preferences, backward compatibility, performance needs503. **Present all questions to the user in a clear, organized list**514. **Wait for answers before proceeding to architecture design**5253If the user says "whatever you think is best", provide a recommendation and get explicit confirmation.5455## Phase 4: Architecture Design5657**Goal**: Design multiple implementation approaches with different trade-offs.58591. Launch 2-3 **code-architect** agents in parallel with different focuses:60 - Minimal changes: smallest change, maximum reuse61 - Clean architecture: maintainability, elegant abstractions62 - Pragmatic balance: speed + quality632. Review all approaches and form an opinion on which fits best (consider: small fix vs large feature, urgency, complexity, team context)643. Present to the user: brief summary of each approach, trade-offs comparison, recommendation with reasoning, concrete implementation differences654. **Ask the user which approach they prefer**6667## Phase 5: Implementation6869**Goal**: Build the feature.7071**DO NOT START WITHOUT USER APPROVAL.**72731. Wait for explicit user approval742. Read all relevant files identified in previous phases753. Implement following the chosen architecture764. Follow codebase conventions strictly775. Write clean, well-documented code786. Update todos as progress is made7980## Phase 6: Quality Review8182**Goal**: Ensure code is simple, DRY, elegant, easy to read, and functionally correct.83841. Launch 3 **code-reviewer** agents in parallel with different focuses:85 - Simplicity, DRY, elegance86 - Bugs, functional correctness87 - Project conventions, abstractions882. Consolidate findings and identify highest severity issues893. **Present findings to the user and ask what they want to do** (fix now, fix later, or proceed as-is)904. Address issues based on user decision9192## Phase 7: Summary9394**Goal**: Document what was accomplished.95961. Mark all todos complete972. Summarize:98 - What was built99 - Key decisions made100 - Files modified101 - Suggested next steps