前言¶
DeepSeek Harness (DSH) 采用插件化架构,允许用户通过扩展来增强功能。在长期使用过程中,管理大量会话和物理目录容易导致系统杂乱。dsh-workspace-tree 插件通过引入虚拟会话文件夹机制,在不触碰物理文件系统的情况下实现会话的分组与管理,旨在提供更稳定的跨工作区体验。
插件简介¶
这是一个由 pipipigu 维护的客户端插件,属于 DeepSeek Harness (DSH) 生态。
核心价值:提供虚拟会话文件夹分组、拖放(或点击移动)以及子项目管理功能。
基础信息:
* 名称:dsh-workspace-tree
* 类别:客户端
* 许可证:MIT
* 仓库:github:pipipigu/dsh-workspace-tree
核心功能¶
该插件通过零文件系统污染的机制,实现了对会话的精细化管理:
-
虚拟会话文件夹
- 零文件系统污染:不会移动或修改底层的对话日志或物理目录。元数据以原子方式持久化在
.dsh/workspace-tree..。 - 多工作区稳定性:每个工作区拥有独立的分类和置顶队列。切换工作区时,文件夹状态保持持久和稳定。
- 完整生命周期:支持创建、内联重命名(双击)、自定义颜色标签以及删除(未分类会话安全回退)。
- 零文件系统污染:不会移动或修改底层的对话日志或物理目录。元数据以原子方式持久化在
-
文件夹范围会话创建
- 悬停在任意文件夹上并点击
[+],可直接在该目标文件夹内开始新对话。通过原子 SessionId 绑定,避免了竞态条件。
- 悬停在任意文件夹上并点击
-
活跃任务横幅与“读取即移除”
- 顶部胶囊(28px)固定显示正在运行的任务和未读的已完成会话。
- 生成时显示脉冲蓝点;后台完成时显示持久绿
[Unread]标记;阅读后自动移除。 - 支持一键深跳并自动展开父级工作区和文件夹。
-
精确移动到文件夹下拉菜单
- 取代了侧边栏拖拽的交互痛点,提供精准的点击移动功能。
- 支持快速文件夹选择、内联创建新文件夹,以及文件夹内的“弹出”按钮将会话返回未分类区域。
-
应用内可视化目录浏览器与工作区创建器
- 点击侧边栏头部的
[+],可打开原生风格的“选择工作区目录”模态框。 - 支持完整层级导航(面包屑、单击选择、双击/箭头下钻、返回上一级)。
- 支持在对话框内直接创建子目录、切换显示隐藏文件(如
.config)以及直接编辑路径。
- 点击侧边栏头部的
-
会话置顶、内联重命名与分页
- 支持将重要会话置顶。
- 双击会话标题可激活内联重命名。
- 默认显示前 10 个会话,并提供展开器查看剩余项目。
-
原生单槽阴影
- 完全自包含的主机 RPC 和 UI,绕过 DSH 内部插槽冲突。
- 以优先级
-10阴影原生sidebar.workspaces插槽,与 DSH 的深色/浅色配色方案无缝融合。
-
0ms 响应式引擎
- 基于
useSyncExternalStore和不可变版本快照,确保任何操作下的 UI 渲染均为 0ms 延迟。
- 基于
安装与启用¶
在终端中执行以下命令安装插件:
dsh plugin --profile web add github:pipipigu/dsh-workspace-tree
安装完成后,请重启 DSH Web 实例(或刷新浏览器)以启用插件。
典型用法¶
- 在特定文件夹中创建会话:将鼠标悬停在侧边栏的某个文件夹上,点击其左侧的
[+]按钮,即可直接在该文件夹内新建对话。 - 选择或创建工作区目录:点击侧边栏顶部的
[+],会弹出原生模态框,支持浏览目录、创建子目录或直接粘贴路径。 - 重命名会话:双击任意会话标题,即可直接在列表中进行内联重命名。
适用场景与注意¶
- 适用场景:需要管理大量会话、希望保持物理目录整洁、或者需要在多个工作区间频繁切换并保持会话分类稳定性的 DSH 用户。
- 注意:
- 插件以当前 dsh 进程的权限运行,请确保安装的来源可信。
- 该插件通过自包含的 RPC 和 UI 实现了跨 Web 和 Desktop 平台的 100% 稳定性。
- 它会覆盖 DSH 原生的
sidebar.workspaces插槽,优先级为 -10。
总结¶
dsh-workspace-tree 为 DSH 提供了一个轻量级、高性能的会话管理方案。通过虚拟化文件夹和精确的交互控制,它解决了传统物理目录管理的痛点,适合追求高效工作流的技术用户。