Usage & Billing

estimate-before-build

ChenneyZhuang/estimate-before-build · ★ 0

ChenneyZhuang

Scope before code: turn the request into a bounded task list with assumptions named, estimate each task in size bands with the uncertainty driver named…

README body is shown in Chinese.

License
MIT
Added
2026-10-30
Maintenance
active
Install kind
github
Manifest details
Manifest status
Declared
Manifest path
package.json#dsh
Manifest checked
2026-10-30T09:39:25.587Z
Lifecycle scripts
None found

Static manifest checks report declarations only; they are not compatibility or security review.

安装

dsh plugin --profile web add 'github:ChenneyZhuang/estimate-before-build#9fc410d17ac048491d683d06a4bba423e4a47508'

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

For install and environment setup, plus plugin development tutorials, see DSH community docs ↗

README

Source README · body: zh · Read Chinese README

Table of contents
  1. Why / 为什么
  2. Size bands, not hours / 用档位,不用小时
  3. The decision that must surface / 必须摆上桌面的决定
  4. Honest limitations / 如实说明局限
  5. Install / 安装

"It'll take a few minutes" is where scope creep pays rent. Estimate first — not to predict the future, but to make the scope decision explicit.

"几分钟就好"是范围蔓延的房租来源。先估——不是为了预言未来,而是为了让范围决策显式化。

Why / 为什么

The expensive failure is not the wrong estimate — it is the unmade decision: the agent starts building, the request turns out to be three times the size anyone imagined, and stopping now looks like failure. An estimate before the first edit turns that silent slide into a choice: this scope for this budget, or a smaller scope.

昂贵的失败不是估错——而是没做决定:agent 开始动手,请求实际是任何人想象的三倍,此刻停下显得像失败。动手前的估算把无声滑坡变成选择:这个范围配这个预算,或者缩小范围。

Size bands, not hours / 用档位,不用小时

Band Meaning Example
S one sitting, no unknowns add a field to a form
M a few sittings or one unknown new page with data fetching
L multiple unknowns or cross-system payment integration
XL needs its own plan first migration, rewrite

Hours invite false precision and calendar promises; bands communicate shape. Name the uncertainty driver for M and above ("depends on the API's real pagination behavior") — the driver is where the risk lives and where a spike belongs.

小时数制造假精度和日历承诺;档位传达形状。M 档以上必须点名不确定性来源("取决于 API 真实的分页行为")——风险住在那里,spike 也该打在那里。

The decision that must surface / 必须摆上桌面的决定

Present, don't pick: full scope in the estimate, a reduced scope that fits the budget, or a timeboxed spike for the unknowns first. Then record the estimate — because the finish-line comparison (estimate vs actual, per task) is the only mechanism that makes the next estimate better.

摆出来,别替选:全范围、能塞进预算的缩减范围、或先 timebox 探明未知。然后把估算记录下来——因为终点对账(逐任务:估的 vs 实际)是让下次估算变准的唯一机制。

Honest limitations / 如实说明局限

  • Bands communicate shape, not dates; anyone who needs calendar promises needs a real planning process, not bigger bands.
  • Calibration works only if the finish-line comparison actually happens — skipped reconciliations teach nothing.

档位传达形状不传达日期;需要日历承诺的人需要真正的计划流程,不是更大的档位。终点对账不做,校准就无从谈起。

Install / 安装

npx skills add ChenneyZhuang/estimate-before-build

Per-agent paths: COMPATIBILITY.md. MIT. v0.1.0.

各 agent 安装路径见 COMPATIBILITY.md。MIT 许可,v0.1.0。