Cursor (OpenAI-compatible)#
- Open Cursor Settings → Models. Under API Keys, enable OpenAI API Key and paste your DaoXE key.
- Override the base URL. Turn on Override OpenAI Base URL and set it to
https://daoxe.com/v1. - Add exact model IDs. Under Model Names, add exact IDs from
GET /v1/models. Guessed names fail silently. - Verify & test. Click Verify (it sends one live request), then try a plain chat message.
Caveats worth knowing
Cursor still routes requests through Cursor's own servers even with a custom key (a privacy/latency consideration). Tab autocomplete and some Cursor-specific features may keep using Cursor's built-in models. The Models UI changes between versions — cross-check the client setup notes.
Claude Code (native Anthropic Messages)#
Claude Code speaks Anthropic Messages, not OpenAI chat. DaoXE exposes that protocol natively at /v1/messages, so tool use and streaming work. Set two environment variables — no proxy or router needed.
# Claude Code reads the host ROOT; it appends /v1/messages itself
export ANTHROPIC_BASE_URL="https://daoxe.com"
export ANTHROPIC_AUTH_TOKEN="your_api_key" # some builds read ANTHROPIC_API_KEY
# optional: pin exact catalog IDs from GET /v1/models
export ANTHROPIC_MODEL="paste_exact_model_id_here"
export ANTHROPIC_SMALL_FAST_MODEL="paste_small_model_id_here"
claudeTwo traps
1) Base URL is the host root (https://daoxe.com), not .../v1 — Claude Code appends /v1/messages itself. 2) Auth header shape: some builds read ANTHROPIC_AUTH_TOKEN, others ANTHROPIC_API_KEY; export both if auth fails. Full walkthrough: Claude Code guide.
Prove the protocol with a raw request before touching Claude Code — if this fails, changing client settings won't help:
curl --fail-with-body --show-error --silent \
https://daoxe.com/v1/messages \
-H "x-api-key: ${DAOXE_API_KEY}" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "YOUR_EXACT_MODEL_ID",
"max_tokens": 64,
"messages": [{"role": "user", "content": "Reply with OK."}]
}'Other tools, same idea#
| Tool | Where to set it | Value |
|---|---|---|
| Cline / Roo Code | OpenAI Compatible provider | https://daoxe.com/v1 |
| Aider | OPENAI_API_BASE | https://daoxe.com/v1 + --model openai/<id> |
| Continue | apiBase in config.yaml | https://daoxe.com/v1 |
| LobeChat / Open WebUI | OpenAI-compatible connection | https://daoxe.com/v1 |
Verify you're not being downgraded#
Cheap relays sometimes serve a smaller model or truncate context — usually weeks in. Run a fixed probe set at temperature=0 and diff against the official API on a schedule. See how to detect model swapping and the open benchmark.
Frequently asked questions#
Will my existing Cursor setup break?
No — it's a base URL + key change you can revert anytime. Note that some Cursor features still use Cursor's built-in models.
Why does Claude Code use the host root, not /v1?
Claude Code builds the /v1/messages path itself, so ANTHROPIC_BASE_URL must be https://daoxe.com. Pointing it at .../v1 causes 404s.
ANTHROPIC_AUTH_TOKEN or ANTHROPIC_API_KEY?
It varies by Claude Code release. If one doesn't authenticate, export both to the same key.
Which models can I use?
Whatever your account exposes at GET /v1/models — GPT, Claude, Gemini, DeepSeek and more. Use exact IDs.
Try DaoXE — and benchmark it yourself
One key for GPT, Claude, Gemini, DeepSeek and more. Point the open benchmark at us and compare — don't take our word for it.