谁写的代码谁负责!Cursor 发布 Agent Trace:从此 Bug 别想再推给 AI

作者:Robert Krzaczyński
  • 2026-02-05
    北京
  • 本文字数:1121 字

    阅读完需:约 4 分钟

Cursor 近日公布了 Agent Trace 开放规范草案,目标是解决 AI 生成代码在软件项目中的归属与标注问题。该提案以 RFC 形式发布,定义了一种厂商中立的格式,用于在版本控制系统中记录 AI 与人类协作产生的代码贡献。

基于其在 AI 辅助编程工具方面的实践经验,Cursor 发现,代码变更过程中对上下文的追踪能力仍然明显不足。以常见的 git blame 等工具为例,它们只能显示某一行代码“何时被修改”,却无法说明这次修改是由人类完成、由 AI 完成,还是二者协作的结果。Agent Trace 正是为了解决这一缺口,试图以结构化、可互操作的方式捕获这些关键信息。

从技术角度看,Agent Trace 是一套数据规范,使用基于 JSON 的 trace record(追踪记录)来关联具体的代码范围,以及背后的对话过程和参与者。代码贡献可以在文件级或行级进行追踪,按会话进行分组,并被标注为“人类”、“AI”、“混合”或“未知”。该模式还支持为 AI 生成的代码附加可选的模型标识,从而在不绑定具体厂商的前提下,实现更精确的归属记录。

此处输入图片的描述

在设计上,这一规范刻意保持了对存储方式的“中立性”。Cursor 并未规定追踪记录必须存放在哪里,开发者可以根据自身需求,将其保存为普通文件、git notes、数据库记录,或采用其他机制。Agent Trace 同时支持多种版本控制系统,包括 Git、Jujutsu 和 Mercurial,并引入了可选的内容哈希,用于在代码被移动或重构后,依然能够追踪其原始归属。

可扩展性是 Agent Trace 的核心设计目标之一。各厂商可以通过命名空间键(namespaced keys)附加额外的元数据,而不会破坏规范的兼容性。同时,该规范刻意回避了对 UI 形式、代码所有权语义的定义,也不试图评估代码质量或追溯训练数据来源,而是将关注点严格限定在“代码归属”和“可追溯性”本身。

Cursor 还提供了一份参考实现,展示 AI 编程代理如何在文件发生变化时,自动捕获并生成追踪记录。尽管示例基于 Cursor 自家的工具链,但其设计模式被明确定位为可复用方案,适用于其他编辑器和智能代理。

来自开发者社区的早期反馈,普遍强调了这一规范在代码审查和调试流程中的潜在价值。一位 X 用户评论道:

这才是真正在收拾 Agent 生成代码的烂摊子。等不及在 Review 里用了。

另一位用户则从可复现性的角度给予了肯定:

团队一旦搞不清 Agent 为啥跑偏,就会直接停工。Trace 解决了这个痛点,开放得正好。

作为一份 RFC,Agent Trace 明确欢迎社区反馈,同时也有意保留了一些尚未解决的问题,例如在合并(merge)、变基(rebase)以及大规模代理驱动代码变更场景下应如何处理。Cursor 将该提案定位为一个共同标准的起点,而非终极答案,以应对 AI 代理在软件开发流程中日益普及的现实趋势。

原文链接:

https://www.infoq.com/news/2026/02/agent-trace-cursor/