Frog755/dsh-client-auto-retry

Frog755★ 0JavaScript最后同步: 2026-08-20

在 GitHub 打开

DSH client plugin: auto-sends 「继续」 when a turn is interrupted/errored/overlong. No model/provider switching. Ships with a settings card.

README 摘要

@frog755/dsh-client-auto-retry DSH 客户端插件:检测到回合被中断 / 出错 / 超长(max-tokens)时,自动发送「继续」重试。 只做自动重试, 不做 模型 / provider 切换。自带设置卡片。 English version: README-EN.md 它能做什么 DeepSeek Harness(DSH)的回合(turn)偶尔会因为网络抖动、provider 报错、超时、 或输出达到 token 上限而中断。大多数情况下模型其实已经跑完大部分内容,只要再发一句 「继续」就能接着完成,完全不需要人工介入、也不需要切换模型。 这个插件就是干这件事的: 1. 监听会话事件流( api.events.mux ); 2. 发现 turn/end 的 reason.kind 属于 error / interrupted / max-tokens 时, 等一个宽限期(默认 5 秒,给 host 留出重连/恢复的时间); 3. 宽限期后向该会话自动发送「继续」(可配置文本); 4. 带冷却期、连续次数上限、启动时扫描最近被中断的会话等防护措施,避免失控循环。 安装 方式 A:通过 npm 安装(推荐) 在 DSH 的 profile 目录(例如 /.dsh/profiles/web )里执行: 然后编辑该目录下的 package.json ,把 @frog755/dsh-client-auto-retry 加入 dsh.profile.bundles (插件自带的 cordis.patch.yml 会以 bundle 层的形式把 auto-retry 行插入插件清单): 然后: 重启 DeepSeek Harness (Host 侧插件只在进程内加载一次),再刷新浏览器页面即可。 方式 B:本地 link 开发调试 改完 lib/ 下的文件后刷新页面即可(Client 侧即时生效);Host 侧 lib/index.js 的改动需要重启。 设置项 设置入口: 设置 → 通用 → 断联自动重试 。所有项都实时生效( applies: "live" )。 字段 默认值 含义 graceMs 5000 宽限期:中断后等多少毫秒再自动发送「继续」 cooldownMs 20000 冷却期:同一会话两次自动继续的最小间隔 maxConsecutive 5 最多连续自动继续次数,超过后停下等人工介入 continueText 继续 自动发送的文本内容 scanOnBoot true 页面加载时扫描最近被中断的会话并恢复 freshMs 900000 扫描窗口:只恢复此时间段内被中断的会话(毫秒) verbose true 在浏览器控制台输出 [auto-retry] 调试日志 工作原理 核心逻辑都在 lib/client.js 的 Au…

在 GitHub 查看完整 README →
终端/TUIauto-retrydeepseek-harnessdshdsh-plugin

分类