DSH Workspace Manager:工作区、会话树与多源文件夹管理

前言

在 DeepSeek Harness(DSH)里长期跑多个项目时,原生的工作区列表往往只够「选目录开聊」,会话一多就难以按工作区梳理、批量收尾,额外给模型看的参考目录也缺少集中入口。社区插件 dsh-workspace-manager(包名 @zhenyu-24/dsh-workspace-manager)在侧栏增加「工作区管理」,用树形会话列表、搜索排序和批量归档补这一层,且不替换 DSH 自带的工作区列表。维护者为 zhenyu-24;仓库采用 MIT 许可,当前发布版本为 1.2.0(以 package.json 为准)。插件分类为客户端,在 SkillHub 目录页 可查到条目;SkillHub 为社区插件站点,与 DeepSeek / 幻方无官方从属关系。

这是什么

DSH 的独立侧栏 bundle 插件:管理工作区、会话和额外源文件夹,业务逻辑与 Agent 工具 workspace_manager 共用同一套实现。安装包自带可运行的 dist,用户无需自行构建即可按 Release 方式安装。

核心功能

下面能力均来自项目 README 的功能说明。

  • 工作区与会话:工作区下展示会话树,支持多选与展开;会话可打开、重命名、归档;支持批量归档及移除工作区。
  • 检索与排序:按名称、路径搜索;表头可按名称、路径、未归档会话数及时间排序。
  • 工作区维护:重命名、编辑源文件夹;在系统文件管理器中打开已保存的工作区目录(Windows 已测;代码含 open / xdg-open 分支,macOS / Linux 尚未端到端验证)。
  • 额外源目录:主目录固定,通过「添加文件夹」挂载额外源;数据保存在 DSH storageDomain 的 local_workspace_enhancer 域,而非浏览器 localStorage。
  • 健壮性:失败反馈、保存版本冲突检测、活动会话归档保护;UI 含原创 SVG 图标及中英文界面元信息。

未归档计数排除子代理会话,包含未命名的普通会话,可能受 DSH 当前目录索引影响。额外文件夹仅作为提供给 AI 的参考上下文,不授予额外文件访问权限,也不改变主工作目录。

安装与启用

前提:已安装支持 bundle 插件的 DSH,并可使用插件管理器。官方说明已在 Windows / DSH 0.2.1-rc.3 环境测试;其他版本与 macOS、Linux 尚未端到端验证。本仓库尚未发布到 npm,不能假定 npm install @zhenyu-24/dsh-workspace-manager 可用。插件以当前 DSH 进程权限运行,安装前应阅读源码与许可证。

方法一:Release 安装包

  1. 从 Releases 下载 .tgz。
  2. 解压,找到包含 package.json 的 package 目录。
  3. 在 DSH 对话中请求安装该目录作为 bundle,例如:
请通过 plugin_manager install_bundle 安装此插件目录:
<解压后的 package 目录绝对路径>
  1. 确认安装返回 application: applied。刷新 DSH 页面,在左侧打开「工作区管理」。

方法二:源码安装

在独立环境中克隆仓库并校验(需 Node.js >= 22.19):

git clone https://github.com/zhenyu-24/dsh-workspace-manager.git
cd dsh-workspace-manager
npm ci
npm run check

再通过 DSH 的 plugin_manager install_bundle 安装本仓库绝对路径。不要手工编辑 profile 的配置文件;npm run check 会将源码复制到 dist 并校验,不需要额外打包器。

从旧本地包迁移

本项目自本地包 @local/dsh-workspace-enhancer 1.1.5 演进而来,保留插件行 ID 与持久化域。工具名、服务名及 HTTP 路由与旧包相同,不要同时启用旧包和本包。应先通过 DSH 插件管理器移除旧开发包,再安装本包;不要删除持久化数据。升级前备份重要数据,避免在活动任务进行时重载。

典型用法

安装并刷新侧栏后,常见操作路径如下。

  1. 在「工作区管理」中展开某工作区,查看会话树;用搜索框或表头排序定位目标会话。
  2. 多选会话后执行批量归档;对仍在运行的会话,插件会按 DSH 约束做归档保护。
  3. 对工作区执行重命名或「编辑源文件夹」;需要时在资源管理器中打开工作区目录(仅已保存的工作区路径)。
  4. 使用「添加文件夹」为当前工作区登记额外源目录,供对话上下文引用。

UI 不提供恢复归档按钮;工具仍保留 unarchive 能力,使用时需遵守 DSH 约束。移除工作区只移除注册,不删除磁盘文件或会话日志;本插件不提供永久删除会话,归档由 DSH 原生业务执行。

若希望 Agent 侧与工作区交互,可依赖同名工具 workspace_manager,与侧栏 UI 复用相同业务逻辑(具体参数以 DSH 工具文档为准)。

适用场景与注意

适合:在同一 DSH 实例中维护多个工作区、需要树形查看会话、批量归档,或需要为工作区配置额外参考目录的开发者。

注意:

  • 数据与安全边界见 README「数据与安全边界」:例如 Windows 下打开目录返回 requested: true 表示系统调用已交接,不保证用户一定看到桌面窗口。
  • Release 包不包含作者的工作区记录、聊天日志、密钥或 DSH profile 配置。
  • 开发依赖 zod ^4;建议在独立仓库中 npm ci,不要在 DSH profile 里手工跑包管理器。

结尾

dsh-workspace-manager 把 DSH 工作区、会话和额外源目录收到侧栏统一管理,并与 workspace_manager 工具对齐,适合需要集中运维工作区而非替换原生列表的用户。

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

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

Xiaoye