estimate-feature
Skill4 starsChanged 2 months agoMITView on GitHub
Use when a user, BA, PM, or delivery team asks for an effort estimate of a written feature plan or tasks.md.
1 other project uses a version of this, 1 of them edited.
Adopted by
Most recently taken up by
- asta-nguyen/kamehadbedited, first seen Oct 16, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 1
- asta-nguyen/kamehadb★ 14100% same
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository15 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- writing-skillsSkill
- brainstorm-featureSkill
- context-handoffSkill
- document-wikiSkill
- implement-taskSkill
- lean-auditSkill
- plan-featureSkill
- read-codebase-contextSkill
- review-and-verifySkill
- setup-codebaseSkill
- setup-openezSkill
- systematic-debuggingSkill
- using-devkitSkill
The file
We split this skill into the rules it gives an agent
7 rules. About 0 are common, 3 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 9
Never run this optional skill unless the user requests an estimate.
- Very specific: line 20
Read AGENTS.md, the plan or tasks.md, the linked design, delta.md (when present), relevant wiki, source, and tests.
- Very specific: line 22
Call the available Skill entry whose local name is read-codebase-context when source exists.
- Distinctive: line 34
Read current source for every existing file the plan says implementation will edit.
- Distinctive: line 92
Treat the estimate as stale when the linked plan's tasks, files, behavior, verification, or assumptions change.
- Very specific: line 95
Verify every plan task appears exactly once as a row in Task estimates, blocked rows follow step 4, the blocked-task count in the total …
- Very specific: line 102
When plan-feature called this skill, return the estimate to it so it presents the estimate with the plan and approval gate.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Estimate Feature
Estimate active engineering hours for a developer using an AI coding agent. Never run this optional skill unless the user requests an estimate.
Process
- Require a written plan under
docs/agent-devkit/plans/, or a change'stasks.mdunderdocs/agent-devkit/changes/<folder>/. If neither exists and the user also requested a plan with a writtendesign.md, callplan-featureas a route handoff: it writes the plan, calls this skill before its approval gate, and presents both together. Otherwise stop and request a plan. Use a repair handoff toplan-featureonly to fix missing detail in an existing plan. Never estimate directly from a feature request. - Read
AGENTS.md, the plan ortasks.md, the linked design,delta.md(when present), relevant wiki, source, and tests. Call the available Skill entry whose local name isread-codebase-contextwhen source exists. If the plan has an## Impact map, followread-codebase-context's## Refresh an impact map; if its baseline is missing, unavailable, or no longer an ancestor, trace existing source from scratch. Do not try to trace planned entry points, callers, or tests that do not exist yet; use planned files, interfaces, behavior, and verification only from the written design and plan. Pending approval does not block estimation: label planned assumptionspending approvaland report the gate's current status. It does not authorize implementation. Mark unspecified behavior as unknown and block an estimate when it prevents a defensible range. Re-trace planned paths only after source exists. Read current source for every existing file the plan says implementation will edit. For a planned file that does not exist yet, use the written design and plan; do not treat that file as traced source. If tasks omit files, behavior, or verification, callplan-featureas a repair handoff (seeusing-devkit) to fix the plan, then resume this estimate;plan-featuremust not start implementation from this call. - State the AI support profile. Assume the coding agent can inspect and edit source, write and run tests, and update documentation, while a developer reviews output and resolves product decisions. Include context gathering, prompting, coding, tests, expected debugging, review, and planned docs. Exclude waiting, stakeholder response, deployment, and manual QA unless planned.
- Estimate every plan task with a defensible hours range, confidence, and
evidence-based rationale. Consider local patterns, novelty, touched files,
migrations, integrations, test cost, and unresolved dependencies. Never
apply a generic "AI is N% faster" discount. When an unknown prevents a
defensible range, mark the task
Blocked: spike requiredand keep it in the task table withBlockedin Hours,N/Aconfidence, and the unknown in its rationale. Exclude blocked tasks from the total and report their count. While any task is blocked, total confidence cannot beHigh. If every task is blocked, report the total asNot estimable — spike requiredand total confidence asN/A. For a change, save
estimate.mdbeside itstasks.mdand link to that file relatively. For a legacy plan, save a new estimate atdocs/agent-devkit/estimates/YYYY-MM-DD-<slug>-estimate.mdand link to the exact plan filename. Follow the shared artifact naming rule inusing-devkit(read it if it is not loaded). Createdocs/agent-devkit/estimates/only now if it does not exist. Use:# Feature Estimate ## Plan - <link to the exact plan file> ## AI support profile <included effort and exclusions> ## Task estimates | Plan task | Hours | Confidence | Basis and risks | |---|---:|---|---| | Task 1: <name> | 2-4h | Medium | <repo evidence and uncertainty> | | Task N: <name> | Blocked | N/A | Blocked: spike required — <unknown> | ## Total - Active engineering effort: <sum of estimable ranges, or `Not estimable — spike required` if all tasks are blocked> - Blocked tasks: <N excluded from the effort total; `0 (all tasks estimable)` when none> - Confidence: <High/Medium/Low; not High if any task is blocked; `N/A` if all are blocked> ## Open unknowns - <unresolved information behind a blocked estimate, or "None">- For a legacy plan, add
## Estimatewith a link to the estimate in the plan, and add the estimate todocs/agent-devkit/INDEX.mdunder## Estimates. For a change, linkestimate.mdfromtasks.md; no separate index entry is needed; the change folder's own entry covers it (using-devkit's## Change lifecycle). - Treat the estimate as stale when the linked plan's tasks, files, behavior, verification, or assumptions change. On refresh, compare the whole current plan with the estimate, then update the same estimate file and totals.
- Verify every plan task appears exactly once as a row in
Task estimates, blocked rows follow step 4, the blocked-task count in the total matches the table, and range totals include only estimable tasks. If all tasks are blocked, verify the total and confidence follow step 4. Verify all links resolve andgit diff --checkpasses. Do not repeat task rows inOpen unknowns; list only the unresolved information there. Do not edit application code or start implementation (no commits:using-devkit). - When
plan-featurecalled this skill, return the estimate to it so it presents the estimate with the plan and approval gate. When the user called this skill directly, present the estimate yourself with the plan's current approval-gate status and end with theNext:block fromusing-devkit; do not callplan-featureagain. The estimate does not approve the plan or authorize implementation.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

