SuperAPI AI 工具集

skill-review

智能体与模型

查看项目

更新于 11-05 16:17

技能介绍

Skill Review 是一个面向技能包(skill)的质量审查工具,提供批量扫描与单技能深度审查两种模式,输出结构化报告供后续修复使用。

用途与使用场景

该技能用于以下场景:对整个技能生态(skills 目录)做周期性健康检查;批量编辑或新增一批技能后进行扫描;在发布前审查单个技能;排查某个技能无法触发或输出质量差的原因;以及在技能进入生态前做质量把关。

输入方式

该技能接收一个位置参数:

  • all:对 skills/**/SKILL.md 做批量扫描。
  • <skill-name>:对 skills/**/<skill-name>/SKILL.md 做深度审查。

还可以附带后续上下文,例如指定聚焦范围(如“只看归属”“只看描述”)以及本次审查的触发原因(如“它从不触发”“输出不对”)。

工作流程

参数解析(Phase 0)

读取参数:若等于 all(不区分大小写),进入批量扫描模式;否则视为技能名,按 skills/**/<arg>/SKILL.md 匹配。唯一匹配进入深度审查模式;零匹配返回模糊候选列表并停止;多匹配则请求用户消歧。

批量扫描模式(--scope=all)

以速度优先,快速评分并标记问题,可用子代理并行执行各类检查。

  1. 发现:匹配 skills/**/SKILL.md,解析前置元数据,生成技能清单表(技能、分类、版本、描述长度、正文行数、引用数量)。
  2. 批量检查:覆盖前置元数据一致性(必填字段、名称与目录一致、版本为合法 semver、描述以动作动词开头且不超过 200 字符);规范符合性(frontmatter 字段值中不得含 < 或 >,描述不超过 1024 字符硬上限);保留前缀名称(claude-*/anthropic-*)作为有文档记录的例外处理;工具字段命名(allowed-tools 为规范写法,allowed_tools 为已弃用别名);归属冲突检测(收集各代理角色的 owns.directories 与 owns.patterns,标记重叠);描述质量评分(动作动词、至少 3 个触发上下文、关键词变体、歧义时说明排除项、估计“推行力”);渐进式披露(正文词数与行数、引用链接、正文超过 5000 词或 500 行软警告、引用超过 300 行且无目录标记);跨技能一致性(composes_with 与 spawned_by 指向真实技能、无循环引用、无孤立引用文件);覆盖缺口(与架构文档、CLAUDE.md、编排器文件归属图比对)。
  3. 分诊:突出影响最大的 3–5 个问题,建议哪些技能值得单独跟进,并标注哪些问题可由 skill-update 直接处理。

深度审查模式(--scope=<skill-name>)

阅读技能目录树中的每个文件,按评分标准对每个维度给出 1–5 分并附具体证据。

  1. 结构分析:对照深度审查评分标准,评估前置元数据合规性、描述质量、渐进式披露、指令清晰度、协作关系、完整性以及反模式(包括模型适配检查与写作工艺检查)。
  2. 实时触发测试:先检查技能是否带有触发测试(至少一个必须激活的示例措辞,最好还有一个不应激活的近似措辞),缺失即标记为问题。若 /skill-creator 可用,则生成 3–5 个应触发的真实提示、2–3 个不应触发的近似提示,运行触发评估,报告应触发命中率与误报率,并列出问题触发。若不可用则跳过并注明。
  3. 输出质量抽样:对产生结构化输出的技能,选取 2 个代表性测试提示,通过技能(或 skill-creator 测试框架)运行,比较实际输出与技能声明的格式,记录差距;可选对比有技能与无技能的输出来判断技能是否值得其上下文成本。

输出结果

两种模式均按报告格式规范生成两个产物:

  • skill-review-report.md:面向人类的结构化 Markdown 报告。
  • skill-review-report.json:供 skill-update 使用的 JSON 附属文件。

批量扫描模式保存到仓库根目录或用户指定路径;深度审查模式保存到 {skill-path}/skill-review-report.{md,json}。报告完成后提示用户:将 JSON 附属文件输入 /skill-update 生成修复计划,或用 --scope=<skill-name> 再次运行以深入查看特定技能。

数据来源

在建议更改前,可运行 scripts/skill-health.sh report --json 获取真实使用信号,包括每个技能的调用总数、7 天/30 天成功率、下降标记以及版本漂移。该信号为粗略尽力而为的数据,发射器只能在技能工具调用时归属技能并记录 outcome:unknown,因此“无数据”表示“未观测到”而非“损坏”。该信号仅用于排定优先审查顺序和佐证质量下降判断,不作为低分的唯一依据。

指导原则

保持建设性,每个问题给出具体建议;诚实评分并解释理由;高度重视触发测试,因为不触发的技能无论写得多好都无用;建议修复时按一次一个聚焦改动、改动间重新验证的方式进行;批量扫描模式不读取引用文件内容,除非检查孤立或断链;深度审查模式中若用户提供了上下文,以该投诉为先;批量扫描即使范围被过滤,仍应对照完整清单验证跨技能引用;可用子代理并行执行独立检查类别。