pi extension: personal use Alpha preview

One balance and every frontier model for your own work, from your terminal. The pi extension is in alpha. APIs may shift before GA, and the catalog and pricing are still being tuned.

Setting up your team? Read the team quickstart →

1. Create your account

Sign up and add credit; Switchboard is prepaid, so your balance is the only thing your agent can spend. No API key is needed for personal use; your terminal signs in with your account in step 3.

Create your account
2. Install the extension

pi is a terminal coding agent. One extension registers every Switchboard catalog model under a switchboard provider, with streaming, tool calling, thinking, and prompt caching working exactly as they do against the providers directly:

npm install -g @earendil-works/pi-coding-agent
pi install https://github.com/Valni-Labs/pi-switchboard@v0.3.3

The extension lives at Valni-Labs/pi-switchboard. The pinned tag is the tested release; drop it to track main. Update later with pi update --extensions.

3. Make your first call

From any directory:

pi
> /login
> /model
> Say hi

/login lists Switchboard in pi's provider picker; pick it, and pi shows a short code and opens your browser on the approval page. One click and your terminal is connected, and /model shows your catalog. No keys to copy and nothing to configure. Signed out, Switchboard lists no models; the moment you sign in, the catalog loads live from your account. Each signed-in device appears under Devices in account settings, where you can revoke it any time.

For CI or servers where nobody can click an approval, skip /login and export a key instead:

export SWITCHBOARD_API_KEY=swb_...
export SWITCHBOARD_END_USER_ID=your-user-id

pi --provider switchboard --model claude-sonnet-5 "Say hi"

Your swb_ key is a server-side credential. Your own shell or CI runner is its intended home; never embed the key or this extension in an app you distribute to others.

4. Prefer raw HTTP?

One endpoint serves every model in the catalog:

curl https://switchboard.valni.app/v1/switchboard/inference \
  -H "Authorization: Bearer $SWITCHBOARD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5",
    "messages": [{"role": "user", "content": "Hello, Switchboard."}],
    "user": "end-user-id"
  }'
5. Pick a model

Pass any catalog model ID. Switchboard handles upstream routing, retries on 429, and failover across provider keys.

The full live catalog is one call away: client.models() in the SDK, or GET /v1/switchboard/models with your key.

Next