magpie:一個本地閘道器,讓 Claude Code、Codex、Gemini CLI 等程式設計智慧體共用任意模型,並在額度用完時自動切換賬號

Published · AI Daily — AI-assisted deep research, methodology & disclosure

yetone/magpie 是一個 Go 編寫、MIT 許可的開源專案,建立於 2026 年 9 月 23 日,截至發稿約有 1.15 萬個星標。它在 127.0.0.1:3425 起一個本地閘道器,同時講 OpenAI Chat、OpenAI Responses、Anthropic Messages 和 Gemini 四種協議並互相轉換,讓“Claude Code 跑在 Kimi 上、Codex 跑在 DeepSeek 上”成為一條命令。它還能讀取各智慧體已登入的訂閱並在額度耗盡時切換,這一點需要留意隱私與服務條款。

yetone/magpie 是一個開源專案,用 Go 編寫,採用 MIT 許可,建立於 2026 年 9 月 23 日,最近一次推送是 10 月 14 日,截至發稿約有 11,517 個星標和 773 個分叉。它的口號是“每個智慧體的模型,一個入口”:在選單欄裡就能把 Claude Code 切到 Kimi,把 Codex 切到 DeepSeek,把 Gemini CLI 切到智譜 GLM,甚至讓 OpenCode 用你的 ChatGPT 訂閱。背後的原因很現實。現在的程式設計智慧體很多,每個都把模型寫在自己的配置檔案裡,格式、金鑰和基礎地址都不同;你為某個智慧體付費的訂閱,通常也只能在它自己裡面用。magpie 想把這些都放到一個應用和一個本地閘道器後面。 它的核心是本地閘道器,地址是 127.0.0.1:3425。閘道器同時說四種協議:OpenAI Chat、OpenAI Responses、Anthropic Messages 和 Gemini,並在它們之間互相翻譯,流式輸出、工具呼叫和推理內容都包括在內。所以只要某個智慧體可以設定基礎地址,就能走這個閘道器,README 給出了三組環境變數的寫法。對於已支援的智慧體,列表很長,包括 Claude Code、Codex、Gemini CLI、OpenCode、Cursor CLI、Copilot CLI、Goose、Cline、Qwen Code 等幾十個,magpie 只顯示你機器上已安裝的。選擇模型時,點一下數值就會開啟一個可搜尋的列表,裡面是你新增的所有提供商的所有模型;magpie 會原子地改寫該智慧體配置裡關鍵的那一項,原有的註釋、順序和格式保持不變。還有“配置檔”,可以把每個智慧體的設定存成一個名字,比如“省錢”或“專注”,一步切換。

提供商部分覆蓋面很廣:預設裡有 Anthropic、OpenAI、Google Gemini、DeepSeek、Kimi、智譜、MiniMax、通義千問、Mistral、Groq、xAI、OpenRouter、Ollama、LM Studio 等,還可以接任何相容 OpenAI 或 Anthropic 的地址;模型列表來自供應商,並由 models.dev 補全名稱和推理級別。更特別的是“訂閱”:你已經登入的智慧體被視為帶有模型的訂閱,magpie 會把它當作提供商提供給其他智慧體,同一訂閱下還可以新增多個賬號,在它們之間故障切換。README 列出的包括 Claude(驅動本機真實的 claude 程式,並透過 MCP 橋接智慧體的工具)、Codex 與 ChatGPT、GitHub Copilot、Gemini Code Assist、Antigravity、Grok 等,也支援來自 npm 的 OpenCode 認證外掛或 pi 軟體包。

“路由組”是另一個重點。一個路由組把幾個模型當作一個來用,閘道器把請求分散到每個成員的金鑰和賬號上,有五種模式:smart 選擇還有額度、並且最早續期的訂閱,以減少續期時的浪費;order 先用第一個,答不了再換下一個;rotate 每輪換一個;usage 先用用得最少的;pace 選擇本週剩餘額度相對於時間最多的賬號。會話會盡量留在回答它的賬號上,以便保住供應商的提示快取;路由組裡還可以再放路由組。“意圖路由”則讓你選的一個小模型讀每個新回合,把測試交給強模型,把快速問題交給便宜的模型。此外還有每日預熱,可以在設定的時間啟動每個 Claude 和 ChatGPT 賬號的 5 小時視窗。命令列裡,magpie provider add 新增提供商,magpie claude deepseek/deepseek-v4-pro 讓 Claude Code 跑在 DeepSeek 上,magpie quota 看各計劃還剩多少。

使用前有幾個現實的提醒。首先是憑據:magpie 透過讀取各智慧體已登入的資訊發現訂閱,包括 Claude Code 和 Codex 的檔案以及系統鑰匙串;若不想讓它讀取,可以在設定的隱私頁關閉“訂閱賬號”,執行 magpie accounts discovery off,或用 MAGPIE_NO_ACCOUNTS=1 關閉一次執行,使用 API 金鑰的提供商不受影響。其次是條款:把一家訂閱提供給其他工具使用,是否符合該訂閱的服務條款,需要你自己核對,我們沒有核實,也不建議在不確定時用於重要賬號。最後是安裝:官方給出 curl 加 sh 的一行命令,也提供應用下載、go install 和 Docker 映象,建議先讀指令碼再執行。如果你只在廠商自己的計劃裡用一個智慧體,README 也坦率地說,你並不需要它;它適合同時用多個智慧體、多個提供商或多個賬號的人。 如果你想試,不妨按保守的順序來。第一步,只新增一個用 API 金鑰的提供商,並關閉訂閱賬號的自動發現,先確認閘道器、模型切換和配置改寫都按預期工作。第二步,用 magpie quota 和路由檢視觀察每一次請求的去向,弄清楚“智慧”路由到底做了什麼決定。第三步,再考慮是否把訂閱賬號加進來,並事先閱讀各家訂閱的使用條款,因為把一個賬號提供給其他工具使用,可能不在條款允許的範圍內。這樣既能享受“一個入口、任意模型”的便利,又能把憑據和合規的風險控制在自己看得見的範圍裡。對於只在單一廠商計劃裡使用單一智慧體的人,這個專案帶來的好處有限。

Sources

FAQ

magpie 具體解決什麼問題?

每個程式設計智慧體都把模型配置放在自己的檔案裡,格式、金鑰和基礎地址各不相同,你為某個智慧體付費的訂閱也只能在這個智慧體裡用。magpie 在本機起一個閘道器,說 OpenAI Chat、OpenAI Responses、Anthropic Messages 和 Gemini 四種協議並互相翻譯,包括流式輸出、工具呼叫和推理內容。你在應用或命令列裡為任何一個智慧體選任意提供商的模型,magpie 會原子地改寫該智慧體配置裡關鍵的那一項,保留原有註釋、順序和格式。

額度用完時它怎麼處理?

透過“路由組”。一個路由組由幾個模型組成,智慧體把它當作一個模型使用,例如 group/daily-coding,閘道器把請求分散到每個成員的金鑰和賬號上。模式有五種:smart 選還有額度且最早續期的訂閱;order 先用第一個直到答不了再換下一個;rotate 每輪換一個;usage 先用用得最少的;pace 用本週剩餘額度相對時間最多的賬號。會話會盡量留在回答它的賬號上,以保住供應商的提示快取。命令 magpie quota 可檢視各計劃剩餘額度。

使用前需要注意哪些風險?

第一,magpie 會透過讀取各智慧體已登入的憑據(例如 Claude Code 和 Codex 的檔案、系統鑰匙串)來發現訂閱賬號;可以在設定的隱私頁關閉,或執行 magpie accounts discovery off,也可用環境變數 MAGPIE_NO_ACCOUNTS=1 只關一次。第二,把一家訂閱提供給其他工具使用,是否符合該訂閱的服務條款,需要你自己去核對,我們沒有核實。第三,README 提供了 curl 加 sh 的安裝方式,也可以用 go install 或 Docker 映象;執行指令碼前建議先閱讀。