前言¶
DeepSeek Harness(DSH)桌面版自帶的 Web 界面默認只監聽 loopback,並帶有進程級鑑權。想在局域網裏用手機看流式輸出、點審批、發指令,常見做法是公網隧道、遠程桌面或自己寫轉發——要麼暴露面大,要麼只能看不能完整交互。維護者 HYF00246 的 dsh-lan-gate 是 DSH 社區目錄裏歸類爲「客戶端」的插件:在 Windows 移動熱點網段內起一個帶懸浮開關的本地代理,手機瀏覽器打開固定地址即可操控本機 DSH,不走公網、不裝 App、不設二維碼或密碼。下面介紹它的定位、原理、安裝與使用要點。
這是什麼¶
dsh-lan-gate(GitHub:HYF00246/dsh-lan-gate,npm 包名 dsh-lan-gate,當前版本 0.1.0,MIT 許可)跑在 DSH 進程內,通過 Cordis patch 注入 DSH 配置樹。它解決的是:手機連上電腦開的移動熱點後,用瀏覽器訪問 http://192.168.137.1:18080,獲得與桌面 Web GUI 同等的操控能力(流式輸出、審批、提問、發指令、切會話等),而不是隻讀鏡像。
插件 README 標明狀態爲 P1 已完成並在真機驗證(手機經熱點訪問、HTTP + WebSocket 已實測通過)。DSH 引擎要求爲 ^0.2.1-rc.5;運行環境爲 Windows 11(移動熱點基於 Wi-Fi Direct),Node ≥ 22 可由 DSH 自帶運行時滿足。
工作原理(爲何不能裸轉發)¶
DSH Web 服務監聽 127.0.0.1:54362(README 示例端口),鑑權使用每進程隨機 token 簽名的 Cookie。簡單端口轉發會返回 401 dsh web authentication required。插件在 DSH 進程內通過官方 API 代持合法 Cookie,改寫 Host / Origin,反向代理 HTTP 與 WebSocket(/api/remote.mux 雙向透傳,不設空閒超時以免打斷流式輸出);沒有繞過或關閉 DSH 校驗。監聽只綁定熱點網卡地址 192.168.137.1:18080,不是 0.0.0.0;代理層對路徑做白名單,/connect 被顯式拒絕。
手機瀏覽器 ──HTTP / WebSocket──▶ 192.168.137.1:18080
│ 插件代理 + Cookie 代持
▼
127.0.0.1:54362
DSH 自帶 web server
Windows ICS 默認熱點參數(README 實測穩定):電腦側 / 手機網關 192.168.137.1,子網 192.168.137.0/24,手機地址爲 192.168.137.x。電腦可保持原有 Wi-Fi 同時開熱點,兩者互不影響。
核心功能¶
- 免裝 App:手機瀏覽器直接訪問,可「添加到主屏幕」。
- 完整操控:與桌面 Web GUI 同級交互,不是隻讀。
- 用完即關:DSH 界面右下角「局域網訪問」懸浮開關;關閉後立即釋放端口,局域網內無法再連入。
- 不暴露公網:僅熱點網卡;不提供隧道、域名、HTTPS 公共證書、多用戶賬號、登錄頁、二維碼或密碼(見安全說明)。
- 隨 DSH 啓停:插件加載即註冊,DSH 退出即釋放端口。
開關交互(README):單擊切換;長按約 450ms 可拖動位置(位置記憶,開關狀態每次啓動默認爲關)。窄屏(寬度小於 820px)自動隱藏開關,避免擋住發送/確認按鈕,需在電腦上點開。失敗時顯示紅色「失敗」,懸停可見原因(如「熱點未開啓」)。
安裝與啓用¶
1. 放行防火牆(管理員 PowerShell,只需一次)¶
手機訪問若超時(如 Chrome ERR_TIMED_OUT),需對熱點網段放行 TCP 18080:
New-NetFirewallRule -DisplayName "DSH LAN gate" -Direction Inbound -Protocol TCP `
-LocalPort 18080 -RemoteAddress 192.168.137.0/24 -Action Allow
若曾在 DSH 首次聯網彈窗中拒絕,Windows 可能爲 DeepSeek Harness.exe 添加入站 Block 規則,優先級高於端口放行,需先刪除 Block 規則(README 提供基於進程路徑的 PowerShell 片段)。卸載插件時可執行:
Remove-NetFirewallRule -DisplayName "DSH LAN gate"
2. 安裝插件¶
完全退出 DeepSeek Harness(托盤圖標需選「退出」,非僅關窗口),再執行:
從 GitHub 安裝(README 原文):
dsh plugin --profile desktop add github:HYF00246/dsh-lan-gate
本地開發可用 DSH 安裝目錄自帶 CLI:
<DSH 安裝目錄>\resources\runtime\cli\bin\dsh.cmd plugin --profile desktop add link:<本倉庫絕對路徑>
安裝命令會把插件登記到 profile 的 dsh.profile.bundles。
3. 啓動 DSH¶
重啓 DSH 後,界面右下角出現「局域網訪問」懸浮開關,默認關閉。
典型用法¶
- 在電腦上開啓「移動熱點」,手機連上該熱點(提示「此 WLAN 無法訪問互聯網」時選保持連接)。
- 在 DSH 右下角點開開關,變爲綠色「開」。
- 手機瀏覽器打開
http://192.168.137.1:18080。 - 用完後在電腦上再點一次開關關閉。
關閉開關會立刻斷開手機連接;已打開的頁面仍留在瀏覽器中,DSH 客戶端進入斷線重連,手機上輸入可暫存本地隊列;重新打開開關後會自動重連並一次性發送隊列內容。頁面腳本約每 3 秒探測狀態,連續失敗約 6 秒會提示「局域網訪問已關閉」,可選退出頁面(丟棄本地排隊內容)或繼續等待(30 秒內不再打擾,重開開關則恢復)。本機 127.0.0.1 訪問不經代理,不受上述彈窗影響。
適用場景與注意¶
適合:你本人控制 Windows 11 電腦與移動熱點下的設備,臨時用手機審批、看流式輸出、發指令,且希望用完關閉端口、不長期監聽局域網。
不適合(插件 README「不做什麼」):公網訪問、多用戶體系、原生 App、自帶登錄/密碼。
安全:同一熱點下任意設備打開地址即可操控這臺電腦上的 DSH(含執行命令、讀寫文件,權限與當前 DSH 進程一致)。插件按設計不設登錄;只在你能控制熱點內設備時使用,用完關閉開關。安裝前請閱讀 GitHub 倉庫 源碼與 MIT 許可證,確認符合你的安全策略。
排障摘要:超時 → 防火牆或熱點未開,或 DSH 被應用級 Block;「連接被拒絕」→ 開關未開;按鈕顯示「熱點未開啓」→ 先開熱點再點開關;按鈕不出現 → 插件未裝或未重啓 DSH;iPhone 自動切回蜂窩 → 關閉「無線局域網助理」或調整熱點 Internet 共享設置。完整表格見倉庫 README。
DSH 生態理念是「一切皆插件」;社區目錄站點 SkillHub 插件頁 與 DeepSeek / 幻方無官方從屬關係,本文僅介紹社區插件能力。
結尾¶
經過上面的步驟,你可以在 Windows 移動熱點網段內用手機瀏覽器完整操控本機 DSH,並通過右下角開關控制監聽生命週期。詳情與更新以倉庫爲準:目錄頁 https://www.skillhub.cn/plugins/HYF00246/dsh-lan-gate ,GitHub https://github.com/HYF00246/dsh-lan-gate 。