排障指南
OMG Router 常见错误与解决方法
排障指南#
快速自检#
先运行:
curl https://api.omgrouter.cc/v1/models \
-H "Authorization: Bearer $OMG_API_KEY"bash如果模型列表正常,再测试:
curl https://api.omgrouter.cc/v1/chat/completions \
-H "Authorization: Bearer $OMG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.4-mini",
"messages": [{ "role": "user", "content": "只回复 OK" }],
"max_tokens": 8
}'bash401 / Invalid Bearer token#
原因通常是:
- 没有传
Authorization: Bearer sk-... - API Key 多了空格、换行或引号。
- 令牌已删除、禁用或过期。
- 把登录 token 当成 API Key 使用。
解决:
echo "$OMG_API_KEY" | sed 's/./*/g'bash确认环境变量非空后,重新复制控制台中的 sk- 令牌。
模型不存在#
常见原因:
- 令牌分组不对。
- 模型名写错。
- 目标模型已调整名称或暂时下线。
- Claude 模型用错了 OpenAI Chat Completions 协议。
解决:
- 访问 https://api.omgrouter.cc/pricing ↗ 查看实时模型。
- 用当前令牌调用
/v1/models。 - 按 模型分组 切换到正确分组。
Claude Code 不能用#
检查项:
- API Key 是否为 CC 分组。
ANTHROPIC_BASE_URL是否为https://api.omgrouter.cc,不要写成/v1。ANTHROPIC_AUTH_TOKEN是否为sk-开头的令牌。- 终端是否重新打开,环境变量是否生效。
Codex 不能用#
检查项:
- API Key 是否为 Codex 分组。
base_url是否为https://api.omgrouter.cc/v1。wire_api是否为responses。model是否在当前令牌的/v1/models返回列表中。
Cherry Studio 跳转不成功#
cherrystudio://... 是本机自定义协议,浏览器必须交给 Cherry Studio 处理。排查顺序:
- 确认 Cherry Studio 已安装。
- 在系统里确认
cherrystudio://协议已注册。 - 换浏览器打开导入链接,部分浏览器会拦截外部应用跳转。
- 检查 payload 是否是
encodeURIComponent(base64(JSON))。 - payload 的
baseUrl填https://api.omgrouter.cc,不要手动追加/v1。 - payload 的
apiKey必须是完整sk-...。
生成链接时建议用代码,不要手工拼 base64:
const payload = {
id: "new-api",
name: "OMG Router",
type: "new-api",
baseUrl: "https://api.omgrouter.cc",
apiKey: "sk-你的API令牌",
};
const data = encodeURIComponent(
Buffer.from(JSON.stringify(payload), "utf8").toString("base64")
);
console.log(`cherrystudio://providers/api-keys?v=1&data=${data}`);jsCC Switch 跳转不成功#
https://api.omgrouter.cc/ccswitch 是网页入口,真正导入依赖 ccswitch:// 协议。
排查顺序:
- 确认 CC Switch 已安装。
- 确认系统已注册
ccswitch://协议。 - 用控制台里的「导入到 CC Switch」按钮生成链接。
- Codex endpoint 应带
/v1,Claude/Gemini endpoint 不带/v1。 - 换浏览器或允许浏览器打开外部应用。
Responses API 返回了 200 但拿不到文字#
当前服务端可能不会填充 output_text 快捷字段。优先从 output 数组提取:
const text = (response.output || [])
.flatMap((item) => item.content || [])
.filter((part) => part.type === "output_text")
.map((part) => part.text)
.join("");js余额不足或额度限制#
检查:
- 账户余额是否充足。
- 令牌是否设置了额度上限。
- 模型价格或分组倍率是否较高。
- 是否有长上下文或流式任务造成消耗增加。
可查询令牌用量:
curl https://api.omgrouter.cc/api/usage/token/ \
-H "Authorization: Bearer $OMG_API_KEY"bash