前言¶
在 DeepSeek Harness(DSH)里跑智能体时,主会话常会派生出多层子代理会话。侧栏里用「归档」可以把会话藏起来,但按 DSH 默认行为,会话日志、投影缓存、工作区记录等仍会留在本机磁盘上。长期调试、反复开子任务时,这些残留既占空间,也可能让敏感对话内容留在你不打算保留的环境里。
社区插件 dsh-session-purger(维护者 RicardoYan,分类 admin-security)在会话菜单里增加「删除会话」,把选定会话及其任意层级的子代理会话一并永久清掉,并清理插件文档所列的关联存储;不替代归档,而是补「真删」这一条路径。
这是什么¶
dsh-session-purger 是给 DSH 会话行菜单加操作的插件:对当前会话执行永久删除,并递归处理由该会话派生的所有子代理会话。
与内置归档对比:归档后记录仍在磁盘;本插件按 DSH 存储布局删除会话侧数据(具体范围见下文「会清理与不会删」)。插件以你当前运行的 DSH 进程权限操作本机文件,安装前宜自行查看 GitHub 仓库 源码与 MIT 许可证。
核心功能¶
- 菜单入口:在会话行
⋯中提供 删除会话。 - 连带子代理:删除目标会话时,包含其下所有子代理会话(任意层级),不限于直接子节点。
- 二次确认:第一次点击会提示将连带删除的子代理会话数量;再次确认后才执行。
- 存储清理(按 README 说明):会话日志、投影缓存、工作区记录、spill 文件、浏览器里的界面状态。
- 明确不删:由分叉(fork)产生的会话、工作区文件夹内的项目文件。
- 占用文件:若删除时文件被占用,会在下次启动 DSH 时自动清理。
删除不可撤销。
安装与启用¶
安装命令以仓库 README 为准。桌面端示例(desktop 为 profile 名):
dsh plugin --profile desktop add github:RicardoYan/dsh-session-purger#v0.2.1
Web 端将 desktop 换成你的 profile 名,一般为 web。安装完成后重启 DSH。
卸载:
dsh plugin --profile desktop remove dsh-session-purger
版本与宿主:package.json 中 engines.dsh 为 >=0.2.1-rc.1 <0.3.0-0;README 写明依赖 DSH 的存储布局,适用于 @deepseek-ai/dsh 的上述版本区间。插件当前发布版本为 v0.2.1。
典型用法¶
- 在 DSH 侧栏找到要彻底移除的会话。
- 点击该会话行右侧
⋯,选择 删除会话。 - 阅读第一次点击后展示的子代理连带删除数量,确认无误后再次操作以执行删除。
无需额外配置文件;行为由菜单与确认流程驱动。
适用场景与注意¶
适合:需要在本机彻底去掉某次对话及其子代理痕迹的开发者;在 admin-security 分类下,也适合对「会话数据是否仍落盘」有明确要求的场景。
务必注意:
- 操作不可逆;执行前确认会话与工作区里是否有仍需保留的项目文件(项目文件本身不会被本插件删除,但会话相关元数据会清掉)。
- 分叉出去的会话不在删除范围内,不要误以为「整棵家族树」都会被删。
- 插件在社区目录 SkillHub 条目 展示,与 DeepSeek / 幻方无官方从属关系;DSH 生态强调「一切皆插件」,安装第三方扩展前应自行审阅代码与权限影响。
结尾¶
若你已经在用归档管理侧栏,但仍希望磁盘上的会话与子代理记录被真正移除,可以按上文命令安装 dsh-session-purger,在确认连带范围后使用「删除会话」。更多说明见 GitHub:RicardoYan/dsh-session-purger 与 SkillHub 插件页。