Disclosure and availability:DaoXE is a service we operate. It is not available in mainland China. This article is for developers in regions allowed by the service terms.
Most coding assistants still speak one common dialect: OpenAI Compatible with a custom base URL.
That is convenient for migration. It is not the whole story of a multi-model gateway.
I run coding clients against DaoXE, a multi-protocol API gateway that exposes more than Chat Completions. This post is the practical setup path I use for Cline, Continue, Roo Code, Aider, and similar tools: one base URL, one key, live model discovery, and no hardcoded model IDs from blog posts.
If you want the protocol-level checklist first, start with:
This is a client configuration guide.
It is not a claim that DaoXE is a built-in provider inside Cline, Continue, Roo Code, Aider, LibreChat, or Open WebUI. In every case below, you use the client's generic OpenAI-compatible / custom endpoint option.
It is also not a claim that every client uses every protocol. Many IDE tools only talk Chat Completions. Other stacks prefer OpenAI Responses or Anthropic Messages. The gateway may support all three; the client may only use one.
Before opening any settings panel, collect three values from your own account:
| Value | Where it comes from | Do not |
|---|---|---|
| Base URL | Fixed for DaoXE | Invent alternate paths |
| API key | Your dashboard after sign-in | Paste into git, screenshots, or shared configs |
| Model ID | Current account catalog | Copy a model name from an old tutorial |
Exact values for DaoXE:
Base URL: https://daoxe.com/v1
API key: create in your own DaoXE account
Model ID: copy an exact ID currently available to your account
Homepage for account and docs: https://daoxe.com/?utm_source=devto&utm_medium=organic&utm_campaign=global_launch_clients
Public examples and client notes: https://github.com/seven7763/DaoXE-AI
Detailed client matrix: CLIENT_SETUP.md
If the endpoint is wrong, every client will look broken.
I always run the same two checks from the first post before I touch VS Code settings.
export DAOXE_API_KEY="your_api_key"
export DAOXE_BASE_URL="https://daoxe.com/v1"
curl --fail-with-body --show-error --silent \
-H "Authorization: Bearer $DAOXE_API_KEY" \
"$DAOXE_BASE_URL/models"
What I want:
Copy one ID from the response. Do not invent a pretty alias.
export DAOXE_MODEL="paste_exact_model_id_here"
curl --fail-with-body --show-error --silent \
-H "Authorization: Bearer $DAOXE_API_KEY" \
-H "Content-Type: application/json" \
-d "{
\"model\": \"$DAOXE_MODEL\",
\"max_tokens\": 8,
\"messages\": [{\"role\":\"user\",\"content\":\"ping\"}]
}" \
"$DAOXE_BASE_URL/chat/completions"
If this fails, stop. Fix auth, base URL, or model ID before opening the IDE.
DaoXE is multi-protocol. Public surface includes:
Coding assistants in this post mostly use the OpenAI Compatible path:
https://daoxe.com/v1
That is intentional. When Cline or Continue asks for a base URL and an API key, you are almost certainly on Chat Completions. That is fine. Just do not assume the gateway is OpenAI-only or limited to one model family because the client form is OpenAI-shaped.
If another tool in your stack speaks Responses or Anthropic Messages, configure that tool for that protocol. Do not force every client through the same dialect.
Cline is configured through OpenAI Compatible, not through a native DaoXE dropdown.
https://daoxe.com/v1
.Notes:
DaoXE
provider option to look for./v1
unless the client requires them.Roo Code follows the same OpenAI-compatible pattern as Cline.
https://daoxe.com/v1
.If a menu item looks like a branded provider list, do not assume DaoXE is there. Use the custom compatible endpoint path.
Continue usually means provider openai
plus a custom apiBase
.
Conceptually:
models:
- name: DaoXE current model
provider: openai
model: paste_exact_model_id_here
apiBase: https://daoxe.com/v1
apiKey: your_api_key
Practical rules:
provider: openai
here means the OpenAI-compatible protocol shape, not "only OpenAI models".apiBase
should be https://daoxe.com/v1
./models
when the catalog changes.If Continue cannot list models, validate with curl first. IDE plugins often obscure 401 vs 404 vs timeout.
Aider is environment-variable driven for many OpenAI-compatible endpoints.
Typical pattern:
export OPENAI_API_BASE=https://daoxe.com/v1
export OPENAI_API_KEY=your_api_key
Because Aider versions differ, treat the living notes in CLIENT_SETUP.md as the source of truth for flag names. The invariants stay the same: base URL, key, exact model ID.
LibreChat uses a custom endpoint style configuration rather than a DaoXE-specific built-in.
Pattern:
https://daoxe.com/v1
Do not paste keys into shared YAML committed to a public repo.
Open WebUI is another Chat Completions-path client. That does not prevent other tools from using Responses or Anthropic Messages against the same gateway.
Typical setup:
https://daoxe.com/v1
.If models fail to load, re-run the curl /models
check from the same machine/network.
Every client above collapses to the same checklist:
https://daoxe.com/v1
.| Symptom | Check first |
|---|---|
| 401 in client | Key missing, wrong field, or trailing whitespace |
| Empty model list | Base URL wrong, or key cannot call /models
|
| Model not found | ID not from current account catalog |
| Works in curl, fails in IDE | Plugin rewriting paths, proxy, or wrong provider type |
| Timeout only in IDE | Corporate proxy / extension host network |
max_tokens
tiny during smoke tests to limit accidental spend.Because your stack is bigger than one IDE:
Configuring Cline correctly is necessary. It is not the whole gateway story.
/models
with your key.https://daoxe.com/v1
.