前言¶
DeepSeek Harness(DSH)的桌面主机在退出时会对活跃工作进行检测,但缺少启动恢复路径:应用关闭(崩溃、SIGTERM、主动退出重载)后,已中断的会话会一直保持中断状态,直到人工介入。这导致智能体工作流中断、会话状态丢失。
tmt-homelab/dsh-session-auto-resume 插件在主机启动时检测并恢复这些被中断的会话,无需人工操作。
这是什么¶
这是一个 DeepSeek Harness 插件,用于自动恢复被应用关闭中断的会话。当 DSH 主机重新启动时,插件从持久化状态中检测到处于工作状态的会话并进行恢复:
- 维护者:tmt-homelab
- 分类:记忆
- 源码仓库:https://github.com/tmt-homelab/dsh-session-auto-resume
- 许可证:MIT
插件的核心能力是对会话进行分类处理:活跃目标会话会被自动恢复并重新武装,随后的 goal-round-driver 会自动继续回合预算;中回合无目标的会话会被检测并记录可执行的恢复命令,但不自动工作;超过48小时的陈旧会话、干净结束的会话、子代理拥有的会话会被跳过。
安装与启用¶
安装步骤如下:
-
将插件包复制到本地目录:
~/.dsh/plugins/dsh-session-auto-resume -
在你的 DSH 配置中链接它并添加到 bundles 列表:
"dependencies": { "@local/dsh-session-auto-resume": "link:/Users/you/.dsh/plugins/dsh-session-auto-resume" },
"dsh": { "profile": { "bundles": [ "@local/dsh-session-auto-resume" ] } }
-
插件自带的
cordis.patch.yml包含必需的插入行(仅 bundles 列表条目会被静默跳过)。插件默认dryRun: true,首次启动会记录would-resume决策但不实际执行;确认无误后将dryRun设置为false。 -
重启应用。证据会写入
~/.dsh/logs/session-auto-resume.log,每次激活会记录ARMED,每次启动会记录一条pass-done。
典型用法¶
启动后,插件会执行一次扫描:
- 扫描限制:插件会话匹配基于最近30个持久化会话的创建时间(配置项
scanLimit) - 恢复时机:插件仅在主机启动时挂载(不支持热重载插件文件更改)
- 活跃目标会话:被明确恢复,目标重新武装,goal-round-driver 继续回合预算
- 中回合无目标会话:被检测并记录恢复命令(仅显示,不自动工作)
- 跳过会话类型:干净结束的会话、超过48小时的陈旧会话、活跃会话、子代理拥有的会话
日志示例:
ARMED
pass-done
插件不会向会话日志追加内容,而是将检测信息记录在插件自己的日志中。
适用场景与注意¶
适合需要长期运行智能体工作流、不希望因应用关闭导致工作中断的用户。插件在启动时执行恢复逻辑,处理完成后即退出,不影响主机正常运行。
插件以当前 DSH 进程权限运行。安装前建议检查源码与许可证。
短结尾¶
该插件填补了 DSH 桌面主机在应用关闭后的恢复空白,通过自动识别并恢复活跃目标会话,保持智能体工作的连续性。更多细节可参考插件目录页与 GitHub 仓库。
参考资料¶
- 插件目录页:https://www.skillhub.cn/plugins/tmt-homelab/dsh-session-auto-resume
- GitHub 仓库:https://github.com/tmt-homelab/dsh-session-auto-resume
- DeepSeek Harness:https://github.com/deepseek-ai/deepseek-harness