Where does the bug appear (feature/product)?
Cursor IDE
Describe the Bug
When using Bring Your Own Key (BYOK) with Moonshot/Kimi (https://api.moonshot.cn/v1), selecting the built-in catalog model Kimi K3 (kimi-k3) fails with:
Provider Error: We’re having trouble finding the resource you requested.
The same API key, base URL, and model ID work when calling Moonshot directly via the OpenAI Python SDK (chat.completions.create(model=“kimi-k3”)).
I cannot add a custom model named kimi-k3 to force BYOK routing, because Cursor blocks it with:
The model “kimi-k3” is already available as “Kimi K3”.
This creates a deadlock: the built-in kimi-k3 does not correctly use my Moonshot endpoint, and I am not allowed to register a custom model with the same ID that Moonshot actually requires.
Steps to Reproduce
- Open Cursor Settings → Models.
- Save a valid Moonshot OpenAI-compatible API key and turn the OpenAI API Key toggle ON.
- Enable Override OpenAI Base URL and set it to https://api.moonshot.cn/v1.
- In the chat/agent model picker, select the built-in Kimi K3.
- Send a simple message such as hi.
- Observe the Provider Error / resource-not-found failure.
- Try Add Custom Model with name kimi-k3. Cursor rejects it because the name is already reserved for the built-in model.
- Separately, run the same key/base URL/model via a local Python OpenAI client to Moonshot. The request succeeds.
Expected Behavior
Built-in Kimi K3 should either:
correctly route through my Override OpenAI Base URL + API key to Moonshot kimi-k3, or
allow adding a custom model with the same provider model ID (kimi-k3) so BYOK can work.
A model ID that works with a direct OpenAI-compatible call should also work from Cursor Agent/Chat when BYOK is enabled.
Cursor should not reserve the exact provider model name in a way that blocks BYOK.
Screenshots / Screen Recordings
Operating System
Windows 10/11
Version Information
Version: 3.15.19 (user setup)
For AI issues: add Request ID with privacy disabled
Request ID: 48f39684-6615-4e1a-a2d7-d00bf1b22d56
{“error”:“ERROR_PROVIDER_ERROR”,“details”:{“title”:“Provider Error”,“detail”:“We’re having trouble finding the resource you requested. If the problem persists, please contact support.”,“isRetryable”:false,“additionalInfo”:{“providerStatusCode”:“404”},“buttons”:,“planChoices”:},“isExpected”:true}
We’re having trouble finding the resource you requested. If the problem persists, please contact support.
Provider Error We’re having trouble finding the resource you requested. If the problem persists, please contact support.
NonRetriableError: Provider Error We’re having trouble finding the resource you requested. If the problem persists, please contact support.
at b9_ (vscode-file://vscode-app/d:/devtools/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:7779:118432)
at dla (vscode-file://vscode-app/d:/devtools/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:7779:117015)
at O9_ (vscode-file://vscode-app/d:/devtools/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:7780:12878)
at Object.classify (vscode-file://vscode-app/d:/devtools/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:7780:17452)
at P9_ (vscode-file://vscode-app/d:/devtools/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:7780:5856)
at async xla.run (vscode-file://vscode-app/d:/devtools/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:7780:16804)
at async Gme.runAgentLoop (vscode-file://vscode-app/d:/devtools/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:7921:34550)
at async jwl.streamFromAgentBackend (vscode-file://vscode-app/d:/devtools/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:18819:14755)
at async jwl.getAgentStreamResponse (vscode-file://vscode-app/d:/devtools/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:18819:32098)
at async UUe._submitChatMaybeAbortCurrent (vscode-file://vscode-app/d:/devtools/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:7888:2569)
Does this stop you from using Cursor
Yes - Cursor is unusable

