Claude Code 連線不穩,先分辨是帳戶、網路還是代理問題

Claude Code會在終端機中執行,並透過網路完成登入、讀取帳戶狀態及傳送模型請求。當連線不穩時,表現可能是登入頁面一直等待、命令停在載入畫面、請求逾時,或工作進行到一半突然中斷。這些情況不一定都由 Clash 引起:帳戶資格、服務可用性、公司或校園網路限制,以及終端機是否使用代理,都可能是原因。建議先記下錯誤訊息和發生時間,再逐層檢查,不要一開始就同時改訂閱、切換全域模式並啟用 TUN,否則即使恢復正常,也很難知道真正的原因。

Claude Code 與一般瀏覽器的連線方式並不完全相同。瀏覽器可能已經遵循 Clash Verge 設定的系統代理,但在終端機啟動的 CLI 程式未必會自動讀取相同設定;若它是從 IDE、遠端 SSH 工作階段或其他啟動器開啟,也可能繼承另一組環境變數。因此,「瀏覽器能開啟相關網站」只能證明瀏覽器目前可連線,不能直接證明 Claude Code 的請求也經過相同出口。

本文以先確認前提、再檢查 Clash、最後驗證終端機為順序,說明如何匯入訂閱、選擇策略群組、檢查分流命中,並按需要設定代理環境變數。Clash Verge 不同版本的頁面名稱和選項位置可能略有差異;請以你正在使用的版本為準,尋找「設定檔」、「代理」、「連線」或「系統代理」等對應功能。本文不保證特定網路環境一定能連線,也不提供規避服務限制的方法;使用前請確認所在地規定、帳戶資格及 Anthropic 服務條款。

動手設定前,先確認帳戶、版本與目前網路

若帳戶本身無法使用 Claude Code,切換代理通常不會解決問題。請先使用官方支援的方式確認帳戶是否符合使用資格,並查看服務狀態或官方說明是否有已知的登入、請求或維護問題。若錯誤訊息明確指出帳戶權限、登入驗證或用量限制,應先處理相應問題;不要反覆更換節點,亦不要將帳戶憑證或授權資料交給不明第三方。

接著確認你執行 Claude Code 的位置,以及該終端機是否和 Clash Verge 位於同一個網路環境。常見差異包括:在本機終端機可用、但 IDE 內建終端機失敗;本機正常、SSH 遠端主機失敗;或切換 Wi-Fi 後原本可用的連線中斷。這些差異通常表示代理設定沒有傳遞到實際執行程式的環境,或該主機根本無法連到本機 Clash 的監聽埠。遠端主機不能直接使用你筆電上的 `127.0.0.1`,因為那個位址指向遠端主機本身,而不是你的電腦。

  • 確認應用程式:在 Clash Verge 中查看目前核心是否已啟動,並確認已載入預期的設定檔,而非只有把訂閱新增到清單。
  • 確認訂閱狀態:更新訂閱後檢查是否成功載入代理節點、策略群組及規則。訂閱失效、格式不相容或連結貼錯,都可能令代理清單空白。
  • 確認其他網路工具:排錯時先辨認是否另有 VPN、公司網路代理或安全軟體介入。它們可能改變系統代理或路由,造成相同請求在不同時段走不同路徑。
  • 保存錯誤線索:記錄發生問題的命令、錯誤文字、網路類型,以及 Clash 連線紀錄中當時是否出現對應請求。分享紀錄前,先遮蔽帳戶資料、訂閱網址和其他敏感資訊。
小提示:訂閱連結通常帶有存取憑證,應視同密碼保管。不要把完整網址貼到公開討論區、螢幕截圖或錯誤回報中;若不慎公開,請向訂閱服務提供者確認如何撤銷或更換。

完成以上確認後,先以一般瀏覽器檢查 Clash 是否能讓常用網站正常連線,再回到 Claude Code 做一次單純測試。這樣可以區分「Clash 整體沒有可用出口」與「只有終端機程式沒有使用代理」兩種不同問題。若一般網站也無法連線,優先處理設定檔、節點或網路本身;若瀏覽器正常而 CLI 失敗,接下來應集中檢查分流和終端機代理設定。

在 Clash Verge 匯入訂閱並選擇可用策略

