前言¶
在 DeepSeek Harness(DSH)中,一次会话回合可能因为出错、被中断,或输出达到 token 上限而没有正常结束。这类情况下,会话本身仍然可以继续推进,只需要向原会话再发送一句「继续」。
下面介绍 Frog755 的 DSH 客户端插件 @frog755/dsh-client-auto-retry。它用于在这几类回合结束原因出现时自动发送「继续」,不做模型或 provider 切换。
这是什么¶
@frog755/dsh-client-auto-retry 是一个 DSH 客户端插件,由 Frog755 维护,许可证为 MIT。
它会检测 turn/end 的 reason.kind。当该值属于 error / interrupted / max-tokens 时,插件会自动向同一会话发送可配置文本,默认文本是「继续」。
插件自带设置卡片,设置项实时生效,标记为:
applies: "live"
它只负责自动发送「继续」,不做模型/provider 切换。如果需要故障转移,应该在 DSH 的模型路由配置里完成。
核心功能¶
1、检测 turn/end 的 reason.kind 是否为以下类型之一:
error
interrupted
max-tokens
2、自动向该会话发送可配置文本,默认发送:
继续
3、提供宽限期、冷却期、连续次数上限、启动扫描等防护,避免失控循环。
4、设置项实时生效:
applies: "live"
5、不做模型/provider 切换。
6、自带设置卡片。
安装与启用¶
下面是通过 npm 包安装的步骤。
1、在 DSH 的 profile 目录执行:
pnpm add @frog755/dsh-client-auto-retry
这一步会把插件包安装到当前 profile 的依赖中。
2、编辑该目录下的 package.json,把 @frog755/dsh-client-auto-retry 加入 dsh.profile.bundles。
这一步用于让 DSH 在加载该 profile 时识别这个插件。
3、执行:
pnpm install
这一步完成依赖安装。
4、重启 DeepSeek Harness,再刷新浏览器页面。
Host 侧插件只在进程内加载一次;Host 侧 lib/index.js 改动需要重启 DSH,只刷新浏览器页面不够。
本地 link 开发调试时,可以在 dependencies 中使用类似配置:
{
"dependencies": {
"@frog755/dsh-client-auto-retry": "link:C:/Users/frog/.dsh/projects/dsh-client-auto-retry"
}
}
上面的路径是文档中的本地示例,实际使用时应替换为你自己的本地插件路径。
典型用法¶
设置入口是:
设置 → 通用 → 断联自动重试
进入后可以看到插件的设置卡片。插件触发后会自动发送默认文本「继续」,也可以按需要调整自动发送的文本。
几个防护项需要注意:
maxConsecutive建议保持默认 5 次以内,避免 provider 持续报错时反复消耗 token。scanOnBoot只扫描freshMs窗口内的会话。- 当前已针对 DSH
0.1.0-rc.7(web 端 profile;desktop runtime 同版本)编写并验证;不同版本/形态的 DSH 接口可能不同。
适用场景与注意¶
这个插件适合处理 DSH 会话中回合被中断、出错或达到 max-tokens 后的简单续跑。
它不适合作为错误兜底,也不负责模型/provider 故障转移。插件会作为 DSH profile bundle 加载,并以当前 DSH 进程的运行环境执行;安装前应检查源码与许可证。
如果插件装不上或不生效,先核对 DSH 版本与接口是否一致,再检查以下事项:
1、package.json 中是否已把 @frog755/dsh-client-auto-retry 加入 dsh.profile.bundles。
2、是否已执行 pnpm install。
3、是否已重启 DeepSeek Harness。
4、Host 侧 lib/index.js 改动后是否已重启 DSH。
链接¶
GitHub 仓库:
https://github.com/Frog755/dsh-client-auto-retry
社区目录页地址未在本次已核实资料中确认。