快速开始
一条命令完成安装。把 sk-paste-your-key-here 替换成运营者发给你的 key。
curl -fsSL https://guide.9relay.com/install.sh | bash -s -- sk-paste-your-key-here
默认以包装模式(wrapper mode)安装:你原有的 claude 和 codex 命令保持不变(仍然直连 api.anthropic.com / OpenAI,如果你有自己的订阅可以继续用)。安装器会在 PATH 中放置专用命令 —— claude-9relay、claude-9relay-1m 和 codex-9relay,它们走 9relay 中转。如果你用 OpenCode,安装器也会顺手把 9relay provider 写进它的配置(见 OpenCode 一节)。
直接运行即可,无需 source:
claude # 你自己的订阅(保持不变)
claude-9relay # 走 9relay(Opus,200K 上下文)
claude-9relay-1m # 走 9relay(Opus,1M 上下文 — 超过 200K 部分约 2 倍计费)
claude-9relay --model coding-cheap # 走 9relay 并指定别名
codex # 你自己的 OpenAI 账号(保持不变)
codex-9relay # 走 9relay
claude 调用都自动走 9relay,安装时加 --mode global:
curl -fsSL https://guide.9relay.com/install.sh | bash -s -- sk-... --mode global
之后直接 claude --model coding-claude 就会走中转。
想先检查脚本内容?先读再运行:
curl -fsSL https://guide.9relay.com/install.sh # 先读
curl -fsSL https://guide.9relay.com/install.sh | bash -s -- sk-... # 再运行
claude-9relay / codex-9relay 命令。下面这条命令在命令提示符(cmd)和 PowerShell 中都能运行:
powershell -NoProfile -ExecutionPolicy Bypass -Command "& ([scriptblock]::Create((irm https://guide.9relay.com/install.ps1))) -Key sk-paste-your-key-here"
已经在 PowerShell 提示符(PS C:\>)下?直接运行内层部分即可:& ([scriptblock]::Create((irm https://guide.9relay.com/install.ps1))) -Key sk-...
-SkipClaudeCode 可跳过。加 -Mode global 让所有 claude / codex 都走 9relay。安装后请新开一个终端,让 PATH 生效。
配置 Claude Code
要做永久配置,把下面两行 export 写进 shell 配置文件,新开终端也会生效。
1. 编辑 shell 配置
用 zsh(macOS 默认)就编辑 ~/.zshrc;用 bash 就编辑 ~/.bashrc。
export ANTHROPIC_BASE_URL="https://claude.9relay.com"
export ANTHROPIC_AUTH_TOKEN="sk-paste-your-key-here"
2. 重新加载 shell
source ~/.zshrc # 或 ~/.bashrc
3. 启动
claude --model coding-claude
Claude Code 的启动横幅应显示 coding-claude · API Usage Billing。可以问一句「用三个词打个招呼」验证链路是否打通。
配置 Codex CLI
对 Codex CLI 来说,中转是以自定义 OpenAI 兼容服务商的方式配置的。
1. 编辑 Codex 配置
打开或创建 ~/.codex/config.toml,加入下面这段(不要覆盖已有内容):
model = "coding-codex"
model_provider = "9relay"
[model_providers.9relay]
name = "9relay"
base_url = "https://api.9relay.com/v1"
env_key = "OPENAI_API_KEY"
2. 设置 API key
加入 ~/.zshrc 或 ~/.bashrc:
export OPENAI_API_KEY="sk-paste-your-key-here"
然后 source 一下。
3. 启动
codex
第一次会话
如果你从没用过 Claude Code 或 Codex,下面这个 10 分钟热身能快速建立手感。
- 打开一个你熟悉的项目。不要从空目录开始 —— 给它真实的代码。
- 让它解释点什么。「
src/auth.ts是干什么的?」批判性地读它的回答 —— 和实际情况一致吗?这一步是在校准你的信任度。 - 要一个很小的改动。「给
src/auth.ts里的verifyToken函数加一段 docstring。」看看它怎么提出修改。 - 修一个小 bug。有现成 issue 就直接贴进去。「Issue #42 说日期解析器在 YYYY-MM 上会出错。找到原因并给出修复方案。」
- 接受之前先验证。跑测试、读 diff、看 git status。模型又快又自信 —— 慢下来仔细把关是你的工作。
高效使用
为任务选对模型
| 别名 | 什么时候用 |
|---|---|
coding-opus | 默认。Claude Opus 4.8 —— Anthropic 最强的旗舰模型。质量最高;消耗配额也最快。 |
coding-opus-1m | Opus 4.8 的完整 1,000,000 token 上下文版 —— 适合超大代码库或超长会话。用 claude-9relay-1m 启用。超过 200K 的部分约 2 倍计费。 |
coding-claude | Claude Sonnet 4.5 —— 实力强且便宜得多。大批量或常规工作切到它。 |
coding-codex | OpenAI 风格的模型。当 Claude 在某类问题上推进不动时,可以换它试试。 |
coding-gemini | Google 风格的旗舰。推理风格不同 —— 两家旗舰意见相左时用它当裁判。 |
coding-cheap | 快且便宜。适合草稿想法、格式转换、低风险探索。省配额。 |
随时切换:在 Claude Code 里输入 /model 选择;Codex 在命令行传 --model。
给它真实的上下文
模型只能基于它看到的内容推理。问复杂问题之前,确保相关文件已经在它的上下文里 —— 粘贴进去、按路径提到,或者在编辑器里打开(如果 Claude Code 已接入)。
先规划,后动手
凡是不那么简单的任务,先让模型做计划,再实现。两步提示远比一步好用:
1. 「读一下 src/payments/*.ts,描述银行卡支付失败时
现在的处理流程。先不要写代码。」
2. (读完计划之后)
「现在把你描述的重试逻辑实现出来。」
验证,而不是信任
模型改完代码后,一定要跑测试、lint 和构建,一定要读 diff。模型又快又自信 —— 慢下来仔细把关是你的工作。
常见任务
这些提示词模式经过验证,可以直接复制改用。
加一个功能
「我想给报表页加 CSV 导出。数据源在
src/reports/data.ts。现有的导出按钮在
src/components/ExportMenu.tsx,照同样的模式做。
在 src/reports/__tests__/ 里给 CSV 格式化加测试。」
重构一个文件
「src/api/users.ts 有 400 行,HTTP 处理和业务逻辑
混在一起。拆开:HTTP 留在 users.ts,业务逻辑移到
src/users/service.ts。不要改变行为。按需补充或
更新测试。」
调试失败的测试
「测试 src/auth/__tests__/login.test.ts 在第三个
断言上失败。读测试、读实现,找出根因并给出修复
方案。先说明你的推理,再打补丁。」
给现有代码补测试
「为 src/utils/dateRange.ts 写测试,覆盖:
- 正常路径
- 空输入
- 时区边界
- 非法日期字符串
风格参照 src/utils/__tests__/ 里现有的测试。」
代码评审
「评审 main 和 feat/new-checkout 之间的 diff。
重点看:错误处理、边界情况、安全性,以及测试
是否覆盖了新行为。简明扼要,按 CRITICAL > HIGH
> MEDIUM 排序。」
讲解一个代码库
「我刚接手这个仓库。带我过一遍整体架构:请求从
哪里进来、数据流什么样、状态存在哪里,以及我
应该先读哪 3 个文件。」
配额与计费
你的套餐有月度预算(美元)、RPM 上限(每分钟请求数)和 TPM 上限(每分钟 token 数)。任何一项触顶,中转都会返回明确的报错 —— 不会悄悄把你路由到更贵的模型。
| 套餐 | 预算 | RPM | TPM | 模型 |
|---|---|---|---|---|
| Starter | $5/月 | 5 | 50k | 全部六个别名 |
| Pro | $15/月 | 10 | 100k | 全部六个别名 |
| Max | $40/月 | 20 | 200k | 全部六个别名 |
查看用量
安装器还会装好 9relay-usage —— 一个小命令,显示你自己的消费对比套餐预算、各模型的用量占比,以及本期走势预测。它直接读取安装时保存的 key,无需任何配置。
9relay-usage # 本计费期:消费 vs 预算、模型占比、走势预测
9relay-usage --window 7d # 更短的窗口:24h | 7d | 30d | all
9relay-usage --compact # 简短摘要
9relay-usage --oneline # 单行输出,适合放状态栏
9relay-usage --json # 机器可读
预测会告诉你本期是正常(on track)、有风险(at risk)还是超预算(over budget),以及按当前节奏预计的耗尽日期。
在 Claude Code 里
安装器同时会添加 /9relay-usage 斜杠命令。在任何 Claude Code 会话中输入它,Claude 会运行该工具并用自然语言总结你的消费、模型占比和预测。直接用自然语言问也行 —— 「我的 9relay 预算还剩多少?」
9relay-usage 命令随 bash 安装器提供(macOS、Linux、WSL)。原生 Windows 下可以用 PowerShell 直接查询同一个接口:
irm https://api.9relay.com/usage -Headers @{ Authorization = "Bearer sk-paste-your-key-here" }
数据在请求完成后约 10 秒内更新;你的 key 永远只能看到自己的用量。
故障排查
| 症状 | 可能原因 | 解决办法 |
|---|---|---|
401 Unauthorized |
API key 错误、环境变量名不对,或 key 已停用 | 确认 Claude Code 用的是 ANTHROPIC_AUTH_TOKEN(不是 ANTHROPIC_API_KEY),并且是完整的 sk-... 值。怀疑 key 被停用就联系运营者。 |
quota exceeded 或 budget exceeded |
你触到了月度预算上限 | 等续费日重置,或升级套餐。 |
rate limit exceeded |
每分钟请求太多 | 暂停约 60 秒。频繁遇到就请运营者提高你的 RPM。 |
model not found |
请求了套餐里没有的别名 | 切到 coding-cheap(所有套餐都含),或请运营者添加该别名。 |
503 / ServiceUnavailableError |
你这个别名背后的上游服务商暂时不稳定 | 等一分钟重试 —— 中转会尽量自动切换备用上游。持续出现就换个别名(/model coding-claude)并联系运营者。 |
Connection refused 或超时 |
网络问题,或中转服务不可用 | 检查你的网络。其他网站正常就联系运营者。 |
隐私
9relay 不会保存你的提示词或模型回复。只记录元数据(token 数、延迟、模型别名、状态码)—— 绝不记录你的源代码或对话内容。访问日志中的请求头(包括你的 API key)也会被脱敏。
如果你观察到任何疑似相反的行为,请立即联系运营者。
在 Cursor 中使用 9relay
Cursor 在界面里配置服务商,不走 shell,所以没有安装脚本。在设置里花两分钟:
- Cursor → Settings → Models → OpenAI Compatible(或 "Custom API")
- Base URL:
https://api.9relay.com/v1 - API Key:你的
sk-...key - 把
coding-opus、coding-opus-1m、coding-claude、coding-codex、coding-gemini和coding-cheap添加为可用模型
之后 Cursor 的 "Chat" 和 "Composer" 就能使用任意公开别名。你的 Cursor 登录账号照常用于编辑器本身 —— 只有模型流量走 9relay。
在 OpenCode 中使用 9relay
如果你跑过一键安装脚本,OpenCode 已经配置好了 —— 安装器会把一个 9relay provider 合并进 ~/.config/opencode/opencode.json(你已有的 provider 和默认模型不受影响)。启动 opencode,用 /models 命令选择 9relay/... 模型即可。
想手动配置?在 ~/.config/opencode/opencode.json 的 provider 下加这一段:
"9relay": {
"npm": "@ai-sdk/anthropic",
"name": "9relay",
"options": {
"baseURL": "https://claude.9relay.com/v1",
"apiKey": "sk-粘贴你的key"
},
"models": {
"coding-opus": { "name": "Claude Opus (9relay)" },
"coding-claude": { "name": "Claude Sonnet (9relay)" }
}
}
两个关键细节:baseURL 必须以 /v1 结尾(OpenCode 自己会拼上 /messages —— 直接照抄 Claude Code 那个不带 /v1 的地址会 404);模型 id 必须严格使用 9relay 别名。不想把 key 写进文件?"apiKey": "{file:/home/you/.9relay/key}"(绝对路径)或 "{env:NINERELAY_KEY}" 也可以 —— 安装器就是这么写的。
在 JetBrains(GoLand)中使用 9relay
GoLand、IntelliJ IDEA、PyCharm、WebStorm 步骤完全相同。推荐路线直接复用你已有的 claude-9relay 命令:
- 先跑一键安装脚本(如果还没跑过)。
- Settings → Plugins → Marketplace → 安装 "Claude Code [Beta]"(开发者:Anthropic)。
- Settings → Tools → Claude Code [Beta] → 把 Claude command 设为 wrapper 的完整路径:
command -v claude-9relay的输出(Windows:%USERPROFILE%\.9relay\bin\claude-9relay.cmd)。 - 用 ⌘+Esc(macOS)/ Ctrl+Esc(Windows/Linux)启动。
用 --mode global 安装的?跳过第 3 步 —— 普通 claude 已经走 9relay,插件开箱即用。
两个不依赖 Claude Code 的替代方案:JetBrains AI Assistant(添加 "OpenAI API-compatible" provider,URL 填 https://api.9relay.com/v1 + 你的 key —— 注意行内代码补全仍走 JetBrains 自家模型),以及 Cline 插件(provider 选 "Anthropic" → 勾选 "Use custom base URL" → https://claude.9relay.com,不带 /v1)。如果插件的终端报 claude: command not found,重跑一遍安装脚本(它会从国内 npm 镜像装好 Claude Code),然后再检查 Claude command 路径。
切回自己的订阅
包装模式下,普通的 claude(即任何不带 -9relay 后缀的命令)本来就用你自己的订阅 —— 只是想暂停使用中转的话,什么都不用卸载。要完全移除 9relay(删除 claude-9relay、claude-9relay-1m、codex-9relay 命令、~/.9relay/key 里暂存的 key,以及 rc 文件中的配置块):
curl -fsSL https://guide.9relay.com/uninstall.sh | bash
原生 Windows(cmd 或 PowerShell):
powershell -NoProfile -ExecutionPolicy Bypass -Command "& ([scriptblock]::Create((irm https://guide.9relay.com/uninstall.ps1)))"
卸载器只会碰它能确认属于自己的文件(命令文件会校验 guide.9relay.com 标记),对 rc 文件的修改都会留 .bak 备份。Windows 版同样做了值校验 —— 绝不会清掉你自己设置的环境变量。
清除当前 shell 里的环境变量(只有 --mode global 安装才需要):
unset ANTHROPIC_BASE_URL ANTHROPIC_AUTH_TOKEN ANTHROPIC_MODEL OPENAI_API_KEY OPENAI_BASE_URL
Cursor 的话,到 Settings → Models 里删掉 9relay 那条模型配置即可。卸载脚本会自动从 OpenCode 配置里移除 9relay provider(只删这一块,你的其他 provider 不动)。JetBrains 的话,如果你把 Claude command 指向过 wrapper,把那个设置清掉即可。
支持
第一阶段为邀请制。没有工单系统 —— 直接回复你收到 key 的那封邮件或消息即可,那就是和运营者的直接通道。
关于 Claude Code 本身的问题(命令、功能、快捷键),见 Claude Code 官方文档;Codex CLI 见 Codex CLI 仓库。