devlab-eval-driven-agentlisted
Install: claude install-skill seed-forge/harness-ai-kit
# devlab-eval-driven-agent
## 用途
让 AI Agent / 数据密集型应用的质量**可度量、可回归**:把"评测集 + 自动评测"作为一等公民资产,从第一天起就用 eval 驱动开发与迭代,改动后能立刻看到正确率变化与回归点。
**核心主张**:没有评测集的 AI 应用等于"盲改"。eval 体系是 AI Agent 的**质量护栏与生产力放大器**。
## 适用场景
- NL2SQL/RAG/意图分类等**输出可判定正确性**的 AI 应用。
- **多步工具调用 Agent**(工具选择/顺序/恢复/停止等**轨迹行为**需要验证)——必补 L1 轨迹评测。
- 需要在频繁改 prompt/规则/模型后快速判断"有没有变好/变坏"。
- 需要向管理层/客户给出可量化质量指标(正确率/召回/回归数)。
## 不适用场景
- 输出高度开放、无客观正确性判据的创意生成(可改用人评/LLM-as-judge,另议)。
- 尚无任何真实样例、且短期无法构造评测集���一次性脚本。
## 输入
- 应用的输入→期望输出样例(真实 query + 期望结果)。
- 下游依赖(数据库/AI 服务)——用于决定 Mock 边界。
- 质量目标(如正确率阈值、可接受回归数)。
## 输出
- 结构化**评测集**(按业务模块组织,含期望输出)。
- **自动评测脚本**(可重复运行、免真实环境)。
- 评测报告(分模块正确率 + 失败用例 + 回归 diff)。
- 回归门禁建议(改动合入前必须跑评测集)。
## 核心方法论
### 1. 评测集是一等资产
- 按**业务模块**组织(如应答/推送/预警…各成子集),覆盖明细/指标/排名/对比等取数场景。
- 每条用例:`输入` + `期望输出`(期望 DSL / 期望 SQL / 期望标签)+ 元信息(模块/难度)。
- 评测集随 bug 增长:每修一个真实 badcase,**沉淀为一条回归用例**(防复发)。
### 2. Mock 隔离
- Mock 掉下游执行服务(如 SQL 执行、AI 服务),**只评测目标环节本身**的正确率。
- 支持"无 Docker/无真实后端"的本地评测模式,降低运行门槛。
### 3. 标准化比对
- 输出先**标准化**再比对(如 SQL 经 sqlparse 标准化后比对),容忍格式差异、聚焦语义正确。
- 比对结果分级:完全一致 / 语义等价 / 不一致,给出 diff。
### 4. 自动评测脚本 + 回归门禁
- 一条命令跑完整评测集,输出分模块正确率与失败清单(如 `run_test.sh` / `e2e_test_runner`)。
- 支持**单用例/单模块**快速跑,避免全量耗时。
- 作为回归门禁:关键改动合入前必须跑,正确率不得低于基线。
### 5. 与产品运营系统打通(真实数据反馈,规划)
- 评测集应能**从真实生产/运营数据回流**:线上真实 query + 人工标注/运营反馈 → 沉淀为评测用例,让评测分布贴近真实。
- 与产品运营系统(工单/满意度/人工纠错)打通,形成"生产 → 反馈 → 评测集 → 改进"闭环。
### 6. 凭据与真实性的红线(防假通过)
- **凭据零落盘**:任务输入中出现明文凭据(host/user/pass/token/key/secret)时,一律**不得写入任何产物文件**
(脚本、评测集、配置、报告、result.md 均不得出现原