達爾文:用評估與 Git 棘輪讓 Agent Skill 可度量地進化

前言

維護多個 SKILL.md 時,常見做法是人工通讀:格式是否規範、步驟是否編號、路徑是否寫對。這類結構性檢查能攔住明顯疏漏,卻難以回答更關鍵的問題——帶上這個 Skill 跑典型任務,輸出是否真的更好。

下面介紹社區 Skill「達爾文」(座標 @user_df471c2d/darwin-skill)。它把 Karpathy autoresearch 的「只保留可測量改進」思路搬到 Skill 優化上:先基線評分,再按短板改 SKILL.md,用測試 prompt 複驗,分數上漲則保留,否則 git revert 回滾,並在關鍵節點等人確認。

這是什麼

達爾文是一個面向 Agent Skill(SKILL.md)質量與效果 的優化型 Skill,由 GitHub 維護者 alchaincyf 發佈(花叔生態相關項目)。在 SkillHub 上歸類爲 ai-agent,標籤 requires_api_key=false,當前列表版本爲 1.0.0;倉庫 README 同時標註 達爾文.skill 2.0 的評估與流程升級說明,安裝後 Agent 會按所裝包內的 SKILL.md 執行。

它要解決的問題是:當 Skill 數量從幾個漲到幾十個時,需要一套可重複、可回滾、能區分「寫得規範」與「跑得更好」的優化流程,而不是單次手工改稿。

核心功能

以下能力均來自官方 SKILL.md / README / ClawHub 說明,可按階段理解。

雙重評估與加權總分

  • 結構維度(靜態分析):檢查 Frontmatter、工作流清晰度、邊界與檢查點、指令具體性、資源引用等;v2.0 說明中還將部分維度升級爲「失敗模式編碼」「可執行具體性」「高風險行動黑名單」等更細的 rubric。
  • 效果維度(需實測或受控退化):爲每個 Skill 準備 test-prompts.json(通常 2–3 條典型用戶話術),用獨立子 Agent 對比「帶 Skill / 不帶 Skill」的輸出,給實測表現打分;無法跑子 Agent 時可幹跑並在 results.tsv 標註 eval_mode=dry_run。
  • 總分:各維度 1–10 分乘以權重後彙總,滿分 100;改進後總分必須嚴格高於改進前才保留,否則回滾。

優化生命週期(人在迴路)

官方流程大致分爲:

  1. Phase 0 初始化:確認優化範圍(全部或指定 Skill)、創建 auto-optimize/YYYYMMDD-HHMM 分支、初始化或讀取 results.tsv(默認位置 .claude/skills/auto-optimize-results.tsv)。
  2. Phase 0.5 測試 Prompt:爲每個 Skill 設計並展示測試 prompt,用戶確認後再評估。
  3. Phase 1 基線評估:結構分由主 Agent 打,效果分儘量用子 Agent;完成後展示評分卡並暫停確認。
  4. Phase 2 優化循環:按分數從低到高處理;每輪只針對一個短板維度改 SKILL.md,git commit 後重評;v2.0 強調多評委、評委不復用、單輪漲幅過小早停等;每個 Skill 結束有檢查點,用戶可要求回滾。
  5. Phase 2.5(可選)探索性重寫:hill-climbing 卡住時,在用戶同意下可整篇重寫再對比 stash 版本。
  6. Phase 3 彙總報告:輸出前後分數、保留/回滾次數、主要改動摘要。

棘輪與約束

  • 改動只在 Git 分支上進行;退步用 git revert,文檔明確反對用 git reset --hard 作爲回滾手段。
  • 約束包括:不改變 Skill 核心用途、不隨意新增依賴文件、單輪只改一個維度、控制 SKILL.md 體積膨脹等。
  • 實驗記錄寫入 TSV,字段含 timestamp、commit、skill、old_score、new_score、status、dimension、note、eval_mode 等。

觸發方式

ClawHub 頁面給出的典型觸發語義包括:用戶提到「優化 skill」「skill 評分」「自動優化」「skill 質量檢查」「幫我改改 skill」「skill review」等中英文表述時啓用。

安裝與啓用

