cursor2api
将 Cursor 免费文档 AI 接口转换为 Claude Code 可用的标准 API 代理服务
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
将 Cursor 免费文档 AI 接口转换为 Claude Code 可用的标准 API 代理服务
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。

图1:Cursor2API 项目 Logo
想象这样一个工作日早晨:你的团队刚刚拿到一个大模型项目的需求文档,需要有人在本地跑通 AI Coding 环境、配置好工具链、验证基础功能是否可用。往常这需要反复查阅文档、手动配置 API Key、调试各种兼容性报错——一个下午就这么没了。
现在,有开发者(GitHub @7836246)做了一件很有价值的事:他发现 Cursor 编辑器的文档对话页面(cursor.com/cn/docs)提供了一个免费、无需认证的 AI 对话接口,这个接口调用的是 Google Gemini 模型。但问题是,这个接口既不是标准的 OpenAI 格式,也不是 Anthropic 的 Messages API 格式,直接拿来给 Claude Code 或其他主流 AI Coding 工具用,根本调不通。
Cursor2API 就是在解决这个「最后一公里」问题:它把这个非标准的 Cursor 接口,实时转换并代理为完整的 Anthropic Messages API 和标准的 OpenAI Chat Completions API,让 Claude Code、Cursor IDE(Agent 模式)、ChatBox、LobeChat 等主流工具都能直接用上这个免费接口。
这个项目的作者是一个活跃的 AI Coding 实践者。在 Cursor 编辑器的文档页面上,Cursor 团队提供了一个免费的 AI 对话入口,背后接的是 Google Gemini Flash 模型——无需注册、无需付费、无需 API Key,直接可用。这对于需要快速验证代码想法的开发者来说,是非常实用的资源。
然而,现实很骨感:大多数 AI Coding 工具(Claude Code、Cursor IDE、Roof-Code、Cline 等)都依赖标准的 API 格式进行通信。Cursor 的文档接口用的是自定义的请求/响应格式,和这些工具期望的 Anthropic Messages API 或 OpenAI Chat Completions API 完全对不上。强行对接需要大量兼容层代码,而且随着 Cursor 侧接口的迭代,维护成本极高。
Cursor2API 的作者做了两件事:
项目从 2024 年 12 月发布至今(2026 年 6 月),已经获得超过 1823 Stars,515 个 Forks,说明确实击中了大量开发者的痛点。
Cursor2API 绝不是简单的「URL 转发 + JSON 改写」,它是一个功能相当完善的生产级代理服务,包含多个精心设计的子系统:
项目同时实现了两个标准 API 端点:
/v1/messages):支持流式/非流式输出,专门为 Claude Code 设计。Claude Code 通过设置 ANTHROPIC_BASE_URL=http://localhost:3010 即可无缝使用 Cursor 的免费接口。/v1/chat/completions):兼容所有使用 OpenAI 格式的客户端,如 ChatBox、LobeChat、Open Interpreter 等。/v1/responses):针对 Cursor IDE 内置的 Agent 模式做了专门适配,包括扁平化工具格式和增量流式工具调用解析。与很多只支持部分工具的代理方案不同,Cursor2API 支持所有 MCP 工具和自定义扩展,没有白名单限制。这是通过 Schema 压缩和智能参数映射来实现的:
file_path → path)、智能引号替换、模糊匹配修复tools.disabled),完全不注入工具定义,极致省上下文这是 Cursor2API v2.7.x 版本的核心创新。针对 AI Coding 工具中常见的长输出被 max_output_token 截断的问题,项目实现了三大防截断机制(全部默认关闭,按需开启):
input_tokens 让客户端(Claude Code)提前触发自动压缩,从根源防止截断。系数 1.35 = Claude Code 假设窗口 200K / Cursor 实际窗口 150K支持多模态视觉能力:内置纯本地 CPU OCR(基于 Tesseract.js,零配置免 Key),也可外接第三方免费视觉大模型 API。图片 API 走独立代理通道,不影响主 API 稳定性。
三层身份保护机制:身份探针拦截 + 拒绝重试 + 响应清洗(可配置),确保输出始终呈现 Claude 身份。内置 50+ 中英文拒绝检测正则模式,自动重试 + 认知重构绕过。
支持两种日志持久化方式:JSONL 文件(轻量)和 SQLite 数据库(推荐,支持历史查询,避免大文件 OOM)。日志查看器提供 Web UI 界面(Vue.js 构建),支持日/夜主题切换和 API Token 鉴权。
Cursor2API 的技术栈非常清晰:
| 层次 | 技术选型 |
|---|---|
| 主语言 | TypeScript(Node.js 运行时) |
| Web 框架 | Express.js v5 |
| 构建工具 | TypeScript Compiler(tsc) |
| 开发工具 | tsx(热重载开发) |
| 依赖注入 | YAML 配置文件(config.yaml) |
| 数据库 | better-sqlite3(可选日志存储) |
| Token 计数 | js-tiktoken |
| OCR | tesseract.js(本地 CPU 图片文字识别) |
| HTTP 客户端 | undici(高性能 Node.js HTTP) |
| 流式解析 | eventsource-parser |
| Web UI | Vue.js 3(独立前端项目 vue-ui/) |
| 浏览器指纹 | Playwright Chromium(stealth-proxy 内置) |
源码结构清晰,按职责分为多个模块:
src/cursor-client.ts:与 Cursor 文档接口通信的核心客户端src/converter.ts:请求/响应的格式转换层src/openai-handler.ts:OpenAI 兼容端点处理src/handler.ts:Anthropic 端点处理src/vision.ts:图片处理模块src/tool-fixer.ts:工具参数自动修复src/tokenizer.ts:Token 计数与历史管理src/log-viewer.ts + vue-ui/:日志查看器 Web UIstealth-proxy/:内置 stealth 代理(基于 Playwright),绕过 Vercel Bot ProtectionCursor2API 的部署体验非常友好。项目提供了完整的容器化支持:
Docker 部署(一键启动):
cp config.yaml.example config.yamldocker compose up -dhttp://localhost:3010Dockerfile 采用了标准的多阶段构建:Stage 1 用 node:22-alpine 编译 TypeScript,Stage 2 用 node:22-slim 运行生产服务,并内置了 Playwright Chromium(用于 stealth 代理)。内存上限设置为 4GB(NODE_OPTIONS="--max-old-space-size=4096"),足够应对日志文件和大 Token 计数场景。
stealth-proxy(内置可选):默认开启 ENABLE_STEALTH=true,通过 Playwright 浏览器绕过 Vercel 的 Bot Protection。这是国内用户访问 cursor.com 文档页面的关键能力。
配置方面,环境变量可以直接覆盖 config.yaml 中的所有配置项,无需修改文件即可调整行为。对于公网部署,建议通过 AUTH_TOKEN 配置 API 鉴权。
坦诚地说,Cursor2API 存在几个值得关注的问题:
1. 接口稳定性风险。 Cursor 文档页面的免费 AI 接口并非官方 API,随时可能变更、限流或下线。2024 年 4 月就有用户报告 Cursor 文档页仅剩 Gemini-3-Flash 模型可用,作者在 README 中标注了「凉」字。这本质上是一个「灰色地带」的工具,依赖对非公开接口的逆向工程。
2. 速度与稳定性。 通过代理转发的请求会增加延迟,Playwright stealth 模式的开销更大。对于需要低延迟实时交互的场景,体验可能不如直接使用官方 API。
3. 合规性考量。 绕过 Bot Protection 机制在技术上存在合规争议。虽然仅用于个人开发工具场景,但这种做法是否符合各大平台的服务条款,需要用户自行评估。
4. 隐私风险。 所有对话内容都会经过本地代理服务器转发,包括代码和上下文。如果处理敏感代码,建议在本地部署而非使用第三方托管。
Cursor2API 的流行折射出一个更深层的需求:开发者对免费 AI 资源的强烈渴望,以及对标准化 API 接口的依赖。
当前 AI Coding 工具生态的一个核心矛盾是:各家模型提供商都有自己的 API 格式,而 Claude Code、Cursor IDE 这些工具又只支持部分格式。这种碎片化导致开发者经常需要编写各种适配层代码。Cursor2API 用一个代理解决了这个适配问题,让 Claude Code 能用上 Cursor 接口、让 Cursor IDE 能调用 Claude 模型——实际上它是一个跨生态的桥接工具。
从技术实现角度看,项目展示了如何用 Playwright 实现一个稳定的 stealth HTTP 代理、如何处理复杂的 SSE 流式协议和 JSON-in-text 嵌套解析,这些经验对其他需要做 API 兼容层的开发者有参考价值。
增长数据印证了社区的认可:2024 年 12 月发布,至今 6 个月,从 0 到 1823 Stars,日均增长约 10 Stars。这个速度对于一个工具类项目来说相当可观,说明 AI Coding 生态的参与者对这类「连接器」工具有持续的需求。