懂得生命真谛的人,可以使短促的生命延长。——西塞罗
ChatDev 2.0(DevAll):零代码编排多智能体,开发“一切”的平台
当多智能体协作从“帮我写个模块”走向“帮我完成一条完整的业务链路”,你需要的就不仅是一个大模型,而是一套能把角色、工具、流程与回放串成体系的“编排平台”。OpenBMB 的 ChatDev 2.0(代号 DevAll)正是这样一款零代码的多智能体协作平台:你无需编程,只用可视化工作流与少量配置,就能快速定义角色、串联工具、执行任务,覆盖从数据可视化、3D 生成,到游戏开发、深度研究、教学视频等丰富场景。
- 仓库:OpenBMB/ChatDev
- 简述:ChatDev 2.0: Dev All through LLM-powered Multi-Agent Collaboration
- 许可:Apache 2.0
- 技术栈:后端 FastAPI + Python(uv 管理),前端 Vite + Vue 3,工作流与运行时模块化组织
本文根据项目 README 与文档梳理 ChatDev 2.0 的定位、功能与上手方法,并提供可直接复制的命令与配置示例。
ChatDev 从 1.0 到 2.0:从“虚拟软件公司”到“零代码编排平台”
- ChatDev 1.0(Legacy):以“虚拟软件公司”范式自动化软件生命周期(如 CEO/CTO/程序员等角色参与设计、编码、测试与文档),强调沟通式协作与增量开发模式。目前保存在
chatdev1.0分支,持续维护。 - ChatDev 2.0(DevAll):演化为“零代码多智能体平台”,通过简单配置即可定义智能体、绑定工具、构建工作流并执行,适用于开发之外的更多复杂场景(数据分析、3D、研究、教学等)。
项目在 2026 年 1 月正式发布 2.0(DevAll),同时保留了多智能体协作的研究成果(如 MacNet、Puppeteer 式演进编排等),并提供了丰富的示例工作流。
快速上手:环境、安装与运行
先准备运行环境:
- OS:macOS / Linux / WSL / Windows
- Python:3.12+
- Node.js:18+
- 包管理:uv(Python 依赖)
安装依赖与启动服务:
1 | |
提示:
- 如果前端无法连接后端,可能是默认端口被占用。后端改成
--port 6401,前端对应设置VITE_API_BASE_URL=http://localhost:6401即可。
配置模型密钥:
- 在项目根创建
.env文件,设置API_KEY、BASE_URL为你的 LLM 服务商信息 - YAML 配置里可使用
${VAR}引用(例如${API_KEY})
Web Console 的体验:可视化工作流 + 实时日志 + 人在回路
DevAll 的网页端提供三大核心模块:
- Tutorial:内置的图文教程与文档,帮助你快速了解平台与工作流的用法
- Workflow:可视化画布,用拖拽与参数配置定义多智能体系统,设置节点、上下文流与工具绑定
- Launch:启动与监控工作流,实时查看日志与中间产物,并进行人类反馈(Human-in-the-loop)
这样的体验让“构建—编排—执行—观察—反馈”成为统一的闭环。
用 Python SDK 做自动化:批处理与脚本化执行
除了 Web Console,DevAll 也提供轻量 Python SDK,以脚本方式执行工作流、读取结果。
1 | |
这非常适合做批处理:把输入文件批量喂给工作流,自动获取最终节点的消息与产物。
Tooling 模块:Function vs MCP,两种工具绑定方式
DevAll 的工具绑定支持两种模式:
- Function Tooling:调用项目内的 Python 函数(自动生成 JSON Schema,支持上下文注入)
- MCP Tooling:连接外部 MCP 工具生态(如 FastMCP、Claude Desktop 等),HTTP 或本地 stdio 两种模式
典型的工具配置片段如下:
1 | |
对比总结(摘自文档):
- 部署:Function 为后端同进程本地函数;MCP 可远程 HTTP 或本地进程(stdio)
- Schema:Function 来自类型注解与 ParamMeta;MCP 来自服务端 JSON Schema
- 上下文:Function 自动注入
_context(附件/工作区);MCP 依赖服务实现 - 典型用途:Function 适合文件 I/O、本地脚本、内部 API;MCP 适合浏览器、数据库代理等第三方工具
安全提示:
- Function 在后端进程内执行,应遵循最小权限原则,避免执行未验证的命令
- MCP 的本地模式会拉起外部进程,请约束命令与环境变量,使用超时与日志判断服务就绪;涉及附件或工作区变更的工具,要遵循附件生命周期避免泄漏
Featured Workflows:开箱即用的模板合集
所有可运行的工作流配置存放在 yaml_instance/。官方提供了多个类目与示例,覆盖常见需求:
- 数据可视化:
data_visualization_basic.yaml、data_visualization_enhanced.yaml - 3D 生成(需 Blender 与 blender-mcp):
blender_3d_builder_simple.yaml、blender_3d_builder_hub.yaml、blender_scientific_illustration.yaml - 游戏开发:
GameDev_v1.yaml、ChatDev_v1.yaml - 深度研究:
deep_research_v1.yaml - 教学视频(需
uv add manim):teach_video.yaml
使用方法(在 Launch 标签页):
- Select:选择工作流
- Upload:上传必要文件(如数据分析的
.csv) - Prompt:写下你的需求(如“可视化销售趋势”“设计一个贪吃蛇游戏”)
工程结构与二次开发:模块化的可扩展性
如果你要进行二次开发或扩展新能力(节点、工具或提供商),项目结构清晰:
- Core Systems:
server/(FastAPI 后端),runtime/(智能体抽象与工具执行) - Orchestration:
workflow/(多智能体逻辑),entity/(配置��动) - Frontend:
frontend/(Vue 3 Web Console) - Extensibility:
functions/(自定义 Python 工具)
参考文档(用户指南与模块说明),可按需添加新节点或扩展工具,形成“场景化工作流”的模板库。
与代理生态的关联:研究成果与编排方法
ChatDev 团队在多智能体协作方面提供了多个研究与实践成果:
- MacNet:用有向无环图组织语言交互,实现千智能体以内的可扩展协作(macnet 分支)
- Puppeteer 式演进编排:通过可学习的中心编排器优化多智能体协作路径(puppeteer 分支)
- 经验共学(ECL/IER):在系列任务中积累与传播“捷径经验”,提升泛化与效率
这些方法逐步融入平台与分支,供不同组织结构与任务类型使用与复用。
实战建议:把 DevAll 变成你的“多智能体工作台”
- 从“示例工作流”起步:挑一个最贴近需求的模板(如数据可视化或深度研究),在 Launch 中跑通
- 逐步“定制工作流”:在 Workflow 画布里替换模型与工具,加入你自己的 Function 或 MCP 工具
- 用 SDK 做批处理:把常见任务脚本化,利用
run_workflow做批量输入/输出 - 规范你的
.env与变量引用:把密钥与基础配置集中管理,YAML 中统一用${VAR}引用 - 工具安全与附件生命周期:修改工作区的工具要遵循生命周期文档,避免产物泄漏与状态错乱
结语:让“能协作的智能体”真正跑起来
ChatDev 2.0 把多智能体从“概念与论文”落到“可视化、可编排、可复用”的平台形态。它不要求你写复杂代码,也不把协作模式绑死;你可以通过工作流画布、工具绑定与 SDK,把具体业务流程交给智能体们协作完成,再由你在 Launch 中进行监督与微调。
无论你是做数据分析、科研、生成式设计,还是希望以更低成本实现“端到端的自动化链路”,DevAll 都是一块强有力的基座。
- 仓库与文档:OpenBMB/ChatDev
- 论文与分支:MacNet、Puppeteer 等研究方向已有分支与示例
- 工作流模板:
yaml_instance/中的各类场景 - 平台入口:后端与前端启动后,Web Console 即可操作
试着用一个你熟悉的小场景跑起来,感受一下“零代码多智能体编排”的爽感。