dsh-workspace-toolbox:DSH Web 工作區工具箱

前言

DeepSeek Harness (DSH) 採取插件化架構。在 Web profile 的開發場景中,開發者通常需要頻繁在瀏覽器界面和本地終端之間切換,以管理項目文件、控制 Docker 容器以及啓動/監控 Vite 開發服務器。下面介紹一個客戶端插件,旨在將文件瀏覽、Docker 與 Vite 項目管控以及終端功能集成到 DSH Web UI 的會話視圖中,減少上下文切換。

這是什麼

wuyh/dsh-workspace-toolbox 是一個 DSH Web UI 插件。安裝後,在會話視圖欄的“軌跡”標籤之後,會新增一個“工具箱”頁籤。該頁籤內包含四種模式:文件、Docker、Vite 和終端,提供一體化的工作區管理能力。

核心功能

文件瀏覽

  • 瀏覽與導航:採用麪包屑導航,每屏顯示一層目錄,支持點擊進入和返回上級。
  • 搜索:支持全工作區搜索,自動忽略 node_modules 等噪音目錄。
  • 預覽:支持 VS Code 風格的多標籤預覽(最多 10 個標籤),提供語法高亮(文本)、Markdown 渲染、圖片展示及二進制文件提示。
  • 安全限制:僅讀取工作區邊界內文件,不支持寫入;瀏覽器端只接收相對路徑與最小元數據。

Docker 管理

  • 連接方式:支持本地 Unix socket 連接;支持通過 SSH 隧道連接遠程服務器。
  • 資源管理:提供鏡像拉取、列表與刪除,容器列表、日誌查看、啓動/停止/刪除。
  • 構建與運行:支持工作區內 Dockerfile 項目的聯動構建與運行,支持配置端口與環境變量。
  • 長任務:對拉取、構建、運行等長任務提供進度反饋。

Vite 項目管控

  • 自動掃描:自動掃描工作區內包含 vite 依賴或 vite.config.* 的項目。
  • 進程管理:支持啓動(執行 pnpm run dev)與停止,自動解析端口與訪問地址。
  • 日誌與訪問:提供實時日誌回顯,並支持一鍵在瀏覽器中打開頁面。

終端

  • 多終端支持:支持 SSH 服務器終端(帶 PTY)、進入 Docker 容器終端(docker exec)以及本地 shell。
  • 渲染:基於 xterm.js,提供真實的終端渲染、尺寸自適應和滾動回看。

安裝與啓用

該插件需要 DSH 0.1.0-rc.6 或兼容版本,且環境需安裝 pnpm。

  1. 執行安裝命令:
    dsh plugin --profile web add https://github.com/wuyh/dsh-workspace-toolbox/archive/refs/tags/v0.3.0.tar.gz
  1. 重啓 Web Profile:
    安裝後需重啓 Web profile 以使插件生效(例如執行 dsh web)。

  2. 啓用插件:
    在 DSH Web UI 的會話視圖欄中,點擊新增的“工具箱”頁籤。

典型用法

  1. 文件操作:在“工具箱”-“文件”頁籤中,使用麪包屑導航進入項目目錄,利用搜索框查找文件,或雙擊文件在多標籤中預覽代碼和 Markdown 文檔。
  2. Docker 開發:在“工具箱”-“Docker”頁籤中,通過 SSH 隧道連接遠程 Docker 環境,拉取鏡像,構建並運行容器,通過日誌面板監控容器狀態。
  3. Vite 開發:在“工具箱”-“Vite”頁籤中,查看自動掃描到的項目列表,一鍵啓動開發服務器,在日誌面板查看實時輸出,或直接跳轉至頁面。

適用場景與注意

  • 純客戶端改動:插件的純 Client 側改動支持熱更新(HMR),無需重啓;Host 側改動需重啓 profile。
  • 安全性:SSH 密碼和私鑰僅在運行時內存中保存,重啓後需重新輸入。瀏覽器端僅接收相對路徑。
  • 權限與依賴:插件以當前 DSH 進程的權限運行。若使用 git 源碼安裝,需確保 pnpm 版本兼容,且若 pnpm ≥10,可能需要在 profile 的 pnpm-workspace.yaml 中配置 allowBuilds 以允許構建腳本執行。

結語

dsh-workspace-toolbox 通過將文件管理、容器操作和前端開發工具集成到單一界面,簡化了基於 DSH 的工作流。開發者可以在不離開 Web UI 的情況下完成大部分開發運維操作。

  • 目錄頁: https://www.skillhub.cn/plugins/wuyh/dsh-workspace-toolbox
  • GitHub: https://github.com/wuyh/dsh-workspace-toolbox
羽毛球分组比赛记分
小程序二维码

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

小夜