安裝前請先確認本機 Agent 的 skills 目錄;SkillHub 文檔要求 install 時必須 --dir 指向該目錄,否則默認落到 ./skills/ 可能不會被識別。

通過 SkillHub(國內商店座標)

SkillHub 頁面與 API 入口均指向座標 @user_df471c2d/darwin-skill。若已安裝 skillhub CLI,可參考:

command -v skillhub && skillhub --version
skillhub install @user_df471c2d/darwin-skill --dir ~/.cursor/skills/

未安裝 CLI 時,可按 SkillHub 安裝說明 執行官方安裝腳本。Cursor 用戶 skills 目錄爲 ~/.cursor/skills/;Claude Code 爲 ~/.claude/skills/;Codex 爲 ~/.codex/skills/ 或項目下 .agents/skills/(以你當前客戶端文檔爲準)。

也可把下列提示交給 Agent,讓其按 SkillHub 安裝文檔完成安裝:

請根據 https://skillhub.cn/install/skillhub.md,安裝 @user_df471c2d/darwin-skill。

官方 API 頁面:https://api.skillhub.cn/user_df471c2d/darwin-skill
SkillHub 展示頁:https://www.skillhub.cn/skills/user_df471c2d/darwin-skill

通過 skills.sh / GitHub 包名

倉庫 README 提供的安裝命令:

npx skills add alchaincyf/darwin-skill

OpenClaw / ClawHub

ClawHub 列出的命令爲:

openclaw skills install @alchaincyf/darwin-skill

離線或無法訪問 GitHub

README 提供 zip 下載鏈接,解壓後將內容放到 ~/.claude/skills/darwin-skill/(路徑以你所用 Agent 的 skills 目錄爲準)。

運行前建議:在 Git 倉庫 中執行優化,並先 commit 或 stash 本地對 Skill 的修改,以便保留/回滾實驗改動;涉及 shell、git、憑證或發佈流程的 diff,應在檢查點人工審閱。

典型用法

安裝完成後,用自然語言驅動即可;官方示例包括:

全量優化(首次常用)

優化所有skills

Agent 會走 Phase 0–3;文檔建議先完成基線評估,再優先處理分數最低的若干 Skill。

單個 Skill

優化 huashu-slides 這個skill

僅對指定 Skill 執行測試 prompt 設計與優化循環。

只評估不改

評估所有skills的質量

執行 Phase 0.5–1(設計測試 prompt + 基線評估),不進入改寫循環。

查看歷史

看看skill優化歷史

讀取並展示 results.tsv。

每個待優化 Skill 目錄下可維護 test-prompts.json,例如:

[
  {"id": 1, "prompt": "用戶會說的話", "expected": "期望輸出的簡短描述"},
  {"id": 2, "prompt": "...", "expected": "..."}
]

適用場景與注意

適合誰

  • 已在 Claude Code、Cursor、OpenClaw、Codex 等環境積累多個 Skill,需要批量體檢或持續改進的團隊或個人。
  • 希望把「改 Skill」變成可審計實驗(分支、commit、TSV 日誌),而不是散落在聊天記錄裏的手工 patch。

限制與注意

  • 效果維度依賴子 Agent 或幹跑;幹跑比例過高時 v2.0 文檔會告警,結論可信度弱於完整實測。
  • 流程默認掃描路徑示例爲 .claude/skills/*/SKILL.md;若你的 Skill 放在 ~/.cursor/skills/ 等位置,需在對話中明確範圍或按 SKILL.md 內 Phase 0 說明調整。
  • SkillHub 列表版本爲 1.0.0,與 GitHub README 的 2.0 功能描述可能不同步;以你實際安裝包內的 SKILL.md 爲準。
  • 無需 API Key(requires_api_key=false),但需要 Git、足夠長的 Agent 會話,以及你願意在檢查點參與確認。

結尾

達爾文把 Skill 優化收成「評估 → 改進 → 實測 → 保留或回滾」的閉環,用 Git 棘輪避免分數與質量悄悄退化。若你在維護一整套 Agent Skills,可以把它當作可重複的優化流水線,而不是一次性文檔審稿。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