Plugboard
A model exchange for your agents

PlugboardNumber, please

Your agent never gets a busy signal.

One line for every model. Plugboard puts hard calls through to your best model, patches easy ones to cheaper lines as its budget runs down, and keeps a free night line open when every paid line is busy.

$PLUGRobinhood Chain·official CA on X only
Incoming callTop line 100% left
 
Grading…
How the operator picks

The hard calls go
to your best line

Every request is graded before it leaves your machine, then patched down your list of lines: the hardest to the top, the easy ones to cheaper models as the top line's daily budget runs low. A conversation stays on one line unless that line goes busy.

Place a call

Ring the operator

Type what you'd ask your agent. You'll see the exact rules the router uses, which line it gets, and what it costs at today's prices. Add an OpenRouter key and the call goes through for real.

Top line spent today20%
Put it through for real

The key stays in this tab. It is sent only to openrouter.ai, never to us. There is no us.

     

    Setup is one setting

    Your exchange runs
    on your machine

    Plugboard is one file. Run it, point Claude Code, the OpenAI or Anthropic SDK, or any client that takes a base URL at it, and every call is graded and patched to a line through your own OpenRouter key.

    • 01
      Your key never leaves your computerNo account, no dashboard, no server in the middle. Nothing to leak.
    • 02
      Nothing is logged but the meterModel, tokens, cost and time per call. Never the prompt, never the reply.
    • 03
      A night line that's always openWhen every paid line is busy or out of budget, work goes to free models instead of stopping.
    • 04
      Every reply names its lineHeaders say which line and model answered, and the console prints a meter line per call.
    Download plugboard.mjsOne file · Node 18+ · no dependencies
    
          
    Lines on the board

    Today's rates

    Default lines and their prices per million tokens, read live from OpenRouter's public model list. Swap any line for any of the 460+ models there.

    LineModelInputOutputContext

    Operator's notes

    Questions
    at the desk

    Which models does it work with?

    Anything on OpenRouter: Claude, GPT, Gemini, Grok, DeepSeek, Qwen, Llama, Kimi, GLM and hundreds more. You list models per line in plugboard.json and the operator works down the board.

    How does it decide how hard a call is?

    By rules you can read, not by another model reading your prompt: the length of the last message, words like plan, migrate or refactor against words like rename, summarise or format, and whether tools are attached. The console above runs the exact same rules.

    Which limits does it watch?

    The daily budget you set for your top line, counted from the token usage each reply reports at OpenRouter's prices, and busy signals. When a model answers 429 or fails, Plugboard tries the next model down until the retry time passes. It does not change the limits of a ChatGPT, Claude.ai or Gemini subscription.

    Does a conversation switch models halfway?

    No. A conversation stays on the model it started with and only moves when that line goes busy, because thinking blocks and prompt caches belong to one model.

    Where do my keys and prompts go?

    Your key sits in an environment variable on your machine and is only sent to OpenRouter. Plugboard has no server, so there is nowhere for prompts or replies to be stored.

    What is the night line?

    Free models on OpenRouter. They are slower and rate limited, but they keep an agent moving when the paid lines are spent for the day.

    What is $PLUG?

    The exchange's coin on Robinhood Chain. The router is free and stays free. The only official contract address is the one posted on our X account.

    $PLUG · Robinhood Chain

    Number, please.

    The router is free and open. The coin lives on Robinhood Chain, and its address is posted on X only.

    Choose a wallet