Compatibility
Coding agents
Claude Code, Codex, OpenCode, Cline and Roo Code.
Coding agents speak one of three API shapes, and Odyssey serves all of them: Anthropic Messages for Claude Code, OpenAI Responses for Codex, and chat completions for most others. Any model works with any agent, because Odyssey translates between the shapes.
Create a key on the API keys page first. A dedicated key per agent, with a spend limit, keeps a runaway loop from reaching the rest of your balance.
Claude Code
Point Claude Code at Odyssey with environment variables. The base URL has no /v1: Claude Code adds it.
export ANTHROPIC_BASE_URL="https://odysseyapi.tech"export ANTHROPIC_AUTH_TOKEN="sk-ody-..."export ANTHROPIC_MODEL="anthropic/claude-sonnet-5"export ANTHROPIC_DEFAULT_HAIKU_MODEL="anthropic/claude-haiku-4.5" claudeANTHROPIC_API_KEY works too, if you prefer it to ANTHROPIC_AUTH_TOKEN. Odyssey accepts the key in either header.
Codex CLI
Add Odyssey as a model provider using the Responses API, then export your key as ODYSSEY_API_KEY.
# ~/.codex/config.tomlmodel = "openai/gpt-5"model_provider = "odyssey" [model_providers.odyssey]name = "Odyssey"base_url = "https://odysseyapi.tech/v1"env_key = "ODYSSEY_API_KEY"wire_api = "responses"OpenCode
Add an OpenAI-compatible provider to opencode.json and list the models you want in the picker.
{ "$schema": "https://opencode.ai/config.json", "provider": { "odyssey": { "npm": "@ai-sdk/openai-compatible", "name": "Odyssey", "options": { "baseURL": "https://odysseyapi.tech/v1", "apiKey": "{env:ODYSSEY_API_KEY}" }, "models": { "anthropic/claude-sonnet-5": { "name": "Claude Sonnet 5" }, "openai/gpt-5": { "name": "GPT-5" } } } }}Cline and Roo Code
- Open the extension's settings and choose OpenAI Compatible as the API provider.
- Set the base URL to
https://odysseyapi.tech/v1and paste your Odyssey key. - Enter a model id from the catalogue, such as
anthropic/claude-sonnet-5.
Tips for long sessions
- Agents stream, which is what they should do: very long non-streaming requests can be cut off by network timeouts before the model finishes.
- The 30 requests per minute of a new pay-as-you-go account can be tight for an agent making many small calls. Purchasing $10 of credit lifts it, and plans run from 15 to 300 requests per minute, or unlimited on Odyssey. See rate limits and plan allowances.
Model ids are namespaced
Agents need the full Odyssey id, anthropic/claude-sonnet-5 rather than claude-sonnet-5. A missing prefix returns 404 model_not_found.