文档 · 指南
让 Zoo Code 用任意模型
Zoo Code(Zoo-Code-Org/Zoo-Code,VS Code 扩展 ZooCodeOrganization.zoo-code,Roo Code 的分支)把供应商配置档存在 VS Code 的加密密钥存储里,别的程序写不进去。但它每次启动都会导入 zoo-code.autoImportSettingsPath 设置指向的文件,和它自己 设置 → 导入 一样。magpie 就写这个文件:一个叫 magpie 的 OpenAI 兼容配置档,指向本机网关,用你选的模型。于是 Zoo Code 能用 magpie 里的任何模型:DeepSeek、GLM、Kimi、Qwen、OpenAI 或 Anthropic Key,或 ChatGPT、Copilot 订阅。
接入 Zoo Code
- 在 magpie 里添加供应商在 供应商 页添加 API Key,或登录一个订阅。
- 在 Zoo Code 那一行选模型装了 Zoo Code 扩展,magpie 的 Agent 页就有 Zoo Code 一行,选一个模型。
- 重新加载 VS Code 窗口在命令面板运行 Developer: Reload Window,Zoo Code 启动时导入 magpie 的配置档并切到它。
magpie zoo-code deepseek/deepseek-v4-pro # VS Code: Developer: Reload Window
写了哪些文件
magpie 把要导入的文件写在 VS Code User 目录下 Zoo Code 自己的文件夹里:globalStorage/zoocodeorganization.zoo-code/settings/magpie-import.json,旁边就是 Zoo Code 自己存的设置文件。然后在 VS Code 的 settings.json 里把 zoo-code.autoImportSettingsPath 指向它。你原来的值会被记下,断开时放回去。
///globalStorage/zoocodeorganization.zoo-code/settings/magpie-import.json {"providerProfiles": {"currentApiConfigName": "magpie", "apiConfigs": {"magpie": {"id": "magpie", "apiProvider": "openai", "openAiBaseUrl": "http://127.0.0.1:3425/v1", "openAiApiKey": "…", "openAiModelId": "deepseek/deepseek-v4-pro", "openAiStreamingEnabled": true, "openAiCustomModelInfo": {"contextWindow": …, "maxTokens": …, "supportsImages": …}}}}} // /settings.json "zoo-code.autoImportSettingsPath": "…/magpie-import.json"
配置档用 Zoo Code 的 OpenAI Compatible 供应商,请求网关的 Chat Completions(/v1),Key 标明是 Zoo Code 的,请求的 User-Agent 是 ZooCode/<版本>,所以 magpie 的用量里会记在 Zoo Code 名下。openAiCustomModelInfo 写上模型的上下文窗口(Zoo Code 按它截断对话,不知道时默认 128K)、单次回复的上限和是否支持图片。导入的配置档合并到你自己的配置档上,你自己的都还在。
什么时候生效
Zoo Code 只在启动时读这个文件,所以选完模型要 Reload Window 一次。接入期间它每次启动都会重新导入,于是每次启动都会回到 magpie 的配置档;你在 Zoo Code 里临时切到别的配置档,magpie 看不到,下次启动又会回来。magpie 的模型列表或 Key 变了,magpie 会自动更新这个文件,下次启动生效。
VS Code 配置文件
VS Code 的默认配置文件和你建的每个配置文件(Profiles)各有一份 settings.json,magpie 都会把设置指过去;之后新建的配置文件也会补上。任何一份写失败,所有文件都还原到写之前的样子。
JetBrains 版
Zoo Code for JetBrains 在自己的扩展宿主里跑同一个扩展,但每次启动拿到的配置都是空的,这个设置到不了它;它的密钥存在 ~/.zoo-code/secrets.json,格式没有文档也没有锁。所以 magpie 不接 JetBrains 版,两边都不写。
切回
在 magpie 里把那一行切回默认:magpie 还原每份 settings.json 里的设置,删掉导入文件。已经导入过的 magpie 配置档存在 Zoo Code 的密钥存储里,magpie 写不了,所以它会留在 Zoo Code 的配置档列表里,切到别的配置档或者删掉它都由你在 Zoo Code 里做。
magpie zoo-code default
常见问题
Zoo Code 能用 DeepSeek、GLM、Kimi 或 Qwen 吗?
能。magpie 写一个让 Zoo Code 启动时导入的 magpie 配置档,指向本机网关的 Chat Completions,用你在 magpie 里选的模型。选完 Reload Window 一次。
为什么选了模型 Zoo Code 没变?
Zoo Code 只在启动时导入配置档。在 VS Code 命令面板运行 Developer: Reload Window。
JetBrains 里的 Zoo Code 能接吗?
不能。JetBrains 版每次启动拿到的配置是空的,导入设置到不了它,它的密钥文件也没有公开的格式,magpie 都不写。
断开后 magpie 配置档为什么还在?
导入后的配置档存在 Zoo Code 的加密密钥存储里,magpie 写不了。magpie 停止导入并还原设置,配置档留给你在 Zoo Code 里切走或删除。
更多 Agent 用同样的模型:让 Cline 用任意模型、让 Goose 用任意模型、让 Hermes Agent 用任意模型。遇到报错?见 常见错误排查,或到 Discord 提问。