四层架构
core 负责什么
Eval 发现
发现
*.eval.ts 文件和 fixture 目录,并从路径推导稳定 ID。并发调度
控制运行池大小、重试、attempt 和 early-exit。
断言与评分
收集
t.check、作用域断言、judge 分数和测试结果。缓存
用 fingerprint 跳过已通过且输入未变的 case。
报告
输出控制台、JSON、JUnit 等报告。
Artifacts
保存 summary、event stream、transcript、diff 和测试输出。
Agent / Adapter 边界
Agent 是 niceeval core 看到的抽象;Adapter 是你写的具体实现。core 不知道你的 HTTP 协议、CLI 参数或鉴权方式。为什么没有 --url
URL 是某个 adapter 的私有配置,而不是 CLI 的位置参数。experiment 引用 agent;experiment 名之后的位置参数只选择“跑哪些 eval”。
Sandbox 负责什么
- Docker
- Vercel Sandbox
- 第三方后端
本地容器后端,适合开发和 CI 中的 coding-agent eval。
关键术语
Eval
Eval
一个测试用例:描述、agent 引用和
test(t) 函数。Agent
Agent
core 通过名字调用的一条连接,负责返回标准
Turn。Adapter
Adapter
agent 的具体实现,知道如何调用你的服务或 CLI。
Sandbox
Sandbox
给 coding agent 使用的隔离运行环境。
Turn
Turn
一次
t.send() 的不可变结果快照。Artifact
Artifact
运行后落盘的结构化结果文件。
Experiment
Experiment
用矩阵方式比较多个 agent、model 或 flags 的运行配置。
端到端流程
相关阅读
- Evals — eval 是什么,以及生命周期细节。
- Agents & Adapters — 如何写 adapter,并在 experiment 中引用它。
- Scoring — 断言词汇和判决规则。