🏢 ChatDev 2.0:零代码多 Agent 编排平台,用 AI 虚拟公司开发一切(26K Stars)
想象一下,你只需要描述需求,AI 就能像一家真正的软件公司一样运作——CEO 做决策、CTO 定架构、程序员写代码、测试员找 Bug……ChatDev 就是这样一个神奇的项目,来自清华 NLP 实验室和 OpenBMB 团队。
📌 项目简介
ChatDev 已从专业的软件开发多 Agent 系统进化为综合性的多 Agent 编排平台:
- ChatDev 2.0 (DevAll):零代码多 Agent 平台,通过简单配置即可快速构建和执行自定义多 Agent 系统,支持数据可视化、3D 生成、深度研究等复杂场景
- ChatDev 1.0 (Legacy):虚拟软件公司模式,使用 CEO、CTO、程序员等角色自动化整个软件开发生命周期
🔗 开源地址:https://github.com/OpenBMB/ChatDev
📖 论文:ChatDev: Communicative Agents for Software Development
⭐ GitHub Stars:26K+ | 🏆 NeurIPS 2025 论文
🎯 核心亮点
- ✅ 零代码编排:可视化画布设计多 Agent 系统,拖拽配置
- ✅ 虚拟软件公司:CEO/CTO/程序员/测试员等角色协作
- ✅ 多场景支持:数据可视化、3D 生成、游戏开发、深度研究
- ✅ 人机协作:实时日志、中间产物检查、Human-in-the-Loop 反馈
- ✅ 学术背书:多篇顶会论文(NeurIPS 2025 等)
🌟 预置工作流模板
| 类别 | 工作流 | 示例 Prompt |
|---|---|---|
| 📈 数据可视化 | data_visualization_basic.yaml data_visualization_enhanced.yaml | "为我的房产交易数据集创建 4-6 张高质量 PNG 图表" |
| 🛠️ 3D 生成 | blender_3d_builder_simple.yaml blender_3d_builder_hub.yaml | "请构建一棵圣诞树"(需 Blender) |
| 🎮 游戏开发 | GameDev_v1.yaml ChatDev_v1.yaml | "请帮我设计开发一个坦克大战游戏" |
| 📚 深度研究 | deep_research_v1.yaml | "研究 LLM Agent 强化学习的最新进展" |
| 🎓 教学视频 | teach_video.yaml | "讲一下什么是凸优化"(需 manim) |
📥 快速开始
环境要求
- OS:macOS / Linux / WSL / Windows
- Python:3.12+
- Node.js:18+
- 包管理器:uv
安装
# 克隆项目
git clone https://github.com/OpenBMB/ChatDev.git
cd ChatDev
# 后端依赖(Python,由 uv 管理)
uv sync
# 前端依赖(Vite + Vue 3)
cd frontend && npm install
运行
# 启动后端(从项目根目录)
uv run python server_main.py --port 6400 --reload
# 启动前端(另一个终端)
cd frontend
VITE_API_BASE_URL=http://localhost:6400 npm run dev
然后访问 http://localhost:5173 打开 Web 控制台。
配置
在项目根目录创建 .env 文件:
API_KEY=sk-xxxx
BASE_URL=https://api.openai.com/v1
在 YAML 配置文件中用 ${API_KEY} 引用这些变量。
🖥️ Web 控制台
DevAll 界面提供无缝的构建和执行体验:
- Tutorial(教程):集成的分步指南和文档
- Workflow(工作流):可视化画布设计多 Agent 系统,拖拽配置节点参数、定义上下文流、编排复杂交互
- Launch(启动):发起工作流、监控实时日志、检查中间产物、提供人机反馈
🧰 Python SDK
用于自动化和批处理:
from runtime.sdk import run_workflow
# 执行工作流并获取最终节点消息
result = run_workflow(
yaml_file="yaml_instance/demo.yaml",
task_prompt="用一句话总结附件文档。",
attachments=["/path/to/document.pdf"],
variables={"API_KEY": "sk-xxxx"} # 可覆盖 .env 变量
)
if result.final_message:
print(f"输出: {result.final_message.text_content()}")
🏢 虚拟软件公司(ChatDev 1.0)
经典模式,多个 AI 角色协作完成软件开发:
| 角色 | 职责 |
|---|---|
| 👔 CEO | 战略决策、任务分配 |
| 🏗️ CTO | 技术架构、技术选型 |
| 👨💻 Programmer | 编码实现 |
| 🧪 Tester | 测试验证 |
| 🎨 Designer | UI/图像设计(Art 模式) |
| 👀 Reviewer | 代码审查(Human 模式可人工参与) |
运行经典模式:
# 基础模式
python3 run.py --task "开发一个贪吃蛇游戏"
# 艺术模式(启用设计师生成图像)
python3 run.py --task "开发一个五子棋游戏" --config "Art"
# 人机交互模式(你作为 Reviewer 参与)
python3 run.py --task "开发一个计算器" --config "Human"
# 增量开发(在已有代码上继续开发)
python3 run.py --config "incremental" --path "./existing_project"
📚 学术贡献
| 论文 | 年份 | 亮点 |
|---|---|---|
| ChatDev | 2023 | 软件开发多 Agent 协作的开创性工作 |
| Experiential Co-Learning | 2023 | 经验共学习,减少重复错误 |
| MacNet | 2024 | 多 Agent 协作网络,支持千级 Agent |
| iAgents | 2024 | 信息不对称下的自主 Agent 协作 |
| Puppeteer | 2025 | 🏆 NeurIPS 2025,进化式编排 |
📁 项目结构
ChatDev/
├── server/ # FastAPI 后端
├── runtime/ # Agent 抽象和工具执行
├── workflow/ # 多 Agent 编排逻辑
├── entity/ # 配置实体
├── frontend/ # Vue 3 Web 控制台
├── functions/ # 自定义 Python 工具
└── yaml_instance/ # 预置工作流模板
🔗 相关链接
- GitHub:https://github.com/OpenBMB/ChatDev
- ChatDev 1.0:经典版本分支
- 论文:arXiv:2307.07924
- Multi-Agent Ebook:多 Agent 论文集电子书
- SaaS 平台:chatdev.modelbest.cn
🎯 总结
ChatDev 是多 Agent 协作领域的标杆项目,26K+ stars 和多篇顶会论文证明了它的学术价值和工程实力。它的核心创新在于:
- 🏢 虚拟软件公司:CEO/CTO/程序员/测试员角色分工协作
- 🎨 零代码编排:可视化画布设计多 Agent 系统
- 📊 多场景模板:数据可视化、3D 生成、游戏开发、深度研究
- 🔬 学术背书:NeurIPS 2025 等顶会论文
如果你对 AI Agent、多智能体协作、自动化软件开发感兴趣,ChatDev 是必须研究的项目!
💡 立即体验:https://github.com/OpenBMB/ChatDev
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。