若你尚未在 Clash Verge 載入有效設定,先從可信任的服務來源取得訂閱連結或設定檔。開啟 Clash Verge 的設定檔頁面,依介面提供的功能新增遠端設定,貼上訂閱連結並儲存,再執行更新。若使用的是本機 YAML 檔案,請確認來源可信、檔案格式正確,並以匯入本機設定的方式載入。不同版本可能使用「Profiles」、「設定檔」或其他相近名稱,核心步驟是確保該設定已成功下載並被目前核心採用。

  1. 新增設定檔後,等待更新完成;若顯示錯誤,先核對網址是否完整、有沒有多餘空格,以及服務端是否要求登入或額外授權。
  2. 確認設定檔已啟用,並在代理頁面看到可選的節點或策略群組。只看到設定檔名稱,不代表核心已載入其中的節點。
  3. 在策略群組中選擇服務提供者允許使用、目前可連線的出口。若群組提供延遲測試,可用結果作為參考,但測試速度不等於 Claude Code 的長時間請求一定穩定。
  4. 保持選擇的策略群組與節點名稱清楚可辨,完成一次測試後再更換其他選項,避免同時改動多個因素。

訂閱中的節點和服務能力會隨提供者、帳戶及網路狀況而異。不要只憑名稱中的地區、速度或「AI 專用」字樣判斷是否適用;應以實際連線紀錄和連續測試結果為準。若更換節點後症狀完全相同,問題可能在終端機沒有使用代理、帳戶認證或本機網路,而不一定是節點品質。

第一次排查時,建議先使用容易理解的規則模式,並保留原本設定的備份。切換到全域模式可能令更多應用程式一併走代理,雖然有助於判斷是否為分流造成的問題,但也會改變瀏覽器、更新程式和其他本機服務的連線行為。請把全域模式視為短時間的對照測試,而非遇到 CLI 逾時就必須長期開啟的設定。

檢查 Claude Code 連線是否命中預期分流規則

Clash Verge 中的規則負責判斷連線目的地應交給哪個策略群組;系統代理或 TUN 則影響流量能否進入 Clash。這兩個環節必須同時成立:即使規則寫得正確,如果 CLI 沒有把請求送進 Clash,規則就沒有機會生效;反過來說,請求已進入 Clash,但被較早的直連規則接走,也不會使用你預期的代理策略。

啟動 Claude Code 並重現一次問題時,打開 Clash Verge 的連線或日誌頁面,查看是否出現與 Anthropic 服務相關的請求。Claude Code 所需端點可能隨登入方式、程式版本與功能變動,不能只根據固定網域清單推斷所有流量都已覆蓋。以你自己的連線紀錄中實際出現的目的地為準,檢查它套用的規則及策略。如果紀錄顯示直連,而你預期應走代理,請確認設定檔中是否有匹配該目的地的規則,並留意規則的先後順序:一般而言,先匹配到的規則會影響後續處理。

  • 連線紀錄完全沒有相關請求:CLI 可能未使用系統代理,或程式尚未真正送出請求。先檢查終端機環境變數,再確認命令執行時是否遇到登入、互動確認或本機代理設定問題。
  • 有請求但顯示直連:檢查設定檔是否載入正確、規則是否被較早的項目攔截,以及目前模式是否為規則模式。不要直接複製不明來源的整份規則集。
  • 請求走代理但仍逾時:可先用同一策略群組測試其他節點,並觀察是否在長時間傳輸期間中斷。若所有節點都一樣,還需檢查網路品質、帳戶或服務端狀態。
  • 只有某個終端機失敗:比較一般終端機、IDE 內建終端機與 SSH 工作階段的環境變數及啟動方式。不同環境的設定不一定會互相繼承。

規則需要時可以採用明確、可維護的匹配方式,但應依連線紀錄中實際使用的網域來調整,不要僅因為某個工具屬於 AI 類別,就把大量不相關網域一概導向同一出口。新增規則後,重新載入設定並重現同一個操作,再回到連線紀錄確認命中的規則與策略是否改變。若新規則沒有任何效果,先確認正在編輯的是目前生效的設定檔,而不是草稿或另一份舊訂閱。

TUN 模式可協助測試那些不遵循系統代理設定的連線,但它會擴大被接管的流量範圍,也可能與公司 VPN、其他路由工具或安全軟體衝突。只有在確認 CLI 請求沒有進入 Clash、且理解本機網路影響時,才考慮短時間啟用作為對照。測試結束後記錄結果,並恢復你原本需要的模式;不要為了排除一個 CLI 問題,無意間改變整部電腦的網路路由。

讓終端機使用 Clash Verge 的本機代理

如果 Clash Verge 已啟動、策略可用,但連線清單看不到 Claude Code 的請求,終端機可能沒有使用系統代理。此時可依 Clash Verge 目前顯示的 HTTP/混合代理連接埠,為目前 Shell 工作階段設定 `HTTPS_PROXY` 和 `HTTP_PROXY`。以下的 `7890` 只是常見示例,不代表每個人的實際埠號;請以你的 Clash Verge 設定為準,勿直接照抄。若你的版本提供系統代理開關,也可先確認它已啟用,再於終端機中檢查 CLI 是否仍需明確設定環境變數。

