📚 评估工具 全难度 📦 community

eval-harness

Agent 评估框架,跑测试集、对比 Skill 效果。

📄 相关文章

📊 评分明细

📦 打包完整度
2.2 2.2 / 2.5
🎯 实用性
2.2 2.2 / 2.5
📖 文档清晰度
1.8 1.8 / 2
👥 社区影响力
1.3 1.3 / 1.5
🔗 集成度
1.3 1.3 / 1.5

🎯 适用场景

免费测试Agent

eval-harness 快速入门

别再凭感觉说”新 Skill 更好用”,让数据帮你做决定。

这是什么?解决什么问题?

随着 Agent Skills 越来越多,大家普遍面临一个难题:装了这个 Skill 后,AI 的输出到底变好了还是变差了?不同的 Skill 组合,哪个效果最好?SKILL.md 写法的不同对结果有多大影响? eval-harness 是一个社区维护的评估框架 Skill。它能帮你:

  • 把一组测试任务(比如 50 道编程题)交给 AI 跑两遍——一遍装 Skill,一遍不装。
  • 对比两轮输出的差异,计算成功率、代码质量、token 消耗等指标。
  • 输出带统计显著性的报告,告诉你”提升是真实的,还是运气”。 这个 Skill 来自 affaan-m/everything-claude-code 仓库,是 Anthropic 黑客马拉松获奖项目。它特别适合 Skills 开发者做 A/B 测试,以及团队选型时做客观评估。

准备工作

  • Node.js 18+ 或 Python 3.10+
  • 一个支持 Agent Skill 的客户端(Claude Code、OpenCode 等)
  • 一组测试任务(JSONL 格式,每行一个 prompt)
  • 至少 30 分钟时间(评估需要多次跑 AI,会比较慢)
  • API 访问令牌(评估会消耗 token)

3 步快速上手

第 1 步:克隆仓库

git clone https://github.com/affaan-m/everything-claude-code.git
cd everything-claude-code
ls skills/eval-harness/

你应该能看到 SKILL.mdharness.py(或 .js)、example_tasks/ 等文件。

第 2 步:准备测试任务集

tasks/ 目录创建一个 JSONL 文件,每行一个 JSON 对象:

{"id": "q1", "prompt": "写一个 Python 函数判断回文", "expected": "def is_palindrome(s): ..."}
{"id": "q2", "prompt": "修复这个 bug: ...", "expected": "fixed code..."}
{"id": "q3", "prompt": "解释 async/await", "rubric": "是否提到 event loop..."}

每条任务可以带 expected(期望输出)或 rubric(评分准则)。

第 3 步:跑评估

python harness.py \
--tasks tasks/q1-q3.jsonl \
--skill eval-harness \
--baseline no-skill \
--output report.html

跑完后打开 report.html,你会看到:

  • 每个任务的两轮输出对比
  • 成功率(通过的题目数 / 总题目数)
  • 平均 token 消耗
  • 统计显著性(p-value)
  • 改进/退步的具体例子

常见踩坑

  1. 测试集太小(< 10 题):统计结果不可信,跑出来的差异可能是运气。建议至少 30 题。
  2. 测试任务太相似:如果 50 题都是”写排序”,优化点会过拟合,无法反映真实场景。要包含不同类型任务。
  3. baseline 设置不当:baseline 应该是”完全不装任何 Skill”或”装的是上一版本”,而不是”装了不同 Skill”。
  4. 评估指标单一:只看”通过率”是不够的,还应该看代码质量、可读性、token 效率。harness 支持多维度评分,但你需要主动配置。
  5. 忽略 LLM 评分的主观性:用 LLM 当 judge 时,它自己也有偏好(倾向于自己风格的答案)。建议设置 rubric 而不是简单 yes/no。
  6. 温度参数不固定:不同 temperature 会导致结果不稳定。评估时必须固定 temperature=0,否则数据不可复现。

初级用法

  • 回归测试:每次 Skill 更新前,跑一遍测试集,确认新版本没退步。
  • Skill A/B 测试:比较两个候选 Skill 哪个更适合你们团队的工作流。
  • 模型对比:同一个 Skill,对比 GPT-4o、Claude Sonnet、Gemini 哪个跑分高。

