Measuring agent work in live systems

Abstract

A task that looks successful in a benchmark can still create expensive review, fragile changes, or hidden operational debt. Evaluation needs to follow work into the system.

The easiest way to evaluate an agent is to ask whether it produced the expected answer. In software, that can mean whether a patch matches a reference diff or whether a test suite turns green. These checks are useful. They are also only the beginning.

Real work has a longer tail. A change can pass the obvious test while increasing review burden, breaking an uncovered integration, consuming an unreasonable amount of compute, or leaving a task that no one else can resume. An agent that solves a benchmark by taking broad, poorly explained action may look capable until it is placed in a shared environment.

The practical question is not, "Did the model finish?" It is, "What did it take to finish, what did the system learn, and how much trust should the result earn?"

Final output is a narrow measurement

An agent can arrive at a correct patch through a fortunate guess. It can also arrive at an incorrect patch while producing a persuasive explanation. Neither possibility is visible when the only measure is a final answer.

For live systems, evaluation benefits from several complementary signals:

  • Outcome: Did the requested behavior change in the intended way?
  • Evidence quality: Did the task collect checks that actually support its claims?
  • Scope: Did the agent make a focused change, or alter unrelated surfaces to force a result?
  • Recovery: When an assumption failed, did it revise the plan and preserve the state?
  • Review cost: Can another person understand the change without replaying the full task?
  • Operational cost: Did the task stay within reasonable time, tool, and compute budgets?

No single score can faithfully represent all of this. The aim is not to manufacture a grand index. It is to notice failures that a simple pass rate hides.

Use the work that matters

Generic benchmarks are valuable for comparing models, but they rarely capture the conventions and risks of a particular organization. A productive evaluation set should include a small, evolving sample of real task shapes: a bug that crosses a frontend and API boundary, a dependency update with a compatibility condition, a visual regression at a narrow viewport, a change that requires a review before an external action.

The tasks should not be selected only because they are easy to score. They should represent places where the team would actually consider using an agent. For each task, the expected result can be defined in terms of behavior and evidence rather than an exact sequence of words or commands.

This approach has an additional benefit: it reveals where the infrastructure is weak. If agents repeatedly fail because they cannot identify the right environment, the problem may not be model reasoning alone. The workspace, tests, or task record may be missing a necessary signal. Evaluation can guide improvements to the system around the model.

Inspect the near misses

The most useful examples are often not clean successes or clean failures. They are near misses: a change that fixed the visible bug but removed an accessibility label; a task that found the right file but used a stale preview; a workflow that correctly prepared an external action but requested an approval too broad for the operation.

Near misses expose the relationship between capability and control. They tell us whether an agent tends to overreach, whether the runtime catches that overreach, and whether reviewers receive enough context to intervene. A mature evaluation practice collects these cases, turns the important ones into regression tasks, and updates the product rather than merely adjusting a prompt.

The system should learn without becoming opaque

Production experience should improve an agent system. A useful tool pattern can become a documented workflow. A recurring test failure can lead to better environment setup. A review that repeatedly catches the same missing evidence can change the task template.

But learning must remain visible and reversible. A model should not silently rewrite the policies that constrain it or mutate the shared instructions of other agents because one task appeared to succeed. Improvements to durable behavior need their own review path, provenance, and evaluation.

The result is a slower kind of compounding than a demo suggests, but a more valuable one. The organization becomes better at knowing which work to delegate, what evidence to request, and where the remaining uncertainty lies.

Agent evaluation is ultimately a study of systems, not only models. The measurement that matters is whether useful work becomes easier to complete, easier to review, and safer to maintain after the agent has participated.

在真实系统中衡量 Agent 工作

摘要

Benchmark 中看起来成功的任务,仍可能带来昂贵的 review、脆弱的变更或隐藏的运维负担。评估需要跟随工作进入真实系统。

评估 Agent 最简单的方法,是问它是否生成了预期答案。在软件里,这可能意味着补丁是否匹配参考 diff,或测试套件是否变绿。这些检查有价值,但只是开始。

真实工作有更长的尾部。一项变更可能通过明显的测试,却增加 review 负担、破坏没有覆盖的集成、消耗不合理的计算资源,或留下没人能够继续的任务。一个通过 benchmark、却采取宽泛且缺乏解释的行动来解决问题的 Agent,放进共享环境后可能就不再显得有能力。

实际的问题不是“模型完成了吗”,而是“它付出了什么代价才完成,系统学到了什么,以及这个结果应该获得多少信任?”

最终输出是狭窄的衡量方式

Agent 可能靠一次幸运的猜测得到正确补丁,也可能一边生成有说服力的解释,一边得到错误补丁。当唯一指标是最终答案时,这两种情况都看不见。

对于真实系统,评估需要结合多种信号:

  • 结果: 请求的行为是否按预期发生变化?
  • 证据质量: 任务是否收集了真正支持其结论的检查?
  • 范围: Agent 做的是聚焦变更,还是为了得到结果而修改了无关表面?
  • 恢复: 假设失败时,它是否调整了计划并保留了状态?
  • Review 成本: 另一个人能否在不重放完整任务的情况下理解变更?
  • 运行成本: 任务是否处在合理的时间、工具和计算预算内?

没有单一分数可以忠实地代表所有这些内容。目标不是制造一个宏大的总指数,而是发现简单通过率隐藏的失败。

使用真正重要的工作

通用 benchmark 对比较模型很有价值,但很少能够捕捉某个组织自己的惯例和风险。高效的评估集应该包含一组小而持续更新的真实任务形态:跨越前端与 API 边界的 Bug、带兼容条件的依赖升级、窄视口下的视觉回归,以及需要在外部动作前 review 的变更。

任务不应该只因为容易评分而被选中。它们应该代表团队真正考虑交给 Agent 的工作。每项任务都可以用行为和证据定义预期结果,而不是要求一组固定的词语或命令。

这种方法还有额外收益:它会暴露基础设施薄弱的地方。如果 Agent 总是因为找不到正确环境而失败,问题可能不只是模型推理;工作区、测试或任务记录也可能缺少必要信号。评估可以指导模型周围的系统改进。

检查差一点成功的案例

最有价值的例子往往不是干净的成功或干净的失败,而是差一点成功:改动修复了表面 Bug,却删掉了无障碍标签;任务找到了正确文件,却使用了过期预览;工作流准备好了外部动作,却请求了大于实际操作所需的审批范围。

这些案例暴露能力与控制之间的关系。它们告诉我们 Agent 是否容易越界、运行时能否捕获越界,以及 reviewer 是否获得了足够上下文来介入。成熟的评估实践会收集这些案例,把重要案例变成回归任务,并更新产品,而不是只调整 Prompt。

系统应该学习,但不能变得不透明

生产经验应该改善 Agent 系统。一个有用的工具组合可以成为记录下来的工作流;反复出现的测试失败可以促成更好的环境配置;review 中反复出现的缺失证据,可以改变任务模板。

但学习必须可见、可逆。模型不应该因为某个任务看起来成功,就悄悄改写约束自己的政策,或改变其他 Agent 的共享指令。持久行为的改进需要自己的 review 路径、来源和评估。

这是一种比 Demo 展示的速度更慢、却更有价值的积累。组织会越来越清楚哪些工作适合委托、应该要求什么证据,以及不确定性仍然在哪里。

Agent 评估最终研究的是系统,而不仅是模型。重要的衡量标准,是有用的工作是否变得更容易完成、更容易 review,也更容易在 Agent 参与之后继续维护。