SKILL 审查(agent-skill-review)
⚡ 使用方式(AI 替你完成)
用户: 审查下这个 skill / 二次审核
AI: 加载本 skill → 识别时机(生成后=构成审查 / 发布前=打包分发审查)→ 逐项核对 → 报告问题清单(P0/P1/P2)→ 修复确认
铁律:审查结论必须来自实际核对(读文件/跑校验),不凭印象下结论。
触发
- 新 skill 生成后(构成审查)
- skill 发布前(打包/分发审查)
- 二次审核已有 skill
审查时机与清单
| 时机 | 对象 | 清单 |
|---|---|---|
| 生成后 | 构成(对齐 agent-skill-gen 规范) | A 构成审查 |
| 发布前 | 打包整理 + 发布分发 | B 发布前审查 |
A 构成审查(对齐 agent-skill-gen 规范)
- 概念分层:三件事三个文件(怎么做/做成什么样/发生过什么),不混装
- 文件层级:SKILL.md/CHANGELOG/templates/references/scripts 齐全且定位正确
- 概念单一真相源:无两处定义,无"定位分歧文件"(既非 X 也非 Y 的夹层文件——该删)
- 目标态在资产侧:skill 未重复定义"做成什么样"(宪法在资产内,skill 只引用)
- 命名合规:name 动词-名词;选词无占用冲突
- AI 使用哲学头节:顶部声明「用户指挥 AI,AI 替用户执行」
- 模板定位:无死模板(基板),继承靠内嵌+引用;init 模板进了 init 流程
- 版本化:version 单一真相源 + CHANGELOG 就位
- 概念平级 → 物理平级 + 单一真相源:SKILL.md 声明平级的文档(宪法/蓝图)在物理上并列(根目录);templates/ 内文件须过可替换性检验——不可替换的约定/宪法内容 → P1 移出至根目录;资产内发现宪法实例/copy → P1 删除(唯一真相源在 skill,qwiki v2.0.0 教训)
- 参考分层(A 模式):SKILL.md 不承载坑/决策原因(全量在 references/,定位标清:排障/理解/接入);违反 → P1
B 发布前审查
B-1 打包整理(2026-08-01 实践沉淀,原 packaging 清单并入)
- 技能收敛:重叠度量化(wc -l + grep -c),子集技能已合并/删除
- 主技能 frontmatter(description/triggers)反映合并后的完整范围
- references 调试笔记已剔除,SKILL.md 中 references 引用已清理(保知识去链接)
- scripts/ 软链已解除(复制真实内容)
- 脱敏:文档泛化 + 脚本功能保留(py_compile 全过)
- 脚本名无项目名/内部痕迹
- 内部 skill 名引用已清(指向不存在的技能 = 死链)
- install.sh 支持多技能数组 + 单技能参数(管道
| bash -s -- <skill>验证) - frontmatter 纯 YAML:
yaml.safe_load必须通过——正文不能插在---之间(2026-08-01 二次审计:TL;DR 插在 description 和 category 之间解析报错) - 幽灵脚本引用检查:SKILL.md 中
scripts/引用的文件名与实际文件一一匹配 - 全量脚本引用:
_referenced_support_paths提取无缺失(SKILL.md 末尾「支持文件清单」段用反引号列出所有 scripts/*.py) - 二次审计委托技巧:delegate_task final summary 有长度限制(~475 chars 截断),完整结论从 live_transcripts 日志重建——日志是真实信息源
- README 无重构残留:标题全文中只出现一次,wc -l + 中部抽查
- 脱敏后全仓重扫:同款标识符(U-Boot 提示符/进程名/日志路径)三处分布——SKILL.md 模式表/脚本 MARKERS/references 代码示例
- 脚本验证:py_compile 全过 +
__pycache__/无 .pyc 入暂存(.gitignore 须含) - 真实引用 vs 描述性文字区分:正则扫出的
references/design可能是说明性短语——逐个os.path.exists确认,描述性文字不报缺失 - 版本化三件套:version 字段 + CHANGELOG.md + install.sh 安装/更新一体(版本对比 + 备份 + 拷贝 CHANGELOG)
- push 后同步本机安装:
~/.hermes/skills/等本机 skills 目录是复制品无 .git,push 不自动同步 - 重构/收敛后逐个检查所有被重写文件(README/install.sh/SKILL.md)拼接残留——同一坑命中多文件
- 双远端协议:
git remote -v确认 gitee 是git@gitee.com:(SSH)——HTTPS 无凭证 push 报 Username fatal
B-2 发布分发(自包含清单)
- 自包含:不依赖不存在的其他 skill(相关段引用须指向真实存在的技能,否则删除/内嵌)
- 反引号引用:SKILL.md 引用全部支持文件(scripts/templates/references)
- 布局:SKILL.md + 支持目录 + install.sh + README + CHANGELOG 齐全
- AI 哲学头节:顶部「用户指挥 AI,AI 替用户执行」+ 铁律
- README:安装方式齐全(一键脚本 + 手动复制 + 多 agent 目标含 ZCode)
- 敏感扫描:无内部邮箱/IP/昵称/公司痕迹
- 建仓:gitee 主推 + GitHub 镜像,双远端协议(SSH)
- install.sh 实测:隔离 HOME 跑通 + 幂等 + 版本对比 + 备份
- 模拟协作者:换目录/换机器装一遍验证
审查执行方式
- 简单 skill(≤3 文件):AI 直接逐项核对(yaml.safe_load / _referenced_support_paths / py_compile / 敏感扫描)
- 复杂 skill:
delegate_task派子 agent 并行审查 + AI 复核汇总(final summary 截断 → 从 live_transcripts 日志重建)
审查报告格式
按严重程度排序输出:P0(阻断)/ P1(必改)/ P2(建议),每条带:问题 + 证据(文件/行号)+ 修复建议。
相关
agent-skill-gen— 生成环节(构成规范 + 打包整理规范,审查依据)
框架:生成 → 审查(本技能)→ 发布(三环节技能各自独立分发,按需获取)