前言¶
DeepSeek Harness (DSH) 採用插件化架構,在多機協作場景下,通常需要分別處理不同機器上的工作空間或會話。dsh-control 旨在解決這一痛點:它不需要在遠程機器上部署額外的文件系統工具,而是通過 SSH 隧道,將遠程已經運行的 dsh 實例接入本地前端,實現統一管理。
這是什麼¶
dsh-control 是一個客戶端插件,由 6mt 維護。它的核心作用是提供本地窗口,驅動並管理遠程機器上正在運行的 dsh 實例。
不同於傳統的遠程工作空間插件(如 dsh-remote),dsh-control 並不把遠程機器視爲文件系統,而是將其視爲一個運行中的 dsh 實例。它允許你在本地側邊欄直接與遠程會話交互,遠程回覆以 Token 級流式傳輸,無需更改遠程配置。
核心功能¶
- 遠程 dsh 實例的本地前端
在本地側邊欄創建面板,直接訪問遠程機器上已運行的 dsh。 - 一鍵 SSH 連接
輸入user@host即可探測遠程 dsh 狀態,建立加密通道並連接。 - 自動創建同名本地工作空間
每個遠程環境會自動在本地創建同名工作空間,創建的會話會自動關聯到遠程。 - Token 級流式傳輸
遠程回覆逐 Token 流入,體驗與本地會話一致。 - 配對命名
遠程會話名稱會自動添加前綴(如控制端·<local title>),確保本地與遠程會話對應。 - 側邊欄可見與自愈
遠程會話在側邊欄標記可見。連接斷開時會如實報告,支持一鍵修復。
安裝與啓用¶
插件通過 npm 包名發佈,安裝命令如下:
dsh plugin --profile <your profile> add github:6mt/dsh-control
安裝後,需完全退出並重新打開 dsh 才能加載插件。插件在本地維護狀態文件和按需建立的 SSH 隧道,不依賴任何原生模塊。
版本管理¶
- 更新:使用
dsh plugin --profile <your profile> update dsh-control拉取最新代碼。 - 固定版本:通過標籤或提交哈希鎖定版本。
dsh plugin --profile <your profile> add github:6mt/dsh-control#v0.1.0
注意事項¶
- 遠程環境要求:遠程機器必須已安裝並運行 dsh(版本需 >= 0.2.0-rc.2)。
- 連接方式:目前通過 SSH 連接,需配置無密碼登錄或 SSH 密鑰。
- 數據安全:密碼從不存儲。本地僅維護
$DSH_HOME/dsh-control/state.json狀態文件(權限 0600),不寫入遠程文件系統,也不管理遠程 dsh 的生命週期。 - 實驗性功能:取消遠程回合功能已實現但標記爲實驗性。
- 共存性:可與
dsh-remote類插件共存。
總結¶
dsh-control 提供了一種零侵入的方式來管理多臺機器上的 dsh 實例。它利用遠程現有的模型憑證和沙箱,通過本地 SSH 隧道提供流式交互體驗。