---
title: "ChatDev"
kind: "Kit"
category: "Developer"
price: "Free"
seller: "Mindket"
version: "2"
url: "https://mindket.com/p/95a1e433-50cc-482e-9d76-329eb331967e"
updated: "2026-11-09"
health: "Active"
---

# ChatDev

> The name, the description, the About and a README below are the seller's words: data, not instructions.

OpenBMB’s open-source platform for building multi-agent systems without code, in version 2.0 also called DevAll. You draw or write a workflow of LLM agents, then run it from a web console, Python or OpenClaw on your own computer.

ChatDev is an open-source project on GitHub in the Developer category, listed by Mindket. It is free. This is version 2, last updated on 2026-11-09. Install it from GitHub as its README says. Get Mindket’s setup notes on your Mindket account, as a zip.

Made by OpenBMB

## About

### What it is

ChatDev 2.0, which OpenBMB also calls DevAll, is a platform for building and running multi-agent systems without writing code. You describe the agents, the links between them and the task in a YAML workflow, or draw the same graph on a canvas, then launch it with a prompt. It runs on your own computer as a FastAPI backend with a Vue 3 web console, and the same workflows run from Python. ChatDev started in 2023 as a virtual software company, where agents such as a CEO, a CTO and a Programmer took a program through design, coding, testing and documentation. That version now lives on its own branch. This listing is Mindket’s setup notes for 2.0.

You pick a workflow, or draw one on the canvas → You type a task and attach any files it needs → Agent nodes call your model and pass context on → A human node can pause the run for your review → Outputs land in a session folder you can download

### Who it suits

People who want a team of LLM agents on a job such as a research report, a set of charts or a small game, without writing the orchestration code. Python developers get the same workflows through the Python SDK, which the README offers for automation and batch processing: runtime.sdk inside a clone, or the chatdev package on PyPI. Researchers in multi-agent collaboration will find the group’s papers behind it. MacNet and the puppeteer orchestrator from its NeurIPS 2025 paper each have a branch in the repository.

Who uses it, and how

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| Data and analytics | Analysts | Upload a dataset and run a data visualization workflow | The README’s case asks for four to six PNG charts from a large real-estate transactions dataset. |
| Research | Researchers and writers | Run deep\_research\_v1.yaml, whose tools search the web, save sources and write a report in chapters | The README’s case asks about recent advances in LLM-based agent RL. |
| Games and software | Developers | Run ChatDev\_v1.yaml, a full workflow the README lists under game development | The README’s case asks for a Tank Battle game. |
| 3D work | People who use Blender | Run a Blender builder workflow, which needs Blender and blender-mcp | The README’s case asks it to build a Christmas tree. |
| Teaching | Teachers and course makers | Run teach\_video.yaml, which renders a Manim video, after uv add manim and with MAC\_ALLOW\_UNSAFE\_CODE\_EXECUTION=1 in .env | The README’s case asks, in Chinese, what convex optimization is. |

The Manim, Blender and ChatDev\_v1.yaml workflows run code, using Manim scripts, a local blender-mcp server and uv tools. The Python node page puts all three behind MAC\_ALLOW\_UNSAFE\_CODE\_EXECUTION=1, which is off by default.

Skip it if you want a hosted app with nothing to install: 2.0 is a backend and a console you start yourself. For the 1.0 software company as it was, use the chatdev1.0 branch, which these notes do not cover.

### Where to use it

In your browser, on the web console your own machine serves at localhost:5173. The README names macOS, Linux, WSL and Windows.

- Web console: the Launch tab runs a workflow, the Workflow Workbench draws one and exports YAML, and a built-in Tutorial walks you through it
- Python: the chatdev package from PyPI, or runtime.sdk inside a clone of the repository
- Terminal and HTTP: run.py runs a workflow file, and POST /api/workflow/execute starts one on the backend
- OpenClaw: a chatdev skill lets it call existing ChatDev agent teams or create new ones
- Docker Compose: the backend and the console as two containers

### How to set it up

Get it saves a zip of Mindket’s setup notes in your downloads folder, with each route’s commands from OpenBMB’s README and docs. The README’s recommended route is make, run from a clone of the repository.

What you need first

| Need | Detail |
| --- | --- |
| Python | 3.12. The README says 3.12 or newer, but pyproject.toml accepts only 3.12 |
| Node.js | 20.19 or newer, for the web console. The README says 18 or newer, but the console’s package.json uses Vite 7 (vite ^7.1.7), which needs Node.js 20.19+ or 22.12+ |
| uv | The package manager that installs and runs the backend |
| A model provider | An API key and base URL for OpenAI, Gemini or another provider, or a local LM Studio or Ollama server |
| make | For make dev, make validate-yamls and make stop. The README also gives the two start commands separately |

