内容提要
AI SDK团队构建了一个软件工厂,用多个专用代理自动处理开源项目的issue和PR。工厂代理负责分类、分析、实现、审查和回移植,人类仍保留最终合并权。运行四周后,工厂贡献了25-35%的合并PR,关闭了70-80%的issue,显著减少了积压。
延伸解读
自动化边界与人类审查的平衡
AI SDK的软件工厂并非追求全自动化,而是将自动化集中在人类审查的周边环节。工厂代理负责分类、分析、实现、审查和回移植,但所有合并仍由人类完成。这种设计基于风险考量:对于基础性AI基础设施,质量与安全不可妥协,因此人类对最终发布内容保持控制。工厂通过提供完整的证据链,使审查者能根据风险等级分配精力,例如文档修复快速验证,新API深度审查。
安全设计:从沙箱到网络隔离
由于工厂处理公开仓库的不可信输入,安全从设计之初就纳入考量。每个代理运行在隔离的Vercel Sandbox中,仅包含任务所需的最小权限和密钥。此外,沙箱外还有网络屏蔽层,阻止代理访问可能用于数据外泄的路径。最后一道防线是人类审查,确保任何变更在合并前经过人工批准。这种多层防御机制有效降低了恶意代码、供应链攻击和提示词注入等风险。
工厂的自我改进机制
工厂的运行结果分为成功、有缺陷、受阻和手动四类,其中后三类成为改进的反馈信号。有缺陷的运行促使优化提示词或增加评估用例;受阻的运行则提示补充凭证或依赖;手动运行标记了当前自动化边界,促使团队评估是否扩大自动化范围。这种持续改进的循环,使工厂每周都能处理更多此前无法信任的任务,类似于团队对测试套件的持续维护。
Q&A
AI SDK的软件工厂是什么?它如何运作?
AI SDK的软件工厂是一个自动化系统,使用多个专用代理处理开源项目的issue和PR。代理负责分类、分析、实现、审查和回移植,人类保留最终合并权。它通过GitHub webhooks触发,在Vercel Sandbox中运行,并使用Vercel Functions、Queues、Blob和Neon Postgres等基础设施。
AI SDK软件工厂运行四周后取得了哪些成果?
运行四周后,工厂贡献了每周合并PR的25-35%,关闭了70-80%的issue,其中7月份关闭的issue中超过75%由工厂完成。开放issue从6月底的1022个减少到8月初的844个,开放bug减少了约25%。此外,v5和v6的回移植PR中超过50%由工厂完成。
AI SDK软件工厂包含哪些专用代理?
工厂包含多个专用代理,每个负责特定任务:分类(classifier)、分析(analyzer)、实现(implementer)、审查(reviewer)、回移植(backporter)、文档更新(documentation updater)、bug复现(bug reproduction)和功能分析(feature analysis)等。
AI SDK软件工厂如何处理一个功能请求?
以issue #17898为例,流程包括:分类代理将其标记为Feature;分析代理编写探针确认功能缺失,并生成规格说明;实现代理实现功能并运行端到端测试;审查代理评估风险并批准;人类审查后合并;最后自动创建回移植PR到v5和v6。
AI SDK软件工厂如何保证安全性?
安全性通过多层防护实现:每个代理在隔离的Vercel Sandbox中运行,仅包含所需代码和密钥;沙箱周围有网络屏蔽层,阻止数据外泄;所有变更必须经过人类审查才能合并。
AI SDK软件工厂的构建原则是什么?
构建原则包括:每个任务使用一个专用代理,便于测试和调试;从一开始就考虑安全性;先在本地CLI迭代,再迁移到云端;以及根据风险调整人工审查深度。
AI SDK软件工厂如何处理失败?
每次运行结果分为成功、有缺陷、受阻或手动。有缺陷的运行通过改进提示词、上下文或添加评估案例来修复;受阻的运行通过配置缺失的凭据或服务来解决;手动运行标记了有意的边界,并促使团队考虑是否值得自动化。这些反馈不断扩展自动化边界。
AI SDK软件工厂使用了哪些技术栈?
技术栈包括:Vercel Functions用于API和webhook,Vercel Queues用于任务执行,Vercel Blob用于日志,Vercel Sandbox用于代理工作区,Neon Postgres用于数据存储。