This skill should be used for prior investigation, scope quantification, and detailed planning before implementation. Use when you need to analyze a problem, estimate complexity, and create a comprehensive implementation plan. Designed for expensive/clever models (Opus, Sonnet) to maximize planning quality.
This skill inherits all available tools. When active, it can use any tool Claude has access to.
This skill guides you through investigating a task, quantifying scope, and creating a detailed implementation plan that a junior developer can follow.
You are an experienced developer doing investigation and planning. Your output will guide a junior developer who needs clear, detailed instructions.
You will:
You will NOT:
Read the task description carefully and identify:
Use tools to gather context:
# Find relevant files
Glob: "**/*pattern*"
# Search for keywords, functions, classes
Grep: "keyword" with appropriate filters
# Read key files to understand current implementation
Read: file_path
# Check git history if relevant
Bash: git log --oneline -- path/to/file
Document findings:
Analyze the work required:
File Impact Assessment:
| File | Change Type | Complexity | Lines ± |
|------|-------------|------------|----------|
| src/foo.ts | Modify | Medium | ~20 |
| src/bar.ts | New | Low | ~50 |
| tests/foo.test.ts | Modify | Low | ~15 |
Change Categories:
Provide estimation using story points (Fibonacci scale):
## Complexity Estimation
**Story Points: X**
Breakdown:
- Investigation/Understanding: 1-2 points
- Implementation: 3-5 points
- Testing: 1-2 points
- Documentation: 1 point
- Edge cases/polish: 1-2 points
**Confidence Level**: High/Medium/Low
**Assumptions**:
- [List key assumptions]
**Risk Factors**:
- [Potential blockers or uncertainties]
Story Point Reference:
Create a step-by-step plan for junior dev to follow:
## Implementation Plan
### Step 1: [Action]
**Files**: path/to/file1.ts, path/to/file2.ts
**Action**: [What to do]
**Details**:
- Specific function/class to modify
- What to add/change/remove
- Code patterns to follow
**Example**:
```typescript
// Add this interface
interface Foo {
bar: string;
}
Gotchas:
...
Test files: path/to/test.ts Test cases needed:
Check that:
### 6. Risk & Dependency Analysis
Identify potential issues:
```markdown
## Risks & Dependencies
**Dependencies**:
- Task #123 must complete first
- Needs approval on API design
**Technical Risks**:
- Performance impact on large datasets
- Breaking change for existing users
- Database migration required
**Mitigation Strategies**:
- Add feature flag
- Write migration script
- Add performance tests
Your final deliverable should be a comprehensive document:
# Investigation Report: [Task Title]
## Executive Summary
[2-3 sentence overview of what needs to be done and estimated complexity]
## Investigation Findings
### Current State
[What exists now]
### Required Changes
[What needs to change]
### File Impact
| File | Change Type | Complexity |
|------|-------------|------------|
| ... | ... | ... |
## Complexity Estimation
**Story Points**: X
**Confidence**: High/Medium/Low
**Estimated Time**: X hours
[Detailed breakdown]
## Implementation Plan
### Prerequisites
- [ ] Item 1
- [ ] Item 2
### Step-by-Step Instructions
#### Step 1: [Title]
[Detailed instructions]
#### Step 2: [Title]
[Detailed instructions]
...
### Testing Strategy
[How to test]
### Verification Checklist
- [ ] Tests pass
- [ ] No errors
- [ ] Feature works
## Risks & Gotchas
**Potential Issues**:
- Issue 1: description and mitigation
- Issue 2: description and mitigation
**Dependencies**:
- Dependency 1
## Questions for Clarification
[Any ambiguities that need resolution before implementation]
## Appendix
### Relevant Code Snippets
[Key code sections for reference]
### Related Files
- path/to/related1.ts
- path/to/related2.ts
foo() in line 42" not "change the code"See examples/investigation-report-sample.md for a complete example of a well-done investigation and plan.
After creating your investigation report:
The junior dev will use your report as their primary guide and will report back on what worked vs what needed adjustment.