Connect a device
Two lines, and Claude Code runs on the pool.
Every device that joins a pool gets a key of its own. Claude Code sends that key instead of a Claude login, and the pool's account does the work — so your machine never holds anyone's credentials.
Get a key
Join a pool from Join a pool, or add a device to one you own from Pools. The key is shown once — the gateway stores only a hash of it, so nothing can read it back to you later. If you lose it, issue another.
Use it in the terminal
Set both values in the shell you run Claude Code from.
export ANTHROPIC_BASE_URL="https://blaude.xyz" export ANTHROPIC_AUTH_TOKEN=<your device key> claude
ANTHROPIC_AUTH_TOKEN is Claude Code's own variable — it sends the value as a bearer token, which is what identifies the device here. Nothing else needs configuring, and your own Claude login is left alone.
Make it permanent
Exports last as long as the shell does. To keep a machine connected, put the same two values in ~/.claude/settings.json under env.
{
"env": {
"ANTHROPIC_BASE_URL": "https://blaude.xyz",
"ANTHROPIC_AUTH_TOKEN": "<your device key>"
}
}This applies to every Claude Code session on that machine, including ones you meant to run on your own account. To scope it to one project instead, see below.
Use it in VS Code
The Claude Code extension starts the claude CLI itself, and an editor launched from the Dock or Start menu never sees your shell's exports. So exporting the variables does nothing there — the settings file is what works.
In the project you want on the pool, create .claude/settings.json:
{
"env": {
"ANTHROPIC_BASE_URL": "https://blaude.xyz",
"ANTHROPIC_AUTH_TOKEN": "<your device key>"
}
}Open that folder in VS Code and the extension routes through the pool. Only that project does — everything else keeps using your own account, which is usually what you want. Run /status in the extension to confirm: it shows the custom base URL rather than your Claude account.
That file holds a working credential. Add it to .gitignore, or name it .claude/settings.local.json, which is the local-only variant and is already ignored by convention.
Check what it is spending
Each device is metered separately, so you can see which machine used the pool's share.
curl -s -H "x-blaude-key: <your device key>" https://blaude.xyz/quota curl -s -H "x-blaude-key: <your device key>" "https://blaude.xyz/usage?limit=20"
When it does not work