← 最新论文
🤖 AI

Detecting AI Coding Agents in Open Source: A Validated Multi-Method Census of 180 Million Repositories

本文通过对1.8亿个仓库进行经过验证的多方法普查表明,单信号检测方法严重低估了AI编程智能体的普遍性——漏掉了高达97%的活动——且不同的检测渠道捕捉的是截然不同、互不重叠的智能体群体及工作类型,因此必须采取整体性的方法,才能准确衡量它们对开源供应链的影响。

原作者: Arsham Khosravani, Audris Mockus

发布于 2026-06-24
📖 1 分钟阅读☕ 轻松阅读

原作者: Arsham Khosravani, Audris Mockus

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

想象一下开源软件的世界,就像一座繁忙、喧闹的大都市,拥有超过 1.8 亿座建筑(代码仓库)。长期以来,我们一直认为知道是谁在建造这些结构:主要是人类建筑师。但最近,一种新型的隐形施工队抵达了:AI 编程智能体(AI Coding Agents)

问题在于?这些 AI 施工队是伪装大师。有些穿着鲜艳的制服,有些在蓝图上留下签名,还有些工作得如此安静,看起来和人类工人一模一样。

这篇论文就像是一次大规模的高科技人口普查,试图统计这些隐形工人的数量。研究人员意识到,如果你只寻找一种特定的迹象(比如某种制服),你将会错过几乎所有人。以下是他们的发现,用简单的语言解释如下:

1. “单一信号”陷阱

想象一下你在统计森林里所有的鸟类。

  • 方法 A: 你只统计戴着红帽子的鸟。
  • 方法 B: 你只统计会唱特定歌曲的鸟。
  • 方法 C: 你只统计留下特定类型羽毛的鸟。

如果你只使用方法 A,你可能会认为只有 10 只鸟。但如果你结合了这三种方法,你可能会发现实际上有 300 只。

论文的发现: 研究人员发现,仅仅依靠一种识别 AI 的方式(比如寻找特定的机器人账号名称)会错过 97% 的活动。对于一个名为 “Claude Code” 的流行 AI 工具,仅通过寻找其官方机器人账号,只能找到 2.8 万次提交(commits)。但当他们观察该工具留下的所有不同痕迹(如代码中的消息或配置文件)时,发现了 85 万 次。这是 30 倍 的差距。

2. 四种“伪装”类型

研究人员创建了一张“通缉令”,用四个类别来捕捉这些智能体:

  • 类型 A:穿着制服的机器人(The Uniformed Bot)。 这些很容易辨认。它们使用特定的机器人电子邮件地址登录(例如 bot@anthropic.com)。这就像一名穿着亮橙色背心的建筑工人。
  • 类型 B:签名(The Signature)。 这些智能体不使用机器人账号,但会在消息中留下备注,例如 “Generated by Replit”。这就像人类工人用特殊的印章在蓝图上签名。
  • 类型 C:隐藏后缀(The Hidden Suffix)。 这些是使用 AI 工具的人类,他们在名字后添加了一个微小的标签,比如 John (aider)。这就像人类工人佩戴了一个写着 “AI 助手” 的小徽章。
  • 类型 D:沉默的幽灵(The Silent Ghost)。 这些是最狡猾的。他们既不改变代码消息,也不改变作者姓名。他们只在项目文件夹中留下一个“设置文件”(比如 .cursorrules 文件)。这就像一个幽灵只留下了一个工具箱,却从未触碰过任何砖块。这个群体规模巨大。 例如,GitHub Copilot 主要就是以这种方式被发现的;它广泛存在于设置文件中,但在实际的代码历史中几乎是隐形的。

3. 两座不同的城市(“渠道脱节”)

研究人员将他们的“提交之城”(观察代码变更)与另一项研究的“拉取请求之城”(观察项目提案)进行了比较。

他们发现这两座城市里的居民几乎完全不重叠!

  • Codex(一个 AI 智能体)是“拉取请求之城”的王者,它创建了数千个提案,但在“提交之城”里却是个幽灵。
  • Claude Code 是“提交之城”的王者,它进行了数千次直接修改,但在“拉取请求之城”里却很少露面。

教训: 如果你只观察一种类型的城市,你得到的关于 AI 实际在做什么的图景将完全是错误的。一组人似乎在构建新功能,而另一组人似乎在修理破损的水管。论文得出结论:AI 如何被部署(作为机器人还是作为直接工具)改变了它表现出的工作类型,而不一定是工具本身的原因。

4. 他们何时抵达?

这次普查查看了从 2024 年底到 2026 年初的数据。

  • “生而为 AI”组: 一些项目从第一天起就是配合这些 AI 智能体构建的。它们就像是从地基开始就由机械臂建造的房屋。
  • “遗产”组: 许多古老的、成熟的项目(有些已有数十年历史)在建成多年后突然开始使用这些智能体。这就像一座旧的家族住宅突然进行了智能家居改造。

5. 他们的工作做得好吗?

研究人员检查了 AI 是否在犯错。

  • 缺陷修复(Bug Fixes): 在提交渠道中,AI 智能体似乎主要被用于修复缺陷和维护工作,而不是构建全新的功能。
  • 质量: 有趣的是,在某些情况下,这些智能体编写的代码比人类代码更不容易被撤销(undone),这表明其稳定性较高。然而,当它们进行更改时,这些更改往往比人类所做的更改规模更大。

核心结论

我们不能仅仅通过寻找“机器人账号”来了解 AI 在协助我们构建软件方面的程度。AI 劳动力是多样化的、隐形的,并且使用了许多不同的“制服”。如果我们只寻找那些显眼的,我们就会对绝大部分正在进行的工作视而不见。要真正理解软件供应链,我们需要寻找制服、签名、名牌以及工具箱。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →