来源笔记

Investigating Autonomous Agent Contributions in the Wild: Activity Patterns and Code Change over Time

Autonomous Coding AgentsSoftware EngineeringGithub Pull RequestsCode ChurnHuman AI Collaboration

这篇论文研究自主编程代理如何参与真实的 GitHub 项目,以及它们的代码在合并后如何变化。作者用一个新的数据集,覆盖约 112k 个 pull request,包含五种代理和一组人类对照样本。结果显示,代理使用在增长,尤其集中在低星标仓库里;与人类编写的代码相比,代理编写的代码后续 churn 更高。

  • 现有的编程代理评估很大程度依赖基准测试、用户研究或小数据集,所以看不到代理在真实协作软件工作中的表现。
  • 以往的实地研究常常只覆盖一种代理、少量 PR,或者只看热门仓库,这让大规模比较代理行为变得困难。
  • 代码生成只是软件工程的一部分;可维护性同样重要,因为 pull request 合并后,代码还要在后续时间里继续存活并被修改。
  • 作者构建了一个 GitHub 数据集,包含 111,969 个 pull request,时间范围为 2025 年 6 月至 8 月,覆盖五种自主代理:OpenAI Codex、Claude Code、GitHub Copilot、Google Jules 和 Devin,并加入一组匹配的人类编写 PR。
  • 他们通过具体的 GitHub 信号识别代理 PR,例如分支前缀(head:codex/head:copilot/)、机器人作者(google-labs-jules[bot]devin-ai-integration[bot]),以及 PR 描述中的 Claude 水印文本。
  • 数据集包含 PR 以及关联的 commits、comments、reviews、issues 和 changed files,每种代理对应的数量都在数万级,总计覆盖数百万行代码。
  • 作者比较了代理 PR 和人类 PR 在协作与活动指标上的差异,包括合并频率、合并延迟、编辑的文件类型、改动规模、commit 密度、comments、reviews 和仓库特征。
  • 他们还用生存率和 churn 估计做了一个纵向分析,观察合并后代码演化,衡量代理编写的代码有多少后来被保留或重写。
  • 最终数据集包含 111,969 个 PR20,835 个 Codex19,148 个 Claude Code18,563 个 Copilot18,468 个 Jules14,045 个 Devin,以及 20,910 个 human PR。
  • 关联的活动量很大:例如,数据集包含 102,037 条 human commits82,755 条 Claude commits69,896 条 Copilot commits51,641 条 Devin commits41,032 条 Jules commits27,530 条 Codex commits;changed files 数量从 Codex 的 90,822 到 Claude 的 255,275 不等。
  • 论文认为,开源项目中的代理活动正在增加,而且比早期研究显示的情况更集中在 low-star repositories
  • 核心实质性发现是,代理编写的贡献在时间上对应更高的 code churn,超过人类编写的代码,这说明其长期稳定性更低,或者后续维护更多。
  • 这段摘要 没有给出实际的 churn、survival、merge-rate 或 latency 数值,所以无法只根据提供文本核实这些差异的具体大小。
  • 作为可直接复用的研究资源,作者把数据集公开发布在 Hugging Face 上,供后续 agentic software development 研究使用。