slug: agents

Supported Agents

OAR supports the agents below out of the box. Point any of them at the local proxy port and route through one of the four routing methods.

AgentProtocolRecommended base_url
Claude CodeAnthropic Messages/agent/claude/v1/messages or /project/xxx/v1/messages
OpenAI CodexCodex Responses/group/coding/v1/completions or /project/xxx/v1/completions
HermesOpenAI Chat Completions/project/xxx/v1/chat/completions
OpenClawCustom/project/xxx/v1/chat/completions
OpenAI SDKOpenAI Chat Completions/agent/hermes/v1/chat/completions
Gemini CLIGoogle AI/project/xxx/v1/models
Claude DesktopAnthropic Messages/agent/claude-desktop/v1/messages or /project/xxx/v1/messages
OpenCodeOpenAI Chat Completions/project/xxx/v1/chat/completions
Kimi CodeOpenAI Chat Completions/project/xxx/v1/chat/completions
Qwen CodeOpenAI Chat Completions/project/xxx/v1/chat/completions
GitHub Copilot CLIOpenAI Chat Completions/project/xxx/v1/chat/completions

Claude Code

Claude Code speaks the Anthropic Messages protocol. Set its base_url to a project route and the model field to whatever alias you've mapped (e.g. claude-sonnet-4). OAR handles the rest — including falling back to an OpenAI-protocol model in the same group when Claude is rate-limited.

OpenAI Codex

Codex uses the Codex Responses protocol. Through the r2o and r2a adapters it can reach any OpenAI- or Anthropic-protocol model.

Hermes

Hermes speaks OpenAI Chat Completions — the most widely supported protocol. Project routes are recommended.

OpenClaw

OpenClaw uses a custom protocol. Project routes work; the adapter layer handles conversion.

OpenAI SDK

Any client built on the OpenAI SDK (Python, Node, Go) can point at an agent route. The SDK only needs a base_url and an API key — OAR accepts any key string here since real keys live in the key pool.

Gemini CLI

Gemini CLI speaks Google AI. The g2o and g2a adapters let it reach OpenAI- and Anthropic-protocol upstreams.

Claude Desktop

Claude Desktop is a GUI app that uses Anthropic Messages through a 3P gateway profile. OAR writes the gateway profile to Claude's configLibrary directory. Claude Desktop only discovers models with claude-sonnet-*, claude-opus-*, claude-haiku-*, or claude-fable-* names — assign aliases in your group to match these patterns.

OpenCode

OpenCode supports custom providers via @ai-sdk/openai-compatible. OAR registers as a provider named oar in opencode.json. Both agent-level and project-level configs are supported.

Kimi Code

Kimi Code uses TOML config (~/.kimi-code/config.toml). OAR creates a provider named oar with model aliases prefixed oar/. Project-level uses env var wrapper scripts since Kimi Code doesn't support project config files.

Qwen Code

Qwen Code is a fork of Gemini CLI and uses ~/.qwen/settings.json. OAR registers under the openai model provider. Both agent-level and project-level configs are supported.

GitHub Copilot CLI

Copilot CLI uses env vars instead of a config file. OAR writes ~/.copilot/.oar-env and sources it from .zshrc/.bashrc (conda-style pattern). Project-level creates wrapper scripts (copilot / copilot.cmd) that export env vars then exec copilot.

First-run auto-scan

On first launch OAR can scan your local config files and pre-create platform instances with their API keys:

SourceScan path
Hermes~/.hermes/config.yaml + .env + auth.json
Claude Code~/.claude.json + project-level CLAUDE.md
Claude Desktop~/Library/Application Support/Claude-3p/configLibrary/*.json
Codex~/.codex/config.json
OpenCode~/.config/opencode/opencode.json + project-level opencode.json
OpenClawdatabase + config files
Gemini CLI~/.gemini/settings.json
Kimi Code~/.kimi-code/config.toml
Qwen Code~/.qwen/settings.json
GitHub Copilot CLI~/.copilot/.oar-env + shell profile

Scan results are presented for confirmation before anything is written to SQLite — you stay in control.

Mix and match

A single group can hold Claude Sonnet (Anthropic), GLM-5.2 (OpenAI) and DeepSeek V4 (OpenAI) at once. The adapter layer makes the protocol differences invisible to the agent.

That's the full agent matrix. Head back to the Quickstart to wire up your first route.