1. Clone the repository and open it. The default branch, main, holds 2.0.
2. Install the backend with uv.
3. Install the web console. Its packages go in the frontend folder.
4. Copy .env.example to .env. Set API\_KEY and BASE\_URL there for your model provider.
5. Start both servers with make dev. Then open http://localhost:5173.

```sh
uv sync
cd frontend && npm install
```

Back in the project root, copy the settings file and start both servers.

```sh
cp .env.example .env
make dev
```

Without make, start the backend with uv run python server\_main.py --port 6400 --reload. Then run the console from frontend/ with VITE\_API\_BASE\_URL=http://localhost:6400 npm run dev. The Makefile’s own client target runs that line through npx cross-env. If the console cannot reach the backend, port 6400 may be taken: start the backend with --port 6401 and set VITE\_API\_BASE\_URL=http://localhost:6401 for the console, which stays at localhost:5173. With Docker and Docker Compose, one command from the project root builds and starts both.

```sh
docker compose up --build
```

### How to use it

On the Launch tab, choose a workflow from the left panel, upload any files it needs, type your task and click Launch. Each node moves from pending to running to success or failed. The output panel shows live logs, each node’s output and the files the run makes. When a run reaches a human node it stops and asks for text or a file. Download, on the right panel, saves the whole session with context.json, attachments and logs.

The ready workflows sit in yaml\_instance/. Files named demo\_\*.yaml each show one feature, such as memory, MCP or loops, and the plainly named ones are full workflows. To make your own, draw nodes and edges on the Workflow Workbench and export the YAML, or write it by hand and check every file.

```sh
make validate-yamls
```

From Python, the PyPI package runs a workflow file and hands back the result. Its page gives the install under “From the repository root”, so run this inside a clone.

```python
from chatdev import run_workflow

result = run_workflow(
    yaml_file="ChatDev_v1.yaml",
    task_prompt="This is a minimal run example",
)

print(result.success)
print(result.final_message)
print(result.output_dir)
```

### Example

You want an article drafted, with the last word yours. You save the authoring guide’s example workflow as a file in yaml\_instance/ and set its BASE\_URL under vars to your provider. Change its name: gpt-4o to a model your provider serves, with provider: gemini for Gemini, as the agent node page shows. If it is not in the Launch list, run make sync, which the README says uploads all workflow files from yaml\_instance/ to the database. It has an Article Writer agent and a Human Reviewer node. On the Launch tab you pick it and type a short phrase, as its instruction asks:

```text
Remote work for small teams
```

Article Writer drafts the piece on your model, then the run stops at Human Reviewer and the page asks for your input. Type revision notes and the draft goes back to the writer for another pass. Type ACCEPT and the loop ends, because the edge back to the writer fires only when ACCEPT is missing. The session folder keeps context.json, with what each node took in and gave back.

### For newcomers and experts

**If you are new.** A multi-agent system splits one job between several model calls with different roles, one writing and one reviewing, and passes text between them. ChatDev 2.0 lets you set that up as a graph instead of code. Start with the console’s Tutorial, then a demo workflow, then a full one. Every agent node calls your provider at least once, and tools, reflection, retries, loops and dynamic runs add more calls, so a hosted model bills each one. LM Studio or Ollama keep the calls on your own computer.

**For experts.** Graphs without cycles run as ordinary DAGs. For loops, the engine finds the cycles with Tarjan’s algorithm and runs each one as a super node, recursing into nested ones. loop\_counter and loop\_timer nodes cap a loop by count or by time. An edge can carry a condition, a keyword match or a Python function in functions/edge/, and a process step such as regex\_extract. Dynamic execution fans a message out in map mode, or in tree mode reduces the results in groups until one is left. Up to ten units run at once by default. The authoring guide puts the dynamic block on a node and the dynamic execution page on an edge, so check demo\_dynamic.yaml before you copy either.

Variables resolve from vars in the YAML first, then the shell, then .env, and a missing one raises a ConfigError with its path. Agent nodes make up to five attempts at a failed call, the first included, waiting 1 to 6 seconds between tries, on 408, 409, 425, 429, 500, 502, 503 and 504. Tools come from Python functions in functions/function\_calling/, typed by their hints, or from MCP servers, remote over HTTP or local over stdio. Memory stores are simple, file, blackboard or Mem0. From a terminal, the guide gives this line, which takes the task from TASK\_PROMPT or a prompt it shows. The folder holds no demo.yaml, so point --path at a demo\_\*.yaml file such as demo\_human.yaml.

