关于 skill-grader
用于评估 Claude Agent Skills 的结构化评分标准,面向子 Agent 和领域经验有限的评审者。它按 10 个维度评分,并给出针对性的改进建议。
主要功能
- 01按 10 个维度评估技能
- 02提供分项与总评分级
- 03按权重计算总分
- 04给出具体改进建议
- 05支持技能库快速评分
适用场景
- 01审查单个技能的质量
- 02比较技能并确定修改优先级
- 03检查整个技能库的质量
- 04制定技能改进路线图
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ curiositech/ some_claude_skills --skill skill-grader安装后在 Claude Code 中输入/skill-grader确认已加载。
附带文件.claude-plugin/plugin.jsonCHANGELOG.md
详细介绍
技能评分器
用于 Claude Agent Skills 的结构化评估标准。针对 10 个维度分别给出字母等级(A+ 到 F)以及总体等级,并为每个维度提供具体的改进建议。
面向子 Agent 和非专业审查者,他们需要通过机械、可重复的流程评估技能质量,而无需深入的领域专业知识。
使用时机
✅ 适用于:
- 审查单项技能的质量
- 对比不同技能
- 确定优先改进哪些技能
- 对技能库进行质量检查
- 制定改进路线图
❌ 不适用于:
- 创建新技能(使用
skill-architect) - 评估代码质量或非技能文档
- 评估 Agent 表现(这与技能质量不同)
评分流程
flowchart TD
A[Read SKILL.md + all files] --> B[Score each of 10 axes]
B --> C[Assign letter grade per axis]
C --> D[Compute overall grade]
D --> E[Write improvement recommendations]
E --> F[Produce grading report]
分步说明
- 阅读整个技能文件夹——SKILL.md、所有参考资料、脚本、CHANGELOG、README
- 评估各个维度——使用下方的评分标准(每项 0-100 分)
- 换算为字母等级——参见等级标准
- 计算总体等级——加权平均(Description 和 Scope 的权重为 2 倍)
- 为低于 B+ 的各个维度撰写 1-3 条具体改进建议
- 按照下方的输出格式生成评分报告
10 个评估维度
维度 1:描述质量(权重:2 倍)
描述是否符合 [内容] [时机] [关键词]。NOT for [排除项] 的格式?
| 等级 | 标准 |
|---|---|
| A | 使用具体的动词和名词,包含用户可能输入的领域关键词,明确列出 2-5 个 NOT 排除项,25-50 个词 |
| B | 包含关键词和 NOT 子句,但略显含糊或缺少同义词覆盖 |
| C | 过于笼统、缺少 NOT 子句,或包含 >100 词的流程细节 |
| D | 只有一句含糊的描述(“帮助处理 X”),或名称与描述不匹配 |
| F | 缺少描述或描述为空 |
维度 2:范围把控(权重:2 倍)
该技能是否专注于一种专业领域,还是包罗万象?
| 等级 | 标准 |
|---|---|
| A | 专注于一个明确的专业领域,且同时包含具体的“When to Use”和“NOT for”部分 |
| B | 大体上专注,边界略有歧义 |
| C | 涵盖 2-3 个相关但不同的领域,可能应该拆分 |
| D | 包罗万象的技能(“帮助处理与 X 相关的所有事”) |
| F | 完全没有定义范围边界 |
维度 3:渐进式披露
该技能是否遵循三层架构(元数据 → SKILL.md → 参考资料)?
| 等级 | 标准 |
|---|---|
| A | SKILL.md 少于 300 行,主要内容放在参考资料中,SKILL.md 内含带单行说明的参考资料索引 |
| B | SKILL.md 少于 500 行,使用了一些参考资料,且包含索引 |
| C | SKILL.md 超过 500 行,或所有内容都内嵌其中,没有参考资料 |
| D | SKILL.md 超过 800 行,或存在参考资料但未在 SKILL.md 中建立索引 |
| F | 单个庞大文件,没有任何结构 |
维度 4:反模式覆盖
该技能是否编码了可避免常见错误的专家知识?
| 等级 | 标准 |
|---|---|
| A | 包含 3 个以上采用 Novice/Expert/Timeline 模板的反模式,并说明 LLM 常犯的错误 |
| B | 包含 1-2 个反模式,并附有清晰说明 |
| C | 提到了反模式,但没有结构化模板 |
| D | 没有反模式,只有正向指引 |
| F | 包含本身就是反模式的建议(过时、有害) |
维度 5:自包含工具
该技能是否包含可用的工具(脚本、MCP、子 Agent)?
| 等级 | 标准 |
|---|---|
| A | 提供带 CLI 接口、错误处理和依赖项文档的可用脚本;或合理说明“无需工具” |
| B | 存在可用脚本,但缺少错误处理或文档 |
| C | 提到了脚本,但实际是模板或伪代码 |
| D | 虚构工具(SKILL.md 引用了不存在的文件) |
| F | 引用了不存在的工具,且未作任何说明 |
注意:并非每项技能都需要工具。如果工具不适用,纯决策树类技能也可以获得 A 级。
维度 6:激活精确度
该技能能否在相关查询中正确激活,并在无关查询中保持静默?
| 等级 | 标准 |
|---|---|
| A | 描述包含与用户用语匹配的具体关键词,有明确的 NOT 条款,且没有明显的误触发因素 |
| B | 关键词合适,但存在轻微的误触发风险 |
| C | 关键词笼统,与其他技能的关键词重叠 |
| D | 没有具体关键词,或 NOT 条款与预期用途相矛盾 |
| F | 描述会导致持续误触发 |
维度 7:可视化内容
该技能是否有效使用 Mermaid 图表、代码示例和表格?
| 等级 | 标准 |
|---|---|
| A | 使用 Mermaid 流程图呈现决策树,使用表格进行比较,使用代码示例展示具体模式 |
| B | 有一些图表或表格,但关键决策树仍以散文形式呈现 |
| C | 使用了表格,但没有用 Mermaid 图表呈现流程 |
| D | 只有散文,没有可视化结构 |
| F | 大段文字,没有任何格式辅助 |
维度 8:输出契约
该技能是否定义了其他 Agent 可使用的输出格式?
| 等级 | 标准 |
|---|---|
| A | 明确规定输出格式(JSON 模式、Markdown 模板或结构化章节),可供子 Agent 使用 |
| B | 暗示了输出格式,但没有明确说明 |
| C | 没有输出格式,但内容结构足以推断 |
| D | 预期输出为非结构化散文 |
| F | N/A(纯参考技能)——不适用此维度 |
维度 9:时效意识
该技能是否记录了知识的适用时间及其变化?
| 等级 | 标准 |
|---|---|
| A | 反模式中包含时间线,有“截至 [日期]”标记,并有带日期的 CHANGELOG |
| B | 有一些时间背景,且存在 CHANGELOG |
| C | 知识没有日期,但存在 CHANGELOG |
| D | 完全没有时间背景,知识可能已经过时 |
| F | 包含明显过时的建议,且未作警示 |
维度 10:文档质量
README、CHANGELOG 和参考资料的组织情况。
| 等级 | 标准 |
|---|---|
| A | README 包含快速入门,CHANGELOG 包含带日期的版本记录,参考资料组织良好且文件名清晰 |
| B | 存在 README 和 CHANGELOG,也提供了参考资料 |
| C | SKILL.md 是唯一文件,但结构良好 |
| D | 没有 README、没有 CHANGELOG,参考资料组织混乱 |
| F | SKILL.md 是唯一文件,且结构混乱 |
等级评分表
| 字母 | 分数范围 | 含义 |
|---|---|---|
| A+ | 97-100 | 卓越——树立了标杆 |
| A | 93-96 | 优秀——仍有少量改进空间 |
| A- | 90-92 | 非常好——存在少数小问题 |
| B+ | 87-89 | 良好——仍有明显改进空间 |
| B | 83-86 | 扎实——有几个方面需要改进 |
| B- | 80-82 | 高于平均水平——存在实质性不足 |
| C+ | 77-79 | 一般——需要显著改进 |
| C | 73-76 | 低于平均水平——存在重大不足 |
| C- | 70-72 | 勉强合格 |
| D+ | 67-69 | 较差——存在根本性问题 |
| D | 63-66 | 很差——需要大幅返工 |
| D- | 60-62 | 接近不合格 |
| F | <60 | 不合格——从头开始 |
总体评分计算
维度 1(描述)和维度 2(范围)的权重为 2 倍。其他维度的权重均为 1 倍。如果维度 8(输出契约)标记为不适用,则将其从计算中移除。
Overall = (2×Axis1 + 2×Axis2 + Axis3 + Axis4 + Axis5 + Axis6 + Axis7 + Axis8 + Axis9 + Axis10) / 12
使用上方的评分表,将数值平均分转换为字母等级。
输出格式
请严格按照以下结构生成:
# Skill Grading Report: [skill-name]
**Graded**: [date]
**Overall Grade**: [letter] ([score]/100)
## Axis Grades
| # | Axis | Grade | Score | Key Finding |
|---|------|-------|-------|-------------|
| 1 | Description Quality | [grade] | [score] | [1-line finding] |
| 2 | Scope Discipline | [grade] | [score] | [1-line finding] |
| 3 | Progressive Disclosure | [grade] | [score] | [1-line finding] |
| 4 | Anti-Pattern Coverage | [grade] | [score] | [1-line finding] |
| 5 | Self-Contained Tools | [grade] | [score] | [1-line finding] |
| 6 | Activation Precision | [grade] | [score] | [1-line finding] |
| 7 | Visual Artifacts | [grade] | [score] | [1-line finding] |
| 8 | Output Contracts | [grade] | [score] | [1-line finding] |
| 9 | Temporal Awareness | [grade] | [score] | [1-line finding] |
| 10 | Documentation Quality | [grade] | [score] | [1-line finding] |
## Top 3 Improvements (Highest Impact)
1. **[Axis]: [Specific action]** — [Why this matters, expected grade improvement]
2. **[Axis]: [Specific action]** — [Why this matters, expected grade improvement]
3. **[Axis]: [Specific action]** — [Why this matters, expected grade improvement]
## Detailed Notes
### [Axis name] ([grade])
[2-3 sentences of specific feedback with examples from the skill]
[Repeat for each axis scoring below B+]
快速评分(简略版)
如需快速筛查大量技能,仅生成:
| Skill | Overall | Desc | Scope | Disc | Anti | Tools | Activ | Visual | Output | Temp | Docs |
|-------|---------|------|-------|------|------|-------|-------|--------|--------|------|------|
| [name] | [grade] | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
评分中的反模式
评分虚高
错误:没有核对标准,只因“做得相当不错”就给出 B+。 正确:严格按照评分表,将观察结果与标准对应。如果描述缺少 NOT 条款,则维度 1 的得分不能高于 C。
缺少上下文
错误:因为纯决策树技能没有脚本,就在轴 5(工具)上给它低分。 正确:将轴 5 标为「A — 工具不适用于此类技能」。
忽略虚假引用
错误:因为脚本被「提及」,就在轴 5 上给 B。
正确:实际检查每个引用的文件是否存在。如果提到了 scripts/validate.py,但该文件不存在,那就是 D。