Skip to content

About

A research-friendly, high-performance multi-agent collaboration coding framework.

Resources

Code of conduct

Contributing

Security policy

Stars

448 stars

Watchers

55 watching

Forks

Latest commit

 

History

1,502 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

OpenCollab. Program how coding agents collaborate. Verify that they did.

A multi-agent coding framework with programmable collaboration and a controllable runtime.

arXiv 2609.38345 Project page Latest release License: MulanPSL-2.0 Python 3.10 through 3.14 CI
English · Chinese

Pass@1 of six harnesses using GPT-5.6-Luna at max reasoning effort. OpenCollab (Duo) scores 68.91% on SWE-bench Pro, 83.15% on Terminal-Bench 2.1, and 65.49% on DeepSWE.

Duo produces two isolated solutions and adopts one. Base, a single agent, uses the fewest tokens across all three benchmarks. Full results

News

Quick start

uv sync --locked
cp configs/.env.example configs/.env   # then set OPENCOLLAB_API_KEY
uv run opencollab --workspace .

configs/.env accepts any OpenAI-compatible or Anthropic endpoint. Never commit real API keys. The command starts the built-in Self-Collaboration team. Its Analyst entry plans and delegates to the Coder and Tester over a closed topology. Type /help in the terminal for navigation, saving and exit controls. To define additional roles, create and select an explicit team file as shown below. To run Duo on a Git repository, use this command.

uv run opencollab workflow run duo --workspace /path/to/repository \
  --task 'Fix the public issue described here.' \
  --args '{"allow_unisolated_shell":true}'

Place run options such as --workspace, --model and --budget after workflow run NAME. To list workflows in another workspace, use workflow list --workspace PATH. Options placed before the workflow subcommand are interpreted as belonging to the root interactive mode and will produce a usage error.

Program the collaboration

OpenCollab Team and Workflow modes

  • Team. A YAML file declares each role's prompt, model, tools, and token allowance, the context policy, and who may message whom. Start from the built-in team and edit it:

    uv run opencollab team init team.yaml   # edit roles, prompts, tools, and topology
    uv run opencollab team show --team-config team.yaml
    uv run opencollab --team-config team.yaml --workspace .
  • Workflow. A Python module issues every handoff. Duo is one; write your own and run it with opencollab workflow run NAME.

Mini Edict reimplements the core protocol of Edict, a multi-agent system of roughly 24,000 lines, in 239 lines of team and workflow code.

Verify it happened

In a Team, the agents decide the handoffs, and a declared team does not guarantee that they happen. In our runs, the lead agent often briefed its teammates and then did the work itself. OpenCollab enforces the declaration and records what each agent did:

  • a message along an undeclared edge is refused, and the refusal is recorded;
  • each agent's token budget is checked before every model call;
  • --trace writes one JSONL record per step, stamped with the run, agent, role, event type, and token usage.

From these records we measure Adherence, the share of runs in which the declared organization actually happened. Changing one setting of the same team raised it from 47.2% to as much as 97.2%. See how Adherence is measured.

Learn more

Guide What it covers
Package guide CLI, Python API, architecture, and runtime behavior
Configuration guide Providers, models, and team files
Duo guide · Chinese Running the dual-coder workflow from the CLI and SDK
Benchmark results Tokens, cost, the paired Duo–Base test, and how to run an evaluation
Adherence What the runtime records, and how we measure Adherence
OpenCollab-Eval README Running agents on software-engineering benchmarks
Documentation index Skills, migration guides, and design records
CONTRIBUTING.md Development checks, testing, and releases

Citation

If you find OpenCollab useful, please give it a ⭐ and cite our work. Our paper is OpenCollab: A Multi-Agent Coding Framework with Programmable Collaboration and Controllable Runtime. OpenCollab builds on Self-Collaboration:

@misc{hsu2026opencollab,
  author        = {Hsu, Chun-Wah and Gong, Kai and Wu, Yu and Chen, Xianhe and
                   Li, Hanyu and Li, Jie and Liu, Mengyang and Liu, Zhixuan and
                   Tang, Naisheng and Chi, Jiaying and Fan, Ziheng and He, Xuning and
                   Yang, Xiaokang and Jiang, Xue and Dong, Yihong},
  title         = {OpenCollab: A Multi-Agent Coding Framework with Programmable Collaboration and Controllable Runtime},
  year          = {2026},
  eprint        = {2609.38345},
  archivePrefix = {arXiv},
  url           = {https://arxiv.org/abs/2609.38345}
}

@article{dong2023self,
  author        = {Dong, Yihong and Jiang, Xue and Jin, Zhi and Li, Ge},
  title         = {Self-Collaboration Code Generation via ChatGPT},
  journal       = {ACM Transactions on Software Engineering and Methodology},
  volume        = {33},
  number        = {7},
  pages         = {189:1--189:38},
  year          = {2024}
}

License

OpenCollab is licensed under the Mulan Permissive Software License v2 (MulanPSL-2.0).

Star History

OpenCollab star history chart

About

A research-friendly, high-performance multi-agent collaboration coding framework.

Resources

Code of conduct

Contributing

Security policy

Stars

448 stars

Watchers

55 watching

Forks

Releases

Packages

Contributors

Languages