Skip to content

feat(quality): sharpen do-it's write-lifecycle quality spine#2

Merged
tdwhere123 merged 1 commit into
mainfrom
feat/do-it-quality-spine
Jun 21, 2026
Merged

feat(quality): sharpen do-it's write-lifecycle quality spine#2
tdwhere123 merged 1 commit into
mainfrom
feat/do-it-quality-spine

Conversation

@tdwhere123

Copy link
Copy Markdown
Owner

目的

让装了 do-it 的 agent 默认写出高质量代码。把 do-it 的质量从「事后 review」升级成贯穿写代码生命周期的一条脊柱,并把两个最重的 skill 压瘦,让 agent 真的会去读。

全程守住「又快又好」:不加写前阻塞清单、不建会膨胀的库、不注入 CLAUDE.md,退役/降级处逐项核对能力保留。

质量脊柱 + 共享原语

写前 ── grill 必要性优先(这需求/这层抽象需不需要存在?)
写中 ── Router §Restraint 决策阶梯(常驻反射)+ anti-patterns-lint 写时非阻塞提醒
写后 ── review-loop YAGNI 镜头(标签化发现)+ fix-loop 批处理(已正确)
共享 ── 一条决策阶梯,被 4 处引用而非各写一遍

改动

文件 改动
do-it-router §Restraint 加决策阶梯(6 档 + 永不砍护栏)作为共享原语
do-it-grill 290 → 88 核心 + references/checks.md 52 行;顶部 3 步紧核心:必要性优先 / 探代码证伪 / 一次一问给推荐答案 / 可检验穷尽完成判据。15 个能力点全保留
do-it-brainstorm 293 → 110 核心 + references/artifact-format.md 89 行;双视角默认内联、Heavy/显式才扇出(能力不变、去默认成本);决策阶梯发散轴;pick-a-branch + fog-of-war 治过度触发。16 个能力点全保留
anti-patterns-lint.sh no-consumer 扩到投机 interface/type/abstract class(rung-1 YAGNI);family 集合保持封闭(守 Restraint);+2 测试
code-quality-cleaner 扩成可维护性 + YAGNI/过度设计;标签化发现格式 delete:/stdlib:/native:/yagni:/shrink:(保留 severity + net: -N 收尾);接进 review-loop 强度梯

do-it-fix-loop 经核对已正确(批处理是当前默认),未改。

来源

  • mattpocock/skills:单 leading word、删 no-op、渐进披露、一次一问 + 给推荐答案、探代码而非提问、可检验穷尽完成判据。
  • DietrichGebert/ponytail:决策阶梯、YAGNI 清单、删多于增、标签化发现格式、量化收尾。

验证

  • npm run build:codex-plugin 重建 plugins/index.json 镜像,源与镜像逐字同步(含新 references 文件)
  • npm run test 全绿:validate-agents / check-skill-links / lint-hooks / test-hooks(含 2 个新 anti-patterns-lint 用例)/ test-install 19/19
  • 本地 codex + claude 两个 target 已升级到 0.11.0,doctor 无 DRIFT

🤖 Generated with Claude Code

Make installed agents write high-quality code by default: tighten the
write-before -> write-during -> write-after spine and compress the two
heaviest skills so the agent actually reads them. The shared 'write less'
primitive is a single decision ladder, reused across skills, not restated.

- router: add the decision ladder to § Restraint (does it need to exist? ->
  stdlib -> native -> existing dep -> one line -> minimal) with never-cut
  guardrails; grill/brainstorm/lint/YAGNI-lens reference it.
- grill: rewrite 290 -> 88-line core + references/checks.md. One core loop at
  top: necessity first, falsify by exploring not asking, one decision at a time
  with a recommended answer, checkable+exhaustive completion. Capabilities kept.
- brainstorm: rewrite 293 -> 110-line core + references/artifact-format.md. Two
  viewpoints run inline by default, fan out only at Heavy/explicit (capability
  unchanged, default cost removed); options map along the ladder; pick-a-branch
  + fog-of-war skip cut over-firing.
- anti-patterns-lint: no-consumer family also flags speculative interface/type/
  abstract-class exports as ladder rung 1; family set stays closed per Restraint.
- code-quality-cleaner: maintainability + YAGNI/over-engineering with a bounded
  checklist and a tagged finding format (delete:/stdlib:/native:/yagni:/shrink:,
  severity preserved, net: -N verdict); wired into review-loop as the YAGNI lens.
- fix-loop already mandates batch-by-root-cause (verified, unchanged).

Tests: build:codex-plugin regenerates plugins/index mirrors; npm run test green
(agents, skill-links, hooks incl. 2 new anti-patterns-lint cases, install).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@tdwhere123 tdwhere123 merged commit 009042f into main Jun 21, 2026
8 checks passed
@tdwhere123 tdwhere123 deleted the feat/do-it-quality-spine branch June 21, 2026 09:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant