在 DeepSeek Harness (DSH) 的日常使用中,对话记录会随时间不断累积。手动筛选并归档过期的对话不仅耗时,还容易造成历史记录管理混乱。该插件提供了一种基于时间阈值的自动化归档方案,通过 Web 界面即可完成操作。
这是什么¶
dsh-one-click-archive 是一个 DeepSeek Harness Web GUI 插件,由用户 sujiu222 维护。它解决的核心问题是“如何快速、安全地归档符合时间条件的旧对话”。该插件通过设置年龄阈值,允许用户在归档前预览候选会话,并一键执行归档操作。
核心功能¶
该插件具备以下核心能力:
- 灵活的年龄阈值:支持从 1 小时到 90 天的多种时间跨度,包括 1/6/12 小时,以及 1/3/7/14/30/90 天。
- 预览与确认:在执行归档前,插件会计算候选会话的具体数量,并展示样本列表,确认无误后再进行操作。
- 空白会话选项:用户可选择是否包含内容为空的会话。
- 智能过滤:自动跳过正在运行、最近活跃以及已经被归档的会话,避免重复操作。
- 实时计算:在执行归档动作前,会立即重新计算候选会话,防止因缓存导致的预览与实际结果不一致。
- 非破坏性归档:使用 DSH 官方的
workspaceRegistry.archiveSession()API。归档操作仅将会话 ID 添加到全局归档集合中,不会删除原始对话日志或影响工作区统计。 - 安全机制:使用仅限 Loopback 主机的路由,并在执行变更前弹出确认对话框。
安装与启用¶
安装该插件需要使用 DSH 的命令行工具。首先执行安装命令:
dsh plugin --profile <your-web-profile> add github:sujiu222/dsh-one-click-archive
安装完成后,需要重启对应的 DSH Web 配置文件,刷新浏览器,然后在设置菜单中找到 One-click archive 选项。
如果是本地开发环境,安装步骤如下:
npm install
npm run check
dsh plugin --profile <your-web-profile> add /absolute/path/to/dsh-one-click-archive
注意:客户端插件的更新仅在 DSH 检出代码运行 pnpm run dev:web 监听器时支持热重载。否则,需要重新构建/安装插件、重启宿主插件并刷新页面。
典型用法¶
安装并启用插件后,进入设置页面的 One-click archive 标签页。在界面上设置归档的年龄阈值,并决定是否包含空白会话。点击归档按钮前,系统会展示预览信息。
通过插件暴露的 API,也可以进行自动化操作。请求体格式如下:
{ "ageMs": 86400000, "includeBlank": false }
其中 ageMs 为时间毫秒数,includeBlank 控制是否包含空白会话。
适用场景与注意¶
该插件适用于需要定期清理历史对话记录、保持工作区整洁的用户。在使用前,请确保理解其非破坏性特性:归档仅添加会话 ID,日志和会计信息依然保留。如需恢复,请使用 DSH 的归档 UI 或其他归档管理插件。
此外,插件使用 Loopback-only 主机路由,所有 API 调用均需在相同源下进行。在进行任何变更操作前,务必查看预览并确认对话框内容。
总结¶
dsh-one-click-archive 提供了一个基于时间维度的对话归档解决方案,通过预览、智能过滤和非破坏性 API 设计,降低了手动管理历史记录的门槛。
- GitHub 仓库:https://github.com/sujiu222/dsh-one-click-archive
- 插件目录:https://www.skillhub.cn/plugins/sujiu222/dsh-one-click-archive