AI 專欄 · · 約 18 分鐘閱讀

Gemini CLI 拉包總逾時?Clash 分流 Google 與 npm 網域分步修復(2026)

在終端機使用 Gemini CLI時,安裝外掛、更新元件或觸發 npm installnpx常與 Google AI後端(例如 Generative Language API)共用同一條本機出站路徑。若 Clash 分流只照顧到瀏覽器、或規則落在 GEOIP 直連之後才命中,就容易出現TLS 握手卡住DNS看似解析成功卻連不上、或 registry下載 tarball 讀秒不停。本篇與站內以 Gemini 網頁+QUIC為主軸的文章搜尋意圖不同:那裡偏重瀏覽器傳輸層與 HTTP/3;這裡專攻 mihomo怎麼把 googleapis.com 系、ai.google.devregistry.npmjs.org靠前命中,並把 Fake-IP與終端機代理對齊,讓 逾時變得可重現、可修。可併讀 CursorMCP/npm等開發者向專文,關鍵詞各守其位。

1. 為什麼 CLI 場景和「只開 Gemini 網頁」不一樣

瀏覽器開 Gemini時,渲染頁面、OAuth 與一系列靜態資源往往自動跟著系統代理或擴充套件走;而 Gemini CLI獨立行程:它可能同時向 Google 的 API 端點送請求,又透過 Node生態拉 tarball、執行安裝腳本。這些連線預設只吃作業系統解析與路由,不會因為你「瀏覽器看起來正常」就自動繼承同一套行為。當訂閱規則裡缺了某個子網域,或命中順序讓流量在 直連與代理之間切換,終端機就會出現前一次成功、下一次逾時的割裂感——這與單純「節點慢」不同,更像是路徑不一致

Clash能做的是把 CLI 也納入可觀測的分流閉環:在 rules 前段寫清楚 Google AInpm registry要走哪個策略組,再用日誌核對實際命中的規則名稱。它無法替你解決API 額度、金鑰權限或上游故障,但能大幅減少「其實規則沒跟上」的假性 TLSDNS問題。若你同時在意瀏覽器 QUIC 行為,可對照 Gemini 網頁分流與關閉 QUIC一文,兩篇合讀時請分清自己要修的是瀏覽器 HTTP/3還是終端機 TCP 為主的工具鏈

2. 典型症狀:外掛、registry 與 API 同批不穩

實務上你可能看到:安裝延伸模組時畫面停在某個步驟很久;npmETIMEDOUTECONNRESET、或長時間卡在「fetching metadata」;同一段時間裡對 Google AI的呼叫也逾時或重試。若用瀏覽器測速「看起來正常」,卻只有 終端機不穩,首先要懷疑的是行程沒進 TUN/mixed-portNO_PROXY誤排除、或某一條規則把 *.googleapis.com 類流量送去與 registry.npmjs.org 不同的出口,導致憑證鏈或連線重用行為不如預期。

先把期待說清楚:代理無法繞過帳號或地區政策,也無法保證每個 npm 套件伺服器全球同等快;目標是讓你已授權的流量穩定走你選的節點,並在 mihomo 日誌裡看見實際網域與命中規則,而不是只靠感覺換節點。接下來的網域表與 YAML 範例,都是為了讓這條路徑可重現

3. 建議優先覆蓋的 Google AI 與 npm 網域

正式環境裡,唯一可信的主機名來源仍是本機連線日誌與 CLI 的 verbose/debug 輸出;下列為 2026 年常見、可作為起手式的整理,發現新主機名時請補規則、不要死背googleapis.com 系譜很大,不建議一刀切整段代理或直連,除非你已評估對其他依賴 Google API 的本地服務的影響。

  • Generative Language API:generativelanguage.googleapis.com;SDK 日誌若出現其他 *.googleapis.com,再逐條加入,避免過度寬泛。
  • 開發者文件與入口:ai.google.devgoogle.dev(依你實際頁面為準)。
  • OAuth/帳號:若登入或重新授權異常,需同步檢查 accounts.google.com 等是否與 API 出口策略組一致,避免「已登入卻呼叫失敗」的假性狀態。
  • npm 公有 registry:registry.npmjs.org; tarball 與 metadata 多由此主機名承載。若公司鏡像或自建倉庫,請改填實際 FQDN。
  • 連帶 GitHub:若外掛從 GitHub release 拉二進位,可與 MCP/GitHub 篇併讀,避免規則散在多處難維護。

重點是建立可更新的覆蓋層:保留你自己 YAML 裡的一段「CLI/Google AI/npm」前置規則,并在 Google 或 npm 行為變更時用日誌補網域,而不是一次性複製巨集規則卻從不核對命中結果。

4. mihomo 規則與策略組範例

以下片段示範如何為 Gemini CLInpm建立共用或分拆的策略組,並把 DOMAIN-SUFFIX 放在GEOIP 或國內直連之前。範例採用單一策略組收斂出口,利於先排除「分裂路徑」;若你希望 npm 永遠直連、只代理 Google API,可再拆成兩個策略組並調整規則順序。請將節點名稱替換為訂閱中實際存在的代理;註解使用英文以利版本控管。

① 策略組(手動固定低切換節點為宜)

proxy-groups:
  - name: GeminiCLI-npm
    type: select
    proxies:
      - STABLE-A
      - STABLE-B
      - DIRECT

② 規則(置於大範圍直連之前)

