dsh-workspace-explorer:在 DSH Web GUI 中添加工作區文件面板

前言

在 DeepSeek Harness(DSH)Web GUI 中處理工作區文件時,常見做法是切出瀏覽器,打開本地文件管理器或外部編輯器。dsh-workspace-explorer 把這部分操作放進 Web 界面:在側邊欄底部添加「工作區文件」入口,打開一個 VS Code 資源管理器風格的雙欄面板,左側瀏覽工作區目錄的文件樹,右側查看和編輯文件。下面從定位、功能、安裝、用法和安全限制幾個方面介紹。

插件定位

3911ee/dsh-workspace-explorer3911ee 維護,許可證爲 MIT。它的一句話定位是:在 DSH Web GUI 側邊欄底部添加「工作區文件」入口,打開一個 VS Code 資源管理器風格的雙欄面板,左側瀏覽全部工作區目錄的文件樹,右側查看和編輯文件。

核心功能

文件樹

  • 自動列出所有已註冊工作區目錄。
  • 懶加載逐層展開,目錄在前、按名稱排序,帶縮進引導線。
  • 文件樹使用 14px 描邊 SVG 圖標,按語言着色,覆蓋 60+ 擴展名。
  • 每個工作區根目錄支持新建文件/新建文件夾,行內輸入,Enter 創建、Esc 取消,重名時內聯報錯。

文件操作

  • 行內重命名:懸停出現鉛筆按鈕,默認選中主名,可繼續編輯後綴。
  • Enter 提交、Esc 取消、失焦提交,支持中文輸入法。

編輯器

  • 右側編輯器帶行號槽、路徑欄、狀態欄(大小、編碼、未保存標記)。
  • 右下角手柄自由拖拽縮放,最小 380×280。
  • 「用系統應用打開」按鈕可調起本機默認程序。

語法高亮

  • 支持 VS Code Dark+ 配色語法高亮:函數名、關鍵字、字符串、註釋、數字、類型、屬性分色。
  • 支持 Python、JavaScript/TypeScript/JSX、JSON、HTML/XML、CSS/SCSS/LESS、Markdown、SQL、Shell、YAML/TOML/INI。
  • 200 KB 以上自動退回純文本;大於 256 KB 讀取上限的文件只讀預覽。

編輯保存

  • 窗口內編輯保存:Ctrl+S 或「保存」按鈕落盤。
  • 保存後自動刷新文件大小。

與 DSH 界面配合

  • 支持讓 AI Agent 即時查看項目結構並修改代碼,支持對話中的 @文件 引用聯動。
  • 中英文界面,跟隨 DSH 語言設置。
  • 完全在本地運行,不發起出站網絡連接,不上傳任何文件內容。

安裝與啓用

軟件要求

  • DeepSeek Harness 0.1.0-rc.6 及以上。
  • Profile 類型必須是帶 Web 界面的標準 web profile。
  • 安裝插件時需要 pnpm
  • Windows 實測通過;macOS/Linux 理論支持,代碼已做跨平臺路徑處理,但未實測。

安裝

資料給出的安裝命令如下:

dsh plugin --profile web add github:3911ee/dsh-workspace-explorer

資料稱 npm 方式在發佈後纔可用:

dsh plugin --profile web add dsh-workspace-explorer

手動安裝

手動安裝時,先把插件源碼複製進 web profile 的 node_modules,再編輯 web profile 的 package.json。需要在 dependencies 中加入插件路徑,並在 dsh.profile.bundles 數組中加入插件名:

{
  "dependencies": {
    "dsh-workspace-explorer": "file:./node_modules/dsh-workspace-explorer"
  },
  "dsh": {
    "profile": {
      "bundles": ["dsh-workspace-explorer"]
    }
  }
}

啓用驗證

先重啓 dsh web 服務,再刷新瀏覽器。驗證步驟是:側邊欄底部出現文件夾圖標按鈕,懸停提示「工作區文件」,點擊後打開雙欄面板。

典型用法

下面按常見操作說明。

1、安裝完成後,重啓 dsh web 並刷新瀏覽器,在側邊欄底部點擊文件夾圖標按鈕。

2、新建文件/文件夾:在各工作區根目錄點擊新建按鈕,行內輸入名稱,Enter 創建,Esc 取消。

3、重命名:懸停文件出現鉛筆按鈕,修改名稱後 Enter 提交,Esc 取消,失焦提交。

4、編輯保存:在右側編輯器輸入修改,按 Ctrl+S 或點擊「保存」落盤,保存後自動刷新文件大小。

5、升級:資料給出重新執行 GitHub 安裝命令,或由 dsh plugin 轉交 pnpm update

dsh plugin --profile web add github:3911ee/dsh-workspace-explorer

6、卸載:執行移除命令,再重啓 dsh web

dsh plugin --profile web remove dsh-workspace-explorer

安全與限制

數據邊界

插件完全在本地運行,不發起出站網絡連接,不上傳任何文件內容。資料同時說明:不收集、不記錄、不傳輸任何文件內容或操作日誌;前端語法高亮對文件內容做 HTML 轉義後渲染。

綁定地址

插件 API 暴露面與 DSH Web GUI 綁定地址一致。默認 127.0.0.1 爲推薦且默認的安全配置。若用戶將 dsh web 綁定到非迴環地址,插件 API 無獨立鑑權,切勿將帶本插件的 DSH 直接暴露到公網。

路徑與資源限制

  • 路徑校驗要求絕對路徑,拒絕相對路徑與空路徑。
  • 新建/重命名僅接受單一路徑段,拒絕空名、... 與含路徑分隔符的名稱。
  • 單層目錄列舉封頂 1000 條目。
  • 文件讀取默認 256 KiB、硬頂 8 MiB;文件寫入 8 MiB 上限;請求體 64 KiB 上限。

安裝前注意

插件以當前 dsh 進程權限運行,其文件操作受該進程可訪問範圍約束。安裝前應檢查源碼、依賴和許可證;本文列出的許可證爲 MIT。安全修復僅保證最新發布版本;插件依賴 DSH 官方公開接口,DSH 大版本升級後如接口變化需相應跟進。

已知限制

  • 子目錄內新建文件/文件夾入口未提供,僅各工作區根目錄。
  • 預覽僅支持 UTF-8 文本,二進制文件顯示爲替換字符。
  • 語法高亮爲輕量正則實現,複雜嵌套場景偶有偏差。
  • 卸載後重啓 dsh web 即完全移除;插件不修改 DSH 內置文件,不留殘留。

鏈接

資料提供的 GitHub 倉庫地址爲:

https://github.com/3911ee/dsh-workspace-explorer

本文未列出目錄頁鏈接,因爲資料未提供。

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

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

小夜