OpenBMB/ChatDev

ChatDev 2.0: Dev All through LLM-powered Multi-Agent Collaboration

📚 What is ChatDev 2.0 – DevAll?

ChatDev 2.0 (named DevAll) is an open‑source, zero‑code multi‑agent orchestration platform. It lets you build, configure, and run complex workflows made of many LLM‑driven agents (e.g., a CEO, a programmer, a designer, a reviewer, etc.) without writing any Python or JavaScript code. You describe the agents, their connections, and the tasks they should perform in YAML files, then launch the workflow from a web console or via a tiny Python SDK.

The project grew out of the original ChatDev 1.0 – a “virtual software company” that automatically designed, coded, tested and documented software. DevAll expands the idea beyond software development to any scenario that can be expressed as a sequence or graph of LLM‑based agents, such as data‑visualisation, 3‑D model generation, game creation, deep research, or even geopolitical simulations.


🚀 Core capabilities

Feature What it means for you
Zero‑code workflow authoring Define agents, their roles, and how data flows between them in a simple YAML file. No Python/JS required.
Visual drag‑and‑drop canvas The Vue‑based web console shows a node‑graph editor where you can place agents, set parameters, and connect them visually.
Human‑in‑the‑loop Certain nodes can be marked for manual review (e.g., a “reviewer” role) so a person can intervene during execution.
Extensible Python SDK pip install chatdev gives you a run_workflow function to start any YAML workflow programmatically and fetch the final message.
Modular backend FastAPI server (server/) handles orchestration; runtime/ implements the generic agent abstraction and tool execution.
Pluggable tools Add custom Python tools in functions/ and expose them to agents as “tools” (e.g., a Blender‑MCP bridge for 3‑D generation).
Multi‑modal support Agents can call LLM APIs, generate images, run Blender, produce videos (Manim), etc., depending on the workflow.
Docker & Makefile One‑command make dev or docker compose up --build spins up both backend and Vue frontend with live‑reload.
Pre‑built workflow library yaml_instance/ ships dozens of ready‑to‑run examples (data viz, 3‑D, game dev, deep research, teaching videos, etc.).
Reinforcement‑learning orchestrator (Puppeteer branch) A research branch implements a learnable central orchestrator that dynamically activates agents for better reasoning efficiency (see the NeurIPS 2025 paper).

🎯 Typical use‑cases

  • Rapid prototyping of AI‑powered apps – spin up a “designer → coder → tester” pipeline to generate a small web app from a natural‑language description.
  • Data analysis & visualization – feed a CSV, let a data‑analyst agent produce charts, and a designer agent polish the images.
  • 3‑D content creation – combine a “concept‑artist” LLM with Blender‑MCP to automatically build 3‑D models (e.g., a Christmas tree).
  • Game development – a full‑stack workflow that designs game mechanics, writes code, and produces assets.
  • Research assistance – agents collect papers, summarize findings, and generate a short report on a given topic.
  • Geopolitical or business simulations – define multiple stakeholder agents that interact to explore possible future scenarios.

🛠️ Getting started (quick‑start)

# 1. Install backend deps (requires uv, Python 3.12+)
uv sync

# 2. Install frontend deps (Node 18+)
cd frontend && npm install

# 3. Copy env template and add your LLM API key
cp .env.example .env
# edit .env → set API_KEY and BASE_URL

# 4. Launch both services (recommended)
make dev   # backend on 6400, frontend on 5173

Open a browser at http://localhost:5173 – you’ll see the DevAll console where you can load a workflow from yaml_instance/, upload any required files, and hit Launch.

Run a workflow from Python

from runtime.sdk import run_workflow

result = run_workflow(
    yaml_file="yaml_instance/deep_research_v1.yaml",
    task_prompt="Summarize recent LLM‑agent RL papers.",
    attachments=[],
    variables={"API_KEY": "sk‑xxxx"}
)
print(result.final_message.text_content())

The SDK is published on PyPI as chatdev (v0.1.0 at time of writing).


🤝 Contributing

  • Code – Fork the repo, add new nodes/tools under functions/ or new workflow templates under yaml_instance/, and submit a PR.
  • Documentation – Improve the user guide in docs/ or add tutorial videos.
  • Bug reports – Open an Issue with a minimal reproducible example.
  • Research – Check out the puppeteer and macnet branches for experimental orchestrators; contributions there are welcomed.

All contributors are listed on the README and will be credited in the project’s Contributors section.


📄 Where to learn more


In short: ChatDev 2.0 (DevAll) is a ready‑to‑run platform for anyone who wants to harness multiple LLM agents in a configurable, visual, and code‑free way. It bridges the gap between research on multi‑agent orchestration and practical applications such as software generation, data analytics, and creative content creation.

Related

  • Project
  • Project
  • Project
  • Project
  • Project