一个用于 Claude Code 会话的正式评测框架,实现了评测驱动开发(Eval-Driven Development, EDD)原则。
评测驱动开发(Eval-Driven Development)将评测视为“AI 开发的单元测试”:
测试 Claude 是否能够完成之前无法完成的任务:
[CAPABILITY EVAL: feature-name]
任务:描述 Claude 应该完成的目标
成功标准:
- [ ] 标准 1
- [ ] 标准 2
- [ ] 标准 3
预期输出:对预期结果的描述确保变更不会破坏现有功能:
[REGRESSION EVAL: feature-name]
基线(Baseline):SHA 或检查点(checkpoint)名称
测试项:
- existing-test-1: 通过/失败(PASS/FAIL)
- existing-test-2: 通过/失败(PASS/FAIL)
- existing-test-3: 通过/失败(PASS/FAIL)
结果:X/Y 通过(之前为 Y/Y)使用代码进行确定性检查:
# 检查文件是否包含预期模式
grep -q "export function handleAuth" src/auth.ts && echo "PASS" || echo "FAIL"
# 检查测试是否通过
npm test -- --testPathPattern="auth" && echo "PASS" || echo "FAIL"
# 检查构建是否成功
npm run build && echo "PASS" || echo "FAIL"使用 Claude 评测开放式输出:
[MODEL GRADER PROMPT]
评测以下代码变更:
1. 它是否解决了所述问题?
2. 结构是否良好?
3. 是否处理了边缘情况?
4. 错误处理是否得当?
得分:1-5(1=差,5=优秀)
推理:[解释说明]标记以进行人工审查:
[HUMAN REVIEW REQUIRED]
变更内容:描述发生了什么变化
原因:为什么需要人工审查
风险等级:低/中/高(LOW/MEDIUM/HIGH)“k 次尝试中至少有一次成功”
“所有 k 次试验均成功”
## 评测定义:feature-xyz
### 能力评测
1. 可以创建新用户账户
2. 可以验证电子邮件格式
3. 可以安全地对密码进行哈希处理
### 回归评测
1. 现有登录功能仍然正常
2. 会话管理保持不变
3. 注销流程完好无损
### 成功指标
- 对于能力评测:pass@3 > 90%
- 对于回归评测:pass^3 = 100%编写代码以通过定义的评测。
# 运行能力评测
[运行每项能力评测,记录通过/失败]
# 运行回归评测
npm test -- --testPathPattern="existing"
# 生成报告评测报告:feature-xyz
========================
能力评测:
create-user: 通过 (pass@1)
validate-email: 通过 (pass@2)
hash-password: 通过 (pass@1)
总体: 3/3 通过
回归评测:
login-flow: 通过
session-mgmt: 通过
logout-flow: 通过
总体: 3/3 通过
指标:
pass@1: 67% (2/3)
pass@3: 100% (3/3)
状态:准备好进行评审 (READY FOR REVIEW)/eval define feature-name在 .claude/evals/feature-name.md 创建评测定义文件
/eval check feature-name运行当前评测并报告状态
/eval report feature-name生成完整的评测报告
在项目中存储评测:
.claude/
evals/
feature-xyz.md # 评测定义
feature-xyz.log # 评测运行历史
baseline.json # 回归基线## EVAL: add-authentication
### 第 1 阶段:定义 (10 分钟)
能力评测:
- [ ] 用户可以使用电子邮件/密码注册
- [ ] 用户可以使用有效凭据登录
- [ ] 无效凭据被拒绝并显示正确错误
- [ ] 页面重新加载后会话依然持久化
- [ ] 注销后清除会话
回归评测:
- [ ] 公共路由仍可访问
- [ ] API 响应保持不变
- [ ] 数据库架构兼容
### 第 2 阶段:实现 (耗时视情况而定)
[编写代码]
### 第 3 阶段:执行评测
运行:/eval check add-authentication
### 第 4 阶段:报告
评测报告:add-authentication
==============================
能力:5/5 通过 (pass@3: 100%)
回归:3/3 通过 (pass^3: 100%)
状态:准予发布 (SHIP IT)dfbf946
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.