# macOS / Linux:將埠號替換成 Clash Verge 實際使用的 HTTP 或混合代理埠
export HTTPS_PROXY=http://127.0.0.1:7890
export HTTP_PROXY=http://127.0.0.1:7890

這類命令通常只對目前的終端機工作階段及其後續啟動的程式生效。請在同一個視窗中執行 Claude Code,並確認環境變數內容與實際監聽埠一致。若你只在另一個終端機視窗設定變數,或 CLI 已經在設定之前啟動,該程序通常不會自動取得新值。測試完成後,可關閉該視窗,或在目前工作階段中移除變數,避免後續工作意外沿用測試設定。

Windows 使用 PowerShell 時,可在目前工作階段設定相應變數;請同樣將埠號換成自己的實際值:

$env:HTTPS_PROXY = "http://127.0.0.1:7890"
$env:HTTP_PROXY = "http://127.0.0.1:7890"

若終端機要求登入瀏覽器授權,但瀏覽器能開啟、回到 CLI 後仍無法完成,請同時檢查 CLI 所在的 Shell、瀏覽器開啟位置與本機回呼流程。使用 SSH 時,授權頁可能需要在本機瀏覽器完成,而 CLI 運行於遠端主機;本機 Clash 的回環位址不會自動成為遠端主機的代理。此時應先確認你的遠端環境是否有經授權且安全的代理配置方式,不要把代理埠公開到不可信任的網路,也不要為了繞過連線問題而停用帳戶安全驗證。

排查原則:每次只改一項設定。先比較「未設定環境變數」與「設定後」的連線紀錄,再比較不同策略或模式。若同時改規則、埠號、節點和 TUN,測試結果就很難用來定位原因。

常見狀況排查與 FAQ

連線恢復後,建議再執行一次相同操作,確認不是偶然成功。觀察 CLI 是否仍會間歇逾時、連線是否在長時間請求期間中斷,以及 Clash 的連線紀錄是否持續顯示預期策略。完成測試後,把只供排錯使用的全域模式或環境變數恢復到適合日常使用的狀態;若你依賴自動化工作流程,也要在實際使用的 IDE、Shell 或遠端環境中各自確認設定,而不是只測試單一視窗。

瀏覽器可以連線,為什麼 Claude Code 還是逾時?

瀏覽器和終端機程式可能使用不同代理設定。瀏覽器可遵循系統代理或自己的網路設定,但 CLI 未必讀取相同設定;IDE 內建終端機、SSH 工作階段也可能沒有繼承你在另一個 Shell 設定的環境變數。請在執行 Claude Code 的同一個環境中檢查代理變數,並在 Clash Verge 的連線紀錄確認請求是否進入核心。

排錯時一定要切到全域模式或開啟 TUN 嗎?

不一定。先使用規則模式與系統代理,確認請求是否進入 Clash、套用哪一條規則及哪個策略。只有在懷疑 CLI 不遵循系統代理,或需要做短時間路由對照時,才考慮全域模式或 TUN。這些模式會影響更多流量,測試後應重新評估並恢復適合日常使用的設定。

如何知道環境變數中的代理埠號應該填多少?

查看 Clash Verge 目前設定中的 HTTP 或混合代理埠,而不是照抄網路文章中的範例。若埠號不一致,CLI 可能連到錯誤位置或直接連線失敗。也要確認該連接埠在本機正在監聽;若 Claude Code 在遠端主機執行,遠端的 `127.0.0.1` 指向遠端本身,不會自動連到你本機的 Clash。

代理設定正確,仍然無法登入或呼叫服務,應該怎麼辦?

查看錯誤是否與帳戶資格、登入驗證、用量限制或服務狀態有關,並以 Anthropic 官方資訊確認原因。檢查連線紀錄時,也可確認請求是否穩定經過預期策略;若連線已正常建立而錯誤仍明確指向帳戶或權限,就應處理帳戶問題,而不是持續更換節點。請勿公開授權資訊、API 憑證或完整訂閱網址。

若你常用的代理工具只提供簡單的全域開關,遇到「瀏覽器正常、CLI 不通」時,往往較難看出是哪個目的地被送往直連;Clash Verge 則能把策略群組、分流規則與連線紀錄放在同一個排查流程中,讓你逐項確認請求是否進入核心及實際採用的出口。若你希望在合規前提下更清楚管理桌面端代理,並依照本文步驟測試終端機連線,可先查看適用平台與版本資訊,再選擇符合需求的用戶端。

前往下載 →