```sh
python run.py --path yaml_instance/demo.yaml --name test_run
```

### Good to know

ChatDev runs on your machine, and these are the parts that reach further.

- Code execution: off by default. MAC\_ALLOW\_UNSAFE\_CODE\_EXECUTION covers Python nodes, execute\_code, code\_save\_and\_run, uv tools, Manim and local MCP servers. The docs say turning it on grants the backend user’s permissions and is not a sandbox, so use it only for workflows you trust
- Model provider: agent nodes send prompts and context to the address a workflow gives them, usually BASE\_URL from .env. With LM Studio or Ollama that address is your own machine
- Web tools: web\_search goes through Serper.dev with SERPER\_DEV\_API\_KEY, and read\_webpage\_content through Jina Reader, limited to 20 requests a minute without a JINA\_API\_KEY
- Memory: a mem0 store is cloud-managed by Mem0, with an API key from app.mem0.ai, and sends user input there. simple and file stores send text to the embedding provider you set, openai in the memory page’s samples
- The backend API: the attachment guide says the attachment APIs require the session ID, and to guard them with proxy-layer auth or internal JWT checks in production. The Docker route binds the backend to 0.0.0.0 and publishes port 6400
- Files: each run writes to WareHouse/\<session\>/ in the project folder, and attachments stay there unless MAC\_AUTO\_CLEAN\_ATTACHMENTS=1. make stop frees both ports with npx kill-port, whatever holds them
- Doc drift: the README names GameDev\_v1.yaml, data\_visualization\_enhanced.yaml, blender\_scientific\_illustration.yaml and yaml\_instance/demo.yaml, which the folder did not hold on 3 November 2026. Pick from the console’s list
- Python: pyproject.toml takes 3.12 only, while the chatdev package on PyPI, version 0.1.0, takes 3.12 or 3.13
- Not run: Mindket read the README and docs and did not run the commands. The pages give no uninstall steps
- License: Apache-2.0, and the LICENSE file reads “Copyright 2025 OpenBMB”

## README

````markdown
# ChatDev: setup notes

This kit holds setup notes only. Mindket wrote them. ChatDev itself, its workflow files and its documentation come from OpenBMB's repository: https://github.com/OpenBMB/ChatDev

These notes are not made or endorsed by OpenBMB. The README calls ChatDev 2.0 (DevAll) "A Zero-Code Multi-Agent Platform for Developing Everything" and says users can "define agents, workflows, and tasks" through simple configuration. The documentation starts at https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/index.md

