ORC — Orchestration by Ruthless Competition¶

Standard orchestration is weak. Static hierarchies are boring. In ORC, leadership is earned in the Arena.
Why ORC?¶
Traditional multi-agent systems use static orchestrators. A central coordinator decides who does what, forever. But that's boring—and fragile.
ORC is different. AI agents compete for leadership through trials. The best agent for each domain rises to the top. Leadership is never permanent. Agents must defend their position or be dethroned.
It's Darwinian. It's dynamic. It's ruthless. It's ORC.
Key Features¶
Agents don't request permission. They compete for leadership. The Warlord holds domain leadership until defeated.
Built on dynabots-core. Works with OpenAI, Anthropic, Ollama, or any LLM provider. Swap models at runtime.
Used in production for model evaluation, prompt engineering, and self-optimizing agent routing. Proven reliability.
30 Seconds to Combat¶
Install ORC:
Create Warriors and enter The Arena:
import asyncio
from orc import TheArena, Warrior, Elder
from orc.judges import MetricsJudge
async def main():
# Create Warriors (agents)
grog = Warrior(
name="Grog",
llm_client="gpt-4o",
system_prompt="You are a senior backend developer.",
domains=["backend", "python"],
)
thrall = Warrior(
name="Thrall",
llm_client="claude-sonnet-4-20250514",
system_prompt="You are an infrastructure architect.",
domains=["backend", "infrastructure"],
)
# Create Elder judge
elder = Elder(judge=MetricsJudge())
# Enter The Arena
arena = TheArena(warriors=[grog, thrall], elder=elder)
# Battle for domain leadership
result = await arena.battle("Optimize database connection pooling")
print(f"Winner: {result.winner}")
asyncio.run(main())
That's it. Warriors. Elder. Arena. Battle.
What Happens in The Arena?¶
┌─────────────────────────────────────────────┐
│ THE ARENA │
│ │
│ Task arrives → Domain inferred │
│ ↓ │
│ Warlord handles it (default) │
│ ↓ │
│ Does a challenger emerge? (probabilistic) │
│ ↓ │
│ YES: Trial (head-to-head combat) │
│ ├─ Both agents try same task │
│ ├─ Elder judges quality │
│ └─ Winner becomes new Warlord │
│ ↓ │
│ NO: Warlord keeps command │
└─────────────────────────────────────────────┘
Every domain has a Warlord — the current leader. But dominance is never guaranteed. Challengers emerge, trials are fought, and leadership can change in minutes.
Themed API¶
ORC wraps the technical concepts in fantasy language:
| ORC Theme | What It Is |
|---|---|
| Warrior | An AI agent (LLM + system prompt) |
| Elder | A judge that evaluates quality |
| Warchief | The winning leader |
| The Arena | The orchestration engine |
| Trial | Head-to-head evaluation |
| Reputation | Performance score |
| Domain | Capability area |
| Succession | Leadership change |
Use the themed API for fun, or drop down to the standard Arena API for production environments.
Learn More¶
- Installation Guide — Set up ORC in minutes
- Quick Start — Run your first battle
- Core Concepts — Understand the architecture
- Model Showdown Guide — Compare LLMs in action
- API Reference — Full API documentation
Use Cases¶
Model A/B Testing — Compare GPT-4o vs Claude vs local models. Run real tasks. Get a leaderboard.
Prompt Engineering — Test different system prompts. See which performs best across trials.
Self-Optimizing Routing — The best agent for each domain naturally rises to the top. No manual routing needed.
Research — Study emergent hierarchies in multi-agent systems. Watch leadership dynamics unfold.
Built On¶
ORC is powered by dynabots-core — a zero-dependency protocol foundation for multi-agent systems.
Published on PyPI as orc-arena. Open source under Apache 2.0.
The horde is ready. Enter the Arena.