Loading...
Loading...
Use before committing to a task. Provides complexity analysis and scope assessment. Invoke when user asks "how complex" or before large features.
npx skill4agent add baxtercooper/nexus estimationCore Principle: Estimate before committing.
| Factor | Weight | Questions to Ask |
|---|---|---|
| Files to modify | High | How many files? How spread across codebase? |
| New patterns required | High | Does this require patterns not in codebase? |
| External dependencies | High | New APIs, services, or integrations? |
| Test coverage needed | Medium | Unit, integration, e2e tests required? |
| Documentation updates | Low | README, API docs, comments needed? |
| Breaking changes | High | Will this break existing functionality? |
| Unknown territory | High | Are you familiar with this code area? |
LOW: 1-2 files, existing patterns, no new dependencies
MEDIUM: 3-5 files, minor new patterns, limited dependencies
HIGH: 6+ files, new patterns, new dependencies, cross-cutting
UNKNOWN: Cannot assess without more exploration1. What is the task asking for?
2. What files will likely need changes?
3. What patterns exist for similar features?
4. What dependencies are involved?
5. What testing is required?Risks to identify:
- Areas of uncertainty
- Potential blockers
- Dependencies on external factors
- Technical debt implicationsestimation:
timestamp: [ISO 8601]
task: |
[Task description]
scope:
files_affected:
known:
- [file1.ts - reason]
- [file2.ts - reason]
likely:
- [file3.ts - reason]
unknown: [count or "cannot determine"]
changes_required:
- type: [new_file | modification | deletion]
description: [what change]
- type: [type]
description: [what change]
complexity:
overall: [low | medium | high | unknown]
factors:
files_to_modify: [0-3]
new_patterns: [0-3]
external_dependencies: [0-3]
test_coverage: [0-3]
documentation: [0-3]
breaking_changes: [0-3]
unknown_territory: [0-3]
total_score: [sum]
risks:
- risk: "[Risk description]"
likelihood: [low | medium | high]
impact: [low | medium | high]
mitigation: "[How to address]"
unknowns:
- "[What you couldn't determine]"
- "[What needs clarification]"
recommendations:
approach: |
[Recommended approach]
alternatives:
- "[Alternative approach 1]"
next_steps:
- "[First step]"
- "[Second step]"
confidence: 0.0
evidence:
- "[What you examined]"[!CRITICAL] NEVER estimate without understanding scope. ALWAYS include unknowns.
| After Estimation | Invoke |
|---|---|
| Need more context | → |
| Ready to plan implementation | → |
| Ready to execute | → |
context-gatheringwriting-plansestimation:
timestamp: "2024-01-15T10:00:00Z"
task: |
Add user authentication to the existing Express API
scope:
files_affected:
known:
- src/routes/auth.ts - new route file
- src/middleware/auth.ts - new middleware
- src/models/user.ts - user model changes
likely:
- src/routes/index.ts - route registration
- tests/auth.test.ts - new tests
unknown: 2-3 additional files for utilities
changes_required:
- type: new_file
description: Authentication routes (login, register, logout)
- type: new_file
description: Auth middleware for protected routes
- type: modification
description: Add auth to existing protected routes
complexity:
overall: medium
factors:
files_to_modify: 2
new_patterns: 2
external_dependencies: 2
test_coverage: 2
documentation: 1
breaking_changes: 1
unknown_territory: 1
total_score: 11
risks:
- risk: "Password hashing library choice"
likelihood: low
impact: medium
mitigation: "Use bcrypt, well-established"
- risk: "JWT secret management"
likelihood: medium
impact: high
mitigation: "Environment variable, document required setup"
unknowns:
- "Which routes should be protected?"
- "OAuth integration needed?"
- "Session vs JWT preference?"
recommendations:
approach: |
Implement JWT-based auth with bcrypt password hashing.
Start with login/register, add middleware, then protect routes.
alternatives:
- "Session-based auth with express-session"
- "OAuth with passport.js"
next_steps:
- "Clarify auth requirements with user"
- "Create detailed plan with writing-plans skill"
confidence: 0.7
evidence:
- "Reviewed existing routes structure"
- "Checked package.json for auth libraries"
- "Examined similar features in codebase"