文档 · 指南

Claude Code、Codex 接入 Ollama、LM Studio 本地模型

Claude Code 只说 Anthropic Messages,Codex 只说 OpenAI Responses,而本地模型服务一般说 OpenAI Chat Completions,有的也说 Anthropic Messages。magpie 在你电脑上夹在中间,让 Claude Code 和 Codex 直接用上你在 Ollama 里 pull 的、在 LM Studio 里加载的模型。

网关跑在 127.0.0.1:3425。magpie 把 Agent 指向它,再把每个请求转给你的本地服务。服务本身就说 Agent 的协议时,请求原样转过去;不说时,magpie 负责翻译请求和回复,流式输出和工具调用都保留。

Ollama、LM Studio

内置预设,默认端口,不需要 Key。magpie 会去问服务有哪些模型。

oMLX、MLX-Serve

Apple 芯片上的 MLX 服务,同样有预设。

其他

vLLM、llama.cpp 的 server,或任何 OpenAI 兼容地址,本机或局域网里的都行。

支持的本地服务

添加供应商时,它们在 本机 一栏:

服务默认地址magpie 用到的协议
Ollamahttp://localhost:11434Chat Completions、Anthropic Messages
LM Studiohttp://localhost:1234Chat Completions
oMLXhttp://localhost:8000Chat Completions、Responses、Anthropic Messages
MLX-Servehttp://localhost:11234Chat Completions、Responses、Anthropic Messages

所以 Claude Code 接 Ollama、oMLX 或 MLX-Serve 时请求原样发过去,接 LM Studio 时由 magpie 翻译。Codex 接 oMLX 或 MLX-Serve 时原样发过去,接 Ollama 或 LM Studio 时 magpie 把 Responses 请求转成 Chat Completions。

配置步骤

  1. 启动本地服务在 Ollama 里 pull 一个模型,或在 LM Studio 里加载一个,让服务保持运行。
  2. 在 magpie 里添加在 供应商 页点 + 添加供应商,在 本机 一栏选 Ollama 或 LM Studio,不用填 Key。magpie 会去问服务有哪些模型,它们显示为 ollama/… 或 lmstudio/…。
  3. 给 Agent 选模型在 Agent 页点 Claude Code 或 Codex 那一行的模型,选本地模型。magpie 会写好 Claude Code 的 settings.json 或 Codex 的 config.toml,新开一个会话即可。

用命令行也一样:

终端
ollama pull qwen3
magpie provider add ollama
magpie models                     # 所有模型,格式为 供应商/模型
magpie claude ollama/qwen3        # Claude Code
magpie codex ollama/qwen3         # Codex

在 Agent 里,Claude Code 和 Codex 的 /model 也会列出 magpie 的模型,本地模型和云端模型可以随时切换。两个 Agent 的配置具体改了什么,见 Claude Code 接入其他模型 和 Codex 接入其他模型。

换端口,或用另一台电脑上的模型

服务监听在别的端口,或者跑在另一台电脑上(比如显卡机、NAS),就在供应商编辑页改 服务器地址。它的每个 URL 都会换到这个地址,路径不变。

终端
magpie provider add lmstudio address=http://192.168.1.5:1234
magpie provider set ollama address=192.168.1.20:11434
magpie provider set ollama address=     # 恢复默认地址

HTTPS 服务用的是自签名证书时,在编辑页打开 不校验它的证书,只对这个供应商自己的地址生效。

vLLM、llama.cpp 等其他服务

没有预设的服务用 自定义 添加:粘贴它的地址,比如 http://localhost:8080/v1,点 检测协议。magpie 会在这个地址上分别向 Chat Completions、Responses、Anthropic Messages 和 Gemini 发一个最小请求,留下有回应的那些。服务不需要 Key 的话,Key 可以留空。

上下文窗口

Agent 会按模型能接受多长的请求来安排对话。Claude Code 把不认识的模型当作 200K,Codex 在被告知的窗口用到 90% 时压缩对话。本地模型加载时的窗口往往小得多,所以要把真实的窗口告诉 magpie:供应商编辑页 高级 里的 上下文窗口,可以给全部模型设,也可以单独给某个模型设。magpie 会告知各个 Agent。

终端
magpie provider set ollama context=32k
magpie provider set ollama context.qwen3=128k

脱敏

magpie 的 本地脱敏 会在请求离开网关前把 Key、Token 等敏感信息换成占位符,发给本地服务的请求也一样。模型就跑在你自己的电脑或局域网里时,可以在编辑页打开 请求不脱敏,或运行 magpie provider set ollama unmasked=yes。这由你决定:Ollama 的云端模型,或者你在本机跑的中转站,不管地址是什么,都会把请求转给厂商。

常见问题

Claude Code 能用 Ollama 吗?

能。在 magpie 里添加 Ollama,给 Claude Code 选它的模型即可。magpie 把网关地址写进 Claude Code 的 settings.json,Ollama 的 Anthropic 兼容接口直接接收 Claude Code 的请求。

Codex 能用 Ollama 或 LM Studio 吗?

能。Codex 只说 Responses 协议,magpie 会把它的请求转成 Chat Completions 发给 Ollama 和 LM Studio,再把回复转回来,工具调用也一样。oMLX 和 MLX-Serve 本身就支持 Responses。

需要 API Key 吗?

不需要,本地预设不用 Key。你给服务加了 Key 的话,在供应商编辑页填上即可。

模型可以跑在另一台电脑上吗?

可以。把供应商的服务器地址改成那台电脑,比如 http://192.168.1.20:11434。

为什么本地模型在 Claude Code 里长对话会出错?

Claude Code 把不认识的模型当作 200K 窗口。在 magpie 里给这个供应商设好真实的上下文窗口,Claude Code 和 Codex 就会在用满之前压缩。

怎么恢复原样?

在 magpie 里给 Agent 选回它自己的模型,或运行 magpie claude default、magpie codex default。magpie 写进去的会被删掉,被替换的会恢复。

想用云端模型?见 Claude Code 接入其他模型 和 Codex 接入其他模型。遇到问题可以到 Discord 提问。