AutoDev 是一个开源的 AI 编程工具,最近发布了 2.0 版本!在 AutoDev 2.0 中,你可以:
-
编码智能体 Sketch 进行自动化编程
-
自动化编程的规划器 AutoDev Planner
-
系统迁移 Bridge 辅助旧系统重构
-
观察者 Observer,动态观察 IDE 中的代码变化
-
模型协议 MCP 接入工具生态
-
在不同场景使用多种开源模型(编程、推理、Apply、补全等)
-
……
项目地址:https://gitee.com/unit-mesh/auto-dev
Thoughtworks AI 辅助开发负责人黄峰达透露,此前几个月,开发团队一直在等待国内有能力支持 AutoDev 的国产模型,直到 DeepSeek V3-0324出现。
AutoDev 开源已有两年时间,如今已经进化成集成度最好的 JetBrains IDE 上的第二代 AI 编程工具,支持主流的 Intellij IDEA、WebStrom、Clion 等 IDE,还有基于 Intellij Community 构建的 Android Studio、鸿蒙 IDE(DevEco Studio)等。
黄峰达回顾了这两年来,AutoDev 的发展历程:
2023 年 4 月,我们开始了 AutoDev 的第一个探索性功能:AutoCRUD 开始,经过两年的模型快速迭代,在一些企业内部试用、定制,还有大量的个人定制版本。作为难度颇的 Intellij IDEA 插件开发,已经有近 20 个 Contributor,以及接近 5000 次的代码提交。
跟之前相比, AutoDev 2.0 新增了:
1. 编码智能体 Sketch
我们开发 AutoDev 2.0 的动机来源于:DeepSeek V3 模型的推出。我们在 Shire 智能体语言上构建了 Sketch View,并率先将其应用到多文件编程支持。随后,我们将其应用到 AutoDev 2.0 中,通过丰富的 IDEA 插件生态,来构建更好的 IDE 编程体验。
1.1 交互式决策视图:Sketch View
Sketch View 提供了是一种新的交互式视图,它可以帮助你更好地理解架构、进行决策。Sketch View 的特点有:
- 交互式设计。多种化的 Patch/Diff 处理, 并针对生成代码进行 Lint 检查等
- 开发者体验。前端应用在启动 dev 服务时, 自动打开 WebView 查看编译正确
- 质量与安全。生成依赖文件时,可提供依赖的安全检查
并且,你还可以用它来查看代码的结构,以及更好地编写代码。
1.2 隔离环境的工具调用:DevIns
我们在 AutoDev 1.0 中设计了 DevIns DSL 来构建隔离环境的指令抽象,基于 DevIns 指令,AutoDev 可以:
- 安全操作。对指令进行更安全的检查,诸如 Shell、SQL,而不是依赖于 LLM 的不靠谱分析。
- 模型无关。即可以在不同的模型上使用 CoT 来进行工具调用,而不依赖于 function tool。
- 关键上下文。即基于 IDE 的 PSI 接口丰富了语法分析计算与架构视图,提供系统的关键上下文。
同时,DevIns 能和 MCP 生态非常好的结合在一起,以便于更好地调用工具。
2. 显性任务规划:AutoDev Planner
Planner 是 Sketch 的核心功能,它提供了一种新的任务规划体验。你可以通过 AutoDev Planner 来:
- 可见的任务规划。通过 Pin 及 Planner ToolWindow 的可以看到当前的任务进度
- 动态的任务规划。AI 会根据上下文动态调整任务规划(取决于模型,有时候并不会实时更新)
- 手动执行未完成的任务。用户可以手动执行未完成的任务,以便更好地调整任务规划
结合诸如于 DeepSeek R1 这一类推理模型,AutoDev Planner 可以更好地规划任务,以适应用户需求。
3. 被动式错误观测:Observer
Observer 是在 Sketch 中新增的一个功能,它可以帮助你更好地观察代码的变化。Observer 可以观察:
- 测试失败。当测试失败时,Observer 可以自动带上上下文(相关代码)发给模型
- 构建失败。当构建失败时,诸如 Gradle、Maven 的构建日志会被自动发送给模型
- 添加依赖失败。当添加依赖失败时,Observer 会自动将问题反馈给模型
通过被动式的错误观测,AutoDev 可以更好地理解代码的变化,以提升开发效率。
4. 旧系统改造智能体:AutoDev Bridge(试验性)
Bridge 是我们针对遗留系统迁移的一个新功能,它主要包括:
- 迁移路径。基于"探索-感知-响应"框架,通过大型语言模型智能生成系统迁移路径
- 架构视图。利用 AI 进行工具调用对现有系统进行深度扫描,生成符合C4模型标准的架构蓝图
- 业务逻辑分析。结合抽象语法树(AST)解析和运行时调用链追踪技术,实现业务逻辑的精准还原
- 执行迁移。生成包括单元测试、集成测试和端到端测试在内的多层次验证方案,确保迁移后系统功能完整性
作为一个试验性功能,AutoDev Bridge 并没有完全成熟,但是我们相信它会在未来的迁移中发挥重要作用。
5. 开发工具生态集成:双向 MCP
MCP(模型上下文协议)是一个非常好的开放协议,它可以帮助 AI 智能体更好地理解上下文。在 AutoDev 2.0 中,我们将 MCP 与 JetBrains 插件生态进行了双向集成,以便于更好地调用工具。
- MCP 即工具。通过 DevIns 指令对 MCP 进行封装,来调用第三方工具
- AutoDev 即服务。将 AutoDev 作为一个 MCP 服务,可以被任何 Agent Tool 调用
如此一来,将 AutoDev 与整个工具生态进行了无缝集成,丰富系统的上下文能力,降低幻觉的产生。
其它
我们重新写了 UI 配图页面,详细参考新文档进行配置:https://ide.unitmesh.cc/quick-start
如何安装 AutoDev 2.0?
-
通过 GitHub 来下载最新版本的 AutoDev 插件:https://github.com/unit-mesh/auto-dev 。
-
也可以
Settings
→Plugins
→Marketplace
→Manage Plugin Repositories
→Add
,添加 https://plugin.unitmesh.cc/updatePlugins.xml 然后搜索AutoDev
进行安装。