Build production-grade multi-agent AI systems — compose, orchestrate, and observe autonomous agents.
Project description
Build production-grade multi-agent AI systems.
Compose, orchestrate, and observe autonomous agents — reliably.
Choreo is an open-source framework for building multi-agent AI systems that survive production. Most agent frameworks make the happy path easy and leave you to discover the hard parts — hallucinations, runaway loops, lost state, unbounded cost — in incident review. Choreo makes those the default things you control: retries, guardrails, budgets, evals, and tracing are first-class, not add-ons.
Think of it as the layer between "a clever prompt" and "a system you can put on-call."
Status: pre-alpha, building in public. The APIs shown below are the target developer experience and are still landing — follow the roadmap. ⭐ Star the repo to track progress; issues and PRs are welcome.
Why Choreo
- Reliability is the product. Every run is bounded by step, token, time, and cost budgets. Nothing loops forever; nothing surprises your bill.
- Guardrails against bad states. Output/schema validation and grounding checks catch hallucinations before they propagate, with defined recovery paths (retry / replan / fall back / escalate).
- One base agent, thin subclasses. Cross-cutting concerns (LLM client, tool loop, retries,
context assembly, tracing) live once in
BaseAgent; your agents override only what's unique. - Orchestration built in. Sequence, parallelize, or supervise workers — with shared state threaded cleanly through the run.
- Evals as a gate, not an afterthought. Per-agent, per-tool, and end-to-end checks so a prompt or model change can't silently regress.
- Observable by default. Full traces across agents and tool calls, plus metrics: latency, cost, retry rate, guardrail-trip rate, task success.
Install
# From PyPI (coming soon)
pip install choreoai
# From source (works today — installs the CLI and package skeleton)
pip install git+https://github.com/choreo-ai/choreo
choreo # confirm the install
Quickstart
Illustrative — this is the API Choreo is being designed around.
from choreo import BaseAgent, Orchestrator, budget
class Researcher(BaseAgent):
system = "Find and summarize sources for the given topic."
tools = [web_search]
fleet = Orchestrator(
plan=Planner(),
workers=[Researcher(), Researcher()], # run in parallel
reduce=Synthesizer(),
review=Critic(), # gates the final answer
budget=budget(steps=20, usd=0.50), # hard cap on every run
)
result = fleet.run("Compare vector databases for RAG")
Roadmap
- Core —
BaseAgent, tool loop, retries, tracing. - Orchestration — planner + workers + synthesizer on a real research-assistant task.
- Reliability — budgets, guardrails, grounding checks, recovery paths.
- Evals & observability — eval harness, a critic agent, full-run traces.
-
choreoCLI —init,run,trace. - Docs site + first release to PyPI.
Contributing
Choreo is open source (MIT) and early — the best time to shape it. Bug reports, ideas, and PRs are all welcome. Open an issue to discuss a change before large PRs. Dev setup:
git clone https://github.com/choreo-ai/choreo
cd choreo
pip install -e ".[dev]"
pytest
License
MIT © 2026 Karthik Reddy Basupally
Choreo · multi-agent systems, in production ·
github.com/choreo-ai/choreo
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file choreoai-0.0.1.tar.gz.
File metadata
- Download URL: choreoai-0.0.1.tar.gz
- Upload date:
- Size: 362.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
434722b76020c996046df9c80aeb9b141a8506a5bcbd5bb609bc3ad6338af78c
|
|
| MD5 |
165726f3c64912d14ea81adf9dd3cad2
|
|
| BLAKE2b-256 |
f702355a66c9c33ab0d30aff03312febcf874c2a283fa3f7b28d6642e42d31ca
|
File details
Details for the file choreoai-0.0.1-py3-none-any.whl.
File metadata
- Download URL: choreoai-0.0.1-py3-none-any.whl
- Upload date:
- Size: 28.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c68f53599cf11217d4412544445d7a0567e36ab8052459dd2c08271bb46cca24
|
|
| MD5 |
12541c83318c9b575afec0be718760a7
|
|
| BLAKE2b-256 |
2c9ffa116be8a3d1946586035b74ed5027944949ef3780721e7a99b0244c90d5
|