Skip to main content
Auriko routes Claude Code and Claude Agent SDK requests through multiple providers, giving you model choice, cost controls, and fallbacks.
Claude Code features work through Auriko: tool use, MCP servers, streaming, extended thinking, and prompt caching. Only LLM inference routes through Auriko; agentic operations (file I/O, bash, MCP) run locally.

Prerequisites

Set up Claude Code

Add 3 environment variables to your shell profile (~/.zshrc or ~/.bashrc):
ANTHROPIC_API_KEY="" must be explicitly set to empty. If it contains a value, Claude Code uses it directly against Anthropic, bypassing Auriko.
Reload your shell after saving:

Verify setup

Claude Code includes a system prompt on every request. The first request in a session costs more than follow-ups due to prompt caching.

Use different models

You can pass an Auriko model ID with the --model flag:
Model IDs must be exact. Claude Code requires reasoning support from every model. Models that don’t support reasoning return a 400 error. Browse per-model capabilities in the directory API. Available models include: To list available models:
The /model picker in interactive sessions lists only Claude tier names (Opus, Sonnet, and Haiku). To switch to a non-Claude model mid-session, type the full ID: /model deepseek-v4-flash. You can override which model each tier maps to:
Add these to your shell profile alongside the other environment variables.

Set up Claude Agent SDK

The Claude Agent SDK is Python-only. For TypeScript, use the Anthropic SDK directly (see below). The Claude Agent SDK spawns Claude Code as a subprocess. Pass Auriko credentials through ClaudeAgentOptions.env:
To prevent filesystem settings from overriding your env values, pass setting_sources=[] in options.

Use the Anthropic SDK directly

You can point the Anthropic SDK at Auriko’s API:

Configure routing

Add a gateway object to the request body:
For Claude Code, configure routing at the workspace level in the Auriko dashboard. See routing options for details.

Troubleshoot