使用教學 精選 Clash 入門 Clash 與 VPN 差異 代理工具新手

Claude Code 連線不穩怎麼辦?用 Clash 設定終端代理

2026年10月8日 更新於 2026年10月8日 約 12 分鐘閱讀

前言:先分清終端代理與系統代理

使用 Claude Code 時,終端機可能出現連線逾時、無法連接 API、登入流程卡住,或程式執行到一半中斷等狀況。即使瀏覽器已能透過 Clash 開啟網站,也不代表命令列中的 Claude Code 一定會使用相同代理:許多終端工具不會自動讀取 Clash Verge 的系統代理設定,而是依照目前 Shell 的環境變數決定連線方式。

處理這類問題的核心,是讓 Claude Code 確實連到 Clash 的本機代理埠,再確認 Clash 規則將相關流量送往可用節點。下文以 Clash Verge、Clash Verge Rev 與 Mihomo 為例,逐步檢查代理埠、終端環境變數和分流設定。各版本的介面名稱可能不同,請以實際顯示的埠號與策略組名稱為準,不要直接假設一定是常見的 7890。

先記住這個差異

Clash 的「系統代理」主要設定作業系統或部分應用程式使用的代理;終端程式則常需要透過 HTTP_PROXY、HTTPS_PROXY 等環境變數指定代理。兩者可以同時使用,但不是同一項設定。

1確認 Clash 本機代理正在運作

開始前,先確認 Clash 客戶端已啟動、設定檔已成功載入,而且目前選擇的節點可以正常連線。進入 Clash Verge 或 Clash Verge Rev 的設定頁面,查看本機 HTTP、SOCKS 或混合代理埠;不同設定檔和版本可能使用不同埠號。若使用 Mihomo 設定檔,常見欄位包括 port、socks-port 與 mixed-port,但只有實際啟用的監聽埠才能供終端連線。

如果你不確定使用哪個埠,可以查看客戶端設定頁或 Mihomo 的執行日誌。請記下位址與埠號,例如 127.0.0.1:7890;以下指令中的 7890 只是假設值,必須替換成你的實際設定。一般桌面環境使用回環位址 127.0.0.1 即可。若客戶端刻意綁定其他位址,則應依照自身設定調整,不要為了測試而任意開放代理給區域網路。

檢查代理連線

在終端機執行下列測試,並將埠號改成 Clash 實際監聽的 HTTP 或 mixed-port:

curl -I -x http://127.0.0.1:7890 https://api.anthropic.com/

如果收到 HTTP 回應,即使狀態碼是 401、404 或 405,通常也表示請求已抵達對端;這不代表帳號驗證完成,只能用來初步確認網路路徑。若出現「Could not connect to server」或連線拒絕,優先檢查 Clash 是否啟動、埠號是否正確,以及該埠是否為 HTTP 代理埠。若你只有 SOCKS 代理埠,可改用 curl --socks5-hostname 127.0.0.1:7891 測試,並將 7891 換成實際埠號。

注意代理類型

HTTP_PROXY 與 HTTPS_PROXY 的值通常寫成 http://127.0.0.1:埠號,即使目標網址是 HTTPS 也一樣。變數名稱中的 HTTPS 指的是目的連線,不代表本機代理一定要使用 https:// 協定。

2在終端機為 Claude Code 設定代理

環境變數通常只會影響設定之後啟動的程式。因此,請先在目前終端機設定代理,再從同一個視窗啟動 Claude Code。若程式已經開啟,新增變數後仍沿用舊連線,請先結束程式,再重新啟動。為避免不同 Shell 的語法混用,請選擇下方符合你作業環境的一組指令。

macOS、Linux 與 bash/zsh

在 bash 或 zsh 中,可於啟動 Claude Code 前輸入以下指令。這種設定只在目前終端機工作階段生效,關閉視窗後即失效,適合先測試,不必一開始就修改全域設定。

export HTTP_PROXY="http://127.0.0.1:7890" export HTTPS_PROXY="http://127.0.0.1:7890" export ALL_PROXY="http://127.0.0.1:7890" claude

請將範例埠號替換成 Clash 的 HTTP 或 mixed-port。如果你使用 fish Shell,環境變數語法不同,可改用 set -gx HTTPS_PROXY http://127.0.0.1:7890 等指令,並為 HTTP_PROXY 與 ALL_PROXY 設定相同位址。測試完成後,可用 unset HTTP_PROXY HTTPS_PROXY ALL_PROXY 清除 bash/zsh 中的臨時設定。

