ROBINBANDIT

Local LLM router

Choose the route. See why it changed.

RobinBandit receives OpenAI, Responses and Anthropic-style calls, tries the providers you enabled, and keeps the decision visible in a local panel.

RobinBandit route status, live attempt, recent activity and provider queue
Live state comes from the router itself. The panel does not recompute the decision.
4normal-route modes
41providers in the catalog
0providers enabled without consent
localhistory, credentials and panel

Routing modes

Pick how the normal route behaves.

Adaptive routing is the default, but not the only choice. Use tiers when priority matters, a fixed list for predictable tests, or round robin when you want simple rotation.

01

Adaptive

Learns from quality, health, latency and quota. It keeps exploring instead of locking onto the first provider that worked.

02

Tier priority

Exhausts tier 1 before tier 2. Learning still decides the order inside each tier.

03

Fixed list

Uses the exact chain order you set and moves on only after failure or temporary unavailability.

04

Round robin

Rotates the first available provider after each real attempt. Opening the panel never moves the cursor.

Live routing demo

Watch the queue learn.

Each simulated call updates quality, health and latency. The order changes with the evidence. Click a provider to simulate a rate limit and watch it move down until its cooldown ends.

Queue right now
0 calls6/6 up
    Click any row to simulate a rate limit.sampling from the priors

    Reinforced calls

    Try preferred accounts first.

    Reinforced is a per-call route. Put subscriptions, paid credits or free accounts in the order you want. If all of them fail, RobinBandit returns to the normal route.

    Use it from OpenAI, Responses and Anthropic clients with X-RobinBandit-Mode: reinforced.

    Normal and Reinforced routes with four routing modes in the provider panel
    Normal stays default. Reinforced is requested only when a call asks for it.

    Panel

    Know what is configured and what actually called.

    Authentication and connection are separate states. The panel shows who can answer, which tool has sent a request, what was consumed and why a provider moved in the queue.

    Provider routing modes and editable chain order
    Providers. Pick a mode, edit the fixed order and keep the full catalog separate from your active chain.
    Usage panel with input tokens, output tokens, cost and calls
    Usage. Input, output, cache, calls and provider-reported cost. Unknown price stays unknown instead of looking free.
    Subscription windows and provider cooldown status
    Windows. See when a subscription block turns over and whether waiting is better than switching.
    Client connection recipes for Claude Code, Codex, Cline and curl
    Connect. Ready-to-copy client settings plus confirmation after the first request reaches RobinBandit.

    Usage and cost

    Show the numbers that are real.

    Usage is stored under ~/.robinbandit. Tokens are counted when providers report them. Cost is stored only when a provider sends it, so unknown price never looks like free usage.

    SignalUsed for routingShown in panelRetention
    Input and output tokensNo7 days to one year365 days
    Provider-reported costNo; cost class guides routingUSD with coverage365 days
    Latency and healthEvery routing decisionCurrent queueLearned locally
    Quota and cooldownAvoids the next 429Current stateRuntime only

    “Cost not reported” is different from $0.00. The panel keeps that distinction visible.

    Adaptive loop

    A route that changes when evidence changes.

    Adaptive mode separates operational health from answer quality. A provider can be online and still produce weak answers, or be good but temporarily blocked by quota.

    01 / ORDER

    Score

    Use quality, latency, health, tier, cost class, quota and open calls.

    02 / CALL

    Try

    Call providers in order and keep a clear final notice when nobody answers.

    03 / OBSERVE

    Classify

    Separate rate limit, credit exhaustion, timeout and other failures.

    04 / LEARN

    Update

    Record health immediately and quality when your app sends feedback.

    Quickstart

    One process, three client protocols.

    Providers appear in the active chain only when selected and usable. Codex CLI enters through the Responses API; ChatGPT Codex is a separate outbound provider that can answer through its authenticated CLI session.

    # install the server and provider adapters
    pip install "robinbandit[server,yaml,providers]"
    
    robinbandit serve
    
    # panel
    http://localhost:8000/painel
    
    # OpenAI-compatible endpoint
    http://localhost:8000/v1/chat/completions
    
    # Responses API (Codex CLI)
    http://localhost:8000/v1/responses
    
    # Anthropic-compatible endpoint
    http://localhost:8000/v1/messages

    Provider catalog

    A catalog is not your active route.

    RobinBandit ships with provider adapters, but a provider only joins your chain when you configure it or add credentials. Anonymous endpoints such as LLM7 still require explicit opt-in.

    GroqGeminiClaude CodeChatGPT CodexOpenRouterOllamaCerebrasand 34 more in the catalog