dsh-proxy-pro:DSH 代理管理器

前言

DeepSeek Harness(DSH)在智能體開發中涉及大量的網絡請求,包括模型調用、web_search、web_fetch 以及 spawned 工具。這些請求需要統一路由到代理服務器,否則可能會遇到網絡故障或策略限制。

原生的代理配置往往存在盲區,導致 web_fetch 等操作繞過代理。dsh-proxy-pro 作爲 DeepSeek Harness(DSH)的代理管理器插件,將運行時(模型請求、web_search、web_fetch)統一路由到 Windows 系統代理或自定義地址,並提供可視化的開關與診斷功能。

核心功能

統一路由
將整個運行時的網絡請求統一路由到 Windows 系統代理或自定義地址。

對話頭部一鍵開關
每會話頭部右側提供膠囊按鈕,綠色代表代理開啓,紅色代表關閉。點擊即可切換總開關,且在“關→開”操作時觸發手動重檢,恢復系統註冊表並重新應用代理配置。

設置頁“代理配置”
提供可視化的配置界面,顯示運行時事實(生效地址、原因、直連名單),而非僅顯示設置推斷。
* 模式:僅支持“系統代理(Windows)”與“自定義地址”兩個選項。
* 自定義地址:支持 http://host:port 或裸 host:port 格式。
* 直連名單(NO_PROXY):編輯框下方顯示當前生效名單。system 模式自動併入 Windows 系統 ProxyOverride。

工具鏈
提供四個命令行工具用於診斷:
* proxy_status:查詢當前狀態。
* proxy_set:一鍵開/關整個運行時。
* proxy_test:單 URL 路由診斷(判定 PROXIED / DIRECT,探測連通性,NTLM 認證失敗提示)。
* proxy_config:讀/改配置。

安裝與啓用

使用 DSH 的插件管理器安裝,選擇任一方式即可。

方式 A:npm 安裝(推薦)

dsh plugin --profile web add @yanglaofish/dsh-proxy-pro
dsh plugin --profile test add @yanglaofish/dsh-proxy-pro

方式 B:GitHub 源安裝

dsh plugin --profile web add github:yanglaofish/dsh-proxy-pro

安裝完成後直接啓動:

dsh web

典型用法

對話頭部切換
點擊對話頭部膠囊按鈕,根據顏色狀態確認代理是否生效。

設置頁配置
1、進入設置頁,選擇“代理配置”。
2、在“代理地址來源”中選擇“系統代理(Windows)”或“自定義地址”。
3、若選擇“自定義地址”,輸入代理服務器地址。
4、編輯“直連名單(NO_PROXY)”以排除特定域名。
5、使用“路由診斷”功能,輸入 URL 並勾選“使用代理”或“不勾選”進行雙通道探測,判斷該域名應走代理還是直連。

模型側使用
在對話中調用 proxy_status、proxy_set、proxy_test、proxy_config 等工具,模型會根據最新註冊表事實返回狀態。

配置

插件支持在 settings.yaml 中進行零遷移配置:

proxy:
  enabled: false
  mode: system          # system | custom(none 僅解析舊配置殘留)
  customUrl: http://127.0.0.1:7890
  noProxy: localhost,127.0.0.1,::1
  systemPollMs: 30000

技術細節

單一傳輸通道
插件通過 installProxyFromEnvironment() 納入 @deepseek-ai/dsh-http-proxy 的策略通道,統一管理 env、dispatcher 和策略,杜絕了雙實例導致的錯版問題(如 UND_ERR_INVALID_ARG),並根治了 web_fetch 的網絡故障。

冪等內核
插件使用 effKey 作爲冪等內核,只有在有效狀態真正變化時才重裝 dispatcher。這修復了舊版“每次拉都重裝導致桌面卡頓”的根因。讀型 API 與輪詢永不觸發無條件重裝。

瀏覽器信任圍欄
面板 API 實現了與 DSH 官方 /api 一致的信任圍欄(Host loopback + sec-fetch-site + Origin 校驗),確保瀏覽器側請求的安全。

乾淨卸載
卸載時,插件會恢復原始的 env、dispatcher 和策略,並 fire-and-forget 排空後臺 keep-alive 連接,不留殘留。

卸載

dsh plugin --profile web remove @yanglaofish/dsh-proxy-pro
dsh plugin --profile test remove @yanglaofish/dsh-proxy-pro

卸載即恢復原始路由行爲。

注意事項

  • 系統限制:目前僅支持 Windows 系統代理或自定義地址。
  • 許可證:採用 MIT 許可證。
  • 開發:插件採用原生 ESM,無編譯步驟,純邏輯層 lib/proxy-core.js 零 DSH 依賴,可獨立單測。
羽毛球分组比赛记分
小程序二维码

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

小夜