Skip to content

readme-generator Skill 评审报告

评估框架: skill-creator 评估日期: 2026-03-19 评估对象: readme-generator


readme-generator 是一个面向仓库结构的 README 生成与重构 skill,用于为 service、library、CLI、monorepo 等项目产出可维护、基于证据的项目首页文档。它的三个主要亮点是:先做项目类型路由和模板选择,让 README 结构贴合真实仓库形态,而不是落入通用化套板;通过 Evidence Mapping、badge 检测和 no-fabrication 规则,把各 section 锚定到真实文件、命令和配置,减少凭空补全;以及提供结构化 Output Contract 和维护说明,让生成结果更易评审、更易长期维护,也更容易随着代码演进持续同步。

一、评估概览

本次评估从实际任务表现Token 效费比两个维度对 readme-generator skill 进行全面评审。设计 3 个递进复杂度的 README 生成/重构场景(Go 服务从零生成、Go CLI 工具生成、问题 README 重构),每个场景分别运行 with-skill 和 without-skill 配置,共 3 场景 × 2 配置 = 6 次独立 subagent 运行,对照 42 条 assertion 进行评分。

维度 With Skill Without Skill 差异
Assertion 通过率 42/42 (100%) 26/42 (61.9%) +38.1 百分点
Output Contract 结构化报告 3/3 全对 0/3 Skill 独有
Documentation Maintenance 维护说明 3/3 0/3 Skill 独有
Evidence Mapping 证据表 3/3 0/3 Skill 独有
社区文件链接(Contributing/Security) 2/2 2/2 持平
CLI 端到端示例 1/1(无伪造输出体) 0/1 Skill 独有
无内部流程标签 3/3 2/3 Skill 优势
无伪造内容 3/3 2/3 Skill 优势
Skill Token 开销(SKILL.md 单文件) ~4,688 tokens 0
Skill Token 开销(典型全量加载) ~10,030 tokens 0
每 1% 通过率提升的 Token 成本 ~123 tokens(SKILL.md only)/ ~263 tokens(full)

二、测试方法

2.1 场景设计

场景 仓库 核心考察点 Assertions
Eval 1: go-service-from-scratch Go 服务:cmd/api、internal/、Makefile、.env.example、CI 项目类型路由、证据驱动 section、badge 策略、Output Contract 14
Eval 2: go-cli-tool Go CLI 工具:cobra 双子命令、Makefile、CI、CONTRIBUTING.md CLI 类型路由、端到端示例、ToC 质量、no-fabrication 13
Eval 3: refactor-stale-readme Go 服务含问题 README:伪造 badge、错误配置、过时命令、内部标签 反模式检测修复、社区文件链接、Output Contract 15

2.2 测试仓库结构

Eval 1 仓库 (/tmp/readme-eval/eval-repos/go-service): - cmd/api/main.go — entrypoint(handler → service → repository 分层) - internal/handler/user.go — 3 个 HTTP 端点(GET/POST /users,GET /users/:id) - .env.example — 5 个环境变量(DATABASE_URL、REDIS_URL、JWT_SECRET、LOG_LEVEL、PORT) - .github/workflows/ci.yml — GitHub Actions(运行 make ci,Go 1.23) - Makefile — 9 个 target,COVER_MIN=80golangci-lint@v1.62.2 - LICENSE — MIT;Go 1.23,模块 github.com/acme/user-service

Eval 2 仓库 (/tmp/readme-eval/eval-repos/go-cli): - cmd/root/root.go — cobra root + 2 个全局 flag(--output/-o--format/-f) - cmd/generate/generate.gocmd/validate/validate.go — 2 个子命令 - Makefile — 4 个 target(build-schema-gen、test、lint、install) - .github/workflows/ci.ymlLICENSE(Apache 2.0)、CONTRIBUTING.md - Go 1.22,无 .env.example;无 sample output 文件

