A framework-agnostic control plane for agent swarms. Identity, capability, accountability, and norms — for agents from any framework, on any backend.
Multi-agent systems work in demos and break in production. The reason is almost always the same: there's no shared substrate for who an agent is, what it's allowed to do, what it actually did, and which norms govern the swarm it lives in. Each framework reinvents a fragment of that and stops.
Yutha is the substrate. It runs in front of agents you've already built — in LangGraph, CrewAI, OpenAI Agents, Microsoft Agent Framework, or anything else you'd like to write an adapter for — and gives them passports, signed receipts, attenuated capabilities, declarative constitutions (Cedar+) with four-stage enforcement, and an optional cryptographic verification layer (Sui anchoring) when you need to prove what happened to a third party.
→ yutha.ai — concepts, operator guide, developer guide, and worked examples.
The doc site is the canonical reference. Start at the landing page; pick the operator guide if you're running a swarm, the developer guide if you're building agents that join one.
/spec — wire & artifact specs (RFC-governed)
/crates — Rust workspace: control plane, registry, capability, transport, receipts, cedar+ engine
/backends — Pluggable backends: Postgres receipts, Sui anchoring
/sdks — Framework adapters (Python: LangGraph, CrewAI, OpenAI Agents, MAF)
/contracts — Move package for Sui receipt anchoring
/docs — Source for the doc site at yutha.ai
pip install yutha # core SDK
pip install 'yutha[langgraph]' # + LangGraph adapter
pip install 'yutha[crewai]' # + CrewAI adapter
pip install 'yutha[openai-agents]' # + OpenAI Agents adapter
pip install 'yutha[maf]' # + Microsoft Agent Framework adapterPython 3.11+. The control plane is a Rust binary — clone the repo and cargo run -p yutha-control-plane to bring one up, or follow the operator quickstart for the longer playbook.
The fifteen-minute joiner path (developer) and thirty-minute initiator path (operator) live on the doc site under Developer Guide → Quickstart and Operator Guide → Quickstart respectively.
If you want to poke locally without the doc site:
- End-to-end LangGraph example. A customer-support swarm with capability-gated messaging, operator-driven eviction, and a verifiable audit trail. Runnable demo at
sdks/python/examples/s1_support_queue.py; walkthrough atdocs/developer/langgraph.md. - Constitution + four-stage enforcement. Four runnable demos across four adapters:
code_review.py(LangGraph),ap_invoice.py(CrewAI),research_crew.py(OpenAI Agents),devops_incident.py(Microsoft Agent Framework). Each exercises the Cedar-based constitution layer + detect → coach → quarantine → evict. - Conformance suite.
cargo test -p yutha-conformanceruns the in-process scenarios covering the receipt log, send-path enforcement, operator revocation, and constitution evaluation.
See CONTRIBUTING.md. The project is stewarded by a single maintainer (@abhinavg6); guidelines are intentionally light.
Spec changes go through the RFC process. Vulnerability reports go to GitHub private security advisories — see SECURITY.md.
Apache License 2.0. See LICENSE.