One interface. Any AI.
Unbreakable auto-failover.
rdai is a multi-brain AI orchestrator for your terminal — route requests across Gemini, OpenAI, and Claude with a circuit-breaker failover engine that never leaves you stuck on a dead provider.
How a request actually moves through rdai.
If a provider fails at the Circuit Breaker stage, the request loops back to the next entry in the Provider Registry — automatically.
Built so one dead API key never kills your app.
Unbreakable Auto-Failover
A 3-tier circuit breaker tracks every provider's health. If one fails repeatedly, rdai skips it, waits for a recovery window, then quietly retries — your request always finds a working model.
Smart Routing
rdai reads intent straight from your prompt — coding-related requests route toward the strongest coding model, speed-sensitive ones toward the fastest, no manual switching required.
11+ Built-in AI Brains
Native support for Gemini, OpenAI, Groq, Claude, DeepSeek, Qwen, Llama, Mistral, VertexAI, AWS Bedrock, and HuggingFace — call them all through one interface.
Bring Your Own Model
Got a private or custom AI API? Inject it directly into the failover chain as a provider — no changes to the core framework required.
Live Ping Diagnostics
rdai doctor doesn't just check if a key exists — it actually pings each provider's servers and reports real-time ALIVE/ERROR status with latency.
Smart Auto-Setup
Missing an SDK for a provider you just enabled? rdai installs it automatically during rdai init — and never overwrites an existing config by accident.
One YAML file. That's the whole config.
rdai init writes this file for you — no SDKs to wire up, no boilerplate per provider. Edit the priority chain any time, no code changes needed.
It's a Python SDK too.
No need to learn ten different provider SDKs. rdai standardizes everything behind one AI() object — it loads your rdai.yaml strategy automatically, and silently falls back if the first model fails.
Got a private model? Bring it in.
Inject any custom or internal API into the failover chain by extending BaseProvider — it joins the same circuit-breaker protection as every built-in engine.
Every provider, one env file.
The circuit breaker, in three steps.
A request comes in. rdai calls the first provider in your priority chain — or the smart-ranked best match for that prompt.
If it fails, rdai logs the failure and instantly retries the next provider in the chain — no crash, no manual retry.
After 3 failures, that provider's circuit "opens" and is skipped entirely for a cooldown window — then quietly re-tested.
Everything, from six commands.
One rate-limited API shouldn't take down a whole build.
Every AI provider goes down eventually — rate limits, outages, quota caps. I built rdai so a single failing key never becomes a dead end. It's the orchestration layer I wanted for my own AI systems work, now open for anyone building on top of multiple models.
More about Ranajit Dhar →Stop losing requests to one dead API key.
Install rdai and route your first request in under a minute.