Skip to main content
skill CX Codex

estimate — Claude Code skill: what it does, how to install

Estimates task effort from code complexity, dependencies and risk. Use it before planning work when a single deadline would hide uncertainty.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add Donchitos/Claude-Code-Game-Studios --skill estimate -a claude-code
Open on GitHub

What estimate does

The skill reads a task description and asks for clarification when the brief is too vague. It checks CLAUDE.md and can inspect relevant sections in design/gdd/ for documented features or systems.

For affected files, it uses Grep to count non-blank lines and lines containing branches, then looks for dependencies, integration points and existing tests. It also reviews completed work in production/sprints/ when present. The result includes optimistic, expected and pessimistic scenarios, confidence, risks, dependencies and a task breakdown.

It is read-only and uses Read, Glob and Grep, so it does not write project files. Estimates longer than a day are rounded to half-day increments; that is a reason to review the output when hourly precision matters. Low confidence prompts /prototype, while tasks over 10 days prompt /create-stories.

What it helps with

  • estimate work from affected code
  • find dependencies before scheduling a task
  • compare a task with completed sprint work
  • surface risks behind an effort range
  • split a large task into smaller stories

Example prompts for the agent

  • /estimate Estimate adding a save system
  • /estimate Estimate changes to src/player.gd
  • /estimate Estimate this task including tests and dependencies

How to install estimate

1Skills CLI (Vercel)

npx skills add Donchitos/Claude-Code-Game-Studios --skill estimate -a claude-code

2Manually: put the files in place

~/.claude/skills/estimate/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/estimate/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about estimate

How do I install estimate in Claude Code?

Run npx skills add Donchitos/Claude-Code-Game-Studios --skill estimate -a claude-code, then run npx skills add Donchitos/Claude-Code-Game-Studios --skill estimate -a claude-code again. The skill file is at ~/.claude/skills/estimate/SKILL.md.

What does estimate do?

It examines the task and related code, then produces an effort range, recommended budget, confidence level, risks and dependencies.

Does estimate modify project files?

No. It uses only Read, Glob and Grep, and generates its estimate without writing files.

Source text

SKILL.md · MIT
---
name: estimate
description: "Estimate task effort from complexity, dependencies, velocity, risk. Structured estimate with confidence levels."
argument-hint: "[task-description]"
user-invocable: true
allowed-tools: Read, Glob, Grep
model: sonnet
---

# Estimate

## Phase 1: Understand the Task

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

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

Read relevant design documents from `design/gdd/` if the task relates to a documented feature or system. Read them by section: find the headings you need with the Grep tool (pattern `^#`, content mode) and Read those ranges with offset and limit.

---

## Phase 2: Scan Affected Code

Identify files and modules that would need to change:

- Measure size and branching with Grep, per affected file — Read, Glob and Grep
  are this skill's only tools, so these counts are the measurement:
  - **Size:** `Grep pattern="[^[:space:]]" path="[file]" output_mode="count"` —
    non-blank lines.
  - **Branching:** `Grep pattern="(^|[^A-Za-z0-9_])(if|elif|for|foreach|while|match|switch|case|catch)([^A-Za-z0-9_]|$)|&&|[|][|]" path="[file]" output_mode="count"` —
    lines holding a branch or a boolean operator. The count
    approximates cyclomatic complexity (comments and strings count too); report
    it as that, never as a measured complexity.
  - **Dependencies:** what each file pulls in — `preload`/`load(` (GDScript),
    `using` (C#), `#include` (C++) — and which other files reference it.
  - Name any file Grep could not count (missing, binary, unreadable) under Notes
    and Assumptions rather than leaving it out of the totals.
- Identify integration points with other systems
- Check for existing test coverage in the affected areas
- Read past sprint data from `production/sprints/` for similar completed tasks and historical velocity.
  **If there is none**, say so under Notes and Assumptions — "No sprint history found;
  this estimate is not calibrated to the team's velocity" — and treat that as a risk
  in the confidence level, not as a silent padding of the figures.

---

## Phase 3: Analyze Complexity Factors

**Code Complexity:**
- Size and branching of the affected files (Phase 2's Grep counts)
- 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

---

## Phase 4: Generate the Estimate

```markdown
## 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, gameplay, UI, etc.] |
| Files likely modified | [Count] | [Key files listed below] |
| Size of affected files | [N non-blank lines; M branch lines] | Grep counts; branch lines approximate complexity |
| New code vs modification | [Ratio] | |
| Integration points | [Count] | [Which systems interact] |
| Test coverage needed | [Low / Medium / High] | |
| Existing patterns available | [Yes / Partial / No] | |

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

### Effort Estimate

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

**Recommended budget: [Y days]**

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

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

### Risk Factors

| Risk | Likelihood | Impact | Mitigation |
|------|-----------|--------|------------|

### Dependencies

| Dependency | Status | Impact if Delayed |
|-----------|--------|-------------------|

### Suggested Breakdown

| # | Sub-task | Estimate | Notes |
|---|----------|----------|-------|
| 1 | [Research / spike] | [X days] | |
| 2 | [Core implementation] | [X days] | |
| 3 | [Testing and validation] | [X days] | |
| | **Total** | **[Y days]** | |

### Notes and Assumptions
- [Key assumption that affects the estimate]
- [Any caveats about scope boundaries]
```

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

This skill is read-only — no files are written. Verdict: **COMPLETE** — estimate generated.

---

## Phase 5: Next Steps

- If confidence is Low: recommend a time-boxed spike (`/prototype`) before committing.
- If the task is > 10 days: recommend breaking it into smaller stories via `/create-stories`.
- To schedule the task: run `/sprint-plan update` to add it to the next sprint (if the project has no sprint plan, as on the default minimal workflow, add it to the brief's build order instead).

### Guidelines

- Always give a range (optimistic / expected / pessimistic), never a single number
- The recommended budget should be the expected estimate, not the optimistic one
- Round to half-day increments — estimating in hours implies false precision for tasks longer than a day
- Do not pad estimates silently — call out risk explicitly so the team can decide
- Confidence is Low whenever the approach is undecided or the core requirements are still TBD — a range built on an unmade decision is a guess

© Donchitos · MIT · Donchitos/Claude-Code-Game-Studios

Similar skills

All skills for Agent setup: memory, context, orchestration →

From the same set72

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor