dsh-workspace-lock:DSH Web 工作區密碼鎖

前言

在 DeepSeek Harness(DSH)裏,側欄會列出多個工作區及其會話。多人共用同一臺機器、或瀏覽器長期開着 DSH Web 界面時,任意點開側欄就能看到某個工作區裏的對話內容。DSH 生態裏常見做法是裝各類增強側欄、會話管理的插件,但「按工作區設密碼、鎖屏隱藏界面」這類需求,需要專門做 UI 級訪問控制。下面介紹 HyperForce 維護的 dsh-workspace-lock:只做工作區加鎖,不加密底層數據。

這是什麼

dsh-workspace-lock 是面向 DSH Web UI 的單用途插件:在側欄對工作區右鍵即可 加鎖 / 解鎖 / 移除鎖;加鎖後會話從側欄隱藏,中間聊天區顯示鎖屏,輸入密碼後才恢復。可選 管理員主密碼 可一次解鎖全部工作區。分類上屬於 admin-security;當前在 GitHub 上星標爲 0,許可證 MIT,package 版本 0.4.2。

維護者:HyperForce。源碼與說明見 GitHub 倉庫,社區目錄頁見 SkillHub(獨立站點,與 DeepSeek / 幻方無官方從屬關係)。

核心功能

功能均來自項目 README,要點如下。

  1. 右鍵菜單
    右鍵工作區出現 加鎖 / 解鎖 / 移除鎖。若側欄已有原生右鍵菜單(例如 dsh-better-workspace 或 DSH 自帶側欄行菜單),條目會注入其中;否則使用插件自帶菜單。README 寫明菜單注入在 dsh-better-workspace 0.11 – 0.27 與原生側欄上可用。

  2. 加鎖後的界面行爲
    工作區行上顯示掛鎖徽標;該工作區下的會話在側欄隱藏;聊天區變爲鎖屏,需輸入該工作區密碼才能繼續。刷新頁面後仍處於鎖定狀態(需再次解鎖)。

  3. 管理員主密碼(可選)
    在 設置 → 插件 → dsh-workspace-lock(package 描述中亦寫作「工作區鎖」)可配置。主密碼可一次解鎖全部工作區,並用於授權任意解鎖或移除鎖;README 說明其僅以加鹽哈希形式保存。

  4. 邊界說明(必讀)
    文檔明確標註:界面級鎖——只隱藏界面顯示,不加密數據、不攔截服務端 API。不能替代磁盤加密、權限體系或網絡層隔離。

安裝與啓用

要求 DSH >= 0.1.5-rc.1;README 註明在 0.1.5-rc.2、0.1.7-rc.1 與 0.2.0-rc.1/rc.2 上開發測試。插件不聲明 dsh 的 peerDependencies,客戶端僅 require 宿主種子模塊(react、react-dom/client),無單獨構建步驟。

安裝步驟(命令來自 README,需將路徑換成本地 clone 或掛載後的倉庫目錄):

dsh plugin --profile web add link:/path/to/this/repo
docker restart dsh-harness

移除:

dsh plugin --profile web remove dsh-workspace-lock
docker restart dsh-harness

鎖狀態持久化在 <home>/.dsh/workspace-locks.json(位於 dsh-data 卷內),重啓容器或重裝插件後仍保留,除非主動移除鎖或刪除該文件。

典型用法

  1. 在 DSH Web 側欄找到要保護的工作區,右鍵 → 加鎖,按提示設置該工作區密碼。
  2. 加鎖後嘗試切換會話:側欄中該工作區的會話應不可見,主區域爲鎖屏;輸入正確密碼後解鎖。
  3. 若不再需要密碼保護:右鍵 → 移除鎖(若已設管理員主密碼,按插件邏輯可能需主密碼授權)。
  4. 管理多臺工作區時,可在插件設置中配置 管理員主密碼,需要時一次解鎖全部工作區。

完整變更記錄見倉庫內 CHANGELOG.md。

適用場景與注意

適合誰

  • 同一 DSH 實例、同一瀏覽器 profile 下,希望某些工作區對話「離開座位時不被一眼看到」的開發者或小團隊。
  • 已使用 dsh-better-workspace 或原生側欄,希望在不改服務端的前提下增加一層 UI 訪問控制的用戶。

使用前注意

  • 插件以 當前 DSH 進程權限 運行;安裝前應閱讀源碼與 MIT 許可證,確認符合你的安全策略。
  • 這是 UI 級隱藏,懂 DevTools、直接調 API 或讀存儲的訪問者仍可能繞過界面鎖;敏感環境應配合操作系統賬戶、網絡與數據加密等措施。
  • 安裝命令爲 link: 本地路徑,不是憑插件名拼接的 github:owner/repo;路徑必須指向含 lib/index.js 等的完整插件目錄。

結尾

dsh-workspace-lock 把「按工作區設密碼、鎖屏隱藏會話」做成單一職責插件,與 DSH「一切皆插件」的思路一致:需要時再裝,不碰加密與 API 攔截。若你要在 Web UI 上多一道防窺屏,可按 README 用 dsh plugin --profile web add link:... 安裝並重啓 harness。

羽毛球分组比赛记分
小程序二维码

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

小夜