dsh-clash-proxy:DeepSeek Harness 按需代理(Clash 內核 + 獨立面板)

前言

在 DeepSeek Harness(DSH)裏跑智能體時,聯網往往分散在幾條路徑上:web.fetch 抓頁、搜索引擎委託、node:http(s) 腳本、以及面板自建的瀏覽器。若把整個系統代理打開,容易牽連模型 API 與其它進程;若完全直連,又可能在特定主機上延遲過高或無法連通。常見做法是手動切環境變量或在外部再起一層代理,和 Harness 內的通道開關對不齊。

下面介紹社區插件 dsh-clash-proxy(維護者 ll4514dvdvdb,當前版本 0.2.0)。它把 Clash / Mihomo 一類內核接到上述四條通道,並提供本地 Web 面板做開關、選節點與測速;默認全關,且不修改 Windows 系統代理、WinHTTP 或 TUN。

這是什麼

dsh-clash-proxy 是 DSH 的客戶端類插件:軟件層面的請求轉發與 GUI 集成,不是網絡服務。分類上屬於按需規則分流代理;GitHub 倉庫 ll4514dvdvdb/dsh-clash-proxy 採用 MIT 許可證。

插件不提供任何節點、訂閱鏈接、機場、賬號或服務器;使用者須自行準備合法可用的網絡訪問,並確保用途符合所在地法律法規。README 中有完整的免責聲明與使用條款,安裝或推薦前應完整閱讀並接受。

社區目錄頁 SkillHub · dsh-clash-proxy 與 GitHub 無 DeepSeek / 幻方官方從屬關係,只是獨立插件索引。

核心功能

獨立面板與總開關

GUI 中有「代理」頁籤;也可在 DSH 本地服務上打開:

http://127.0.0.1:55238/clash-proxy-panel/

總開關狀態寫入 panel.json,插件重載或 DSH 重啓後會恢復;關閉時各通道立即回落直連。

四條通道

通道 作用範圍
web.fetch Harness 的 ctx.web fetch
search 委託給上游搜索引擎的那次調用
scripts 進程內 node:http(s)
browser 面板自建的 Chromium(Playwright,默認 msedge channel)

每條通道可單獨開關,模式爲 auto / on / off。

auto 時先走規則引擎(國內域名/IP 直連),再 TCP 探測直連 RTT:RTT ≤ auto.directThresholdMs(默認 1500ms)則直連,否則走代理;結果按主機緩存 auto.cacheSeconds(默認 600s),後臺每 5s 預熱。

面板其它能力

  • 連通性與帶寬:直連 vs 代理對比、節點延遲、帶寬採樣
  • 節點:訂閱表、選用節點、填寫訂閱鏈接刷新
  • 僞裝:UA、Accept-Language、時區、WebRTC、DNS、navigator.webdriver 等
  • 決策日誌:記錄每次走/不走代理的原因

HTTP API 前綴爲 /clash-proxy-panel/api/(如 GET state、POST toggle 等);僅接受 loopback Host,且 API 需請求頭 x-clash-proxy: 1。

Harness 工具

工具 說明
proxy_control action:on / off / status / refresh / connectivity / bandwidth / select / env;可選 node、subscriptionUrl
proxy_fetch 參數 url、maxChars;經代理抓取正文(若關着會先打開,抓完保持開啓)

數據目錄:Linux/macOS 爲 ~/.dsh/clash-proxy/,Windows 爲 %USERPROFILE%\.dsh\clash-proxy\,存放訂閱緩存、panel.json、state.json、瀏覽器 profile 等。

安裝與啓用

環境要求(來自 package.json):

  • Node.js >=20
  • DSH 引擎 >=0.1.7-rc.1;文檔標註與 0.2.1-rc.3 兼容

README 未給出固定的 CLI 安裝命令。SkillHub 目錄頁提供「發送給 DeepSeek Harness 安裝」文案,插件標識爲 ll4514dvdvdb/dsh-clash-proxy,並要求安裝前先讀取 README 免責聲明。在 Harness 對話中按該頁說明發起安裝即可。

安裝後若 GUI 未出現「代理」頁籤,README 註明:頁籤依賴 GUI 重新加載頁面,插件熱重載只更新宿主側。

典型用法

1. 用面板打開總開關並選通道

打開 http://127.0.0.1:55238/clash-proxy-panel/,打開總開關,在「通道與作用範圍」裏爲 web.fetch、search 等設置 auto 或 on,在節點區填入自有訂閱鏈接並刷新,再選用節點。

2. 用 proxy_control 查狀態或導出環境變量

在 Harness 中調用工具 proxy_control,例如查看狀態、刷新訂閱、測連通性或執行 action: env 導出 HTTP(S)_PROXY 供外部腳本使用(與 scripts 通道的隧道邏輯配合)。

3. 用 proxy_fetch 經代理拉取 URL 正文

傳入 url 與可選 maxChars;插件在代理關閉時會先開啓,抓取完成後保持開啓狀態(行爲以 README 爲準)。

4. 開發者自檢(克隆倉庫後本地運行)

若在源碼樹中驗證,可執行 README 中的 smoke 腳本,例如:

node scripts/smoke-panel.mjs
node scripts/smoke-host.mjs
node scripts/smoke-controller.mjs
node scripts/smoke-client.mjs

適用場景與注意

適合:需要在 DSH 進程內(含面板自建瀏覽器)按規則分流、又不想動系統全局代理的開發者;在自有或已授權網絡下做連通性、延遲與帶寬測試;研究代理與規則引擎在 Harness 中的集成方式。

務必注意:

  1. 插件以當前 DSH 進程權限運行,安裝前應閱讀源碼與 MIT 許可證,並理解 README 免責聲明(不提供節點、無擔保、使用者自負合規責任)。
  2. 隻影響 Harness 進程內流量,不是系統級全局代理。
  3. 已知限制:純 JS 實現不覆蓋訂閱中的 hysteria2 / tuic / reality 節點;帶寬爲窗口式採樣(默認 8s);dsh-reef 瀏覽器無注入點,不受本插件 browser 通道影響。

結尾

dsh-clash-proxy 把 Clash 內核能力接到 DSH 的四條聯網通道,並用本地面板集中管理開關、節點與診斷日誌,在默認關閉的前提下按需出代理,避免牽連繫統代理與其餘進程流量。

  • 目錄頁:https://www.skillhub.cn/plugins/ll4514dvdvdb/dsh-clash-proxy
  • GitHub:https://github.com/ll4514dvdvdb/dsh-clash-proxy
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