rules:
  - DOMAIN-SUFFIX,generativelanguage.googleapis.com,GeminiCLI-npm
  - DOMAIN-SUFFIX,ai.google.dev,GeminiCLI-npm
  - DOMAIN-SUFFIX,google.dev,GeminiCLI-npm
  - DOMAIN-SUFFIX,registry.npmjs.org,GeminiCLI-npm
  # Uncomment if OAuth splits across exits:
  # - DOMAIN-SUFFIX,accounts.google.com,GeminiCLI-npm
  # Add other *.googleapis.com seen in logs, avoid over-wide rules
  # ... GEOIP and MATCH below

若策略組使用 url-test頻繁換出口,長連線可能被遠端重置;需要穩定對話或大型套件下載時,可改手動固定節點或參考 url-test/fallback調整容忍值與備援。

5. 終端機代理:TUN、mixed-port 與環境變數

只有 規則正確仍不夠:nodenpmGemini CLI行程必須真的把流量送進 TUNmixed-port / 系統代理。實務上開啟 TUN最常一次解決「GUI 有代理、Shell 沒代理」的落差;若你僅依賴環境變數,請確認 HTTP_PROXYHTTPS_PROXY指向的值與用戶端顯示的監聽埠一致,且 NO_PROXY沒有把 googleapis.comnpmjs.org整段排除導致意外直連。

Windows 上若要把「國內 registry 直連、海外 API 走代理」拆得更細,可交叉閱讀 Windows npm/pnpm 環境變數與分流,把環境變數層mihomo 規則層一起校準;本篇預設你先追求「Google AI 與官方 npm 同一穩定出口」,把間歇逾時壓下來,再視需求做拆分。若你也在用其他 IDE 外掛打開發者 API,可對照 Cursor 開發者網域一文,讓終端機與編輯器不要各走各的隧道。

6. DNS、Fake-IP 與規則順序如何一起校準

Fake-IP能把「先回假位址、再由核心依網域分流」的流程變快,但若 dns 區塊的 nameserver/fallbackrules 的命中順序不同步,會出現「解析顯示成功、策略組卻不如預期」的錯覺——這在 終端機場景特別惱人,因為錯誤常被包進 fetch failed 或長逾時。建議通讀 fake-ip 與 redir-host 選型,並在調整 DNS 模式時一次只改一個變因,用同一組 npm ping 或 CLI 呼叫對照日誌。

此外,若瀏覽器或系統開着 安全 DNS/DoH,可能與 Clash 內建 DNS形成雙重解析,讓規則看起來「偶發失效」。本站 Windows 下關閉安全 DNS專文以瀏覽器為例說明觀念,終端機排錯時亦可借鏡:先讓解析路徑單純化,再談細緻分流。想建立完整規則觀念可讀 高級規則分流,把「為什麼 registry 明明該走代理卻直連」還原成可驗證步驟。

7. 實測驗證與清單

建議依序執行:在除錯日誌開啟的狀態下重現一次逾時;確認 generativelanguage.googleapis.com(或日誌中的實際 API 主機)與 registry.npmjs.org命中同一策略組核對終端父行程與 node 子行程是否都在 TUN 或同一代理下;暫時關閉瀏覽器 DoH/分裂 VPN 做對照,排除雙重解析;若使用 url-test且節點切換頻繁,觀察長連線是否被重置,必要時改手動固定或調整 url-test/fallback參數。

簡短清單

  • Google AI 與 npm 相關 DOMAIN-SUFFIX 是否位於大範圍直連/GEOIP 之前。
  • 日誌是否出現預期網域;若全無,代表流量未進核心或規則集被覆蓋。
  • HTTP_PROXY/TUN 是否與實際監聽一致;NO_PROXY 是否誤傷。
  • 訂閱與覆寫若過於混亂,可先依 訂閱匯入教學整理基底,再合併本篇前段規則。

8. 常見問題

為什麼 Gemini CLI 和 npm 常常要設成同一個出口?外掛安裝與模型請求往往在相近時間觸發;若一條直連、一條走代理,TLSDNS會分裂,終端機容易出現間歇逾時。先把兩條路收斂到同一策略組,再視需要拆細。

一定要改 npm registry 成鏡像嗎?未必。若官方 registry.npmjs.org可透過穩定節點連線,維持預設並用規則走對出口即可;鏡像是備援,不能取代「規則是否命中、終端是否進隧道」的診斷。

寫在最後

Gemini CLIGoogle AI能力帶進日常終端工作流,卻也把 registry、依賴載入與 API 長連線壓在同一條本機網路節奏裡。Clash 分流的價值,在於用 mihomo規則與日誌讓這些連線可觀測、可固定、可回滾。相較僅提供固定訂閱卻難以針對開發者網域微調、或除錯介面過時的客戶端,持續維護的 Clash 生態系產品在「終端機+AI 工具鏈」場景通常能更快判斷問題出在政策、節點還是本地路徑,而不是反覆盲目更換線路。

若你希望用同一份用戶端完成訂閱匯入、TUN/系統代理切換與規則覆寫,建議從本站 下載頁取得適合系統的版本並完成初配。當 Google AInpm流量都落在預期策略組上,CLI 的穩定度會更接近可預期的開發節奏。

若你已準備好依日誌把規則收斂一次,現在即可動手:→ 立即免費下載 Clash,開啟流暢上網新體驗

依主題相關度匹配的延伸閱讀,涵蓋同分類下的實戰配置文章。