DurinDoor
Integrations

Cursor

Point Cursor at a public DurinDoor URL with an OpenAI-compatible custom model.

Cursor's servers call the custom model endpoint. Use a gateway URL those servers can reach, a DurinDoor key, and a model ID or combo. A loopback URL or private Tailscale-only address is insufficient.

The dashboard guide requires Cursor Pro for this feature. Availability and settings can depend on your Cursor version and plan.

Prepare the endpoint

Enable Tunnel or Cloud Endpoint under Endpoint. Require API keys and set a strong dashboard password before exposing the gateway. Then open CLI Tools → Cursor and copy the URL, key, and model. Cursor is a guide card; it does not edit Cursor settings.

Dashboard guide

The card hides its step list until Tunnel or Cloud Endpoint is enabled. Follow these steps in Cursor:

Open Settings, then Models.

Enable the "OpenAI API key" option.

Paste the base URL. The card substitutes {{baseUrl}} and always appends /v1 if it is missing.

Paste the API key. The localhost placeholder sk_durindoor is the wrong value here because the request is not local.

Click "View All Model", then "Add Custom Model".

Select the DurinDoor model id (or type a combo name).

Do not paste http://localhost:20128/v1 into Cursor. Enable Tunnel or Cloud Endpoint on Endpoint, then copy that public URL. Do not expose the dashboard with the default password.

Manual config

In Cursor, OpenAI-compatible custom API:

Base URL: https://example.invalid/v1
API key:  YOUR_DURINDOOR_API_KEY
Model:    provider/model-id

Replace the host with the tunnel or cloud URL from /dashboard/endpoint. Use a combo name if you want fallback to stay inside DurinDoor when you change providers later.

Create a dedicated key for Cursor so you can revoke it without affecting other clients.

Check it works

Send a short chat in Cursor using the custom model. Open Usage. If no row appears, Cursor is still on a built-in model or the base URL never left Cursor's cloud.

SymptomCheck
Card shows no stepsTunnel or Cloud Endpoint is off
Invalid API keyPaste the full DurinDoor secret, not an OpenAI platform key
Model not foundUse an id from GET /v1/models or a combo name
No usage rowCursor is not using the custom OpenAI provider

On this page

Edit on GitHub