Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.auriko.ai/llms.txt

Use this file to discover all available pages before exploring further.

Auriko connects to OpenClaw as a custom model provider. You can use multiple models through a single API key.

Prerequisites

Install OpenClaw

Install via npm:
npm install -g openclaw@latest
Or use the installer script:
curl -fsSL https://openclaw.ai/install.sh | bash
If you used the installer script, open a new terminal. Then confirm:
openclaw --version
You need version v2026.1.30 or later. Start the gateway daemon:
openclaw onboard --install-daemon
The daemon runs on port 18789 and must be running for OpenClaw to process requests.

Set your API key

Export your API key:
export AURIKO_API_KEY="ak_live_..."
Your key starts with ak_live_ (production) or ak_test_ (testing). To persist across terminal sessions, add this line to ~/.zshrc or ~/.bashrc. Reload your shell after saving:
source ~/.zshrc   # or: source ~/.bashrc
Or open a new terminal. If you installed the daemon via openclaw onboard --install-daemon, also register the key with the daemon:
openclaw config set env.vars.AURIKO_API_KEY "$AURIKO_API_KEY"
The daemon runs as a LaunchAgent and doesn’t inherit your shell’s environment variables. Without this step, the daemon can’t resolve ${AURIKO_API_KEY} from the config file.

Configure the provider

