Cursor 自定义 API 配置:Base URL 作用范围与不生效排查

博客 / 开发工具

Cursor 自定义 API 配置:Base URL 作用范围与不生效排查

Cursor 自定义 API 能做的事比很多教程说的要少:在设置里填 OpenAI API Key 并打开 Override OpenAI Base URL,只会影响聊天、Agent 这类会调用"OpenAI 格式模型"的功能,Tab 补全仍然走 Cursor 自家的模型;而且请求是先发到 Cursor 的云端、再由云端转发到你填的地址,所以 localhost 和内网地址填了也不会生效。弄清这两点,大部分"配了没反应"的问题就能定位。

下面先把作用范围列成一张表,再给一条排查顺序。文中提到的设置项名称以撰写时 Cursor 的英文界面为准,Cursor 更新频繁,菜单位置可能变化,遇到不一致请以 Cursor 官方文档 和你当前版本的设置页为准。

Cursor 的自定义 API Key 和 Base URL 到底管什么?

在 Cursor Settings 的 Models 页面里,通常能看到几组 API Key 输入框(OpenAI、Anthropic、Google 等),OpenAI 那一组下面有一个 Override OpenAI Base URL 的开关。它的含义是:凡是 Cursor 按 OpenAI 接口格式去调用的模型,都改为把请求发到你填的地址,并带上你填的 Key。

几个容易误解的地方:

问题实际情况影响
覆盖的是一个模型还是全部?打开 Override 后作用于所有走 OpenAI 格式的模型,不是只改你新加的那个你的端点不认识的模型名会直接报错
Tab 补全会走自定义端点吗?不会。Tab 用的是 Cursor 自家的补全模型自定义 Key 不能替代 Cursor 订阅里的补全额度
请求从哪里发出?从 Cursor 的服务器发出,不是从你的电脑直接发出localhost、127.0.0.1、192.168.x.x 无效,地址必须公网可达
所有功能都能用自定义模型吗?不一定。部分功能(例如某些 Agent 能力、代码应用)依赖 Cursor 自己的模型或特定能力,自定义模型可能不可选或表现不同同一个模型在 Ask 能用、在 Agent 报错是常见现象
填了 Key 会不会还走 Cursor 额度?走自定义 Key 的那部分请求按你的 Key 计费;没被覆盖的功能(如 Tab)照常用 Cursor 的账单要分两边看
代码会不会经过 Cursor?会。即使用自己的 Key,提示词也是在 Cursor 服务端拼装后转发涉及隐私时要同时看 Cursor 和端点方两边的数据政策

如果你选自定义端点是出于数据方面的考虑,要知道数据会同时经过 Cursor 和端点提供方两家,两份政策都要读。怎么读数据政策可以参考用第三方 AI API 时,代码和对话会被看到吗。

为什么填了 Base URL 还是不生效?

Cursor 论坛里的同类求助,原因大致是这几类:

  1. 地址从公网访问不到。 前面说过,请求由 Cursor 服务端发出。你本机能 curl 通,不代表 Cursor 的服务器能访问到。本地起的代理、公司内网网关、只在本机 hosts 里解析的域名都属于这一类。
  2. 路径少了或多了 /v1。 大多数 OpenAI 兼容端点要求 Base URL 写到 /v1 为止,例如 https://api.example.com/v1,Cursor 再自己拼接 /chat/completions。写成 https://api.example.com 或 https://api.example.com/v1/chat/completions 都可能 404。具体以端点方文档为准。
  3. 接口格式不匹配。 Override OpenAI Base URL 只会发 OpenAI 格式的请求。如果端点只支持 Anthropic 的 Messages 格式,或者对 OpenAI 格式支持不完整(比如不支持流式、不支持 tools 字段),就会出现 Ask 能用、Agent 报错的情况。
  4. 模型名不对。 你在 Cursor 里添加的模型名要和端点 /v1/models 返回的 id 完全一致,大小写和前缀都算。打开 Override 后,Cursor 内置的其他 OpenAI 模型名也会发到你的端点,端点不认识就报错,所以建议把用不到的模型在列表里关掉。
  5. 网络层的 HTTP/2 问题。 有些网络环境(公司代理、部分安全软件)对 HTTP/2 长连接处理不好,表现为请求挂起或流式输出中断。Cursor 设置的 Network 部分提供 HTTP 兼容模式,可以切到 HTTP/1.1 再试。注意这个设置影响的是你的电脑到 Cursor 服务器这一段,不是 Cursor 到你端点的那一段。
  6. Key 验证没过。点 Verify 时 Cursor 会发一个测试请求;验证没通过时,先看报错原文定位原因,不要反复重填。

一条可以照做的排查顺序

按下面顺序做,每一步只改一个变量。

第 1 步:先确认 Cursor 本身没出问题

自定义端点不通时,先排除 Cursor 服务端故障,因为请求必须经过它。打开 Cursor 挂了吗 看当前报告,或在 API 状态页 查同步过来的 Cursor 官方状态页事件。cdnping 每 15 分钟同步一次 Cursor 官方状态页。按 cdnping 同步到的记录,2026-09-17 到 2026-10-17 期间 Cursor 状态页共有 25 起事件,其中 major 5 起、minor 20 起;例如 2026-10-13 00:22(UTC)开始的 "Degraded performance and errors across Cursor services" 持续约 165 分钟。cdnping 自己的探测从 2026-10-17 才开始,这里的事件数取自官方状态页的历史记录,窗口只有一个月,不是长期统计。

