前言¶
在使用 DeepSeek Harness (DSH) 的 Web GUI 进行开发时,直接删除会话或工作区往往意味着数据即刻丢失。虽然 DSH 原生的“删除工作区”行为会保留项目目录和会话日志,但这在交互上缺乏灵活的“软删除”选项。对于需要误删恢复或批量清理的场景,缺乏一个统一的回收站机制会带来不便。
是什么¶
dsh-session-trash 是一个为 DSH Web GUI 插入会话级回收站功能的插件。它由 Huo-yang 维护,解决了原生操作缺乏撤销机制的问题,提供会话的暂存、恢复及自动清理能力。
核心功能¶
插件在 DSH Web GUI 中主要提供以下能力:
- 会话行菜单:在会话列表的「…」菜单中新增「移入回收站」和「彻底删除」两个选项。
- 回收站面板:提供一个集中的面板查看已删除会话,支持逐条恢复、永久删除或清空。
- 侧边栏状态:当回收站中有内容时,侧边栏入口会显示绿色状态点。
- 原生配置:将回收站设置(暂存、保留天数、确认提示、自动清理)融入 DSH 原生插件页面。
- 列表同步:通过精确会话 ID 隐藏已删除条目,保持主列表整洁。
安装与启用¶
插件通过 GitHub Releases 发布,不提供 npm 包。安装前需确认已安装 DSH。
- 从 GitHub Releases 下载对应版本的
dsh-session-trash-<版本>.tgz。 - 执行安装命令:
dsh plugin --profile trash add "C:\Downloads\dsh-session-trash-0.2.1.tgz"
安装后,在 DSH 的「插件」页面即可看到回收站相关的配置项。
典型用法¶
- 恢复会话:在会话菜单中选择「移入回收站」,随后在回收站面板中点击恢复。
- 卸载插件:如果不再需要,可以移除插件,但回收站数据会保留在本地磁盘:
dsh plugin --profile trash remove dsh-session-trash
- 开发调试:在源码目录下直接安装:
dsh plugin --profile trash add "$pluginPath"
注意事项与适用场景¶
- 数据保留:卸载插件不会自动删除回收站中的数据,建议在清理前确认是否还有需要恢复的会话。
- 删除工作区:该插件不改变 DSH 原生“删除工作区”的行为(仅移除登记,保留日志),它主要处理会话级的软删除。
- 语言支持:虽然 README 提供了英文版本,但插件界面目前主要针对简体中文优化。
- 生态归属:这是一个社区维护的第三方插件,与 DeepSeek 官方无官方隶属关系。
总结¶
dsh-session-trash 通过引入软删除机制,为 DSH 用户提供了更可控的会话管理体验。适合需要频繁调试、误删恢复或定期清理测试数据的开发者使用。