CodeRelay 使用教程
本文只讲怎么把 CodeRelay 跑起来,并接到客户端上。
开始之前
| 项目 | 要求 |
|---|---|
| 操作系统 | Windows 10 / 11,x64 |
| 网络 | 反代服务需联网访问上游 |
| 前置 | 已安装并打开 CodeRelay |
反代服务不会自启。打开 CodeRelay 只是打开工作台,服务仍是停止状态。
第一步 · 添加账号
- 进入「账号池」页。
- 用下面任一方式添加 CodeBuddy 中国站账号:
- 浏览器认证(OAuth / 网页登录)
- 手动粘贴 Token
- 导入配置文件
- 添加后核对账号健康状态。标着「冷却中」或「需处理」的账号,请求不会走它。
第二步 · 创建 API Key
- 进入「API Key」页,新建一个 Key,得到
sk-开头的一串。 - 绑定这个 Key 可用的账号范围。
- (可选)限制这个 Key 能用哪些模型。
第三步 · 启动反代服务
- 进入「服务配置」页,或直接点底部状态栏,手动启动服务。
- 状态栏显示运行状态与端口
11435即为就绪。
服务不会自启。没启动时客户端一定连不上 127.0.0.1:11435,这与 Key 是否正确无关。
接入客户端
方式 A:OpenAI 兼容客户端
在客户端的自定义模型 / 自定义 API 配置里:
base_url填http://127.0.0.1:11435/v1- Key 填第二步创建的那个
sk-Key - 不需要配置任何环境变量
Cursor、CodeBuddy IDE 等支持自定义 base_url 的客户端都适用。
用 curl 验证链路:
curl http://127.0.0.1:11435/v1/chat/completions \
-H "Authorization: Bearer sk-xxxx" \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"你好"}]}'
把 sk-xxxx 换成你自己的 Key。model 写 auto 时,用哪个账号由账号池调度决定。
方式 B:注入 Cursor(接管 Agent 请求)
「Cursor 服务」页会启动一个本地桥接,把 Cursor 发往 *.cursor.sh 的 Agent 请求接管并改派到反代服务,其余请求原样转发给 Cursor 官方后端。
不需要 Cursor 会员账号。 注入后 Agent 请求由 CodeRelay 的账号池承接,不经过 Cursor 的模型服务;你只需要装一个 Cursor 客户端即可。
操作顺序:
- 启动桥接 — 进入「Cursor 服务」页,点「启动桥接」。后续的证书安装命令由桥接生成(含实际证书路径),桥接起不来就没有可用命令。
- 生成并信任根证书 — 到 「设置 → 网络 → 证书管理」点「生成根证书」,复制页面给出的安装命令,在终端里执行。CodeRelay 不会自动提权;提示权限不足时,以管理员权限重开终端再执行一次。
- 添加模型绑定 — 回到「Cursor 服务」页,点「添加绑定」,把一个 API Key 与一个模型配对。没有绑定,Cursor 的模型选择器里就是空的。
- 开启「注入 Cursor」开关 — 开关只有在桥接运行且证书就绪后才能打开。打开前先存盘:它会改写 Cursor 的
settings.json,并强制结束 Cursor 进程以让代理设置生效,未保存的编辑内容可能丢失。 - 重新打开 Cursor — 开关旁显示「已注入 / 已接管模型请求」即为生效。
如何还原:
- 关闭「注入 Cursor」开关,或点「停止桥接」,会清除 Cursor 的代理设置,Cursor 回到官方模型。
- 停止桥接会连带关闭注入——代理是桥接进程内的实例,进程一走注入必然失效。
四个必须知道的坑:
- 升级 Cursor 后注入会失效。 请完全退出并重新启动 Cursor,再重新开启注入。
- 不要停在半开状态。 如果 Cursor 的代理设置仍指向本地代理、但注入已关闭,Cursor 会连不上网络。此时点「停止桥接」或重新打开注入开关清理。
- Tab 补全不再由本桥接提供。 相关请求原样转发给 Cursor 官方,可用性取决于你自己的 Cursor 账号额度,属预期行为(这是唯一仍依赖 Cursor 自身的部分)。
- 代理端口在 「设置 → 网络」里,
0表示由系统自动分配;注入已开启时改动端口,需先关闭注入再重新开启才生效。
Commit 提交代码模型(可选)
Cursor 生成 Git 提交信息时,可以指定用哪个模型。到 「设置 → Cursor → Commit 提交代码模型」选择:
- 直连(使用 Cursor 官方) —— 默认值。提交信息由 Cursor 官方生成,不走 CodeRelay 的账号池。
- 已绑定的模型 —— 用 CodeRelay 的模型生成提交信息,走账号池。
下拉里的模型来自「Cursor 服务」页的模型绑定;一次都没绑定时,列表里只有「直连」一项,界面会提示先启动桥接并添加绑定。
提示词可自定义: 点「编辑提示词」可改写生成提交信息用的提示词,留空则使用内置默认提示词;点「恢复默认」清空自定义内容,回到内置默认。弹窗里还能查看内置默认提示词。
改完点「保存 Cursor 设置」生效,区块下方会显示当前 Commit 模型。
局域网接入
- 进入 「服务配置 → 网络 → 访问范围」,切换为「本机 + 局域网」。
- 复制页面展示的局域网地址(形如
192.168.x.x:11435),并按页面给出的 Windows 防火墙命令,以管理员权限放行。 - 其它设备的
base_url填这个地址加/v1。
换网络后地址会自动刷新,需重新复制。同网段设备都能访问这个端口,只在可信网络里开启。
出问题先查这两处
多数问题在底部状态栏的服务状态和最近一条失败请求的详情里能定位。
| 症状 | 原因 | 处理 |
|---|---|---|
连 127.0.0.1:11435 失败 |
服务没启动 | 去「服务配置」或状态栏启动 |
| Key 对但被拒 | Key 未绑定可用账号,或模型不在允许范围 | 查「API Key」页的绑定与模型限制 |
| 提示没有可用账号 | 都在冷却、被排除或模型不匹配 | 查「账号池」的「冷却中」「需处理」 |
| 模型列表缺模型 | 清单未同步或被禁用 | 重新同步模型清单 |
| Cursor 连不上网 | 代理设置残留但注入已关 | 点「停止桥接」或重开注入 |
| Cursor 注入无效 | Cursor 升级过 | 完全退出重启 Cursor 后重开注入 |
| Commit 信息没有用上配置的模型 | 模型未绑定,或仍选着「直连」 | 去「Cursor 服务」页添加模型绑定,再回「设置 → Cursor」选中它 |
| 局域网设备访问不到 | 范围仍是「本机」、防火墙未放行或地址已变 | 切范围、放行端口、重新复制地址 |
| 昨天的日志找不到 | 日志当日保留 | 看按天聚合的统计 |
数据与隐私
- 凭据、Token 与
sk-Key 只存本地,不上传。 - 请求日志只保留当天;统计按天聚合后持久化。
- 反代服务本身需联网访问上游。