前言¶
DSH(DeepSeek Harness)的插件体系强调“一切皆插件”。在 Web 界面里,默认侧栏主要承担工作区浏览的职责。dsh-workspace-enhance 把这个侧栏替换为工作区文件夹列表:每个文件夹展开后有任务、文件、Git 三个子 Tab,并提供右侧文件预览面板。
对于需要在任务会话、文件内容和 Git 状态之间频繁切换的开发者,这类侧栏增强可以让信息集中在同一界面查看。社区目录是独立站点,与 DeepSeek / 幻方无官方从属关系,不建议把它理解为官方应用商店。
这是什么¶
dsh-workspace-enhance 是一个 DSH 插件,仓库 owner 为 luis1232023。它的定位是 DSH Web 界面的侧栏工作区增强插件:将默认 DSH 工作区浏览器替换为工作区文件夹列表,并在每个工作区文件夹下提供任务、文件、Git 三个子 Tab,另加右侧文件预览面板。
它要求 node >= 18,许可证为 MIT。插件包含 client 半边和 node 半边:client 半边运行在浏览器中,node 半边运行在宿主进程中。插件声明 dsh.bundle.patch,安装时会自动向 profile 配置树注入一行插件配置。
核心功能¶
任务列表¶
- 每个工作区文件夹展开后,可以看到该工作区下的任务。
- 任务列表按最近更新排序。
- 任务行支持打开、重命名、归档、彻底删除会话。
- “彻底删除”由 host 直接删除会话日志目录,不可恢复。
- 文件夹支持新建任务、重命名、删除工作区。
- 顶部按钮可用于添加工作区。
文件树与预览¶
- 文件树以工作区文件夹为根,支持懒加载、逐目录缓存、展开折叠。
- 隐藏文件默认过滤,可通过工具栏菜单显示或隐藏 dot 文件。
- 文件列表上限为 2000 条。
- 点击文件后,在右侧预览面板打开。
- 预览支持代码语法高亮与行号。
- Markdown 支持渲染和源码切换。
- 图片可预览,二进制文件显示占位提示。
- 大文件预览仅取前 512 KB。
- 源码预览中的原始 HTML 会被转义,用于防 XSS。
Git 视图¶
- Git 子 Tab 提供 Changes 与 Graph 只读视图。
- 支持分支切换、提交详情和 diff 语法高亮。
- Git 功能只读,覆盖
log、show、status、branches,没有写操作。 - Git diff 超过 256 KB 时会提示截断。
侧栏与视图¶
- 侧栏支持搜索。
- 支持按工作区视图和平铺列表视图切换。
- 支持排序和折叠 rail 模式。
- 视图模式与每个文件夹的子 Tab 选择会持久化。
- 每个文件夹的子 Tab 有错误边界隔离;出错时会显示错误和重试入口。
安装与启用¶
先在插件目录的上级目录执行添加命令。这里的 file:./dsh-workspace-enhance 表示使用本地目录安装:
dsh plugin --profile web add file:./dsh-workspace-enhance
添加插件后,停止当前 web 实例,再执行下面命令重启生效:
dsh web
重启后,可以用下面两个命令确认 bundle 和配置树:
Invoke-WebRequest http://127.0.0.1:3080/plugins/dsh-workspace-enhance/client.js
dsh --profile web --dump-config
如果要禁用插件,在 profile 的 cordis.patch.yml 中写入插件 id 和 disabled: true:
- id: dsh-workspace-enhance
disabled: true
写入后重启 dsh web。
典型用法¶
1、启动 DSH Web 后,在左侧查看工作区文件夹列表。
2、展开某个工作区文件夹,选择任务、文件或 Git 子 Tab。
3、在文件树中点击文件,右侧会打开预览面板;按 Esc 或关闭按钮可关闭预览。
4、在 Git 子 Tab 中切换分支,查看提交详情和 diff。
5、开发 client 半边时,可以先执行构建或监听:
npm run build
或者:
npm run watch
client 半边改动通过 HMR 热加载;node 半边(lib/index.js)改动必须重启 dsh web。
适用场景与注意¶
适合在 DSH Web 中同时管理工作区任务、文件浏览和 Git 只读查看的开发者。如果只是想替换默认工作区浏览器为更结构化的文件夹列表,这个插件比较直接。
使用前建议检查源码和 MIT 许可证。插件的 node 半边会运行在当前 dsh 进程权限下,因此不要在不信任的目录或不明来源的插件包上直接启用。
需要注意的边界如下:
node运行环境要求node >= 18。- Git 功能只读,不执行写操作。
- 任务彻底删除不可恢复。
- 文件列表上限 2000 条。
- 大文件预览仅取前 512 KB。
- Git diff 超过 256 KB 会提示截断。
- 原生目录选择器在远程或进程内部署可能不可用,添加工作区会回退为手动输入路径。
pnpm安装file:依赖是打包拷贝,不是符号链接;构建会同步lib到 profilenode_modules。
链接¶
- GitHub 仓库:https://github.com/luis1232023/dsh-workspace-enhance
- 插件目录线索:https://www.skillhub.cn/plugins/luis1232023/dsh-workspace-enhance