Magpie:在一个入口管理多个提供商和模型
同时用 Claude Code、Codex、OpenCode 等编码工具,模型来源又分散在不同厂商、聚合服务和本地服务里,配置就会越来越多。Magpie 把这些提供商接入同一份模型目录,再让各个客户端选择要用的模型;配好后,还能保存整套组合。下面按官方资料看它支持哪些入口、怎么管理模型,以及如何接入和切回来。
Magpie 是 yetone 开源的模型配置工具,采用 MIT 协议,提供 macOS、Windows、Linux 版本,也能在终端里使用。
一、多个提供商里的模型,可以集中选择和管理
先分清三个对象:提供商是模型服务的接入入口,模型是这个入口下可调用的具体模型,客户端是 Claude Code、Codex、OpenCode 这些使用模型的工具。一个提供商可以有多个模型,一个客户端也可以从不同提供商的模型中选择。
官方 README 列出的预设覆盖了以下入口。这里按使用入口整理,名称沿用文档:
-
- 模型厂商
:Anthropic、OpenAI、Gemini、DeepSeek、Kimi、GLM、MiniMax、StepFun、Qwen、Mistral、xAI。 -
- 云平台服务
:百度千帆、腾讯云 Token Plan、华为云 MaaS、火山引擎 Ark。 -
- 聚合与推理服务
:OpenRouter、Together、Fireworks、Groq、SiliconFlow、NVIDIA NIM、ModelScope、AiHubMix、302.AI。 -
- 本地模型服务
:Ollama、LM Studio。 -
这些是文档列举的预设,项目还支持自定义接入:填写服务名称和兼容 API 地址,配置 OpenAI 或 Anthropic 协议入口,并指定要显示的模型 ID;需要时也能单独设置 Responses 地址。是否可调用,仍取决于该服务实际提供的模型和接口。提供商预设与自定义配置
模型列表会随服务商目录更新。 添加 Key 后,Magpie 会查询服务商的模型列表;models.dev 目录补充模型名称、推理级别,以及部分服务商缺少的列表信息。目录过期后会在后台刷新,部分没有列表接口的入口由预设补充。实际可用范围要结合服务商和账号确认,官网截图中的模型名只是示例。
模型目录可以分两层整理:先选一个提供商要显示哪些模型,也可以全部显示;再为每个客户端单独隐藏或显示模型。比如 Codex 只保留常用模型,OpenCode 保留更多候选,两边的显示设置各自独立。模型目录与客户端筛选〔1〕
在图形界面里,点击客户端当前的模型,就能打开选择列表;也可以在 Providers 页面添加服务商、查看模型,再选给相应客户端。文档列出的客户端包括 Claude Code、Codex、Gemini CLI、OpenCode 等,界面只显示已安装或已配置的工具。
例如,你可以给 Claude Code 选择已有 Kimi API 下的模型,给 Codex 选择 DeepSeek API 下的模型,再给另一个客户端选择本机 Ollama 中的模型。服务商信息集中维护,各工具仍能选择不同模型。用终端时可以打开 magpie tui,桌面窗口、菜单栏与终端入口管理的是同一套设置。
文档还列出了两种入口:将已登录的 Claude Code、Codex、Copilot 等作为提供商,读取相应登录下的模型;或把一个或多个提供商的多个模型组成路由组,让客户端选择一个 group/<id>,由网关按顺序、轮换等策略分配请求。登录接入方式与路由策略详见官方说明〔1〕。
客户端支持范围要按项目表格看。README 里的 Cursor 是 Cursor CLI;Claude Desktop 也有特定的接入模式。下文用 Claude Code 和 Codex 展开配置示例。客户端列表与用法〔1〕
二、模型请求经过本机网关,再去你选的服务商
Magpie 会启动一个本机网关,默认监听 127.0.0.1:3425。客户端请求先到这个入口,再由它发送给选中的模型服务。它提供 OpenAI Chat Completions、Responses、Anthropic Messages 和 Gemini 接口,按上下游协议决定直传或转换。
这张图里的两条分支,取决于你添加的服务商。选远端 API,提示词和代码仍会发给那个服务商;选已经运行的本地模型服务,请求才走本地模型。Magpie 的本机网关只说明转接入口的位置。
项目文档说明协议转换包含流式输出、工具调用和推理信息。这是文档列出的功能;具体客户端版本与模型组合能否完整工作,还需要在自己的环境里验证。网关说明〔1〕
切换模型也会改配置,几个常见位置如下:
|
|
|
|
|---|---|---|
|
|
~/.claude/settings.json |
|
|
|
~/.codex/config.toml |
|
|
|
~/.gemini/settings.json
~/.gemini/.env
|
|
|
|
~/.config/opencode/opencode.json(c) |
|
Codex 的具体改写方式还受登录状态影响:源码包含修改服务地址和写入 Magpie 服务商配置的不同分支。选择模型会实际修改配置文件,查看或恢复设置时需要检查对应文件。Codex 接入实现〔2〕
三、从一个客户端和一套已有模型服务开始
先到 Magpie 官网〔3〕下载对应系统的应用。官方把安装包放在独立的 magpie-releases 发布仓库〔4〕;本次查询对应 v0.1.463。Linux 桌面版本需要 GTK 3 和 WebKitGTK 4.1,纯终端版本另有下载。
启动后,可以按以下路径配置:
-
-
在 Providers 里点 Add provider,选择已有 API Key 的预设,或添加本地服务、自定义兼容接口。 -
-
按接入方式填入 Key 或服务地址,刷新模型列表,选择需要显示的模型;需要检查连接时使用页面里的 Test。 -
-
选中一个客户端,为它选择实际可用的模型,并整理该客户端自己的模型列表。 -
-
重开客户端会话,再开始使用。 -
云端 API 使用对应服务的 Key;Ollama、LM Studio 等本地入口需要你已有运行中的本地模型服务。官方 Ollama 示例不要求填写 Key。已登录客户端的接入则按文档中的相应登录路径处理。
终端用户也可以用官方命令查看和配置:
magpie presets
magpie provider add deepseek "<API_KEY>"
magpie provider add ollama
magpie providers
magpie provider models deepseek
magpie models
magpie ls
上面是两种添加方式的示例:DeepSeek 使用 API Key,Ollama 使用已运行的本地服务。<API_KEY> 是占位符,使用时替换为自己的 Key。先查看真实模型列表,再选择模型,避免照抄一条已经变化的模型 ID。README 的命令形式是 magpie codex provider/model 或 magpie claude provider/model。
切换后,新设置不一定立即作用于已经运行的会话。README 特别说明 Codex 在启动时读取模型列表,换完应重启。先在一个新会话里检查选中的模型,再扩展到其他客户端。官方使用说明〔1〕
四、保存配置组合与恢复字段,各处理什么
当几个工具都选好了模型,可以保存当前组合:
magpie save work
magpie profiles
magpie use work
save work 保存一套模型设置,profiles 查看已保存的组合,use work 再次应用它。换一套工作配置时,不用逐个客户端重新选择。
Magpie 还有字段暂存与备份功能,它们处理的范围不同:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
切回原生模型时,Magpie 会执行相应的配置恢复。Codex 源码仍可能保留 Magpie 服务商表,供此前在该服务商下创建的会话使用。因此,这里的恢复不能承诺把整个配置文件逐字还原。Codex 恢复实现〔2〕、字段暂存〔5〕
Key 会写进 ~/.config/magpie/providers.json。源码把文件权限设为 0600,这个权限设置不等于 JSON 已加密。文档另有加密备份功能,备份默认包含 Key,--no-keys 可以排除;订阅登录信息不包含在迁移包里。服务商配置保存实现〔6〕、备份范围说明〔1〕
发布构建还包含可关闭的使用统计。统计事件包含随机安装 ID、版本、系统与架构等信息,本次查看的事件构造不包含提示词、Key 或模型名。可以在 Settings → Privacy 中关闭,也可设置 DO_NOT_TRACK=1 或 MAGPIE_NO_STATS=1。统计实现〔7〕
要开始使用,先把已有提供商的模型目录接进来,选出需要显示的模型,再给一个客户端分配模型。确认新会话能使用后,扩展到其他客户端,并把这套组合保存为配置快照。官网下载与完整支持说明都在下面:
资料与入口(网址可复制)
〔1〕项目仓库
https://github.com/yetone/magpie