如果这段时间里 Cursor 有事件,先等它恢复再排查自己的配置。事件等级和组件怎么看,可以参考怎么看 OpenAI 状态页和 Claude 状态页,方法对 Cursor 状态页同样适用。如果同一时段其他 AI 服务也在报错,可以对照 AI 服务故障盘点:2026 年 9–10 月 判断是不是上游的共性问题。

第 2 步:用 curl 从公网验证端点

不要只在本机测。最好在一台云服务器上,或至少换一个网络执行:

# 把 BASE 换成你在 Cursor 里填的 Base URL(通常以 /v1 结尾)
BASE="https://api.example.com/v1"
KEY="sk-xxxx"

# 1) 列模型:确认地址可达、Key 有效,并拿到准确的模型 id
curl -sS "$BASE/models" -H "Authorization: Bearer $KEY" | head -c 800; echo

# 2) 非流式对话:把 your-model-id 换成上一步返回的 id
curl -sS "$BASE/chat/completions" \
  -H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
  -d '{"model":"your-model-id","messages":[{"role":"user","content":"ping"}]}'

# 3) 流式对话:Cursor 聊天使用流式,必须单独测
curl -sSN "$BASE/chat/completions" \
  -H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
  -d '{"model":"your-model-id","stream":true,"messages":[{"role":"user","content":"ping"}]}'

判断方法:

  • 第 1 条返回 HTML 页面或 404:Base URL 路径不对。
  • 第 1 条通、第 2 条报 model not found:模型名不对。
  • 第 2 条通、第 3 条没有逐行返回 data: 开头的内容:端点不支持流式,Cursor 里会表现为卡住或报错。
  • 三条都通,Cursor 里仍然不行:问题在 Cursor 侧的配置或功能限制,继续第 3 步。

如果想顺便看连接质量,可以用 cdnping 首页的在线测速,它在浏览器里测各家 AI API 的首次连接(含 DNS 与 TLS 握手)和往返时间。不过这测的是"你的浏览器到端点",和"Cursor 服务器到端点"不是同一条路径,只能作为参考。延迟由哪几段组成,见 AI API 延迟拆解:连接建立、网关往返与首 token 时间。

第 3 步:在 Cursor 里收窄变量

  1. 在 Models 列表里只保留一个你确认存在的模型 id,其他 OpenAI 模型先关掉。
  2. 重新点 Verify,记下报错原文。
  3. 先在 Ask(问答)模式发一句简单的话;能用之后,再切到 Agent 模式试同样的问题。
  4. Ask 正常、Agent 报错:大概率是端点对 tools/function calling 的支持不完整,或该功能本身不支持自定义模型。前者问端点方,后者看 Cursor 文档。
  5. 两个模式都卡住、流式中断:到 Network 设置里切 HTTP 兼容模式(HTTP/1.1),重启 Cursor 后再试。

第 4 步:确认地址确实是公网可达的 HTTPS

如果你的端点跑在本地或内网,Cursor 服务端连不到它,这是架构决定的,换配置解决不了。需要部署到一个有公网域名、证书有效的地址上。顺带检查一下域名解析是否在不同网络下一致,以及证书链是否完整,浏览器打开 https://你的域名/v1/models 不报证书警告是最低要求。

排查检查表

把上面的内容压缩成一张表,排查时逐项勾:

检查项怎么确认通过标准
Cursor 服务正常/down/cursor、/status当前无进行中的事件
Base URL 路径curl $BASE/models返回 JSON 模型列表
公网可达在另一台机器或网络执行 curl与本机结果一致
模型 id对照 /models 返回与 Cursor 中填写的完全一致
流式支持curl 带 "stream":true逐行返回 data:
其他模型已关闭Cursor Models 列表只启用端点支持的模型
Verify 结果设置页无报错
Ask / Agent 分别测试Cursor 聊天面板至少 Ask 可用
HTTP 兼容模式Network 设置流式卡顿时切 HTTP/1.1 再试

选端点时还要看什么?

自定义端点接进 Cursor 以后,所有 OpenAI 格式的请求都会经过它,它出问题时 Cursor 的聊天和 Agent 也跟着不可用。接入前建议确认这几项:

举个例子,AGI Plan 是一个同时兼容 OpenAI 和 Anthropic 接口格式的聚合网关(AGI Plan 是 cdnping 的商业合作方),Cursor 属于"能填接口地址 + API Key"的工具之一,接入方式就是上面这套:Base URL 填它的地址,模型名照它 /models 的返回填写。它在 https://agiplan.dev/api/status/requests?month=YYYY-MM 公开逐小时、逐能力组的请求成功与失败计数,不需要登录,可以自己下载核对;站方也明确说明自己不是官方授权渠道。无论选哪家,都请先读清服务条款,并遵守所在地的法规和各模型提供方的使用政策。

相关文章

继续阅读