前言¶
DeepSeek Harness (DSH) 的 WebUI 在默認安全策略下,限制了通過非 localhost IP 地址(例如局域網 IP)的訪問。當從 LAN 訪問時,Web UI 會因爲安全上下文缺失而禁用設置、文件上傳、剪貼板複製以及麥克風權限。dsh-lanmode 旨在解決這些限制,爲 DSH 提供安全的局域網訪問、mDNS 域名解析、Root CA 證書生成以及 PWA 支持。
核心功能¶
該插件提供以下能力:
- 局域網訪問與 mDNS:啓用通過非 localhost IP 訪問 DSH WebUI,並提供
dsh.local的 mDNS 域名解析,無需記憶 IP 地址。 - Root CA 與 HTTPS:生成有效期 10 年的本地根 CA 證書,支持 HTTPS 訪問,從而解鎖 WebRTC 麥克風和剪貼板等瀏覽器安全 API。
- PWA 支持:提供 Web App Manifest,支持將 DSH 安裝到移動設備主屏幕並作爲獨立應用運行。
- QR 碼訪問:通過
/mobileqr命令生成包含會話令牌的二維碼,便於移動設備掃碼快速接入。 - 瀏覽器 API Polyfills:提供
crypto.randomUUID、navigator.clipboard和navigator.mediaDevices.getUserMedia的回退實現。 - Loopback Hostname Bypass:繞過主機名檢查,確保設置和模型頁面在局域網環境下可用。
安裝與依賴¶
提供的源文本中沒有包含具體的安裝命令。根據項目 package.json 信息,該插件有明確的依賴要求:
先決條件
- DeepSeek Harness 版本:0.1.7+
- Node.js 版本:20+
依賴項
該插件作爲 Peer Dependencies 依賴以下模塊:
- @deepseek-ai/cordis (^4.0.1)
- @deepseek-ai/dsh-host-webserver (^0.1.0-rc.6)
典型用法¶
在 DSH 運行環境中,通過 HTTP 請求訪問以下端點進行配置或接入:
生成訪問二維碼
GET /mobileqr
該命令返回一個包含當前局域網 URL 和會話令牌的 SVG 二維碼,移動端掃描即可連接。
安裝根證書
GET /dsh-lanmode/ca.crt
下載並安裝該證書到移動設備或瀏覽器,可建立受信任的 HTTPS 連接,使語音輸入和剪貼板功能正常工作。
檢查健康狀態
GET /dsh-lanmode/health
獲取 PWA Manifest
GET /dsh-lanmode/manifest.webmanifest
GET /dsh-lanmode/manifest.json
適用場景與注意¶
- 適用場景:需要在局域網內使用 DeepSeek Harness WebUI 的開發者,特別是需要使用移動設備進行語音交互、文件上傳或需要剪貼板功能的場景。
- 注意事項:該插件以當前 DSH 進程的權限運行。在安裝前,建議檢查插件的源代碼和許可證(MIT)以確保符合環境安全要求。
總結¶
dsh-lanmode 是 DeepSeek Harness 在局域網環境下的實用補丁,它通過非侵入式的 HTML 注入和 Root CA 機制,解決了 WebUI 在非安全上下文下的功能缺失問題。它支持 mDNS 域名、PWA 以及 QR 碼快速接入,適合需要本地化部署和遠程訪問的用戶。
- GitHub 倉庫:https://github.com/GooDAnDReaDY/dsh-lanmode
- 插件目錄:https://www.skillhub.cn/plugins/GooDAnDReaDY/dsh-lanmode