Windows PowerShell

在 PowerShell 中,使用 $env: 設定目前視窗的環境變數。請從同一個 PowerShell 視窗啟動 Claude Code;如果改從開始功能表或其他終端機啟動,該程序不一定會繼承這裡的設定。

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

在 PowerShell 中,關閉視窗即可移除這些臨時設定。若要在目前視窗立即清除,可執行 Remove-Item Env:HTTP_PROXY, Env:HTTPS_PROXY, Env:ALL_PROXY -ErrorAction SilentlyContinue。建議先使用工作階段設定確認連線正常,再考慮是否需要持久化,避免其他不需要代理的命令列程式也受到影響。

確認 Claude Code 繼承到設定

設定完成後,可在啟動程式前檢查變數值:macOS 或 Linux 使用 printenv HTTPS_PROXY,PowerShell 使用 $env:HTTPS_PROXY。如果輸出仍是空白,表示變數沒有設定在目前這個 Shell。若 Claude Code 是由 IDE、圖形化啟動器、容器或遠端開發環境啟動,也要在該執行環境中設定代理;只在本機桌面終端設定,未必會自動傳到容器或遠端主機。

3調整分流規則並排除常見故障

環境變數負責把終端程式送到 Clash 本機監聽埠,後續由 Clash 的模式與規則決定如何連往目的地。若目前使用全域模式,可先確認終端請求能否連通;若使用規則模式,則需確認 Anthropic 相關網域命中了預期策略。Claude Code 的服務端點可能隨功能與版本調整,設定規則時應以目前實際連線的網域和客戶端文件為準,不要只依賴過時的固定網域清單。

在 Mihomo 規則中明確指定策略

如果你的設定檔已有名為 AI 的策略組,可在自訂規則或設定檔覆寫區中,把相關網域指向該策略組。請確認規則放在足以先於廣泛兜底規則的位置,並以實際存在的策略組名稱取代範例中的 AI;策略組名稱不存在或規則順序不正確,都可能導致流量走錯路徑。

rules: - DOMAIN-SUFFIX,anthropic.com,AI - DOMAIN-SUFFIX,claude.ai,AI - MATCH,其他策略組

不同訂閱的規則結構、策略組名稱與覆寫方式並不相同。不要直接覆蓋由訂閱管理的完整設定檔,也不要把範例中的 其他策略組 原樣貼入正式配置;應在客戶端提供的設定檔合併、覆寫或自訂規則功能中操作,並將最後一條兜底規則替換成原設定檔既有內容。修改後重新載入設定,觀察 Clash 的連線或日誌頁面,確認請求命中預期規則且使用的節點可用。

依錯誤現象逐項檢查

  • 連線立即拒絕:通常是代理埠填錯、Clash 未啟動,或把 SOCKS 埠誤當成 HTTP 埠。回到客戶端確認監聽設定,再以 curl 單獨測試本機代理。
  • 瀏覽器正常,Claude Code 逾時:多半是終端沒有繼承系統代理。確認代理變數已在啟動程式的同一個 Shell 設定,並檢查 Clash 連線記錄是否出現對應請求。
  • 已連上代理但仍逾時:查看 Clash 是否命中錯誤規則、所選節點是否掉線,以及 DNS 解析是否異常。可以先切換一個穩定節點再測試,不必一開始就同時更改 DNS、TUN 和多項規則,以免難以判斷是哪個設定造成變化。
  • 出現登入、授權或 API 錯誤:網路可達不等於帳號已授權。請分別檢查 Claude Code 的登入狀態、API 憑證、帳號權限與服務可用性;不要把帳號或地區限制誤判為代理埠問題,也不要在不可信終端輸出或分享 API 金鑰。
  • 每次開新終端都失效:這通常是因為使用了臨時環境變數。確認新的終端啟動設定,或僅在你理解影響範圍後,才將變數加入 Shell 設定檔。完成測試後,若其他工具不需要代理,記得清除相關變數。

建議排查順序

先測試本機代理埠,再設定終端環境變數,接著檢查 Clash 規則與節點,最後才排查 Claude Code 登入或服務端錯誤。每次只改一項並重試,通常更容易定位問題。

若你在工作或共用電腦上設定代理,請遵循組織的網路與安全政策。代理只改變連線路徑,不保證特定服務在所有地區都可用,也不能取代正確的帳號授權。保持 Clash 核心與客戶端版本更新,使用可信任的節點,並避免把代理憑證、訂閱連結或 API 金鑰貼到公開日誌與截圖中。

前往下載