Cognition 发布 Devin 2.1,具备完整 Pull Request 生命周期支持——Agent 现在可以理解 PR 简报、编写实现、运行测试、修复失败,并在不中断的情况下提交供人工审查的 PR。该更新标志了自主 Agent 首次从头处理从需求到可审查工件的完整编码工作流。
2.1 的变化
此前版本的 Devin 处理的是独立编码任务——写一个函数、修一个 bug、解释一个代码库。Devin 2.0 扩展到了多步骤规划。Devin 2.1 通过将每一步连接成单一连贯的工作流完成了这一弧线——工作流从 PR 简报开始,以供人类审查的 Pull Request 结束。
关键的新能力是端到端状态保持—— Devin 在整个生命周期中保持上下文。当第 7 步测试失败时,它记得第 3 步写了什么。当决定一个提议的变更是否在范围内时,它记得原始需求。
Pull Request 生命周期的详细拆解
Devin 2.1 的工作流分为五个阶段:
1. 需求理解 — Devin 阅读 PR 简报,如果模糊则提出澄清问题,并建立 PR 需要完成事项的检查清单。这发生在写任何代码之前。
2. 实现 — Devin 编写代码,实时运行 linter,并遵循项目的编码约定,无需每次被提醒。
3. 测试执行 — 自动化测试在每次提交时运行。Devin 捕获测试输出,并区分哪些失败是预先存在的、哪些是最近变更引入的。
4. 失败解决 — 当测试失败时,Devin 分析失败原因,判断是测试 bug 还是实现 bug,并相应修复。它不会跳过或压制失败。
5. PR 提交 — 一旦所有测试通过且实现与简报匹配,Devin 起草 PR 描述,总结变更内容、原因和测试方法,然后提交供人工审查。
对工程团队的意义
实际影响取决于当前 PR 工作流中有多大比例需要人工关注:
对于新功能开发:Devin 2.1 可以接受功能规格说明并产出完整、有测试覆盖、可供审查的实现,所需人工输入最少。工程师的角色转向审查和合并——而非编写。
对于重构和维护:Devin 处理跨代码库更新代码、运行测试套件、确保变更不破坏现有行为等机械性工作。工程师专注于验证方案是否合理。
对于调试和紧急修复:Devin 可以分诊报告的问题、识别根因、实现修复并准备 PR——缩短从报告 bug 到部署修复的时间。
局限性和适当使用场景
Devin 2.1 很好地处理了 PR 工作流的机械部分。它不会取代人类的判断:
- 提议方案在架构上是否合理
- 实现是否符合业务需求
- 如何处理相互竞争的非功能性需求之间的权衡
- 影响多个团队或需要跨职能对齐的决策
适当的使用模式是:Devin 做工作,人工审查和决策。不是:人类指定结果,Devin 完全自主处理。
可用性
Devin 2.1 仅向 Cognition 企业客户提供自助服务访问预计在第二季度推出。