dsh-clear-ungrouped:侧边栏「未分组」对话一键归档

前言

在 DeepSeek Harness(DSH)里用久了,侧边栏「未分组」往往会堆满临时会话。原生界面可以逐条归档,但没有针对整组「未分组」的批量操作。若你经常需要清空未归类对话、又希望误操作可撤回,社区插件 dsh-clear-ungrouped 提供带确认与撤销的一键归档能力。下面介绍它的定位、行为与安装方式。

这是什么

dsh-clear-ungrouped 是维护者 winniesi 发布的 客户端(Web)插件,在侧边栏「未分组」分组的「新建会话」按钮左侧增加「清空未分组对话」入口(扫帚图标,悬停分组标题时出现)。点击后确认数量,将符合条件的未分组对话 归档(非物理删除);DSH Host 未提供删除会话接口,归档是官方从侧边栏移除会话的方式。

社区插件目录为独立站点,与 DeepSeek / 幻方无官方从属关系;安装前请自行查看源码与许可证。插件在 当前 dsh 进程/浏览器上下文 中运行,权限与所用 DSH 实例一致。

核心功能

交互与归档范围

  1. 点击扫帚按钮后弹出确认框,展示 即将处理的对话数量。
  2. 确认后对「未分组」内符合条件的会话调用归档;归档后会从侧边栏隐藏,可在 视图选项 → 全部对话(显示已归档) 中找回并取消归档。
  3. 操作完成后的提示条提供 「撤销」,6 秒内 可恢复本次归档的全部对话。

会保留、不归档的会话

  • 已置顶的对话;
  • 正在运行的对话(含有运行中子智能体的)。

与当前会话的关系

若当前打开的对话被本次归档,主区域会回到新会话页,行为与侧边栏原生归档一致。

安装与启用

Desktop 配置下安装:

dsh plugin --profile desktop add github:winniesi/dsh-clear-ungrouped

Web 配置将 desktop 换为 web:

dsh plugin --profile web add github:winniesi/dsh-clear-ungrouped

安装后 重启 dsh 或 刷新页面 使插件生效。

本地开发时,可用本地路径代替 GitHub 地址(示例):

dsh plugin --profile desktop add link:/path/to/dsh-clear-ungrouped

典型用法

  1. 安装并重启或刷新后,在侧边栏找到 未分组 分组。
  2. 将鼠标悬停在未分组标题区域,在「新建会话」左侧应出现扫帚按钮。
  3. 点击按钮,在确认框中核对数量后确认归档。
  4. 若需反悔,在提示条消失前(6 秒内)点 撤销;否则到「全部对话(显示已归档)」中手动取消归档。

实现要点(供开发者参考)

插件为纯浏览器端实现(client.js),index.js 仅为 Loader 所需空壳。因分组标题无 slot,插件注册常驻 shell.overlay,用 MutationObserver 在未分组行([data-row-key="workspace:"])的新建会话按钮前插入宿主节点,再通过 React portal 渲染按钮;未分组成员的计算与 ui-workspace 一致(不属于任何工作区的会话,排除子智能体会话、空白会话和已归档会话)。归档走 uiWorkspace.archiveSession(不存在时回退 workspaces.archiveSession),撤销走 workspaces.unarchiveSession。

适用场景与注意

适合:长期本地或 Web 使用 DSH、未分组会话较多、希望批量归档且保留误操作窗口的用户。

注意:

  • 归档不等于删除;找回路径依赖 DSH 自带的「显示已归档」视图。
  • 置顶与运行中的会话不会被清理,若「清不干净」请先检查这两项。
  • 插件依赖 DSH 0.2.x RC 段版本范围,升级主版本前请核对 peerDependencies。
  • 安装第三方插件前请阅读仓库 README 与 client.js,确认行为符合预期。

结尾

dsh-clear-ungrouped 用一个小按钮补齐了「未分组」批量整理能力:确认数量、归档隐藏、六秒内可撤销,并与 DSH 原生归档语义一致。需要时可从 SkillHub 目录页 进入说明,或在 GitHub 仓库 查看源码与更新。

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

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

Xiaoye