作为 Devin 正式推出的一部分,我们将为选定的开源项目维护者提供 500 个免费 ACU 的 Devin 团队计划配额。立即访问 app.devin.ai 注册,并通过 osi@cognition.ai 联系我们以加入。
开源项目通常有大量未解决的问题积压。需要修复的小问题数量繁多,维护者可能很快就会感到不堪重负。Devin 是处理这些任务的理想伙伴——通过在后台处理次要任务,Devin 帮助维护者专注于关键任务。
以下是 Devin 已经为开源社区做出的贡献:
Anthropic MCP
拉取请求:https://github.com/modelcontextprotocol/inspector/pull/105
Devin 会话:https://app.devin.ai/sessions/266955553baf40cfa7fdd32d42ab219d
在此项目中,Devin 为 MCP 服务器的调试界面项目 inspector
添加了显示功能协商的新特性。
问题:https://github.com/modelcontextprotocol/inspector/issues/85
Devin 首先使用浏览器研究功能协商的工作方式:
在 Devin 编写代码后,一些关键功能帮助确保正确的测试:
- 代码仓库设置。在启动 Devin 会话之前,我们通过为 Python MCP 服务器安装
uv
来设置 Devin 的虚拟机。 - 知识。我们可以手动告诉 Devin 如何测试代码,或者将此信息添加到其知识库中,以便 Devin 在未来的会话中自动记住。
通过此设置,Devin 可以在浏览器中验证代码更改是否有效:
代码测试完毕后,维护者即可进行审查。
Dagger
拉取请求:https://github.com/dagger/dagger/pull/9130
Devin 会话:https://app.devin.ai/sessions/2afcdb9847ff416382ee6126bc77ee8c
Devin 的 PR 解决了 Dagger 项目中的一个低优先级任务。
虽然 Devin 最终能够解决问题,但有时需要多轮往返调整。
Devin 的 Github 集成功能通过 PR 评论和 CI 检查简化了此过程。任何 PR 评论都可以通过 Webhook 自动发送给 Devin。
最后,要充分利用 Devin,不要期待 100% 完美的 PR。虽然 Devin 可以完成 80% 的工作,仍需要人工确保最终结果的质量。例如,在合并前删除多余的代码差异。在这个 PR 中,Devin 添加了调试日志,稍后需要手动删除。
了解更多关于 Devin 如何为 Dagger 带来价值
不是一个从事 AI 工作的人,而是一个 AI 团队成员。这是一次令人着迷的体验,让人窥见未来的可能。
在 Dagger,我们是一个小团队,正在构建一个复杂的引擎,且其使用场景的列表不断增长。像许多开源项目一样,我们面临着维护“长尾”问题的挑战——那些重要但不够紧急的小任务经常堆积起来,因为它们的优先级不高。这正是我听到 Devin 这个 AI 团队成员时联想到的地方。
一个典型的开源问题
以下是一个熟悉的故事:有人报告了一个不算太大的问题——可能有点烦人但不是紧急的。在 Dagger,我们非常注重产品的精益求精,但待办事项的列表太长了。这类问题会被记录下来,但不是优先事项,于是被搁置了。三个月过去了,没有人有时间去看它。最好的情况是,它会得到快速的分类;最坏的情况是,它会消失在 GitHub 问题的深渊中。
比如:Issue #8195。一位贡献者指出了我们工作流程中的一个小但合理的痛点。如果没有 Devin,这个问题可能会一直留在待处理状态中。但有了 Devin 加入团队后,我们问了一句:“你能处理这个吗?”它确实做到了。
几分钟之内,Devin 提交了一个 pull request。这个 PR 需要一些人工审查,但其核心实现一开始就功能正确。Devin 甚至根据我们的反馈进行了跟进,反复修改,直到 PR 准备合并。
这感觉像是一个聪明的初级开发者的稳健贡献——一个刚接触代码库但渴望学习和改进的开发者。只是 Devin 是一个 AI。它的工作方式显得完全自然。
如果你感兴趣,可以观看完整的会话。你会看到它如何解决问题、适应反馈,并产生有意义的结果。
教 Devin 开发 Dagger
Devin 和普通的开发者不同,但管理 Devin 在某些方面又很熟悉。Devin 非常“书本聪明”,但还不够“实际聪明”,就像一些非常聪明的初级开发者一样。让 Devin 发挥价值的关键是既要选择合适的任务,也要用聪明的方式训练它。最让人惊叹的一点是 Devin 的学习过程是如此流畅。
我们通过应用程序和直接在 GitHub 上提供反馈,Devin 无缝处理了这两种方法。
然后我们更进一步:我们教会了 Devin 如何用 Dagger 开发 Dagger 。因为我们的构建和测试环境完全通过 Dagger 容器化,Devin 根本不需要 CI。它可以在本地运行自己的 CI,验证其工作并在评论中报告结果。当人类需要重现结果时,我们只需使用 Devin 已配置的同一容器化环境!
这不仅节省了时间——更是一个 “天啊”时刻 。它彻底改变了我们对开发工作流的思考方式。Devin 在本地自动测试、验证和迭代的能力改变了我们的协作方式,也预示了未来 DevOps 的发展方向。
如果你正在运营一个需要维护负载的开源项目,那么你不能错过 Devin。它不仅是一个工具,更是一种新型团队成员,始终准备好处理那些你无暇顾及的“长尾”任务。
Devin 并不是替代开发者。它是放大我们的能力,处理重复和单调的工作,让我们专注于最重要的事情。这是一种生产力的提升、新的视角,以及在资源有限时推动项目前进的方法。
这对 DevOps 的意义
Devin 自主贡献、运行本地 CI 并适应人类反馈的能力不仅是一个酷炫的功能——它是软件开发未来的一瞥。有了合适的保护措施,Devin 今天就能带来很大的价值;但从长远来看,这项技术可能会从根本上改变开发者与工具的关系,使我们以以前难以想象的方式构建和交付软件。
我们让 Devin 参与了许多开源代码库的贡献,包括:
我们非常期待 Devin 能为您的开源项目提供帮助!立即访问 app.devin.ai 注册,并通过 osi@cognition.ai 与我们联系以获取团队计划的免费配额!