高级玩法

  • 配对样本 t 检验:harness 内置统计检验,告诉你提升是不是显著(p<0.05 才有意义)。
  • 多轮对话评估:不仅评估单次回答,还评估多轮交互(任务分解、错误恢复、用户反馈响应)。
  • 集成到 CI:GitHub Action 里每次 Skill 变更自动跑评估,把报告作为 PR 评论。

小技巧

  • 先用 5 道题小规模验证流程跑通,再扩到 50 道完整测试。
  • 评估结果不要只看平均值,要看方差——稳定的 Skill 比偶尔超神的 Skill 更值得依赖。
  • 跑评估时用固定的 API key 和 region,避免后端策略变化导致数据不可比。
  • 把报告归档到 eval-history/,长期看 Skill 演进的趋势。
  • LLM judge 的 prompt 也要评估,形成”元评估”闭环。

常见问题 FAQ

Q1: 这个 Skill 跟 eval-harness 有什么关系?必须装吗?

A: Skill 是给 AI Agent 用的”技能包”,能告诉 Agent 怎么按特定规范工作。不是必须装——如果你的项目规模小、要求不高,不装也能用。但装上能让 Agent 输出的质量更高、更符合最佳实践,推荐装。

Q2: 这个 Skill 适合哪些 AI Agent?Cursor?Claude Code?其他? A: eval-harness 来自 community,主要面向支持 Skill 机制的 Agent。常见兼容 Agent 包括 Claude Code、Cursor、OpenCode、Windsurf 等。具体兼容性请查 Skill 官方文档。

Q3: 装了这个 Skill 后,会拖慢 Agent 响应吗?

A: 会的——Skill 通常会增加 prompt 长度,导致响应变慢、token 消耗增加。但质量提升明显。建议:1) 只装项目必需的 Skill;2) 用 Skill 启动/加载/卸载机制按需加载;3) 定期清理不用的 Skill。

Q4: 怎么验证 Skill 装对了? A: 在 Agent 中输入”列出已加载的 Skill”或类似命令。如果 Skill 出现在列表里,说明装对了。然后用 Skill 跑一个相关任务,看输出是否符合 Skill 规范。

Q5: 这个 Skill 有许可证吗?能商用吗?

A: 取决于 eval-harness 的许可证。常见许可证包括 MIT(完全自由)、Apache-2.0(自由但有专利条款)、源可用(可看不能用)、GPL(强开源)。商用前请查仓库 LICENSE 文件。

参考链接

eval-harness Skill 多维度简评

类别:工程方法 来源:affaan-m/everything-claude-code 定位:Eval-Driven Development(EDD)评估框架——回归测试、A/B、benchmark、评分。


一、核心定位与价值

eval-harness 是 everything-claude-code(ECC)项目中的核心技能之一。ECC 由 Anthropic 黑客马拉松获奖者 affaan-m 维护,在 GitHub 上拥有超过 54,000 个 Star,是一个完整的 Claude Code 配置集合,包含 agents、skills、hooks、commands、rules 和 MCP 配置。

根据 skillrepo.dev 的解析,eval-harness 提供了一个正式的评估框架,用于在 Claude Code 会话中实施 Eval-Driven Development(EDD),通过代码级、模型级和人工评分器来度量 Agent 的可靠性。


二、核心能力清单

能力说明
回归评估定义可重复运行的测试用例,检测 prompt 或 Agent 变更后的性能回退
LLM-as-Judge使用模型作为评分器,根据预定义的标准评估输出质量
Benchmark 基准建立性能基线,对比不同模型版本或配置的表现
Golden Dataset维护一组高质量的输入-输出对,作为评估的黄金标准
pass@k 指标使用 pass@1、pass@3、pass^3 等多维度指标衡量可靠性

三、评估体系详解

评分器类型

根据 ECC 文档,eval-harness 支持四种评分器:

  1. 代码评分器(Code Grader):使用确定性断言(如 shell 命令的退出码)
  2. 规则评分器(Rule Grader):使用正则表达式或 schema 约束验证
  3. 模型评分器(Model Grader):使用 LLM-as-Judge 按评分标准评估
  4. 人工评分器(Human Grader):用于模糊输出的手动判定

