ドキュメント · ガイド

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 のキー、ChatGPT や Copilot のサブスクリプション)が使えます。

Zoo Code の設定

  1. magpie にプロバイダーを追加プロバイダー ページで API キーを追加するか、サブスクリプションにサインインします。
  2. Zoo Code の行でモデルを選ぶZoo Code 拡張が入っていれば magpie の エージェント ページに Zoo Code の行があります。モデルを選びます。
  3. 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)を使い、キーは Zoo Code と分かるものです。リクエストの User-Agent は ZooCode/<バージョン> なので、magpie の利用状況では Zoo Code として数えられます。openAiCustomModelInfo にはモデルのウィンドウ(Zoo Code はこれで会話を切り詰め、分からないときは 128K)、返信の上限、画像を送れるかが入ります。取り込まれたプロファイルは自分のプロファイルに上乗せされ、自分のものは残ります。

反映されるタイミング

Zoo Code はこのファイルを起動時にだけ読むので、モデルを選んだら一度ウィンドウを再読み込みしてください。接続中は起動のたびに取り込み直すので、毎回 magpie のプロファイルに戻ります。その間に Zoo Code の中で別のプロファイルに切り替えても magpie からは見えず、次の起動で戻ります。magpie のモデルやキーが変わると magpie がファイルを更新し、次の起動から反映されます。

VS Code のプロファイル

VS Code の既定のプロファイルと自分で作った各プロファイルにはそれぞれ settings.json があり、magpie はすべてで設定をファイルに向けます。後から作ったプロファイルにも追加します。どれかが書けなければ、すべて書く前の状態に戻します。

JetBrains 版

Zoo Code for JetBrains は同じ拡張を独自の拡張ホストで動かしますが、起動のたびに空の設定が渡されるので、この設定は届きません。シークレットは ~/.zoo-code/secrets.json にあり、ロックも公開された形式もありません。magpie はどちらも書かないので、JetBrains 版はつながりません。

元に戻す

magpie で行を既定に戻すと、すべての settings.json の設定を戻し、取り込み用のファイルを消します。一度取り込まれたプロファイルは Zoo Code のシークレットストレージにあり magpie は書けないので、magpie プロファイルは Zoo Code の一覧に残ります。切り替えや削除は Zoo Code で行ってください。

ターミナル
magpie zoo-code default

よくある質問

Zoo Code で DeepSeek、GLM、Kimi、Qwen は使えますか?

使えます。magpie が、Zoo Code が起動時に取り込む magpie プロファイルを書きます。ローカルゲートウェイの Chat Completions と magpie で選んだモデルを使います。選んだら一度ウィンドウを再読み込みしてください。

モデルを選んでも Zoo Code が変わりません。

Zoo Code はプロファイルを起動時にだけ取り込みます。VS Code のコマンドパレットで Developer: Reload Window を実行してください。

JetBrains の Zoo Code でも使えますか?

使えません。JetBrains 版は起動のたびに空の設定が渡されるので取り込み設定が届かず、シークレットファイルにも公開された形式がありません。magpie はどちらも書きません。

切断後も magpie プロファイルが残るのはなぜですか?

取り込まれたプロファイルは Zoo Code の暗号化されたシークレットストレージにあり、magpie は書けません。magpie は取り込みを止めて設定を戻し、プロファイルの切り替えや削除は Zoo Code で行います。

同じモデルを他のエージェントでも:Cline を任意のモデルで、Goose を任意のモデルで、Hermes Agent を任意のモデルで。エラーが出るときは よくあるエラーの直し方、または Discord で質問してください。