前言¶
DeepSeek Harness(DSH)底座僅提供文件的列表與讀取通道,缺乏文件系統層面的寫操作能力。dsh-file-manager 插件爲側邊欄的文件樹補全了這一套能力。它不僅支持下載和打包,還實現了完整的刪除、恢復、重命名、移動和新建文件夾流程。
核心功能¶
該插件主要提供以下文件管理能力:
- 下載與打包:支持單文件下載、目錄打包 ZIP、多選打包 ZIP。
- 刪除與恢復:採用軟刪除機制,文件被移入同級
.dsh-trash/目錄。支持恢復、徹底刪除和移動(恢復到指定位置)。 - 文件操作:支持重命名、複製、移動、新建文件夾。
- 批量操作:在多選模式下,可對選中項進行批量刪除、下載、移動、恢復或徹底刪除。
- 其他:提供清空回收站功能,並記錄審計日誌。
安裝與啓用¶
通過 DSH CLI 安裝。安裝後需重啓一次 DSH 才能加載新 bundle。
dsh plugin --profile web add "github:jamesct/dsh-file-manager"
安裝完成後,插件會出現在側邊欄的「插件」列表中。
配置¶
配置文件位於 <DSH_HOME>/file-manager.yml,或通過側邊欄「插件」卡片修改。所有路徑必須爲絕對路徑。
- 模式選擇 (
mode):paths:指定允許管理的目錄清單(默認)。workspace:自動覆蓋所有已註冊工作區。
- 管理範圍 (
manage):通過manage字段配置允許管理的目錄,支持遞歸設置。 - 行顯示項 (
row_show):控制文件行上顯示的按鈕。默認只顯示download。若需顯示刪除按鈕,需將trash加入列表。支持download、trash、mtime、size。 - 工具欄 (
toolbar_show):控制工具欄按鈕的顯示,如多選、新建文件夾、清空回收站、重命名等。 - 跨工作區 (
cross_workspace):默認爲true,允許跨工作區移動/複製;設爲false則限制在當前工作區內。 - 自動清理:配置保留天數和檢查間隔,過期條目由宿主自動清理。
架構與注意事項¶
- 宿主依賴:DSH 底座沒有刪除通道,該插件必須自帶宿主執行體(
lib/index.js)來執行寫操作。 - 重啓要求:新增 bundle 後必須重啓 DSH 才能生效。
- 默認行爲:默認只顯示下載按鈕。升級後若想看到刪除等操作,需在配置中啓用對應項。
總結¶
該插件通過 YAML 配置實現了靈活的文件管理策略,適合需要在 DSH 環境中進行文件系統深度管理的場景。項目地址:GitHub。