dsh-hide-empty-workspace

前言

在 DeepSeek Harness (DSH) 中,归档是用户手动触发的操作。当一个工作区的未归档会话被归档后,该工作区在侧栏的行并不会自动消失,导致列表中残留大量空工作区,挤占真正在用的工作区位置。

dsh-hide-empty-workspace 插件旨在解决这一问题。它将“工作区变空”转化为一个被动触发的信号:当某个工作区的未归档会话数从 1+ 掉到 0 时,侧边栏对应的行自动隐藏。该插件仅负责视觉上的清理,不触碰任何数据层。

插件定位

  • 名称:dsh-hide-empty-workspace
  • 维护者:d0ublecl1ck
  • 定位:DSH Web 客户端插件,用于自动清理侧边栏中的空工作区。
  • 核心逻辑:通过监听会话归档事件,检测未归档会话数量归零,仅通过修改 DOM display 属性实现隐藏。

安装与启用

安装该插件需要使用 DSH 的插件管理命令。

dsh plugin --profile web add dsh-hide-empty-workspace

安装完成后,刷新页面即可生效。如果需要从 GitHub 源码安装或本地开发调试,可以使用以下命令:

# 从 GitHub 直接安装
dsh plugin --profile web add https://github.com/d0ublecl1ck/dsh-hide-empty-workspace/tar.gz/refs/heads/main

# 本地路径安装
dsh plugin --profile web add /绝对路径/dsh-hide-empty-workspace

使用方式

插件提供多种触发和恢复机制:

  1. 自动隐藏:当某个工作区的最后一个未归档会话被归档时,该工作区行自动隐藏。
  2. 手动隐藏:悬停任意工作区行,点击行内「…」菜单中的「隐藏工作区」,立即生效。
  3. 恢复隐藏:点击侧栏底部的「已隐藏 N」按钮,打开官方恢复对话框,逐个恢复。
  4. 自动恢复:当某个被隐藏的工作区重新有了未归档会话时,插件自动取消隐藏状态。

安全边界

插件在设计和实现上严格遵守安全边界,不承担任何破坏性操作:

  • 数据安全:不归档、不取消归档、不删除任何会话或工作区。
  • 注册安全:不改写工作区注册,不动用 workspaces 服务或 settings.yaml。
  • 网络隔离:插件不联网,不发送任何请求。
  • 写入范围:唯一的数据写入操作是在浏览器 localStorage 中记录隐藏集合(键名为 dsh-hide-empty-workspace.hidden.v1)。清空该数据可恢复默认显示。
  • UI 替换:不替换官方 UI。仅在官方已渲染的行上切 display 属性,在工作区行菜单中追加选项,恢复入口使用官方 Modal。若官方 UI 改版导致行标记失配,侧栏底部会显示提示信息。

结语

dsh-hide-empty-workspace 是一个轻量级的侧边栏清理工具。它通过“空即隐藏”的规则,帮助开发者保持侧边栏整洁,同时通过仅修改 display 属性和限制 localStorage 写入,保证了极高的安全性和兼容性。

更多细节、目录信息及源码可参考:
* GitHub 仓库
* 插件目录页

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

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

小夜