在这里插入图片描述

一、先问你一个问题

你有没有过这种感觉:给 AI 装了一堆"技能"(skill),刚开始还挺好用,但越用越觉得不对劲?

写个报告,它啰嗦半天;让它总结,它抓不住重点;换个场景,它又一本正经地跑偏。你以为是模型不行,其实很可能是——你的 skill 写得太糙了

skill 这东西,说白了就是给 AI 的"岗位说明书"。说明书写得好不好,直接决定 AI 干活的质量。可问题是:大部分人写完 skill 就扔在那儿,从不迭代。就像招了个员工,上岗那天发份入职手册,之后就再也不管了——时间一长,手册过时了、流程僵化了,员工自然越干越差。

那有没有办法,让 AI 自己评估、优化、验证、回滚自己的 skill?

有。这就是今天要聊的 darwin-skill

二、darwin-skill 是什么?

一句话:借鉴 Karpathy autoresearch 思想 和 微软的 SkillOpt 的自主 skill 优化器——让 AI 像生物进化一样,持续优化自己的技能,保留进步、淘汰退步。

光看名字就很有讲究。"darwin"取自达尔文,核心思想就是进化论:评估现状 → 尝试改进 → 验证效果 → 留下好的、砍掉坏的。

它跟市面上那些"skill 检查工具"最大的区别是:不是只看格式规不规范,而是真的跑一遍,看改完效果是不是更好

三、核心思想:五步进化循环

在这里插入图片描述
darwin-skill 的核心是一个闭环,五个环节:

评估 → 改进 → 实测验证 → 人类确认 → 保留或回滚

  1. 评估:给每个 skill 打分(8 个维度,满分 100)
  2. 改进:找出最弱的一环,针对性改一版
  3. 实测验证:拿真实测试问题跑一遍,看输出质量是否真的提升
  4. 人类确认:改完停下来,让你过目,你说 OK 才继续
  5. 保留或回滚:分数涨了保留,跌了自动回滚

这里有几个很聪明的设计:

棘轮机制——只保留改进,退步自动回滚。就像棘轮只能往前转,不能倒退。用 git 管理,回滚用 git revert(生成新提交),而不是 reset --hard(抹掉历史),这样每一步都有迹可循。

独立评分——打分用独立的子 agent 来做(可以是同一个基模,但是是独立的上下文),避免"自己改自己评"的偏差。你想啊,一个人改完自己的作业再给自己打分,能客观吗?AI 也一样。

人在回路——这是它和 Karpathy autoresearch 最大的区别。autoresearch 是全自主的,让 AI 无限跑实验;但 skill 优化需要人的判断,所以每个 skill 优化完都会暂停,等你确认。AI 负责干活,你负责拍板。

四、8 维度评分表:最硬核的干货

这是整个工具最值钱的地方——一套可复用的 skill 质量评估标准。别管你用不用 darwin-skill,这套评分表本身就能帮你审视自己写的 skill。

结构维度(60 分)——静态分析,看"写得好不好"

# 维度 权重 看什么
1 Frontmatter 质量 8 name 规范、description 说清楚做什么+何时用+触发词
2 工作流清晰度 15 步骤明确可执行、有序号、每步有输入输出
3 边界条件覆盖 10 异常怎么处理、有没有 fallback、错误怎么恢复
4 检查点设计 7 关键决策前有没有让用户确认
5 指令具体性 15 不模糊、有具体参数/格式/示例
6 资源整合度 5 references/scripts 路径对不对、可达不可达

效果维度(40 分)——需要实测,看"跑出来好不好"

# 维度 权重 看什么
7 整体架构 15 结构清晰、不冗余不遗漏
8 实测表现 25 用测试 prompt 跑一遍,输出质量够不够

总分 = Σ(维度分 × 权重) / 10,满分 100。

注意第 8 维"实测表现"权重最高(25 分),这是它跟纯结构审查最大的分水岭。怎么测?给每个 skill 设计 2-3 个典型使用场景的 prompt(不是刁钻的边角 case,是用户最常用的话),然后:

  • 一个子 agent 带着 skill
  • 一个子 agent 不带 skill 跑(作为 baseline)
  • 对比两组输出,看带 skill 到底有没有提升

如果资源紧张跑不了子 agent,就退化成"干跑验证"——读完 skill,模拟一个典型 prompt 的执行思路,判断流程合不合理。但要在结果里标注 dry_run,别假装跑过。

五、怎么用?三步上手

第一步:装好 skill

先确保你已经有了一些 skill(装多少都行),然后安装 darwin-skill,给 AI 发一句:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_df471c2d/darwin-skill

第二步:四种用法,按需选

用法 说一句话 它干什么
全量优化 “优化所有 skills” 跑完整流程,先基线评估,挑分最低的 5-10 个重点优化
单个优化 “优化 xx 这个 skill” 只针对指定 skill
仅评估不改 “评估所有 skills 的质量” 只打分,不动手
查看历史 “看看 skill 优化历史” 展示 results.tsv 优化记录

第三步:在关键节点拍板

整个流程里,AI 会在两个地方停下来等你:

  1. 基线评估完——先给你看评分卡,你确认了才进入优化
  2. 每个 skill 优化完——给你看改动 diff 和分数变化,你说 OK 才继续下一个

六、为什么值得装?

1. 它解决的是"skill 越用越笨"的真问题

很多人装了 skill 就完事,从不迭代。darwin-skill 把"优化 skill"从一件靠自觉的事,变成了一套自动化的、可验证的流程。

2. 它比纯结构审查高一个段位

市面上很多工具只看你的 SKILL.md 格式规不规范、有没有触发词。但格式规整 ≠ 效果好。darwin-skill 的核心是实测——改完真的跑一遍,用输出质量说话。这才是"有效优化"。

3. 它和 Karpathy autoresearch 一脉相承

Karpathy 的 autoresearch 思想是:把目标和约束写进 program.md,让 agent 无限生成并测试代码改动,只保留能可测量提升目标的部分。darwin-skill 把这套思想搬到了 skill 优化上:

autoresearch darwin-skill
program.md(目标+约束) 本文件(评估 rubric + 约束规则)
train.py 每个 SKILL.md
val_bpb(验证指标) 8 维加权总分(含实测)
git ratchet(棘轮) 只保留有改进的 commit
test set(测试集) 每个 skill 的 test-prompts.json

4. 它适合谁?

  • 装了一堆 skill 但从不管理的人
  • 想让 AI 干活更稳定、更高效的开发者
  • 对"AI 自我进化"这个话题感兴趣的人

七、避坑指南 + 一句话收尾

用的时候,记住这几条底线(也是它内置的约束规则):

  1. 别改核心功能——只优化"怎么写",不改"做什么"
  2. 别乱加依赖——不引入原本没有的 scripts/references
  3. 每轮只改一个维度——改多了没法归因
  4. 控制体积——优化后别超过原来的 150%
  5. 保持简洁——中文为主,别堆砌
  6. 可回滚——所有改动都在 git 分支上
  7. 评分要独立——效果维度必须子 agent 或至少干跑验证,不能"改完直接评"

最后,送你一句话:

AI 的技能,也应该像生物一样进化——保留进步,淘汰退步。这就是 darwin 的意义。

你的 skill 不是写一次就完事的。让它活起来,让它自己长。

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