Self-contained
路径、摘录、约定、命令全部内联。禁止「如上所述」。
shadcn 发布的 Agent Skill:以资深顾问身份审计任意代码库,产出优先级排序、自包含的实现计划,交给更便宜的执行模型(或其他代理)落地。顾问严格只读——自身不实现、不修复、不重构。
把「智能」用在复利最高的环节——理解代码库、判断什么值得做、写规格——执行交给更便宜的模型。计划本身就是产品,质量决定执行成败。
你(昂贵模型) → /improve 理解、判断、写 spec
plans/ → 001-fix-n-plus-one.md 自包含规格
其他代理(廉价) → 实现、测试、交付 按 plan 执行
仓库地址:github.com/shadcn/improve · 本地路径:/Users/admin/Repos/improve
npx skills add shadcn/improve
适用于任何支持 Agent Skills 格式的代理。产出的计划是纯 Markdown,任意代理或人类都能接手。
| 路径 | 作用 |
|---|---|
README.md | 主文档:用途、用法、工作流、硬规则 |
skills/improve/SKILL.md | 唯一 skill 定义(frontmatter + 完整工作流指令) |
skills/improve/references/audit-playbook.md | 九类审计清单与 finding 格式 |
skills/improve/references/plan-template.md | 可执行计划模板与质量门槛 |
skills/improve/references/closing-the-loop.md | execute / reconcile / --issues 闭环流程 |
examples/001-*.md | 对 shadcn/ui 的真实审计产出示例 |
.claude-plugin/plugin.json | Claude 插件市场元数据 |
运行时产物(在被审计的目标仓库,非本 repo 内):
plans/
README.md # 索引、依赖图、状态表
001-<slug>.md
002-<slug>.md
improve路径:skills/improve/SKILL.md
角色:资深顾问,非实现者。对源码严格只读,唯一可写目录是目标仓库的 plans/。
触发条件:
按 audit-playbook.md 九类并行子代理审计。每个 finding 需 file:line 证据、影响、工作量(S/M/L)、置信度。
审计深度由调用关键词决定:
quick | standard(默认) | deep | |
|---|---|---|---|
| 覆盖范围 | 热点 + 高置信度 top findings | 热点加权,关键包 | 全仓库、全包 |
| 子代理数 | 0–1 | ≤4 并发 | ≤8 并发,每类一个 |
| 类别 | 正确性、安全、测试 | 全部九类 | 全部九类 + LOW 置信度 |
| Findings | top ~6,仅 HIGH | 完整表格 | 含「待调查」项 |
按 plan-template.md 写 plans/NNN-slug.md + plans/README.md 索引。摘录必须来自顾问自己的阅读,非子代理报告。每份 plan 记录 Planned at git SHA,执行前做 drift check。
详见 skills/improve/references/audit-playbook.md
| 命令 | 行为 |
|---|---|
/improve | 完整流程:审计 → findings → plans |
/improve quick | 轻量:热点 + 高置信度 top findings |
/improve deep | 穷尽:全包、全类别 |
/improve security | 聚焦单类(亦可用 perf、tests、bugs 等) |
/improve branch | 仅审计当前分支相对默认分支的变更 |
/improve next | 方向/功能建议(4–6 条有证据的选项) |
/improve plan <description> | 跳过审计,直接为已知需求写单份计划 |
/improve review-plan <file> | 评审并收紧已有计划 |
/improve execute <plan> | 派廉价执行子代理(隔离 worktree)+ 顾问复审 |
/improve reconcile | 刷新 backlog:验证 DONE、处理 BLOCKED、更新漂移 |
... --issues | 将计划发布为 GitHub Issues |
/improve(或 /improve quick 控制成本)plans/ 下的文件与索引/improve execute 001 让 skill 派执行者/improve reconcile 清理 backlogPR 前可用 /improve branch,只审计分支变更范围。
计划写给「最弱可想象的执行者」——从未见过顾问会话、可能更小的模型。
路径、摘录、约定、命令全部内联。禁止「如上所述」。
每步有命令 + 期望输出。Done criteria 可机器校验。
明确 in/out of scope + STOP 条件,防止小模型即兴发挥。
详见 skills/improve/references/closing-the-loop.md
execute <plan>
在隔离 worktree 派执行子代理;顾问重跑 done criteria、查 scope、读 diff。裁决:APPROVE / REVISE(最多 2 轮)/ BLOCK。合并始终由用户决定。
reconcile
DONE 抽查、BLOCKED 调查重写、TODO 刷新漂移、REJECTED 退役。
--issues
用 gh issue create 发布计划。公开仓库对安全类 finding 需用户确认。
execute 子代理在 disposable worktree 内)file:line + 类型 + 建议轮换execute若被审计仓库已有 ADR(docs/adr/)、CONTEXT.md、DESIGN.md、PRODUCT.md 等,improve 会读取并用于:
对 shadcn/ui 的真实审计产出:
| # | Finding | Category | Effort | Confidence |
|---|---|---|---|---|
| 1 | shadow-config 在 search.ts/view.ts 重复,副本已漂移(TODO at search.ts:31) | tech-debt | M | HIGH |
| 2 | O(n²) icon migration(migrate-icons.ts:168) | perf | S | HIGH |
示例计划:examples/001-extract-shadow-config-resolution.md — 含当前代码摘录、精确步骤、repo 自身的 test/lint 命令作为验证门、以及 reality 不匹配时的 STOP 条件。