前言¶
DeepSeek Harness(DSH)桌面版的 Web GUI 默認只監聽本機迴環地址,同一局域網裏的手機、平板或其它電腦無法直接打開會話界面。若把 DSH 自身綁到通配地址,在 0.2.1 起會被上游拒絕,且會把暴露面擴大到不可控範圍。下面介紹的 dsh-lan-tool 是社區維護的 DSH 插件 bundle:不改 DSH 的綁定,由插件內置反向代理在本機局域網地址上提供入口,並對局域網訪客做口令門;同時在不改官方頁面結構的前提下注入移動端觸控適配。功能開關在設置頁,安裝過程不詢問口令。
這是什麼¶
dsh-lan-tool 由 MrMu666 維護,在 SkillHub 插件目錄 中歸類爲「客戶端」插件;源碼與說明見 GitHub 倉庫,npm 包名爲 dsh-lan-tool,許可證爲 MIT。
插件聲明 dsh.bundle.patch,走 DSH 官方插件機制安裝,沒有獨立安裝腳本。當前資料中的版本爲 1.6.1,且 engines.dsh 鎖定 @deepseek-ai/dsh 0.2.1-rc.5:在其它 DSH 版本上安裝或啓用會被判爲 incompatible-version 而拒絕。仍在使用 DSH 0.2.1-rc.3 的用戶應繼續使用 dsh-lan-tool@1.6.0。
核心功能¶
局域網入口與 DSH 的關係¶
自 1.5.0 起,插件不再改寫 DSH 的 webServer / 綁定:DSH 保持官方默認只聽 127.0.0.1。打開「局域網訪問」後,插件在本機當前局域網接口地址上啓動反向代理,複用與 DSH 相同的端口號(對外 URL 仍爲 http://<本機IP>:<DSH端口>),將請求轉發到 DSH 本機端口;Host 原樣轉發,登錄憑據與官方一致。關閉開關會立刻停止對外監聽,無需重啓 DSH。
裝完默認關閉,不寫任何 webserver 覆蓋;開關即時生效,不改動 DSH 綁定。
口令門與本機免驗¶
來自非本機的 TCP 連接(局域網其它設備)必須先通過口令頁;插件在服務端校驗口令(x-dsh-lan-key 請求頭或會話 cookie),並在後臺完成官方 token 與 cookie 的兌換,地址欄不出現 token。本機訪問(迴環或本機網卡地址,與瀏覽器地址欄 hostname 無關)不顯示口令頁,桌面端不會被自己的門禁擋住。
未設置口令時不會靜默暴露:打開開關前需先設置至少 4 位口令;若處於「已開但無口令」狀態,設置卡片會明確提示。
口令門是插件的全部安全邊界:持有口令者可讀寫該 DSH 實例的全部數據;官方建議在可信內網使用,公共網絡應關閉開關。
設置頁與固定端口¶
設置 → General →「局域網訪問」卡片提供:開關、口令設置/清除、綁定/防火牆/口令狀態,以及可選的「局域網端口」(1024–65535)。填寫並「應用端口」後,固定的是插件代理入口;留空則端口隨 DSH 變化(桌面版 --port 0 時每次啓動可能不同,以卡片顯示爲準)。
防火牆¶
Windows 下插件自動維護 Defender 防火牆規則 dsh-lan-tool (auto)(Domain + Private);首次開啓可能出現系統「是否允許訪問」彈窗。Linux 下按 firewalld → ufw → iptables 順序嘗試維護規則;無可用工具時顯示「防火牆未由插件管理」。插件只在當前局域網接口地址上監聽,不用 0.0.0.0;接口變化時約每 10 秒複查並更新卡片中的地址。
局域網設備上的能力邊界¶
DSH 官方對非本機瀏覽器不提供部分設置作用域。資料中的對照如下:聊天、模型與工作模式、工作區與會話、歷史、任務、審批、終端可用;設置、權限預設、憑據、預設管理頁面僅在主機上可用;工作區目錄選擇使用插件自帶的目錄選擇器。
移動端豎屏適配¶
手機豎屏打開局域網地址時,插件在官方界面之上注入觸控適配:緊湊側欄、不小於 44px 的觸控目標、16px 輸入字號(減輕 iOS 聚焦縮放)、安全區 padding;橫屏或桌面視口還原官方佈局。側邊欄通過左上角小鯨魚按鈕展開,支持左滑/右滑等手勢;僅點擊輸入框才喚起輸入法,Enter 換行不發送(發送走按鈕)。能力與桌面端在可用範圍內一致,會話狀態在服務端統一,多瀏覽器看到相同對話過程。
安裝與啓用¶
方式 1:應用內 Plugins 頁(推薦)¶
在 DSH 桌面版側欄 Plugins 頁輸入包名安裝:
dsh-lan-tool
若剛發佈的版本因 pnpm「發佈年齡」策略裝不上,可顯式指定版本,例如:
dsh-lan-tool@1.6.1
裝完或更新後,完全退出桌面版再重新打開一次(插件 node 側只在應用啓動時載入一次;同一進程內重裝可能導致瀏覽器側與 node 側版本不一致)。
方式 2:CLI¶
先退出桌面版,再執行(profile 名以你使用的爲準,資料示例爲 desktop):
dsh plugin --profile desktop add dsh-lan-tool
本地目錄、link/file/tarball 等形式亦支持,例如:
dsh plugin --profile desktop add link:D:\DeepSeek\dsh-LAN
啓用步驟¶
- 打開 DSH → 設置 → General →「局域網訪問」;
- 先設置訪問口令(至少 4 位);
- 再打開開關;卡片會在幾秒內列出可用的
http://<本機IP>:<端口>; - 局域網設備打開該地址,輸入口令進入;本機打開 GUI 仍直接進入。
若重裝後設置頁看不到卡片,檢查 profile 的 cordis.patch.yml 是否殘留 dsh-lan-tool 且 disabled: true,刪掉後刷新頁面。升級 DSH 後若插件只在 dependencies 而不在 dsh.profile.bundles 中,需在 Plugins 頁重新啓用或手動補全 bundles 並重啓。
典型用法¶
在同一 Wi-Fi 下,用手機瀏覽器訪問卡片中的局域網 URL,輸入口令後即可豎屏使用聊天、工作區切換、任務與審批等與主機同步的能力;主機上繼續用桌面客戶端或 127.0.0.1 訪問,無需口令。需要長期 bookmark 或二維碼時,可在卡片中固定「局域網端口」,避免 DSH 重啓換端口後舊頁面一直「重新連接中」(刷新或改用新地址亦可恢復)。
維護者 README 中還提到可與 DSH-Launcher、dsh-app 配合使用;是否採用取決於你的啓動方式,插件本身不依賴額外安裝腳本。
適用場景與注意¶
適合在家庭或辦公室可信內網中,用手機或 secondary 設備查看/參與同一 DSH 會話,而不把 DSH 進程綁到通配地址。插件以當前 DSH 進程權限運行,啓用前宜閱讀源碼與 MIT 許可證,自行評估口令強度與網絡環境。
從 1.4.x 升級到 1.5.0 且 profile 仍保留舊版對 webServer 的覆蓋時,DSH 0.2.1 可能無法啓動;需按倉庫 README「升級(1.4.x → 1.5.0)」一節清理舊補丁後再用新版本插件。
結尾¶
dsh-lan-tool 在不動 DSH 本機監聽的前提下,用設置頁可控的反向代理與口令門打開局域網 Web GUI,並補齊移動端觸控細節。DSH 生態強調「一切皆插件」;SkillHub 目錄爲社區站點,與 DeepSeek / 幻方無官方從屬關係。