Eval 3 仓库 (/tmp/readme-eval/eval-repos/refactor-stale) — 预置问题 README: - 伪造 badge:Travis CI、Codecov、npm Downloads(repo 使用 GitHub Actions) - 错误配置列:DB_HOST/DB_PORT 等(.env.example 实为 POSTGRES_DSN/REDIS_ADDR 等 7 个变量) - 过时命令:go run main.go(Makefile 有 make run-server) - 内部标签:Testing 表格含 ✅ Verified / ⚠️ Not verified - 实际内容:.env.example(7 变量)、Makefile(9 target)、CONTRIBUTING.mdSECURITY.md、Go 1.24

2.3 执行方式

  • 每个场景创建独立 Git 仓库并预置代码、go.mod、Makefile 等文件
  • With-skill 运行先读取 SKILL.md,按技能工作流生成/重构 README
  • Without-skill 运行不读取任何 skill,按模型默认行为完成同一任务
  • 所有 6 次运行并行执行

三、Assertion 通过率

3.1 总览

场景 Assertions With Skill Without Skill 差值
Eval 1: go-service 14 14/14 (100%) 9/14 (64.3%) +35.7%
Eval 2: go-cli 13 13/13 (100%) 8/13 (61.5%) +38.5%
Eval 3: refactor-stale 15 15/15 (100%) 9/15 (60.0%) +40.0%
总计 42 42/42 (100%) 26/42 (61.9%) +38.1%

3.2 Without-Skill 失败的 16 条 Assertion 归类

失败类型 次数 涉及 Eval 说明
无 Output Contract / Scorecard 3 Eval 1/2/3 无结构化的 project_type、template_used、scorecard、badges_added 报告
无 Documentation Maintenance 3 Eval 1/2/3 无"此 README 应在以下变更时更新"维护矩阵
无 Evidence Mapping 3 Eval 1/2/3 无 section → 证据文件的映射表
无端到端示例 1 Eval 2 CLI 工具只展示命令片段,无"输入命令 → 输出描述"的完整示例
无 Project Structure section 1 Eval 2 结构信息散落在其他 section 中
无 ToC 1 Eval 2 多 section 的 CLI README 缺少导航
Go version badge 缺失 1 Eval 1 只有 CI badge,无 Go 版本 badge(go.mod 有证据)
Quick Start 步骤 > 3 1 Eval 1 含 git clone,共 4 步(≤3 为合格)
引入新伪造内容 1 Eval 3 无 Dockerfile 证据却出现 docker pull acme/notification-svc:latest
无 License section/badge 1 Eval 3 MIT LICENSE 文件存在但未引用

3.3 趋势:Skill 优势随场景复杂度递增

场景复杂度 Without-Skill 失败条数 With-Skill 优势
Eval 1(服务,从零创建) 5 条 +35.7%
Eval 2(CLI,从零创建) 5 条 +38.5%
Eval 3(重构,含反模式) 6 条 +40.0%

Eval 3 优势最大,因为重构场景要求在修复已知问题的同时主动发现并补充新 section(社区文件、维护说明),这类"扫描-补全"行为是 skill 工作流的固有步骤,without-skill 倾向于只修复明显问题而停止。


四、逐维度对比分析

4.1 Output Contract 与结构化报告

这是 Skill 独有的差异化产出,3/3 场景全部产出,without-skill 0/3。

报告项 Eval 1 Eval 2 Eval 3
project_type service cli service
template_used Template A: Service Template C: CLI Template A: Service(Refactor)
scorecard Critical 4/4 Standard 6/6 Hygiene 4/4 → PASS
badges_added CI + Go 1.23 + License CI + Go 1.22 + License CI + Go 1.24 + License
sections_omitted Contributing, Security, Release Config, Exit Codes, Arch, Deploy
evidence_mapping 14 行映射 15 行映射 12 行映射

