SuperAPI AI 工具集

skill-testing

测试与质量

查看项目

更新于 10-15 23:49

技能介绍

用途:用于为技能仓库建立测试体系,防止技能静默失效或描述退化导致无法激活。适用于新建技能仓库、为已有仓库补充测试覆盖、排查“技能存在却从不激活”、以及评审新增或修改技能的 PR。

三层测试:1)静态校验——解析 frontmatter,检查必需字段是否存在、描述长度,以及 name 与所在目录是否一致,可在每个 PR 上运行。2)内容 lint——检查正文长度、是否含“When to Use”与“Best Practices”章节、是否有代码示例,并识别过时的模型 ID(如 claude-3-*)与 TODO/FIXME/XXX 标记。3)激活测试——为每个技能维护 tests.yaml,包含 should_activate 与 should_not_activate 正反查询,通过激活引擎断言是否命中;没有真实引擎时可用 Claude 自身判定(示例使用 claude-haiku-4-5)。

评分与回归:统计 truePositive/falsePositive/falseNegative,计算 precision 与 recall,目标为 P ≥ 0.85、R ≥ 0.90;精度低说明过度激活,召回低说明激活不足。修改描述后重跑激活套件,例如 npm run test:skills -- --skill memory-tool,标记前后行为变化。代码块可做语法检查,TS 用 tsc --noEmit、Python 用 py_compile。

CI 与线上:在 GitHub Actions 中于 PR 上运行 npm run validate:skills、npm run lint:skills 与 npm run test:activation -- --changed,并对合并设卡;部署后定时用每个技能的已知查询做冒烟测试,发现未激活则告警,以捕获配置漂移。

反模式:无 CI、只校验 frontmatter、激活测试缺少负例、手工测试、忽视分数下降。限制与未提供信息:具体仓库结构、依赖版本、激活引擎实现与告警渠道资料未提供,需按自身环境适配。