---
title: Cursor
---


[Cursor](https://cursor.com) is an AI-first code editor. Its "bring your own key" (BYOK) settings let you override the OpenAI base URL and key, so pointing them at CrossModel lets you use the whole catalog from inside Cursor.

## Quickstart

Everything here happens in Cursor's settings panel.

### 1. Create an API key

Sign in to the [Console](/console/api-keys) and create a key that starts with `cm-` on the **API Keys** page. The key is shown only once, so copy it somewhere safe.

### 2. Open settings

Press `Cmd/Ctrl + ,` to open Cursor settings and go to the **API Keys** section under **Models**.

### 3. Enter the CrossModel URL and key

1. Turn on the **OpenAI API Key** toggle and paste your `cm-` key into the field.
2. Turn on **Override OpenAI Base URL** and enter:

   ```text
   https://api.crossmodel.ai/v1
   ```

### 4. Add a model

In the **Models** section, click **+ Add model** and enter a CrossModel model ID, for example:

```text
deepseek/deepseek-v4-pro
```

### 5. Select and chat

Pick the model you just added from the model selector in the chat panel, and your requests will route through CrossModel.

## How it works

Cursor's BYOK settings redirect OpenAI-compatible requests to the base URL you provide. CrossModel's `https://api.crossmodel.ai/v1` is OpenAI-compatible, so Cursor's chat and agent features route straight through.

<Callout type="warning">
  BYOK only applies to chat and agent modes. Tab autocomplete and some Auto modes are unaffected by BYOK and are still handled by Cursor itself.
</Callout>

## Choosing models

Every model you want to use must be added via **+ Add model** in `vendor/short_name` format, e.g. `openai/gpt-5.5` or `anthropic/claude-sonnet-4.6`. See the full list in the [model catalog](/models).

## Troubleshooting

| Symptom | What to check |
|---------|---------------|
| "Invalid key" | Make sure you entered the CrossModel `cm-` key, not an OpenAI key. |
| "Model not found" | Verify the model ID matches the `/v1/models` format, and watch the casing. |
| Requests bypass CrossModel | Confirm **Override OpenAI Base URL** is on and the URL ends with `/v1`. |
| Insufficient balance | Top up in the [Console](/console/billing). |
