ドキュメント · ガイド
JetBrains Copilot を任意のモデルで
IntelliJ IDEA・PyCharm・GoLand などの JetBrains IDE と Android Studio の GitHub Copilot プラグインは、Bring Your Own Key で他社のモデルを使えます。Copilot Chat のモデルピッカーで Manage Models… を開き、Add Custom Endpoint Provider で追加します。magpie はこのカスタムエンドポイントを magpie という名前で書き込むので、DeepSeek・GLM・Kimi・Qwen・Claude・ChatGPT サブスクリプションなど magpie のすべてのモデルが Copilot Chat のピッカーに並びます。逆に Copilot サブスクリプションを他のエージェントで使うには GitHub Copilot を Claude Code・Codex・Gemini CLI・OpenCode で使う を見てください。
JetBrains Copilot の設定
- magpie でプロバイダーを追加プロバイダー ページで API キーを追加するか、サブスクリプションにサインインします。
- エージェント ページで Copilot (JetBrains) のプロバイダーを magpie にするmagpie が自分のエンドポイントを Copilot の byok.json に書き込みます。
- IDE を再起動IDE は Copilot のサインイン時にエンドポイントを読むので、再起動後に magpie のモデルが現れます。
- Copilot Chat のモデルピッカーでモデルを選ぶmagpie のモデルは magpie の下に並びます。選んだモデルは IDE がプロジェクトファイルに保存します。
JetBrains IDE か Android Studio のプラグインフォルダーに github-copilot-intellij プラグインがあるとき、または byok.json にすでに magpie のエンドポイントがあるとき、magpie はエージェントページに Copilot (JetBrains) を表示します。
必要な Copilot プラン
Bring Your Own Key には GitHub にサインインした Copilot が必要です。個人向けの Copilot Free・Pro・Pro+ で使え、Business と Enterprise では組織のポリシーが許可していれば使えます。リクエストは Copilot 言語サーバーの他のクライアントと同じく GithubCopilot/<サーバーのバージョン> を名乗るので、magpie はキーで見分けます。
byok.json
JetBrains プラグインはこの設定を自分では持たず、同梱の Copilot 言語サーバー(copilot-language-server)に任せます。このサーバーはすべてのカスタムエンドポイントを 1 つの JSON ファイルに置き、使うたびに読み直します。
$XDG_CONFIG_HOME(絶対パス)があるとき:$XDG_CONFIG_HOME/github-copilot/byok.json- Windows:
%USERPROFILE%\AppData\Local\github-copilot\byok.json - macOS と Linux:
~/.config/github-copilot/byok.json
カスタムエンドポイントはここでは 3 つのキーです。magpie は言語サーバー自身が保存するのと同じ形で書きます。
// ~/.config/github-copilot/byok.json
{
"magpie-provider-config": { "groupName": "magpie", "apiType": "chatCompletions" },
"magpie-api-key": "",
"magpie-models-config": {
"…": {
"deploymentUrl": "http://127.0.0.1:3425/v1/chat/completions",
"isRegistered": true,
"isCustomModel": true,
"modelCapabilities": {
"name": "…", "maxInputTokens": …, "maxOutputTokens": …,
"toolCalling": true, "vision": …
}
}
},
…
} 各モデルはゲートウェイの /v1/chat/completions を指し、キーは Bearer トークンとして送られます。キーは IDE のパスワード保管庫ではなく、このファイルに平文で入ります。Xcode と Eclipse の Copilot も同じ言語サーバーを動かして同じファイルを読むので、magpie のモデルが並びます。
エージェントモードとコンテキスト
すべてのモデルでツール呼び出しをオンにしています。Copilot のエージェントモードはツールを呼べるモデルしか表示しないからです。maxInputTokens はサーバーがプロンプトで埋めるウィンドウで、magpie のカタログのコンテキスト長、分からなければサーバー自身のカスタムエンドポイント向け既定値 128K です。maxOutputTokens はそのウィンドウ内に収めます。
自分の設定はそのまま
byok.json のほかのエンドポイントとキーはそのままです。IDE の Manage Models で非表示にした magpie のモデルは、同期後も非表示のままです。変更がなければ magpie はファイルを書かず、言語サーバーが最後に書いた状態のままです。
元に戻す
magpie で Copilot (JetBrains) をオフにすると、magpie は byok.json から自分の 3 つのキーを消します。自分のエンドポイントには触れません。
よくある質問
JetBrains の Copilot で DeepSeek や GLM を使えますか?
使えます。magpie が Copilot の byok.json にカスタムエンドポイントを書くので、IDE を再起動し、Copilot Chat のピッカーで magpie の下のモデルを選んでください。
Copilot Business でも使えますか?
Bring Your Own Key は Business と Enterprise では組織のポリシーが許可していれば使え、Free・Pro・Pro+ では使えます。
エージェントモードで magpie のモデルを使えますか?
使えます。magpie はすべてのモデルでツール呼び出しをオンにしており、Copilot のエージェントモードはツールを呼べるモデルを表示します。
Xcode や Eclipse の Copilot にも出ますか?
出ます。同じ Copilot 言語サーバーを動かし、同じ byok.json を読むからです。
同じモデルを他のエージェントでも:VS Code を任意のモデルで、Copilot CLI を任意のモデルで、OpenMausBot を任意のモデルで、Kiro Crew を任意のモデルで。エラーが出るときは よくあるエラーの直し方、または Discord で質問してください。