实际价值: - PR review 时可核查每个 section 对应哪个文件 - sections_omitted 明确跳过原因,避免"为什么没有 X section"的疑问 - scorecard 分层(Critical/Standard/Hygiene)让 reviewer 快速定位质量问题

4.2 Documentation Maintenance 维护说明

Skill 的 Hygiene Tier H1 要求,3/3 场景全通过,without-skill 0/3。

With-skill Eval 1 输出示例:

Repository change Sections to update
New cmd/*/main.go entrypoint Project Structure, Common Commands, Quick Start
Environment variable added/changed Configuration and Environment
Makefile target added/renamed Common Commands
CI workflow changed Badges, Testing and Quality
New API endpoints added API Endpoints
Go version bumped in go.mod Badges, Quick Start prerequisites

实际价值:解决"README 与代码逐渐脱节"的维护痛点,让贡献者知道改了什么代码就该更新哪部分 README。

4.3 CLI 端到端示例与 No-Fabrication

Skill 的 End-to-End Example Rule 要求 CLI 工具提供"输入命令 → 输出描述"的完整示例,并明确禁止在无证据时伪造 JSON/YAML 输出体。

With-Skill(Eval 2)

schema-gen generate --format json --output ./schemas ./internal/models
# → writes schema file(s) to ./schemas/

schema-gen validate ./schemas/models.json
# → prints validation result to stdout
Output Contract 明确记录:"No JSON/YAML output body fabricated (no sample fixtures in repo)"

Without-Skill(Eval 2):只有命令示例,无 input→output 描述;通过 Usage section 的 Examples 展示命令变体,但读者无法预期输出是什么。

4.4 伪造内容防御

这是本次评估中 without-skill 最值得关注的失败

Without-skill Eval 3 在修复旧伪造内容(Travis CI badge、DB_HOST 配置)时,主动引入了新的伪造内容

## Installation
docker pull acme/notification-svc:latest
仓库中无任何 Docker 相关文件(无 Dockerfile、无 docker-compose.yml、无 Docker Hub 链接)。这表明基础模型在修复一类问题时仍会从通用知识("Go 服务通常有 Docker image")填充无证据内容。

With-skill 的 Evidence Completeness Gate 明确要求"base every statement on repository evidence",3/3 场景均未出现新增伪造。

场景 With Skill Without Skill
删除旧伪造 badge(Eval 3)
修正旧错误配置(Eval 3)
不引入新伪造内容(Eval 3) ❌(docker pull)
CLI 示例无伪造输出体(Eval 2) N/A(无端到端示例)
Go version badge 基于证据(Eval 1) ❌(未添加)

4.5 Badge 策略

维度 With Skill Without Skill
CI badge(来自 .github/workflows) 3/3 3/3
Go version badge(来自 go.mod) 3/3 0/3
License badge(来自 LICENSE) 3/3 0/3
正确删除伪造 badge(Eval 3) 3/3 3/3
无占位/虚假 badge URL 3/3 3/3

Skill 的 Badge Detection Gate 要求按 CI → Coverage → Language version → License 顺序扫描,最终 3 badge 组合(CI + Go + License)在三个场景中均稳定产出。Without-skill 只主动添加 CI badge,Go version 和 License 两类需要明确规则指引才能一致产出。

4.6 ToC 导航质量(CLI 场景)

指标 With Skill Without Skill
ToC 存在 ✅(10 条)
ToC 条目数量合理(7-10) N/A
ToC 标签与 heading 精确匹配 N/A

With-skill Eval 2 的 ToC:

- [Prerequisites](#prerequisites)
- [Installation](#installation)
- [Quick Start](#quick-start)
- [Commands & Flags](#commands--flags)
- [End-to-End Example](#end-to-end-example)
- [Project Structure](#project-structure)
- [Development Commands](#development-commands)
- [Contributing](#contributing)
- [License](#license)
- [Documentation Maintenance](#documentation-maintenance)
10 条,与实际 ## heading 完全匹配,符合 Skill 的 ToC size calibration 规则。

4.7 与 Claude 基础模型能力的边界

基础模型已具备的能力(Skill 无增量)

能力 证据
正确的项目类型路由(service/cli) 3/3 场景正确
删除伪造 badge(Travis CI、Codecov、npm) 1/1 场景正确(Eval 3)
修正错误配置列 1/1 场景正确(Eval 3)
修复过时命令(go run → make run-server) 1/1 场景正确(Eval 3)
删除 Verified/Not verified 内部标签 1/1 场景正确(Eval 3)
引用已发现的社区文件 Eval 3 without-skill 正确引用 CONTRIBUTING.md + SECURITY.md
Makefile target 文档化 3/3 场景正确
基本的证据驱动内容 整体尚可,但缺乏系统性

基础模型的能力缺口(Skill 填补)

缺口 证据 风险等级
无 Output Contract 0/3 场景产出结构化报告 高 — 无法程序化审计 README 变更
无 Documentation Maintenance 0/3 场景添加维护矩阵 中 — README 随代码演进逐渐脱节
无 Evidence Mapping 0/3 场景提供 section → 文件映射 低 — 影响可审计性
CLI 端到端示例缺失 0/1 场景提供"输入→输出"完整示例 中 — 用户无法预期 CLI 输出形式
引入新伪造内容(重构场景) Eval 3 docker pull 高 — 从通用知识填充无证据内容
Go/License badge 不主动添加 0/3 场景产出完整三件套 badge 低 — 信息不完整
ToC 不主动添加 0/1 场景为长 README 添加 ToC 低 — 可读性降低
Project Structure section 缺失 0/1 场景在 CLI README 中提供 低 — 结构分散

五、Token 效费比分析

5.1 Skill 体积

readme-generator 是一个多文件 skill,SKILL.md 包含核心规则,参考资料按需加载。

文件 行数 字节 估算 Token 加载时机
SKILL.md 403 18,755 ~4,688 始终
references/templates.md 372 7,512 ~1,878 从零生成时
references/golden-service.md 144 4,357 ~1,089 服务类项目
references/golden-cli.md 102 2,638 ~660 CLI 类项目
references/golden-library.md 103 3,007 ~752 库类项目
references/golden-monorepo.md 93 2,951 ~738 monorepo(按需)
references/golden-lightweight.md 61 1,685 ~421 小型项目
references/anti-examples.md 182 3,306 ~826 重构时
references/checklist.md 171 10,389 ~2,597 重构时
references/command-priority.md 279 8,496 ~2,124 命令冲突时
scripts/discover_readme_needs.sh 239 9,499 ~2,375 始终(步骤1)
references/bilingual-guidelines.md 28 1,086 ~271 中文/双语(按需)
references/monorepo-rules.md 49 1,687 ~421 monorepo(按需)
Description(始终在 context) ~60 始终

典型加载场景(按 Load References Selectively 原则)

场景 读取文件 估算总 Token
英文服务(Eval 1) SKILL.md + templates + golden-service + discover.sh ~10,030
CLI 工具(Eval 2) SKILL.md + templates + golden-cli + discover.sh ~9,601
重构模式(Eval 3) SKILL.md + anti-examples + checklist + discover.sh ~10,186
仅 SKILL.md(最小加载) SKILL.md ~4,688

5.2 Token 换取的质量提升

指标 数值
With-skill 通过率 100% (42/42)
Without-skill 通过率 61.9% (26/42)
通过率提升 +38.1 百分点
修复的 assertion 数量 16 条
每修复 1 条 assertion(SKILL.md only) ~293 tokens
每修复 1 条 assertion(full load) ~627 tokens
每 1% 通过率提升(SKILL.md only) ~123 tokens
每 1% 通过率提升(full load) ~263 tokens

5.3 Token 分段效费比

将 SKILL.md 内容按功能模块拆分:

模块 估算 Token 关联 Assertion 差值 效费比
Output Contract + Scorecard 定义 ~600 3 条(3 evals 无结构化报告) — 200 tok/assertion
Documentation Maintenance 规则 ~200 3 条(3 evals 无维护说明) 极高 — 67 tok/assertion
End-to-End Example Rule + No-fabrication ~220 1 条(Eval 2 端到端示例) + 防御新伪造 — 220 tok/assertion
Badge Detection Gate(4 步检测) ~250 2 条(Go + License badge) — 125 tok/assertion
Command Verifiability Gate + Hard rule ~250 1 条(无执行状态标签) — 250 tok/assertion
README Navigation Rule(ToC) ~200 1 条(Eval 2 ToC) — 200 tok/assertion
Community & Governance Files 规则 ~150 间接贡献(与 without-skill 持平,社区文件两者均引用) (本次评估)
Pre-Generation Gates(类型路由) ~400 间接贡献(类型路由均正确,基础模型亦可) (本次评估)
Anti-Example 1(内部标签) ~200 防御性(without-skill 已能删除旧标签,但防止新标签泄漏)
Evidence Mapping 规则 ~150 3 条(3 evals 无证据映射) 极高 — 50 tok/assertion
Structure Policy(模板路由) ~350 间接贡献(Project Structure section)

5.4 高杠杆 vs 低杠杆指令

高杠杆(~1,620 tokens → 直接贡献 11+ 条 assertion 差值): - Documentation Maintenance(200 tok → 3 条) - Evidence Mapping(150 tok → 3 条) - Output Contract + Scorecard(600 tok → 3 条) - End-to-End Example + No-fabrication(220 tok → 1 条 + 防御) - Badge Detection(250 tok → 2 条) - Command Verifiability Gate(250 tok → 1 条 + 防御)

中杠杆(~750 tokens → 间接贡献): - README Navigation Rule / ToC(200 tok → 1 条) - Anti-Example 1(200 tok → 防御性保障) - Structure Policy(350 tok → section 完整性)

低杠杆(~550 tokens → 0 条直接差值,本次未测试场景): - Chinese/Bilingual Guidelines(加载 bilingual-guidelines.md,~271 tok)— 按需,未触发 - Monorepo Rules(加载 monorepo-rules.md,~421 tok)— 按需,未触发

参考资料(~2,500-5,200 tokens 按场景): - golden-*.md 提供 README 结构模板(间接贡献 section 顺序和完整度) - templates.md 提供完整骨架(间接贡献项目类型路由一致性) - discover_readme_needs.sh 确定性扫描(间接贡献证据完整性)

5.5 Token 效率评级

评级维度 结论
整体 ROI 良好 — ~10,000 tokens 换取 +38.1% 通过率
SKILL.md 本身 ROI 中等 — ~4,688 tokens 较重,高杠杆规则约占 34%(~1,620 tokens)
条件加载设计 优秀 — bilingual/monorepo/refactor 专用文件按需加载,典型场景不付出冗余成本
防御性 Token 有价值 — No-fabrication、Evidence Gate 防止了 without-skill 出现的 docker pull 类伪造,难以用 assertion 数量直接量化

5.6 与 go-makefile-writer Skill 的效费比对比

指标 readme-generator go-makefile-writer
SKILL.md Token ~4,688 ~1,960
典型全量 Token ~10,000 ~4,600
通过率提升 +38.1% +31.0%
每 1% Token(SKILL.md) ~123 tok ~63 tok
每 1% Token(full) ~263 tok ~149 tok

readme-generator 的 SKILL.md 约为 go-makefile-writer 的 2.4x,每 1% 通过率的 Token 成本约为 2.0x。考虑到 readme-generator 需要覆盖 5 种项目类型路由、多语言支持、重构与生成双模式,以及比 Makefile 生成更复杂的"证据驱动"约束体系,这个差距是任务复杂度差异的合理映射,并非效率低下。


六、综合评分

6.1 分维度评分

维度 With Skill Without Skill 差值
证据驱动内容(无伪造) 5.0/5 3.5/5 +1.5
项目类型路由正确性 5.0/5 5.0/5 0
结构化报告(Output Contract) 5.0/5 0/5 +5.0
维护可持续性(Maintenance Note) 5.0/5 0/5 +5.0
Badge 质量与完整性 5.0/5 3.0/5 +2.0
导航与 ToC 质量 5.0/5 2.0/5 +3.0
CLI 端到端示例 5.0/5 1.5/5 +3.5
无内部流程标签 5.0/5 4.5/5 +0.5
综合均值 5.0/5 2.44/5 +2.56

6.2 加权总分

维度 权重 With Skill 得分 Without Skill 得分 加权(With Skill)
Assertion 通过率(delta) 25% 10/10 6.2/10 2.50
结构化报告 & 证据映射 20% 10/10 0/10 2.00
维护可持续性 15% 10/10 0/10 1.50
伪造内容防御 15% 10/10 5.0/10 1.50
Token 效费比 15% 6.0/10 0.90
内容质量 & 可读性 10% 9.5/10 8.0/10 0.95
加权总分 9.35/10

七、改进建议

7.1 [P1] Project Structure 最小覆盖约束

问题:Eval 3 的 with-skill README 中 Project Structure 仅一行:

cmd/server/     # server entry point

缺少 internal/api/internal/db/pkg/cache/ 等目录,这些在 cmd/server/main.go 的 import 语句中有明确证据。

建议:在 Generation Workflow Step 1 (Discover) 中增加:扫描 entrypoint 的 import 路径以补充 internal/pkg/ 层目录,并设置"Project Structure 至少列出 3 个有意义目录"的下限。

7.2 [P2] License Section vs Badge 优先级规则明确化

问题:SKILL.md 在 Community and Governance Files 中规定"LICENSE → Add License section or badge",but 两者优先级不明确,导致不同场景产出不一致(有时只有 badge,有时只有 section)。

建议:明确优先级规则: - README > 80 行:添加 License badge 即可,不强制独立 section - README ≤ 80 行或面向公开仓库:badge + 独立 License section 同时保留

7.3 [P3] 增加更多评估场景

未测试功能 建议场景
中文/双语 README 中文 Go 项目,含中文注释,验证 bilingual-guidelines.md 规则
Monorepo apps/ + packages/ 布局,多 go.mod,验证 monorepo-rules.md
Library/SDK 纯 pkg/,无 cmd/,验证 Template B 路由
Degraded 模式 无 Makefile、无 go.mod 的裸仓库
Private 仓库 badge fallback 策略验证

八、评估材料

材料 路径
Eval 1 测试仓库 /tmp/readme-eval/eval-repos/go-service
Eval 2 测试仓库 /tmp/readme-eval/eval-repos/go-cli
Eval 3 测试仓库 /tmp/readme-eval/eval-repos/refactor-stale
Eval 1 with-skill 输出 /tmp/readme-eval/workspace/iteration-2/eval-1-go-service/with_skill/outputs/
Eval 1 without-skill 输出 /tmp/readme-eval/workspace/iteration-2/eval-1-go-service/without_skill/outputs/
Eval 2 with-skill 输出 /tmp/readme-eval/workspace/iteration-2/eval-2-go-cli/with_skill/outputs/
Eval 2 without-skill 输出 /tmp/readme-eval/workspace/iteration-2/eval-2-go-cli/without_skill/outputs/
Eval 3 with-skill 输出 /tmp/readme-eval/workspace/iteration-2/eval-3-refactor-stale/with_skill/outputs/
Eval 3 without-skill 输出 /tmp/readme-eval/workspace/iteration-2/eval-3-refactor-stale/without_skill/outputs/
Skill 路径 /Users/john/.codex/skills/readme-generator/SKILL.md