AutoDev 智能开发驾驶舱|上下文驱动的 AI 编程开发者平台

过去的一个多月里,我们构建了一个新的 AI 编程工具:AutoDev Workbench ( https://www.autodev.work/ ) 。它是一个 AI 原生的开发者平台,旨在加速、自动化并上下文化现代软件开发流程。

我们的目标是构建一个 AI 时代的开发者驾驶舱,开发者可以在上面完成大部分的编程工具,而不只是依赖于传统的 IDE。

  • AI 时代的开发者驾驶舱:辅助进行需求分析、代码生成、测试生成等工作。
  • 代码上下文知识预生成:基于代码的 interface、API、文档等信息,预先生成上下文知识,以便于 AI 编程工具能够更好地理解代码。
  • 提供 MCP 服务:AI 编程工具可以通过 MCP(Model Context Protocol)获取已知问题所需要的上下文知识。
  • AI 化的工程项目生成:针对于后端、前端、移动端等不同的技术栈,提供 AI 化的工程项目生成能力。

当然,AutoDev Workbench 仍然处于早期阶段,我们正在不断迭代和完善它。我们希望能够通过这个平台,帮助开发者更好地适应 AI 时代的编程方式。我们 仍在持续思考和改进这个平台,欢迎大家提出意见和建议。

AutoDev Workbench:AI 时代的开发者驾驶舱

如下是,我们当前阶段的 AutoDev Workbench 的界面截图:

上面是我们借由 Gemini DeepResearch + V0 设计的 AutoDev Workbench 的原型:

  • 左侧是知识与资产库,包含了项目的代码、文档、API 等信息,以及项目相关的知识库。
  • 中间是聊天区,可以与 AI 进行对话,生成目标文档、代码等。
  • 右侧是交互区,可以进行打开 IDE、实时的 AI 建议等操作。

事实上,并不需要如此多的区域,当前只是为了调试方便展示而设计的。我们在需求转换页面提供了一个简化的版本:

左侧是交互区,可以输入需求,右侧是结果区,可以查看生成的代码、文档等信息。

AutoDev Workbench:AI 工具集

除了上述的功能,AutoDev Workbench 还提供了一些 AI 工具集,帮助开发者更好地进行编程工作。

AutoDev Context Worker:支持十几种主流语言的上下文预生成

在 AutoDev Workbench 中,我们引入了一个新的概念:Context Worker。它的主要功能是预生成上下文知识,以便于 AI 编程工具能够更好地理解代码。 Context Worker 会自动分析代码中的 interface、API、文档等信息,并生成相应的上下文知识。

如上图所示,我们会将代码库中的代码预处理为:概念词典、代码上下文、API 资源、关键代码标识等信息。Context Worker 会将这些信息存储在知识库中, 并提供相应的 API 供 AI 编程工具使用。

Context Worker 的工作流程如下:

  • 读取代码仓库中的代码文件,使用 Tree-sitter 等工具进行代码解析。
  • 结合代码中的接口、对外 API、注释、文档等信息,生成相应的上下文知识。
  • 将生成的上下文知识存储在知识库中
  • 调用 AI 工具对上下文知识进行处理,生成相应的上下文信息。

只需要运行:npx @autodev/context-worker@latest 就可以启动 Context Worker 分析。当前我们支持:Java、JavaScript、TypeScript、 Python、Golang、Rust、C/C++、Ruby、C# 等语言的代码解析。

AutoDev Context MCP:面向 AI 编程工具连接平台上下文知识

为了衔接 AI 编程工具,我们提供了对应的 MCP 能力,只需要在 AI 编程工具中配置对应的 MCP 和项目信息,就可以获取到上下文知识:

{
  "mcpServers": {
    "autodev": {
      "command": "npx",
      "args": [
        "--package=@autodev/context-mcp",
        "autodev-context-mcp",
        "--preset=AutoDev",
        "-y"
      ],
      "env": {
        "PROJECT_ID": "cmaqby8oo0002l704skfwgpjy"
      }
    }
  }
}

作为第一个版本,它只进行简单的关键词匹配和上下文信息的返回:

如上图(AutoDev IDE 插件提供的支持)所示,我们提供了 get-project-context 和 resolve-project (暂未实现)两个工具,来获取项目上下文信息。

其它

如果你对 AutoDev Workbench 感兴趣,可以访问我们的官网:https://www.autodev.work/ ,或者在 GitHub 上查看我们的代码:https://github.com/unit-mesh/autodev-workbench


或许您还需要下面的文章:

关于我

Github: @phodal     微博:@phodal     知乎:@phodal    

微信公众号(Phodal)

围观我的Github Idea墙, 也许,你会遇到心仪的项目

QQ技术交流群: 321689806