事故现场
昨天打开 HermesAgent,准备跑一套用了很久的播客制作工作流,发现全线失效。
打开 ~/.hermes/skills/media/,tech-podcast 不见了。不只是它。媒体分类下六七个独立 Skill 全部消失,被合并进了一个叫 media-content-automation 的新目录。
打开这个"合并版",一眼能看出问题。为"科技大霹雳"单独调优的六步制作流、Azure TTS 的参数配置、棋仔和依依的角色设定、实时追踪 AI 工具动态的逻辑,全没了。剩下的是一堆通用描述,比任何一个被删掉的原版都差。
Agent 用的是 rm -rf,回收站里什么都没有。只靠一个隐藏的备份目录 .curator_backups/,才把原始内容找了回来。
事后 Agent 的解释:
"我已经确认 media-content-automation 技能目前完全包含了你之前在 tech-podcast 中配置的所有优化逻辑。如果你认可目前的整合方案,我会确保该集成技能的工作流完全覆盖你之前的需求。"
它认为自己完成了一次成功的重构。
问题出在哪
HermesAgent 的决策链大概是:相似功能的 Skill 合并,目录变整洁,这就是优化。
这个推断缺了最关键的一环:没有任何证据表明合并后的版本比原版好。
"目录更整洁"是文件系统观感,跟 Skill 能不能正确完成任务没有关系。一个有效的自进化至少需要四件事:变更前跑一套覆盖原有功能的基准测试,变更后对比新旧版本的执行结果,明确的指标定义什么叫"更好",在个性化配置等无法量化的维度上选择保守策略。
HermesAgent 一条都没做。
Skill 评测为什么是个工程问题
我最近大量时间在给企业 AI 提效场景设计 Skill 和 Workflow 的评测体系,这件事踩中了我正在研究的几个核心难点。
质量是多维的。 一个 Skill 的质量至少包含五个维度:
- 功能完整性:任务是否被正确完成(可以定义测试集)
- 输出质量:格式、结构、专业性是否达标(需要评判者,难以自动化)
- 稳定性:在不同输入下表现是否一致(可测,但需覆盖边界 case)
- 个性化程度:是否记住并遵守用户的特定偏好(几乎无法自动评测)
- 与其他 Skill 的协作性:在链式调用中表现如何(需要系统级测试)
一个 Skill 可能在功能完整性上通过 90%,但因为丢失了某个关键的个性化配置,用户根本用不了。合并操作很容易保留前者,丢失后者。
Ground Truth 存在于用户脑子里。 传统 ML 评测有标注好的标准答案。Skill 的标准答案是什么?对于结构化输出(SQL 查询、代码生成),可以定义。但对于"生成一段符合'棋仔'人设的播客开场白",没有脱离用户可以独立运行的标准答案。只有用过这个 Skill 的人才能判断输出好不好。
LLM-as-judge 接近随机猜测。 用另一个 LLM 评判 Skill 输出质量是目前的主流方案。问题在于:评判模型和被评判 Skill 往往共享相同的偏见。如果两者都认为"更长的回答 = 更好的回答",那么不管输出多冗余,评判模型都会打高分。微软研究院和复旦大学的数据说明了这一点:LLM 自评准确率约 46.4%,统计意义上和随机猜测差不多。
不可逆操作让评测失效。 就算评测体系不完善,工程上还有一道防线:变更可逆。Git 的设计逻辑就是这样,先 commit,测出问题,再 revert。HermesAgent 用 rm -rf 直接绕过了这道防线,没有版本控制,没有用户确认,没有回滚路径。这不是评测体系不完善的问题,而是工程设计错误。
现阶段自进化可以做什么
自进化有价值,但今天的边界应该划在这里:
可以做的:
- 基于用户反馈生成改进建议,由用户决定是否采纳
- 在非破坏性范围内调整,补充说明、增加示例、优化格式
- 生成新版本供用户对比,用户确认后再替换
不应该做的:
- 在没有完整测试覆盖的前提下合并或删除现有 Skill
- 任何
rm -rf级别的不可逆操作 - 声称"新版本完全包含旧版本的所有功能",这句话没有定量验证就没有任何意义
我在设计的评测体系
我目前正在构建一套 L1-L4 的 Skill 质量评测框架:
L1 功能验证:给定输入,输出是否满足预定义的结构约束和内容要求(Rule-based 自动化)
L2 质量对比:新版本 vs 旧版本,在固定测试集上测 delta,不测绝对分,减少 judge 偏见影响
L3 端到端任务:在完整 Workflow 中,Skill 是否完成了上下游协作(集成测试,关注任务完成率)
L4 用户满意度:用户对真实输出的显式反馈(无法自动化,必须收集真实使用数据)
L1-L3 全部通过,L4 初步信号为正,Skill 才能进入候选发布状态。
HermesAgent 的自进化在这个框架里连 L1 都没有触达。
结语
备份找回来了,Skill 可以恢复,这次代价不大。但它清楚地说明一件事:当前市面上大多数 Agent 框架的自进化功能还处于 toy 阶段,可以作为实验探索,但不适合在有真实价值资产的场景里打开。
我自己也在做这个方向。把它做扎实,需要先把评测体系建起来,在此之前,谨慎比自主更可靠。
更多实用知识和有趣产品,欢迎访问我的个人主页