前言¶
DeepSeek Harness(DSH)侧栏里可以把会话「归档」:列表里不再显示,但磁盘上的事件日志、投影缓存和工作区登记往往还在。长期本地开发或反复试跑智能体时,session.v4.jsonl.zstd 和 storages/workspace.json 里的 id 会不断累积,占用空间,也不利于按工作区梳理。内置归档没有真正的删除入口;dsh-session-cleanup 是社区插件,补这一块维护面板,并在会话菜单里提供「永久删除」确认流程。
这是什么¶
dsh-session-cleanup(GitHub:LucasCaleb-ggg/dsh-session-cleanup)由维护者 LucasCaleb-ggg 发布,MIT 许可证,当前 package 版本 1.0.0。定位是 DSH 的会话与工作区维护面板:列出各工作区下的会话(标题、id、体积、最后活动、是否归档 / 运行中 / 日志缺失),支持批量或从侧栏菜单一次性删掉事件日志、投影缓存以及 workspace.json 中的登记——而不是只隐藏侧栏行。
核心功能¶
下面介绍 README 中已说明的能力。
工作区与会话列表¶
- 按 Workspace → sessions 展示每个会话的标题、id、大小、最后活动时间。
- 状态包括 archived、running、log missing。
- 已无工作区登记、但日志仍在磁盘上的会话,单独成组 Unregistered sessions,便于清理。
删除会话¶
- 批量删除:勾选多个会话,确认一次即可;running 会话会被拒绝(仍有 turn、子智能体、job 或 schedule 时不能删),原因会在 UI 中显示。
- 侧栏快捷入口:任意会话
…菜单增加 Delete permanently…,弹出确认对话框,无需先打开维护面板。
删除每个会话时会移除三处数据(README 原文路径):
$DSH_HOME/sessions/<workspace-key>/session-<id>/(事件日志目录)$DSH_HOME/storages/session_projcache/sessions/session-<id>.json(投影缓存)$DSH_HOME/storages/workspace.json中的sessionIds与archivedSessionIds
操作前须勾选 I understand this cannot be undone,未勾选前不会动任何文件。
删除过程通过 workspaceRegistry.detachSession / unarchiveSession 与 Host 内存表、workspace.json 保持一致,并发出 api-session/removed,侧栏会立即去掉该行,而不是重启前一直挂在「Ungrouped」下。
工作区¶
可删除工作区在 DSH 中的登记;可选同时删除磁盘上的工作区目录。对盘符根目录、用户主目录、DSH home、以及仍包含其他已注册工作区的目录会拒绝删除。
安全与已知限制¶
- 会话 id 在构造路径前会做校验。
- Attachments(
.dsh/attachments)不会被删除——共享 blob 可能属于其他会话。 - 已删会话不会级联删除其子智能体会话;若某标签页仍打开已删会话,该 tab 会指向已不存在的日志。
安装与启用¶
插件为纯 JavaScript bundle,无需构建;安装后会在 DSH profile 中注册 session-cleanup 入口。
从 GitHub 安装(命令来自仓库 README,将 OWNER 换为实际仓库所有者):
dsh plugin add https://github.com/LucasCaleb-ggg/dsh-session-cleanup
若本地已有仓库检出,也可指向目录:
dsh plugin add /absolute/path/to/this/directory
Requirements(README):DeepSeek Harness 0.2.x 且带 Web GUI;Host 需具备 webServer、connection、workspaceRegistry、agents 等服务。
典型用法¶
- 侧栏点击 Session cleanup 图标(位于 Plugin market 与 Schedules 之间)进入全页维护面板;或
- 在任意会话的
…菜单中选择 Delete permanently…,在对话框中确认。
在面板中可勾选多个非运行中会话批量删除,或处理未登记会话组、工作区删除等操作。安装后具体文案以界面与 locale/*.json 为准。
适用场景与注意¶
适合长期在本地用 DSH 跑智能体、归档很多但仍想释放磁盘、或需要核对「归档 vs 日志是否还在」的开发者。
插件以当前 DSH 进程的用户权限读写 $DSH_HOME 下路径;安装前建议阅读 GitHub 源码 与 MIT 许可证,确认行为符合预期。DSH 生态强调「一切皆插件」;社区目录 SkillHub 插件页 为独立站点,与 DeepSeek / 幻方无官方从属关系。
结尾¶
dsh-session-cleanup 把 DSH 里「只归档、不删盘」的缺口补上:同一套 UI 里查看工作区与会话状态,并在确认后永久移除日志、投影缓存与工作区登记。需要时可从目录页或 GitHub 安装,并按 README 的 Safety 一节理解运行中会话与附件等边界。
- 目录页:https://www.skillhub.cn/plugins/LucasCaleb-ggg/dsh-session-cleanup
- 仓库:https://github.com/LucasCaleb-ggg/dsh-session-cleanup