前言¶
DeepSeek Harness(DSH)在侧栏里为会话提供了归档等内置操作,但不会把会话记录从本机彻底移除。归档后数据仍在磁盘和索引里,侧栏里也可能继续占一行。若你希望在本地清理测试会话、误建记录,或在工作区删除前先把关联会话清掉,就需要一条「真删除」路径,而不是反复归档。
下面介绍社区插件 dsh-session-delete(仓库 wooxi/dsh-session-delete,维护者 wooxi,分类为客户端)。它在 Web 侧栏会话菜单中增加永久删除入口,用确认对话框拦截误操作,并在成功后刷新侧栏而无需整页重载。
这是什么¶
dsh-plugin-session-delete(npm 包名)在 DSH Web 客户端侧栏为单个会话提供永久删除;若工作区仍绑定会话,删除工作区时会先级联确认并逐个走同一套删除逻辑。插件同时包含 Host 路由与预构建的 client.js,通过 dsh.bundle patch 注入,安装后无需本地 build。
DSH 本体侧重「一切皆插件」的扩展方式;插件目录页托管在 SkillHub 等社区站点,与 DeepSeek / 幻方无官方从属关系。本文事实以 GitHub README 与包声明为准。
核心功能¶
侧栏删除单个会话¶
- 在侧栏会话菜单中,于内置操作之后增加 Delete session 项。
- 使用 DSH
Modal与设计 token 渲染确认框(Claude / OpenCode 视觉语言),支持浅色与深色主题;危险操作为红色,展示会话标题与不可撤销提示。 - 支持
Esc、点击遮罩、显式关闭按钮;请求被拒绝时在对话框内显示错误;请求进行中显示 busy 状态。 - 删除成功后调用
sessions.refresh()更新侧栏,不整页 reload。 - 若删除的是当前活动会话:清空主视图、保持工作区选中并回到首页;若删除的是后台会话,当前视图不变。
- Host 广播
api-session/removed,其他已打开标签页会同步移除对应行。
删除仍含会话的工作区¶
当工作区仍拥有会话时,插件包装 ctx.workspaces.delete:先弹出级联确认并显示会话数量;确认后对每个会话调用同一 Host 删除路由,刷新会话列表,再执行官方 workspaces.delete。磁盘上的工作区文件夹不会被删除,仅移除注册与会话记录。
Host 侧实际移除的内容¶
POST /api/dsh/session-delete 会校验会话 id、从 session controller 解绑 live 会话、从所有引用该 id 的工作区 detach、清除 archive/pin 状态,并删除 sessions 根目录下该会话的 log 目录(路径校验必须在根目录内)。随后重建 stored-session 头索引并发出 api-session/removed。
安装与启用¶
安装后需重启 DSH Web 服务。包内已带预构建 client.js 与 dsh.bundle patch,一般不需要 build 或 build 审批。
从 GitHub 直接安装:
dsh plugin add github:wooxi/dsh-session-delete
npm 发布可用后(README 注明 once published):
dsh plugin add dsh-plugin-session-delete
卸载:
dsh plugin remove dsh-plugin-session-delete
兼容性(见 README 与 package.json):
- DSH:
>=0.2.1-rc.1 <0.3.0-0 - 仅 Web 客户端(
dsh.client.platform: "web") - Node.js:
>=20
当前 package 版本为 0.2.0,许可证 MIT。
典型用法¶
- 安装插件并重启 DSH Web 服务。
- 在 Web UI 打开侧栏,对目标会话打开菜单,选择 Delete session。
- 在确认对话框中核对会话标题,确认永久删除;若 Host 拒绝请求,对话框内会显示错误信息。
- 若需删除仍绑定多个会话的工作区:走工作区删除流程,在级联确认中查看会话数量后再确认;会话会被永久删除,工作区文件夹仍保留在磁盘上。
插件不发起额外网络请求;删除路由为同源 POST,沿用 Host 现有 cookie 认证,插件自身不存储 token。
适用场景与注意¶
适合:本地开发或自用 DSH 时清理无用会话、测试数据;在保留工作区目录的前提下清空其下全部会话注册与日志。
务必注意:
- 删除是永久性的:消息、附件元数据与会话 log 目录会从本机移除,无法通过归档恢复。
- 插件以当前 DSH 进程权限运行;安装前应阅读 源码与 LICENSE,确认行为符合你的数据策略。
- 仅适用于上述 DSH 版本区间与 Web 客户端;Node 需满足
>=20。
结尾¶
DSH 自带归档而非删除;dsh-session-delete 补的是侧栏永久删除、确认对话框、无刷新刷新侧栏,以及带会话数提示的工作区级联删除。需要安装命令与实现细节时,可看社区目录页与仓库 README。
- 目录页:https://www.skillhub.cn/plugins/wooxi/dsh-session-delete
- GitHub:https://github.com/wooxi/dsh-session-delete