Create or update ~/.openclaw/openclaw.json with the Auriko provider:
{
  models: {
    mode: "merge",
    providers: {
      "auriko": {
        baseUrl: "https://api.auriko.ai/v1",
        apiKey: "${AURIKO_API_KEY}",
        api: "openai-completions",
        agentRuntime: { id: "pi" },
        models: [
          { id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6", contextWindow: 1000000, maxTokens: 64000 },
          { id: "claude-opus-4-6", name: "Claude Opus 4.6", contextWindow: 1000000, maxTokens: 128000 },
          { id: "claude-opus-4-7", name: "Claude Opus 4.7", contextWindow: 1000000, maxTokens: 128000 },
          { id: "deepseek-v4-flash", name: "DeepSeek V4 Flash", contextWindow: 1000000, maxTokens: 8192 },
          { id: "deepseek-v4-pro", name: "DeepSeek V4 Pro", contextWindow: 1000000, maxTokens: 8192 },
          { id: "gemini-2.5-flash", name: "Gemini 2.5 Flash", contextWindow: 1000000, maxTokens: 65536 },
          { id: "gemini-2.5-pro", name: "Gemini 2.5 Pro", contextWindow: 1000000, maxTokens: 65536 },
          { id: "gemini-3.1-pro-preview", name: "Gemini 3.1 Pro Preview", contextWindow: 1000000, maxTokens: 65536 },
          { id: "glm-5.1", name: "GLM-5.1", contextWindow: 200000, maxTokens: 8192 },
          { id: "grok-4.3", name: "Grok 4.3", contextWindow: 1000000, maxTokens: 8192 },
          { id: "kimi-k2.5", name: "Kimi K2.5", contextWindow: 262144, maxTokens: 8192 },
          { id: "kimi-k2.6", name: "Kimi K2.6", contextWindow: 262144, maxTokens: 8192 },
          { id: "minimax-m2-7", name: "MiniMax M2.7", contextWindow: 205000, maxTokens: 8192 },
          { id: "minimax-m2-7-highspeed", name: "MiniMax M2.7 Highspeed", contextWindow: 205000, maxTokens: 8192 },
          { id: "qwen-3.6-plus", name: "Qwen 3.6 Plus", contextWindow: 1000000, maxTokens: 8192 }
        ]
      }
    }
  },
  agents: {
    defaults: {
      model: {
        primary: "auriko/claude-sonnet-4-6"
      },
      models: {
        "auriko/claude-sonnet-4-6": {},
        "auriko/claude-opus-4-6": {},
        "auriko/claude-opus-4-7": {},
        "auriko/deepseek-v4-flash": {},
        "auriko/deepseek-v4-pro": {},
        "auriko/gemini-2.5-flash": {},
        "auriko/gemini-2.5-pro": {},
        "auriko/gemini-3.1-pro-preview": {},
        "auriko/glm-5.1": {},
        "auriko/grok-4.3": {},
        "auriko/kimi-k2.5": {},
        "auriko/kimi-k2.6": {},
        "auriko/minimax-m2-7": {},
        "auriko/minimax-m2-7-highspeed": {},
        "auriko/qwen-3.6-plus": {}
      }
    }
  }
}
The models array uses bare IDs (claude-sonnet-4-6) matching what Auriko’s API expects. The agents.defaults.models object uses prefixed IDs (auriko/claude-sonnet-4-6). OpenClaw doesn’t route to a model unless it appears in both places. models.mode: "merge" keeps OpenClaw’s bundled providers alongside Auriko. If you already have a config from openclaw onboard, merge the auriko provider into your existing models.providers object and add the auriko/ entries to your existing agents.defaults.models. ${AURIKO_API_KEY} reads your environment variable. Don’t paste your key into the config. agentRuntime: { id: "pi" } selects the embedded agent harness. Without it, OpenClaw defaults to codex which requires a separate binary.

Verify

Test that the connection works:
openclaw agent --message "Say exactly: setup-ok"

Use different models

Switch the active model from the CLI:
openclaw models set auriko/deepseek-v4-flash
To switch models during an interactive session, type /model auriko/<id>. Models available through Auriko:
ModelAuthorContext
claude-sonnet-4-6Anthropic1M
claude-opus-4-6Anthropic1M
claude-opus-4-7Anthropic1M
deepseek-v4-flashDeepSeek1M
deepseek-v4-proDeepSeek1M
gemini-2.5-flashGoogle1M
gemini-2.5-proGoogle1M
gemini-3.1-pro-previewGoogle1M
glm-5.1Z.AI200K
grok-4.3xAI1M
kimi-k2.5Moonshot262K
kimi-k2.6Moonshot262K
minimax-m2-7MiniMax205K
minimax-m2-7-highspeedMiniMax205K
qwen-3.6-plusAlibaba1M
To use a model not in this list, add its bare ID to models.providers.auriko.models and its prefixed ID to agents.defaults.models in your config. To list all Auriko models:
curl -s -H "Authorization: Bearer $AURIKO_API_KEY" \
  https://api.auriko.ai/v1/models | jq '.data[].id'
OpenClaw includes a diagnostic command:
openclaw doctor
This checks daemon connectivity, provider configuration, and model availability. Run openclaw doctor --fix to auto-resolve common problems.

Control routing

Configure routing in the Auriko dashboard. See routing options for details.

Uninstall

Remove the auriko provider block from ~/.openclaw/openclaw.json and delete any auriko/ entries from agents.defaults.models. Remove AURIKO_API_KEY from your shell profile (~/.zshrc or ~/.bashrc).

Troubleshoot

SymptomCauseFix
Error: API key is invalid.AURIKO_API_KEY not set or wrongRun echo $AURIKO_API_KEY. If empty, export it. If set, verify at https://api.auriko.ai/v1/me
Error: Model not found: auriko/<id>Model not in agents.defaults.models or provider’s models arrayAdd the model to both places in ~/.openclaw/openclaw.json
Connection refused on port 18789Daemon isn’t runningRun openclaw gateway status. If stopped, run openclaw onboard --install-daemon
openclaw: command not foundnpm global bin not in PATHRun export PATH="$(npm prefix -g)/bin:$PATH"
Config parse error on startupInvalid JSON5 in openclaw.jsonRun openclaw config schema to validate. Check for mismatched braces
Empty response from agentModel missing contextWindow in provider configAdd contextWindow and maxTokens to the model definition
Duplicated response content (setup-oksetup-ok)OpenClaw pi harness concatenation bugKnown upstream issue. Responses are correct but repeated. Doesn’t affect all models equally. No user-side fix available.
API key valid in shell but agent requests failDaemon doesn’t inherit shell env varsRun openclaw config set env.vars.AURIKO_API_KEY "$AURIKO_API_KEY"