# How I configure Cline, Continue, and similar tools against a multi-protocol gateway

> Source: <https://dev.to/seven7763/how-i-configure-cline-continue-and-similar-tools-against-a-multi-protocol-gateway-44i1>
> Published: 2026-07-13 03:44:27+00:00

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](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](https://github.com/seven7763/DaoXE-AI)

Detailed client matrix: [CLIENT_SETUP.md](https://github.com/seven7763/DaoXE-AI/blob/main/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
# then pass the exact model ID with Aider's model flag/config for your version
```

Because Aider versions differ, treat the living notes in [CLIENT_SETUP.md](https://github.com/seven7763/DaoXE-AI/blob/main/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`

.
