Initial commit
This commit is contained in:
148
skills/feature-planning/SKILL.md
Normal file
148
skills/feature-planning/SKILL.md
Normal file
@@ -0,0 +1,148 @@
|
||||
---
|
||||
name: feature-planning
|
||||
description: Break down feature requests into detailed, implementable plans with clear tasks. Use when user requests a new feature, enhancement, or complex change.
|
||||
---
|
||||
|
||||
# Feature Planning
|
||||
|
||||
Systematically analyze feature requests and create detailed, actionable implementation plans.
|
||||
|
||||
## When to Use
|
||||
|
||||
- Requests new feature ("add user authentication", "build dashboard")
|
||||
- Asks for enhancements ("improve performance", "add export")
|
||||
- Describes complex multi-step changes
|
||||
- Explicitly asks for planning ("plan how to implement X")
|
||||
- Provides vague requirements needing clarification
|
||||
|
||||
## Planning Workflow
|
||||
|
||||
### 1. Understand Requirements
|
||||
|
||||
**Ask clarifying questions:**
|
||||
- What problem does this solve?
|
||||
- Who are the users?
|
||||
- Specific technical constraints?
|
||||
- What does success look like?
|
||||
|
||||
**Explore the codebase:**
|
||||
Use Task tool with `subagent_type='Explore'` and `thoroughness='medium'` to understand:
|
||||
- Existing architecture and patterns
|
||||
- Similar features to reference
|
||||
- Where new code should live
|
||||
- What will be affected
|
||||
|
||||
### 2. Analyze & Design
|
||||
|
||||
**Identify components:**
|
||||
- Database changes (models, migrations, schemas)
|
||||
- Backend logic (API endpoints, business logic, services)
|
||||
- Frontend changes (UI, state, routing)
|
||||
- Testing requirements
|
||||
- Documentation updates
|
||||
|
||||
**Consider architecture:**
|
||||
- Follow existing patterns (check CLAUDE.md)
|
||||
- Identify reusable components
|
||||
- Plan error handling and edge cases
|
||||
- Consider performance implications
|
||||
- Think about security and validation
|
||||
|
||||
**Check dependencies:**
|
||||
- New packages/libraries needed
|
||||
- Compatibility with existing stack
|
||||
- Configuration changes required
|
||||
|
||||
### 3. Create Implementation Plan
|
||||
|
||||
Break feature into **discrete, sequential tasks**:
|
||||
|
||||
```markdown
|
||||
## Feature: [Feature Name]
|
||||
|
||||
### Overview
|
||||
[Brief description of what will be built and why]
|
||||
|
||||
### Architecture Decisions
|
||||
- [Key decision 1 and rationale]
|
||||
- [Key decision 2 and rationale]
|
||||
|
||||
### Implementation Tasks
|
||||
|
||||
#### Task 1: [Component Name]
|
||||
- **File**: `path/to/file.py:123`
|
||||
- **Description**: [What needs to be done]
|
||||
- **Details**:
|
||||
- [Specific requirement 1]
|
||||
- [Specific requirement 2]
|
||||
- **Dependencies**: None (or list task numbers)
|
||||
|
||||
#### Task 2: [Component Name]
|
||||
...
|
||||
|
||||
### Testing Strategy
|
||||
- [What types of tests needed]
|
||||
- [Critical test cases to cover]
|
||||
|
||||
### Integration Points
|
||||
- [How this connects with existing code]
|
||||
- [Potential impacts on other features]
|
||||
```
|
||||
|
||||
**Include specific references:**
|
||||
- File paths with line numbers (`src/utils/auth.py:45`)
|
||||
- Existing patterns to follow
|
||||
- Relevant documentation
|
||||
|
||||
### 4. Review Plan with User
|
||||
|
||||
Confirm:
|
||||
- Does this match expectations?
|
||||
- Missing requirements?
|
||||
- Adjust priorities or approach?
|
||||
- Ready to proceed?
|
||||
|
||||
### 5. Execute with plan-implementer
|
||||
|
||||
Launch plan-implementer agent for each task:
|
||||
|
||||
```
|
||||
Task tool with:
|
||||
- subagent_type: 'plan-implementer'
|
||||
- description: 'Implement [task name]'
|
||||
- prompt: Detailed task description from plan
|
||||
```
|
||||
|
||||
**Execution strategy:**
|
||||
- Implement sequentially (respect dependencies)
|
||||
- Verify each task before next
|
||||
- Adjust plan if issues discovered
|
||||
- Let test-fixing skill handle failures
|
||||
- Let git-pushing skill handle commits
|
||||
|
||||
## Best Practices
|
||||
|
||||
**Planning:**
|
||||
- Start broad, then specific
|
||||
- Reference existing code patterns
|
||||
- Include file paths and line numbers
|
||||
- Think through edge cases upfront
|
||||
- Keep tasks focused and atomic
|
||||
|
||||
**Communication:**
|
||||
- Explain architectural decisions
|
||||
- Highlight trade-offs and alternatives
|
||||
- Be explicit about assumptions
|
||||
- Provide context for future maintainers
|
||||
|
||||
**Execution:**
|
||||
- Implement one task at a time
|
||||
- Verify before moving forward
|
||||
- Keep user informed
|
||||
- Adapt based on discoveries
|
||||
|
||||
## Integration
|
||||
|
||||
- **plan-implementer agent**: Receives task specs, implements
|
||||
- **test-fixing skill**: Auto-triggered on test failures
|
||||
- **git-pushing skill**: Triggered for commits
|
||||
Reference in New Issue
Block a user