Skip to content
Development
Skill

/estimate

Produces time and complexity estimates for features, tasks, or sprints using story points, t-shirt sizing, or day estimates. Use when the user asks for an estimate, wants to size a feature, or mentions estimation or planning poker.

From plugin
software-development-department
72116 skills28 agents1 MCP
Install
$ npx -y skills add tranhieutt/software_development_department --skill estimate --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/estimate

Context preview

The summary Claude sees to decide when to auto-load this skill.

Produces time and complexity estimates for features, tasks, or sprints using story points, t-shirt sizing, or day estimates. Use when the user asks for an estimate, wants to size a feature, or mentions estimation or planning poker.

SKILL.md

estimate.SKILL.md
name: estimate
type: workflow
description: "Produces time and complexity estimates for features, tasks, or sprints using story points, t-shirt sizing, or day estimates. Use when the user asks for an estimate, wants to size a feature, or mentions estimation or planning poker."
argument-hint: "[task-description]"
user-invocable: true
allowed-tools: Read, Glob, Grep
effort: 1
when_to_use: "When estimating task effort, complexity, or duration for planning purposes"

When this skill is invoked:

1. **Read the task description** from the argument. If the description is too vague to estimate meaningfully, ask for clarification before proceeding.

2. **Read CLAUDE.md** for project context: tech stack, coding standards, architectural patterns, and any estimation guidelines.

3. **Read relevant design documents** from `design/docs/` if the task relates to a documented feature or system.

4. **Scan the codebase** to understand the systems affected by this task:

  • Identify files and modules that would need to change
  • Assess the complexity of those files (size, dependency count, cyclomatic

complexity)

  • Identify integration points with other systems
  • Check for existing test coverage in the affected areas

5. **Read past sprint data** from `production/sprints/` if available:

  • Look for similar completed tasks and their actual effort
  • Calculate historical velocity (planned vs actual)
  • Identify any estimation bias patterns (consistently over or under)

6. **Analyze the following factors**:

**Code Complexity**:

  • Lines of code in affected files
  • Number of dependencies and coupling level
  • Whether this touches core/engine code vs leaf/feature code
  • Whether existing patterns can be followed or new patterns are needed

**Scope**:

  • Number of systems touched
  • New code vs modification of existing code
  • Amount of new test coverage required
  • Data migration or configuration changes needed

**Risk**:

  • New technology or unfamiliar libraries
  • Unclear or ambiguous requirements
  • Dependencies on unfinished work
  • Cross-system integration complexity
  • Performance sensitivity

7. **Generate the estimate**:

## Task Estimate: [Task Name]
Generated: [Date]

### Task Description
[Restate the task clearly in 1-2 sentences]

### Complexity Assessment

| Factor | Assessment | Notes |
|--------|-----------|-------|
| Systems affected | [List] | [Core, business, UI, etc.] |
| Files likely modified | [Count] | [Key files listed below] |
| New code vs modification | [Ratio, e.g., 70% new / 30% modification] | |
| Integration points | [Count] | [Which systems interact] |
| Test coverage needed | [Low / Medium / High] | [Unit, integration, manual] |
| Existing patterns available | [Yes / Partial / No] | [Can follow existing code or new ground] |

**Key files likely affected:**
- `[path/to/file1]` -- [what changes here]
- `[path/to/file2]` -- [what changes here]
- `[path/to/file3]` -- [what changes here]

### Effort Estimate

| Scenario | Days | Assumption |
|----------|------|------------|
| Optimistic | [X] | Everything goes right, no surprises, requirements are clear |
| Expected | [Y] | Normal pace, minor issues, one round of review feedback |
| Pessimistic | [Z] | Significant unknowns surface, blocked for a day, requirements change |

**Recommended budget: [Y days]**

[If historical data is available: "Based on [N] similar tasks that averaged
[X] days actual vs [Y] days estimated, a [correction factor] adjustment has
been applied."]

### Confidence: [High / Medium / Low]

**High** -- Clear requirements, familiar systems, follows existing patterns,
similar tasks completed before.

**Medium** -- Some unknowns, touches moderately complex systems, partial
precedent from previous work.

**Low** -- Significant unknowns, new technology, unclear requirements, or
cross-cutting concerns across many systems.

[Explain which factors drive the confidence level for this specific task.]

### Risk Factors

| Risk | Likelihood | Impact | Mitigation |
|------|-----------|--------|------------|
| [Specific risk] | [High/Med/Low] | [Days added if realized] | [How to reduce] |
| [Another risk] | [Likelihood] | [Impact] | [Mitigation] |

### Dependencies

| Dependency | Status | Impact if Delayed |
|-----------|--------|-------------------|
| [What must be done first] | [Done / In Progress / Not Started] | [How it affects this task] |

### Suggested Breakdown

| # | Sub-task | Estimate | Notes |
|---|----------|----------|-------|
| 1 | [Research / spike] | [X days] | [If unknowns need investigation first] |
| 2 | [Core implementation] | [X days] | [The main work] |
| 3 | [Integration with system X] | [X days] | [Connecting to existing code] |
| 4 | [Testing and validation] | [X days] | [Writing tests, manual verification] |
| 5 | [Code review and iteration] | [X days] | [Review feedback, fixes] |
| | **Total** | **[Y days]** | |

### Historical Comparison
[If similar tasks exist in sprint history:]

| Similar Task | Estimated | Actual | Relevant Difference |
|-------------|-----------|--------|-------------------|
| [Past task 1] | [X days] | [Y days] | [What makes it similar/different] |
| [Past task 2] | [X days] | [Y days] | [What makes it similar/different] |

### Notes and Assumptions
- [Key assumption that affects the estimate]
- [Another assumption]
- [Any caveats about scope boundaries -- what is included vs excluded]
- [Recommendations: e.g., "Consider a spike first if requirement X is unclear"]

8. **Output the estimate** to the user with a brief summary: recommended budget, confidence level, and the single biggest risk factor.

Guidelines

  • Always give a range (optimistic / expected / pessimistic), never a single

number. Single-point estimates create false precision.

  • The recommended budget should be the expected estimate, not the optimistic

one. Padding is not dishonest -- it is realistic.

  • If confidence
Read more
Ships withsoftware-development-department

Software Development Department

Get the whole plugin