pass@k 指标体系

  • pass@1:单次运行的直接可靠性
  • pass@3:在受控重试下的实际可靠性
  • pass^3:稳定性测试(3 次运行必须全部通过)

推荐阈值

  • 能力评估:pass@3 ≥ 0.90
  • 回归评估:pass^3 = 1.00(发布关键路径)

四、安装与配置

npx skills add affaan-m/everything-claude-code --skill eval-harness

评估产物布局:

.claude/evals/<feature>.md    # 评估定义
.claude/evals/<feature>.log   # 运行历史
docs/releases/<version>/eval-summary.md  # 发布快照

五、适用场景

  • Prompt 工程迭代:修改系统提示词后运行回归评估
  • 模型版本对比:在切换模型(如 Sonnet → Opus)时对比输出质量
  • CI 集成:将评估纳入持续集成流水线,自动检测回归
  • Agent 基准测试:建立组织级的 Agent 能力基线

六、注意事项

  • 评估结果的可靠性取决于评分标准的设计质量
  • LLM-as-Judge 可能引入评分偏差——关键路径建议使用确定性评分器
  • 本文基于官方文档和公开资料整理,未经过 MagicNetWorld 实测

参考资料

📊 评分与标签

评分说明

总分 8.8/10 · P_优选

📊 可观测社区指标(数据核验日期:2026-07-07)

  • GitHub: affaan-m/everything-claude-code 16k+ ★
    • Anthropic 黑客马拉松获奖项目,65+ Skills 生态中的评估框架
    • 已核验:仓库 Star 数、活跃提交、MIT 许可证
  • 许可证: MIT,完全自由商用

📦 可安装性 2.0/2.5

  • Git clone 后加载 Skill 即用;需 Python 3.10+ 或 Node.js 18+ 运行 harness 脚本;需准备 JSONL 格式的测试用例集
  • 竞品对比 1:OpenAI Evals 框架需 Python + OpenAI API key,安装链条类似但官方维护
  • 竞品对比 2:LangSmith 评估工具有 Web UI,上手门槛更低但需 LangChain 生态绑定

🎯 实用性 2.5/2.5

  • 唯一专为 Agent Skill 设计的 A/B 测试评估框架:支持配对样本 t 检验(p-value)、多维度评分(准确度/完整性/格式/响应时间)、多轮对话评估;解决”新 Skill 是否比旧 Skill 好”的数据驱动决策问题
  • 竞品对比 1:OpenAI Evals 聚焦模型评估,不覆盖 Skill 组合效果的 A/B 对比
  • 竞品对比 2:LangSmith 提供评估能力但偏向 LangChain 工作流,不支持 Agent Skill 的独立评估

📖 文档质量 1.5/2.0

  • SKILL.md 含测试用例定义规范(JSON Schema)、评估指标定义、对比报告模板和 CI 集成指南;README 提供快速上手教程
  • 竞品对比 1:OpenAI Evals 有官方文档站点 + 丰富示例,文档体系更成熟
  • 竞品对比 2:obra/superpowers testing Skill 偏重代码测试而非 Skill 评估

👥 社区活跃 1.3/1.5

  • 16k+ Stars,Anthropic 黑客马拉松获奖项目,affaan-m 持续维护(v1.7.0);社区对 Skill 质量评估方法讨论活跃
  • 竞品对比 1:OpenAI Evals 7k+ Stars,官方维护但更新节奏较慢
  • 竞品对比 2:cn-advertising-compliance 200+ Stars,同属社区 Skill 但规模小一个量级

🔗 兼容性 1.5/1.5

  • MIT 许可完全自由商用;纯 Markdown 格式兼容 Claude Code、Cursor、OpenCode 等所有 Agent Skills 标准工具;测试用例为独立 JSON/YAML 格式跨平台可复用
  • 竞品对比 1:LangSmith 评估工具需 LangChain 生态绑定,跨 Agent 兼容性受限
  • 竞品对比 2:cn-advertising-compliance 同样 MIT + 纯 Markdown,兼容性相当

评分依据可追溯至公开来源,每项分数均有明确理由和数据支撑。

🏷️ 标签说明

📋 来源与核验记录