用途:校验本仓库中所有交互式(非 CI)技能,检查其是否符合 Anthropic Agent Skills 规范、项目约定与结构要求。适用于新增或修改技能后、提交变更前、提交插件供 Anthropic 审核前,以及 eval-creator 需要验证技能质量时。
主要能力:
- 规范校验:对 skills/ 下每个技能(排除 -ci 变体)运行 quick_validate.py,要求退出码为 0;frontmatter 仅允许 name、description、license、allowed-tools、metadata、compatibility 键;name 为 kebab-case 且不超过 64 字符;description 不超过 1024 字符且不含尖括号。
- 项目约定检查:frontmatter name 与目录名一致、SKILL.md 不超过 600 行、技能目录不得含 README.md、scripts/ 下 .sh 文件须有执行权限、SKILL.md 引用的文件须真实存在于 references/、description 非空。
- 指令文件校验:检查 CLAUDE.md、AGENTS.md、.github/copilot-instructions.md;AGENTS.md 与 CLAUDE.md 须逐字节一致;Copilot 文件可保留提供方特定表述但须保留相同原则;不要求枚举全部技能,仅校验工作流中明确引用的技能目录存在。
- 钩子脚本测试:对含 scripts/ 的技能执行 bash -n 语法检查、校验 bash shebang、校验可执行权限。
- 插件技能校验(由 agent 执行):检查 plugin/skills/ 中技能仅新增 Claude Code 专用键、内容对齐、Beta 标记一致。
- 可移植 Agent 插件校验(由 agent 执行):重新生成后运行 python3 scripts/test-sync-plugin.py 与 uv run --with jsonschema==4.25.1 --with PyYAML==6.0.3 python3 scripts/validate-agent-plugin.py,校验清单、技能成员、frontmatter、字节与执行模式及版本对齐。
使用方式:手动调用 /skill-tester,或直接运行 bash skills/skill-tester/scripts/run-tests.sh。输出包含日期、测试数、通过数、警告数、失败数、指令文件状态及失败/警告/通过清单。
限制:run-tests.sh 仅自动化检查 1-4(不含检查 2 的引用存在部分与检查 3 的语义比较);检查 5-6 及语义/引用检查由 agent 执行,脚本全绿不代表全部通过。不测试 CI 技能(应使用 skill-tester-ci),不修改技能,仅报告发现;不运行行为评估(触发测试),应使用 skill-creator 的 run_eval.py;不替代 eval-creator 回归框架。