提供方是一个名称 → 配置的映射:一个新的上游只不过是又一个 [providers.<name>] 表 —— 无需改动代码。三种适配器类型即可覆盖一切:
kind = "anthropic"—— 上游讲 Anthropic Messages API。shunt 将请求透传,可选择注入一个不同的 API 密钥。kind = "responses"—— 上游讲 OpenAI Responses API。shunt 在 Anthropic Messages ⇄ Responses 之间转换,含流式传输。kind = "cursor"—— 原生 Cursor 适配器。shunt 将 Cursor 的 ConnectRPC/protobuf AgentService 桥接到 Anthropic Messages API,含流式传输、推理(流式响应中)、原生工具调用与内联图像。由内置的cursor提供方使用。
内置提供方
| 名称 | 类型 | 认证 | 后端 |
|---|---|---|---|
anthropic |
anthropic |
passthrough |
api.anthropic.com —— 转发调用方自己的凭据 |
openai |
responses |
api_key (OPENAI_API_KEY) |
api.openai.com/v1 |
codex |
responses |
chatgpt_oauth |
chatgpt.com/backend-api —— 复用 ~/.codex/auth.json |
xai |
responses |
api_key (XAI_API_KEY) |
api.x.ai/v1 —— xAI 开发者 API |
grok |
responses |
xai_oauth |
cli-chat-proxy.grok.com/v1 —— 通过 shunt login xai 使用 SuperGrok / X Premium+ 订阅 |
cursor |
cursor |
cursor_oauth |
api2.cursor.sh —— 复用 ~/.shunt/cursor-auth.json(shunt login cursor) |
每个名称都链接到对应提供方的专门页面,其中包含完整设置。shunt add upstream <name>
会为任意内置提供方打印分步操作蓝图 —— 将它通过管道传给编码 agent
(shunt add upstream codex --print | claude),即可让 agent 为你完成配置。见
CLI 参考。
codex 提供方(ChatGPT 订阅)
用 Codex CLI 登录一次;shunt 会读取并自动刷新 ~/.codex/auth.json:
codex login如果该文件缺失或过期,shunt 会返回一个 authentication_error,提示你运行 codex login。
完整设置 —— auth 文件处理、模型选择、力度以及上下文大小 —— 见专门的 ChatGPT / Codex 指南。
cursor 提供方(Cursor 订阅)
内置的 cursor 提供方通过 Cursor 自己的 ConnectRPC/protobuf AgentService 访问你的 Cursor
订阅 —— kind = "cursor" 原生适配器在其与 Anthropic Messages 之间双向转换,包括流式传输、
推理、原生工具调用和内联图像。
使用 shunt login cursor 登录一次,然后路由一个 cursor:* 模型 id(cursor:default、
cursor-plan:default、cursor-ask:default……)—— 该提供方默认已预置,因此无需配置表。
完整设置 —— 登录、agent 模式、wire 模型 id、适配器能力和覆盖项 —— 见专门的 Cursor 提供方页面。
xai / grok 提供方(Grok)
两个内置提供方触达 xAI 的 Grok 模型,按凭据划分:grok 经由 OAuth 消费你的
SuperGrok / X Premium+ 订阅(shunt login xai,无按 token 计费),而
xai 用一个 XAI_API_KEY 对接计量的开发者 API。订阅 bearer 和 API 密钥
不可互换 —— 各自只对其自己的提供方有效。
完整设置 —— 登录、两个提供方块、模型 slug、选择性启用的力度旋钮,以及 授权方面的坑 —— 见专门的 xAI / Grok 指南。
添加一个兼容 Anthropic 的后端
大多数第三方“在 Claude Code 中使用 X”网关都兼容 Anthropic-Messages:kind = "anthropic" 搭配 auth = "api_key",仅在 base_url 和密钥环境变量上不同。开箱即用的 base(每个提供方都链接到包含完整设置的专门页面):
| 提供方 | base_url |
示例模型 ID |
|---|---|---|
| Kimi (Moonshot) | https://api.moonshot.ai/anthropic |
kimi-k3[1m]、kimi-k2.7-code |
| DeepSeek | https://api.deepseek.com/anthropic |
deepseek-v4-pro、deepseek-v4-flash |
| Z.ai (GLM) | https://api.z.ai/api/anthropic |
glm-5.2、glm-4.7 |
| MiniMax | https://api.minimax.io/anthropic |
见 MiniMax 文档 |
| Mimo (Xiaomi) | https://api.xiaomimimo.com/anthropic |
mimo-v2.5-pro — 见 Mimo 文档 |
| OpenRouter | https://openrouter.ai/api |
anthropic/claude-opus-4.8 |
| Vercel AI Gateway | https://ai-gateway.vercel.sh |
anthropic/claude-opus-4.8(接受 x_api_key) |
对于不在此表中的提供方,shunt add upstream <docs-url> 会打印一份研究蓝图,
引导编码 agent 根据该提供方自己的文档完成接入
(shunt add upstream https://docs.example.com --print | claude)。
例如,要通过 shunt 路由 Kimi 的模型:
[providers.kimi]
kind = "anthropic"
base_url = "https://api.moonshot.ai/anthropic"
auth = "api_key"
api_key_env = "MOONSHOT_API_KEY"
[[routes]]
model = "kimi-k3[1m]"
provider = "kimi"
[[routes]]
model = "kimi-k2.7-code"
provider = "kimi"然后 export MOONSHOT_API_KEY=…,将 Claude Code 指向 shunt,并选择 kimi-k3[1m](通过 ANTHROPIC_CUSTOM_MODEL_OPTION 或 ANTHROPIC_MODEL)。运行 shunt check 校验 —— 它会报告路由中的未知提供方、缺失的 api_key_env 或错误的 base_url。
每个提供方键(kind、auth、api_key_header、count_tokens……)都在 配置参考 中有文档。
子 agent 插件
pleaseai/shunt 市场 提供了固定到各提供方模型的现成 Claude Code 子 agent —— 每个模型一个 agent。安装一个插件,然后用 @ 提及一个模型或设置 CLAUDE_CODE_SUBAGENT_MODEL。每个 agent 的 model: frontmatter 只让该子 agent 分流;主会话仍留在 Claude。
| 插件 | 模型(每个一个 agent) | 提供方 |
|---|---|---|
shunt-codex |
gpt-5.6-sol、gpt-5.6-terra、gpt-5.6-luna |
codex(ChatGPT 订阅) |
shunt-xai |
grok-build-0.1、grok-4.5、grok-4.3 |
xai(API 密钥)或 grok(订阅) |
shunt-kimi |
kimi-k3[1m]、kimi-k2.7-code |
kimi |
shunt-deepseek |
deepseek-v4-pro、deepseek-v4-flash |
deepseek |
shunt-zai |
glm-5.2、glm-4.7 |
zai |
shunt-minimax |
MiniMax-M3[1m] |
minimax |
shunt-mimo |
mimo-v2.5-pro |
mimo |
/plugin marketplace add pleaseai/shunt
/plugin install shunt-xai@shunt每个插件仍需要在 shunt.toml 中路由其提供方(见上文各节)并导出匹配的凭据 —— 插件自己的 README 会列出确切的路由和环境变量。grok 模型可由任一 xAI 提供方提供:xai(API 密钥,按 token 计费)或 grok(通过 shunt login xai 使用 SuperGrok / X Premium+ 订阅;按等级设限 —— 遇到 403 时回退到 xai)。