Clash Verge 的介面本質上是個「遙控器」——真正幹活的 Mihomo 核心暴露了一套 HTTP API,介面上每一次點選都對應一個 API 呼叫。這套 API 你自己也能用:寫指令碼自動切節點、接入 Stream Deck、掛第三方面板,都靠它。
確認 API 已開啟
Clash Verge 預設開啟外部控制,地址一般是 127.0.0.1:9097。「設定」頁面的 Clash 核心區域能看到「外部控制」的埠和金鑰(secret)。驗證一下:
curl http://127.0.0.1:9097/version -H "Authorization: Bearer 你的金鑰"
返回一段帶版本號的 JSON 就是通的。
金鑰務必保留。空金鑰 + 監聽 0.0.0.0 的組合等於把核心控制權暴露給區域網甚至公網——惡意網頁可以借瀏覽器發請求改你的代理配置。
最常用的幾個介面
| 介面 | 方法 | 用途 |
|---|---|---|
/proxies | GET | 列出全部節點與分組及當前選擇 |
/proxies/分組名 | PUT | 切換該分組選中的節點 |
/configs | PATCH | 改執行配置,如切換模式 |
/connections | GET/DELETE | 檢視或斷開當前連線 |
/proxies/節點名/delay | GET | 對單個節點測延遲 |
示例:一行命令切換節點
curl -X PUT http://127.0.0.1:9097/proxies/PROXY \
-H "Authorization: Bearer 你的金鑰" \
-d '{"name":"HK-01"}'
示例:切到全域性模式
curl -X PATCH http://127.0.0.1:9097/configs \
-H "Authorization: Bearer 你的金鑰" \
-d '{"mode":"global"}'
接第三方 Web 面板
yacd、metacubexd 這類網頁面板就是純 API 客戶端。打開面板網址,填入 127.0.0.1:9097 和金鑰即可使用——適合喜歡在瀏覽器標籤頁裡管理連線的人,或者配合 Allow LAN 在手機上遙控電腦的核心。
實用指令碼思路
- 定時測速換節點:cron 每 10 分鐘調
/delay介面,超閾值就 PUT 切換到備用分組; - 會議模式一鍵切換:指令碼同時把模式改成規則、分組切到低延遲節點,綁個快捷鍵;
- 監控看板:輪詢
/traffic和/connections,把即時流量畫進 Grafana。
API 的完整定義在 Mihomo 官方文件。想在命令列裡讓工具本身走代理(而不是控制核心),那是另一件事,見終端代理設定。