1. Install Claude Code
Install the official Claude Code CLI, then verify that the claude command is available.
npm install -g @anthropic-ai/claude-codeclaude --versionClaude Code
Run Claude Code through one Zion key, with Kiro Opus routes and Codex-backed Sonnet/Haiku aliases.
Install the official Claude Code CLI, then verify that the claude command is available.
npm install -g @anthropic-ai/claude-codeclaude --versionWrite ~/.claude/settings.json with Zion Router as the Anthropic base URL. Use the host root, not /v1 — Claude Code appends /v1/messages itself.
Sign up to get an API key and prefill the snippets below. Sign up free
{
"model": "claude-opus-4.6",
"env": {
"ANTHROPIC_BASE_URL": "https://api-dev.zionrouter.com",
"ANTHROPIC_AUTH_TOKEN": "zr-...",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4.6",
"ANTHROPIC_DEFAULT_OPUS_MODEL_NAME": "Kiro Opus 4.6",
"ANTHROPIC_CUSTOM_MODEL_OPTION": "claude-opus-4.7",
"ANTHROPIC_CUSTOM_MODEL_OPTION_NAME": "Kiro Opus 4.7",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-5",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5"
}
}claude --model claude-opus-4.8Keep ANTHROPIC_BASE_URL as https://api-dev.zionrouter.com. Do not add /v1. Replace the masked key with the full zr- key shown once when you create it.
One block that writes ~/.claude/settings.json and creates ~/.claude if missing.
macOS / Linux (bash, zsh)
mkdir -p ~/.claude
cat > ~/.claude/settings.json << 'EOF'
{
"model": "claude-opus-4.6",
"env": {
"ANTHROPIC_BASE_URL": "https://api-dev.zionrouter.com",
"ANTHROPIC_AUTH_TOKEN": "zr-...",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4.6",
"ANTHROPIC_DEFAULT_OPUS_MODEL_NAME": "Kiro Opus 4.6",
"ANTHROPIC_CUSTOM_MODEL_OPTION": "claude-opus-4.7",
"ANTHROPIC_CUSTOM_MODEL_OPTION_NAME": "Kiro Opus 4.7",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-5",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5"
}
}
EOFWindows (PowerShell)
New-Item -ItemType Directory -Force -Path "$HOME\.claude" | Out-Null
@'
{
"model": "claude-opus-4.6",
"env": {
"ANTHROPIC_BASE_URL": "https://api-dev.zionrouter.com",
"ANTHROPIC_AUTH_TOKEN": "zr-...",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4.6",
"ANTHROPIC_DEFAULT_OPUS_MODEL_NAME": "Kiro Opus 4.6",
"ANTHROPIC_CUSTOM_MODEL_OPTION": "claude-opus-4.7",
"ANTHROPIC_CUSTOM_MODEL_OPTION_NAME": "Kiro Opus 4.7",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-5",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5"
}
}
'@ | Set-Content -Path "$HOME\.claude\settings.json" -Encoding UTF8These model names work with Claude Code through Zion Router. Kiro Opus routes use the Kiro pool; Sonnet and Haiku are Claude-compatible aliases routed to Codex-backed models.
| Model | Route |
|---|---|
| claude-opus-4.6 | Kiro Opus route; default Opus slot |
| claude-opus-4.7 | Kiro Opus route; custom menu slot in the sample config |
| claude-opus-4.8 | Kiro Opus route; select by full model code |
| claude-sonnet-4-5 | Claude-compatible alias routed to Codex |
| claude-haiku-4-5 | Claude-compatible alias routed to Codex |
Claude Code only supports one custom menu slot. The config above shows 4.7 in the menu; 4.8 still works with --model claude-opus-4.8 or /model claude-opus-4.8.
Start a new terminal or Claude Code session after editing settings.json so the environment reloads.
claude -p "Say exactly: zion ok"claude --model claude-opus-4.8 -p "Review this project"/modelTop up any amount to start. No credit card required.