dsh Session Manager(会话管理插件)

前言

DeepSeek Harness(DSH)的部署级插件,在 Web 设置的「会话管理」页统一管理所有会话。它解决了在原生界面中分散管理归档、删除和批量操作的需求,支持恢复归档、删除会话、按工作区分组及多选批量操作。

核心功能

恢复归档

将已归档的会话移回侧边栏。插件通过平台 host/archived-sessions-changed 帧实时同步所有浏览器页面。

删除会话

删除操作包含三步:移除工作区记账、归档集合隐藏、删除磁盘日志。
* 冷会话:立即删除。
* 运行中会话:隐藏后,等会话停止(刷新页面或 60 秒扫描后)自动删除。

批量操作

支持多选删除、删除所选、删除全部已归档、全部删除,以及恢复全部已归档。

按工作区分组

清单包含未分组项,每行可进行归档、恢复或删除(删除需二次确认)。

状态持久化

已删/待删记录写入 .session-manager-state.json。插件或进程重启后,该状态不会自动复活。

安装与启用

该插件依赖 dsh 运行时与构建环境,不支持远程直接安装,必须先 clone 仓库再本地安装。

  1. 拉取代码
git clone git@github.com:DM-Odyssey/dsh-session-manager.git
cd dsh-session-manager
  1. 本地安装
    在仓库根目录执行:
dsh plugin --profile web add "$PWD"

这会将该目录作为 bundle 安装,并处理依赖关系。

  1. 重启
npx @deepseek-ai/dsh web

重启后进入「设置 → 会话管理」即可使用。

使用方法

  1. 在侧边栏(原生三点菜单)将不需要的会话「归档」。
  2. 打开 设置 → 会话管理。
  3. 单个操作:每行可执行「归档 / 恢复 / 删除」(删除需二次确认)。
  4. 批量操作:
    * 全选
    * 恢复全部已归档 (N)
    * 删除全部已归档 (N)
    * 删除所选 (N)
    * 全部删除

注意事项与安全

  • 删除机制:删除会话涉及工作区记账移除、归档集合隐藏以及磁盘日志目录删除。日志路径经严格校验,仅允许删除以会话 id 命名的 session.jsonl[.zstd] 所在目录。
  • 孤立 ID:归档集合里的孤立 id(对应日志已不存在的会话)会被当作清除项处理,不再反复出现。
  • 状态文件:删除记录保存在 <workspace>/.session-manager-state.json 中,手动删除该文件可重置记录。

参考资料

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

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

小夜