Claude Code
Use the gateway as Claude Code's API provider.
Claude Code talks the Anthropic Messages format, so it uses
/v1/messages on the Claude pool. Point it at
the gateway with two environment variables.
Set the base URL and token
export ANTHROPIC_BASE_URL="https://code.test.indicia-ai.com"
export ANTHROPIC_AUTH_TOKEN="$INDICIA_TOKEN"The base URL is the bare host: Claude Code adds /v1 itself.
ANTHROPIC_AUTH_TOKEN sends the token as Authorization: Bearer.
ANTHROPIC_API_KEY also works; it sends x-api-key, and Claude Code asks
once in interactive mode before it uses the key.
Pick a Claude model
Start Claude Code with a Claude model id from the pool:
claude --model claude-sonnet-5-5Or set ANTHROPIC_MODEL to the id. GET /v1/models
lists the Claude models the pool offers right now (owned_by: "anthropic").
Use Claude model ids
A model class such as indicia/sterk also works, as its first Claude
candidate, but Claude Code does not recognise the name and warns about it.
Leave Claude Code's gateway model discovery off: /v1/models also lists
ChatGPT models, which /v1/messages does not serve.
Check the connection
Run /status in Claude Code. The Anthropic base URL line shows the
gateway, and the Auth token line names ANTHROPIC_AUTH_TOKEN.
Keep it in a settings file
To make the gateway apply in every terminal, put the variables in the env
block of ~/.claude/settings.json:
{
"env": {
"ANTHROPIC_BASE_URL": "https://code.test.indicia-ai.com",
"ANTHROPIC_AUTH_TOKEN": "ic_...",
"ANTHROPIC_MODEL": "claude-sonnet-5-5"
}
}Keep the token out of repositories
Do not put the token in a project's .claude/settings.json, which is
committed. Use ~/.claude/settings.json or .claude/settings.local.json.
While the variables are set, your claude.ai login stays saved but unused. Unset them to go back to it.