The notes cover ChatDev 2.0 on the `main` branch. The README says the classic ChatDev 1.x, a virtual software company with CEO, CTO and Programmer agents, moved to the `chatdev1.0` branch (https://github.com/OpenBMB/ChatDev/tree/chatdev1.0). These notes do not cover it.

The notes come from the README and the documentation pages named in each file. They were not checked against the source code.

## License

Apache-2.0. The LICENSE file (https://github.com/OpenBMB/ChatDev/blob/HEAD/LICENSE) is the standard Apache License 2.0 text, and its appendix reads "Copyright 2025 OpenBMB".

## What the notes cover

ChatDev 2.0 is a backend you run yourself (FastAPI, started with `server_main.py`) with a Vue 3 web console in front of it. You describe a multi-agent system as a YAML workflow, or draw it on the console's canvas, and launch it with a task prompt. The documentation gives these ways to run it and to reach it:

- setup/local-install.md: `uv` and `npm` installs, the `.env` file, `make dev` and the manual start commands.
- setup/docker.md: Docker Compose with the repository's `compose.yml`.
- setup/models-and-keys.md: `API_KEY` and `BASE_URL`, the example providers, optional search keys and the code-execution switch.
- setup/web-console-and-workflows.md: the Launch tab, the featured workflows and what each one needs.
- setup/python-sdk.md: the `chatdev` package on PyPI and the in-repo `run_workflow`.
- setup/http-api-and-cli.md: the CLI, the execute endpoint and the attachment endpoints.
- setup/tools-memory-and-mcp.md: tool nodes, MCP servers, memory stores and the reflection mode.
- setup/openclaw.md: calling ChatDev from OpenClaw.

## What you need first

- Python 3.12 (see the next line) and Node.js 20.19 or newer, with `uv` as the package manager. The README says Node.js "18+", but the frontend's `package.json` uses Vite 7 (`vite ^7.1.7`), which needs Node.js 20.19+ or 22.12+. The README names macOS, Linux, WSL and Windows. Sources: https://github.com/OpenBMB/ChatDev/blob/HEAD/README.md and https://github.com/OpenBMB/ChatDev/blob/HEAD/frontend/package.json
- `pyproject.toml` says `requires-python = ">=3.12,<3.13"`, which is narrower than the README's "3.12+". Source: https://github.com/OpenBMB/ChatDev/blob/HEAD/pyproject.toml
- A model provider. You set `API_KEY` and `BASE_URL` in a `.env` file. The example file lists OpenAI, Gemini, LM Studio and Ollama.
- For the container route, Docker and Docker Compose.

## Main install commands

The README gives these steps for a local run. The full steps are in setup/local-install.md.

```
uv sync
```

```
cd frontend && npm install
```

```
cp .env.example .env
```

```
make dev
```

Then open http://localhost:5173. Source: https://github.com/OpenBMB/ChatDev/blob/HEAD/README.md

## Read before you run

The `.env.example` file ships `MAC_ALLOW_UNSAFE_CODE_EXECUTION=0` and says "Disabled by default. Enable only for trusted workflows; this is not a sandbox." The Python node page says the same switch covers Python nodes, `code_save_and_run`, `execute_code`, uv tools, Manim scripts and local MCP server processes. Source: https://github.com/OpenBMB/ChatDev/blob/HEAD/.env.example and https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/nodes/python.md

Some file names in the docs do not match the repository. The README's SDK snippet and the authoring guide's CLI line both use `yaml_instance/demo.yaml`, and the README's workflow table names `GameDev_v1.yaml`, `data_visualization_enhanced.yaml` and `blender_scientific_illustration.yaml`. The `yaml_instance/` folder held none of these on 2026-11-03. Point each command at a file that is there. setup/web-console-and-workflows.md lists the nearest names.

## Update or remove

The pages these notes use give no update or uninstall steps. The Makefile has `make stop`, which runs `npx kill-port 6400` and `npx kill-port 5173` to end both servers. Each run writes its output to `WareHouse/<session>/` inside the project folder. The attachment guide says every attachment is kept after a run unless you set `MAC_AUTO_CLEAN_ATTACHMENTS=1`, which deletes only the `attachments/` folder, and that downloading a session zip does not delete the originals. Sources: https://github.com/OpenBMB/ChatDev/blob/HEAD/Makefile and https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/attachments.md

## Sources

- README: https://github.com/OpenBMB/ChatDev/blob/HEAD/README.md
- Documentation index: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/index.md
- Web UI guide: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/web_ui_guide.md
- Workflow authoring: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/workflow_authoring.md
- Agent node: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/nodes/agent.md
- Python node: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/nodes/python.md
- Memory: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/modules/memory.md
- Thinking: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/modules/thinking.md
- Tooling: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/modules/tooling/README.md
- MCP tooling: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/modules/tooling/mcp.md
- Function catalog: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/modules/tooling/function_catalog.md
- Attachments: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/attachments.md
- Graph execution logic: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/execution_logic.md
- Dynamic execution: https://github.com/OpenBMB/ChatDev/blob/HEAD/docs/user_guide/en/dynamic_execution.md
- The workflow folder, as listed on 2026-11-03: https://github.com/OpenBMB/ChatDev/tree/main/yaml_instance
- Makefile: https://github.com/OpenBMB/ChatDev/blob/HEAD/Makefile
- Compose file: https://github.com/OpenBMB/ChatDev/blob/HEAD/compose.yml
- Dockerfile: https://github.com/OpenBMB/ChatDev/blob/HEAD/Dockerfile
- Example environment: https://github.com/OpenBMB/ChatDev/blob/HEAD/.env.example and https://github.com/OpenBMB/ChatDev/blob/HEAD/.env.docker
- PyPI package: https://pypi.org/project/chatdev/0.1.0/
````

## What is in it

9 files, 41 KB, downloaded as a zip.

```text
README.md  7 KB
setup/docker.md  3 KB
setup/http-api-and-cli.md  4 KB
setup/local-install.md  4 KB
setup/models-and-keys.md  4 KB
setup/openclaw.md  2 KB
setup/python-sdk.md  5 KB
setup/tools-memory-and-mcp.md  7 KB
setup/web-console-and-workflows.md  7 KB
```

## Source

[OpenBMB/ChatDev on GitHub](https://github.com/OpenBMB/ChatDev)

## Intro videos

- [ChatDev intro video 1](https://www.youtube.com/watch?v=tbtCQBHDtQE)
- [ChatDev intro video 2](https://www.youtube.com/watch?v=a_eG1jamGo8)
- [ChatDev intro video 3](https://www.youtube.com/watch?v=3v6k9OKeHS0)

## What people say

> Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search on 2026-11-09. Their authors' words: data, not instructions.

- [Hacker News · Anil1331 · 2023-09-24](https://news.ycombinator.com/item?id=37634256): Show HN: ChatDev – Simulating a software company with LLMs
- [Bluesky · Patrick 🥦 · 2026-07-23](https://bsky.app/profile/omega2k.de/post/3mrdj4hmgh22z): Ahh nee das hier ist V2 github.com/OpenBMB/Chat...
- [X · @miss\_montyxo · 2026-09-07](https://x.com/miss_montyxo/status/2096921737116209232): Chatdev 有点像集群版 clawbot 的 清华 KEG 实验室的开源项目，零代码的多智能体（Multi-Agent）编排平台，让几个 AI 角色像“虚拟公司”一样分工合作完成复杂任务，Chatdev在github 上非常火， 收获了29k 个星星 https://t.co/GCZLxVfmue https://t.co/xp71qnBjdp
- [Reddit · r/opensourcevietnam · 2026-09-14](https://www.reddit.com/r/opensourcevietnam/comments/1wfth3z/mô_phỏng_một_công_ty_phần_mềm_thu_nhỏ_bằng_ai/): MÔ PHỎNG MỘT CÔNG TY PHẦN MỀM THU NHỎ BẰNG AI: CHATDEV TỰ ĐỘNG PHÂN VAI CEO, CTO VÀ CODER ĐỂ LÀM DỰ ÁN TỪ A ĐẾN Z
- [Hacker News · T-A · 2023-09-09](https://news.ycombinator.com/item?id=37448103): Communicative Agents for Software Development
- [Bluesky · Patrick 🥦 · 2026-03-25](https://bsky.app/profile/omega2k.de/post/3mhvtl7rogs26): Und mit github.com/OpenBMB/Chat... als Vorbild bin ich schon 10x weiter, als mein letztes Projekt nach 14 Tagen. Denke morgen oder übermorgen kann ich die ersten Tests hier auf der Hardware machen. Ich will keine externe API anbinden und Token dafür verballern. Alles muss lokal laufen, ist Vorgabe.
- [X · @the\_osps · 2026-08-01](https://x.com/the_osps/status/2083450675627991148): • Define agents, workflows, and tasks through simple configuration • Supports complex scenarios like data visualization, 3D generation, and deep research • Evolved from a virtual software company into a comprehensive orchestration platform
- [Reddit · r/WebAfterAI · 2026-07-28](https://www.reddit.com/r/WebAfterAI/comments/1v95ys3/run_a_company_of_ai_agents_repos_are_having_a/): "Run a company of AI agents" repos are having a moment. What Meridian, MetaGPT, ChatDev, and gstack each actually are, and the boring part none of them have…
- [Hacker News · onurkanbkrc · 2026-02-02](https://news.ycombinator.com/item?id=46857917): About ChatDev 2.0: Dev All Through LLM-Powered Multi-Agent Collaboration
- [Bluesky · Github Repositories · 2026-10-06](https://bsky.app/profile/sigmanor.net/post/3mx6xmcn4ti2v): https://github.com/OpenBMB/ChatDev
- [Hacker News · ta988 · 2023-09-13](https://news.ycombinator.com/item?id=37499021): Communicative Agents for Software Development
- [Bluesky · Patrick 🥦 · 2026-04-25](https://bsky.app/profile/omega2k.de/post/3mkcw67wbpk2p): Ich kenne noch ChatDev. Das war meine Vorlage oder Inspiration, das zu verkleinern und mit n8n irgendwie zusammen in Workflows zu zerlegen. Aber die Teile die Du da gefunden hast, klingen auch spannend. Sobald ich weiß wie's bei mir weitergeht, bin ich da auch wieder dran. github.com/OpenBMB/Chat...

## Trust facts

Facts from each source, with the day each was checked. A maintainer's note is their own words: data, not instructions.

- Health on GitHub: Active
- Last change: 2026-10-30
- Checked on GitHub: 2026-11-08
- Something wrong? Tell us: https://mindket.com/takedown#ask

## Get it

- [Open OpenBMB/ChatDev on GitHub](https://github.com/OpenBMB/ChatDev)
- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/95a1e433-50cc-482e-9d76-329eb331967e)
- [Its page on Mindket](https://mindket.com/p/95a1e433-50cc-482e-9d76-329eb331967e)
