🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

重启自动续跑 shengyvself/dsh-autoresume

DeepSeek Harnessv0.1.3
shengyvself43 天前有提交已提供中文文档扫描:未发现敏感能力

Web 重启 / 上游故障后自动注入「继续」 —— 会话停在中间态,插件替你接上,不用手动点。

30.5/100
综合分
1
GitHub 星标
212
npm 周下载
—/5
用户评分

数据截至 2026/9/24 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add dsh-autoresume
npm 源 · dsh-autoresume 的发布者账号已校验与本仓库一致

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · chat
装得上吗
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 43 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包dsh-autoresume @ 0.1.3
✓Node 引擎要求 ^22.19.0 || >=24 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/14 18:57:09

安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-agent@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-session@deepseek-ai/dsh-session-persistence
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 重启后自动续跑
  • 上游故障自动续跑
  • 免手动点击继续
v0.1.52026-09-21
· dsh-autoresume v0.1.5 — 缺陷 A/B 修复 两个分类 bug 修复(用户明示「绝对的 bug」): · 缺陷 B:用户手动停止触发自动继续 根因:turn/end kind='aborted' 是驱动主动收尾(cancel 的 finally 写出 turn/end、边界闭合),与「环境杀死进程」(turn/end 缺失、open turn)本质不同。旧分类器见 openStep / 无结果 tool/call 一律判 interrupted 并注入「继续」,等于推翻用户指令。全量取证:133 个 aborted/user 事件全数无悬挂边界——旧代码靠「边界恰好闭合」这一巧合才未误注入,保证脆弱。 修复:① 悬挂边界只在轮次仍打开(openTurn)时计入可继续判据;闭合轮次一律按 turn/end 原因判定。② 新增显式 aborted 分支判 settled(动因 user/disposed),位置在 reasons 判定之后——上一个 aborted 后若又起新轮次并被环境杀死,仍判 interrupted 继续。 顺带消除:闭合轮次 + 悬挂 tool/call 旧判 interrupted 并注入;新按 turn/end 分流(网络 error → network-stopped 不变,completed → 不注入)。 · 缺陷 A:工具调用被中断于「记录为开始」之前自动继续完全不生效 根因:宿主补写 ToolNotStartedError 的 tool/result("interrupted before the Harness recorded it as started. Retry it if it is still needed."),上一条 assistant/message 是未执行的工具请求,轮次并未结束。旧代码见 lastType === 'assistant/message' 一律判 completed,不设例外。 修复:新增 messageHasToolCall(message)——lastType === 'assistant/message' 且不含 tool-call 块时才判 completed;含 tool-call 块落到 open turn 判定接手续跑。 · 验证 · node --check src + lib:通过 · build src → lib:64715 bytes 一致 · tests/manual-stop.test.mjs:12/12 PASS · 全量:26/26 PASS(14 既有 + 12 新增) · 负向对照:回退 3 处改动 → 4 PASS / 8 FAIL(8 项正是缺陷 A/B 回归用例) · 全量回放:147 会话 / 110,439 事件,新旧分类并跑,状态分布完全一致(completed=100, settled=43, interrupted=2, pending-input=2)——零行为回归 · 安装 npm install · 兼容性 · DSH >= 0.1.5-rc.2 · @deepseek-ai/cordis >= 4.0.1 · 配置无变更(未新增配置项) · Asset dsh-autoresume-0.1.5.tgz · 40686 bytes · SHA256 770c75ebd72e16c951215728920f5f5443b696fe1ab3a5db3f16d621f6208dca
v0.1.42026-09-20
· 变更内容 · package.json 版本 0.0.21 → 0.1.4(对齐 npm 序列 0.1.0-0.1.3) · 深色模式自适应横幅,通过 + prefers-color-scheme: dark 实现 · GitHub 社交预览 OG 卡片(1200×630),用于社交分享 · 决策流工作流图(触发 → 分类 → 守卫 → 注入 → 结果) · README.md + README.zh.md 更新为使用横幅 + workflow.svg · 视觉资源 | 资源 | 文件 | 用途 | |---|---|---| | 横幅(浅色) | assets/banner.svg | 主视觉区,浅色主题 | | 横幅(深色) | assets/banner-dark.svg | 主视觉区,深色主题 | | 社交预览 | assets/social-preview.svg | GitHub OG 卡片 | | 工作流 | assets/workflow.svg | 决策流图 | npm 发布:npm publish
v0.0.212026-09-13
· v0.0.21 — 2026-09-13 0.1.5 适配修复:移除 inspect + AgentSetup 回调 + 队列守卫 · 修复内容 · 0.1.5 移除 SessionPersistence.inspect():DSH 0.1.5 删掉了 inspect() 方法。新的 inspectSession() 改用 open('read') + handle.read() 读取会话事件,不破坏持久化约定。 · 0.1.5 AgentSetup 回调签名:回调现在收到 (agentCtx, agent),不再只有 (agentCtx)。修正了 3 处 setup 闭包,改用双参数形式。 · 队列守卫(skipWhenInputPending):收件箱里排着用户消息时,阻止注入自动恢复消息。用持久化的 spliced-inbox 分析 + 实时 agent.inbox 检查。 · 适配 DSH 0.1.5-rc.2 · 会话格式 v3:session.v3.jsonl.zstd(原为 session.jsonl.zstd) · 按代际枚举,取可用的最高格式 · 测试 · tests/inspect-open.test.mjs:4/4 通过(静态守卫 + 端到端) · tests/pending-input.test.mjs:27/27 通过(代际选择、收件箱折叠、队列守卫、回归) · node --check 全部通过,构建 src==lib 已验证 · 安装 [WARN] Tarball 下载平均速度 43 KiB/s(大小 46 KiB),低于 50 KiB/s:(GET) ✓ Lockfile 通过供应链策略检查(1 小时前验证) [WARN] Tarball 下载平均速度 41 KiB/s(大小 46 KiB),低于 50 KiB/s:(GET) Packages: +178 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Progress: resolved 178, reused 176, downloaded 1, added 178, done [WARN] 发现 peer 依赖问题。运行 "pnpm peers check" 查看列表。 dependencies: · dsh-autoresume github:shengyvself/dsh-autoresume Done in 7.7s using pnpm v12.3.4
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。

README

由 DeepSeek 最新模型翻译生成
dsh-autoresume Web 重启 / 上游故障后自动注入「继续」 —— 会话停在中间态,插件替你接上,不用手动点。 English · 中文 你拿到什么 - 🔁 Web 重启自动接续 —— dsh web 重启后,插件扫描全部会话,把被打断的任务自动接上;completed / settled / cancelled 一律不动。 - 🌐 上游瞬时故障自愈 —— 限流(429)、5xx、网络错误(ECONNRESET / timeout)、网关 504、上游 provider 故障——插件注入「继续」让会话自动重跑。 - 💳 余额/配额类识别 —— 402 / QUOTA / insufficient_balance / insufficient_quota 等:首次注入一次(覆盖充值后恢复),再次失败一律转 settled,防无限循环。 - 🛡️ 死循环守卫 —— 注入后若无产出再失败,判定为持续故障,转 settled 交还用户手动处理;会话之后有产出或新用户消息则重新武装。 - 📥 队列守卫 —— inbox 里若有别人(用户/客户端)的挂起消息,插件一律不动作(既不注入也不 resume),避免把用户消息一并唤醒冲进会话。
展开完整文档(README 剩余 1 节)
dsh-autoresume

Web 重启 / 上游故障后自动注入「继续」 —— 会话停在中间态,插件替你接上,不用手动点。

English · 中文

你拿到什么

- 🔁 Web 重启自动接续 —— dsh web 重启后,插件扫描全部会话,把被打断的任务自动接上;completed / settled / cancelled 一律不动。
- 🌐 上游瞬时故障自愈 —— 限流(429)、5xx、网络错误(ECONNRESET / timeout)、网关 504、上游 provider 故障——插件注入「继续」让会话自动重跑。
- 💳 余额/配额类识别 —— 402 / QUOTA / insufficient_balance / insufficient_quota 等:首次注入一次(覆盖充值后恢复),再次失败一律转 settled,防无限循环。
- 🛡️ 死循环守卫 —— 注入后若无产出再失败,判定为持续故障,转 settled 交还用户手动处理;会话之后有产出或新用户消息则重新武装。
- 📥 队列守卫 —— inbox 里若有别人(用户/客户端)的挂起消息,插件一律不动作(既不注入也不 resume),避免把用户消息一并唤醒冲进会话。
- ⏱️ liveWatch 持续监听 —— boot 扫描后保持轮询,补 catch 运行期间再次失败(此前只有 web 重启后一次性生效)。
- 🔢 连续两次自动继续 —— 网络瞬时类(429 / 限流)允许注入 → 败 → 再注入 → 败 → 停,适配长限流窗口场景;余额类保持「一次即停」。
- 🌍 跨平台 —— Linux / macOS / Windows 行为一致(os.homedir() + node:path),路径分隔自动适配。

Install

dsh plugin --profile web add dsh-autoresume

安装后重启 dsh web。插件会在 boot 宽限窗口(默认 30 分钟,可配 bootGraceMs)内自动扫描并注入。

Requires DSH client packages >=0.1.5-rc.2. 依赖 @deepseek-ai/dsh-agent(复用 DSH 运行时同一份,版本零漂移)。

也可以从 GitHub 直装:

dsh plugin --profile web add github:shengyvself/dsh-autoresume

用它能干嘛

装好后,正常用即可——插件在后台自动工作。典型场景:

- "我刚才改了代码重启了 dsh web" —— 插件自动扫描,把被打断的开发会话接上
- "上游模型临时限流了" —— 429 / rate_limit_exceeded 后插件注入「继续」,会话自动重跑
- "刚才那个 504 网关超时" —— 网关 HTML 错误信封递归解包,正确判网络故障,注入「继续」
- "余额不够,充值了" —— 首次 402 注入一次(覆盖充值后恢复),不再次失败时自动转 settled

插件不主动发起任何动作,只在 web 重启或 liveWatch 轮询时判定并注入。

兼容性

| 场景 | DSH 版本 | 插件版本 |
| 推荐 | 0.1.5-rc.2+(当前维护版) | 0.0.21 |
| 最低兼容 | 0.1.5-rc.2+ | 0.0.21 |

安装插件不会升级宿主 DSH。peerDependencies 声明的最低客户端包版本是 >=0.1.5-rc.2,实测在 0.1.5-rc.2 上跑通。

配置

| 键 | 默认 | 说明 |
| targetSessionId | 全域扫描 | 指定会话时只服务该会话(兼容模式) |
| bootGraceMs | 30000(30 分钟) | web 启动后允许判定的宽限窗口 |
| initialDelayMs | 3000 | 首次检查延迟 |
| pollIntervalMs | 5000 | 会话未就绪时的重查间隔 |
| promptText | 继续(自动) | 注入正文 |
| liveWatch | true | boot 后保持轮询补 catch 运行期间再次失败 |
| maxResumeAttempts | 2 | 网络瞬时类连续自动继续次数上限 |
| skipWhenInputPending | true | 队列守卫:inbox 有非我方挂起消息时不注入 |

Security

- 只读会话事件流(ctx.sessionPersistence),不写用户文件。
- 注入的消息以 plugin 身份(source.kind=plugin, form=notice)发送,不伪装用户消息。
- 不联网。除调用 DSH 内部 ctx.agents.get() / agent.followup() 之外,无对外网络请求。
- 死循环守卫 + 余额类防无限循环 + 队列守卫三重保护,避免误伤。

依赖说明

@deepseek-ai/dsh-agent 声明在 peerDependencies(由宿主 DSH 提供)。

⚠️ 已知问题:package.json 的 dependencies 里也列了 @deepseek-ai/dsh-agent: 0.1.1-rc.2——这违反 persona §三.1.3 铁律(官方 @deepseek-ai/* 包只进 peerDependencies)。当前安装方式是手动 symlink 复用 DSH 运行时同一份,避免版本漂移。下一版会清理。

版本历史

完整 changelog 见 CHANGELOG.md。关键里程碑:

- v0.0.21(2026-09-13):自动继续恢复链路修复(0.1.5 inspect() 移除 → 改 open/read/close;AgentSetup 回调签名变更)
- v0.0.19(2026-09-13):队列守卫 + DSH 0.1.5 会话代际适配
- v0.0.18(2026-09-08):连续两次自动继续(商汤日日新裁决)
- v0.0.17(2026-09-02):tpm/rpm 限流识别
- v0.0.16(2026-09-01):启动崩溃修复(防御 getAgent())
- v0.0.15(2026-09-01):402/400/中文瞬时可继续 + 余额类防无限循环
- v0.0.13(2026-08-31):OpenRouter 上游 provider 故障识别
- v0.0.12(2026-08-31):504/网关超时递归信封解包
- v0.0.9(2026-08-24):liveWatch + 死循环守卫
- v0.0.8(2026-08-24):网络故障停止识别

构建与开发

npm run build
npm test

License

Apache License 2.0 © shengyvself
预览分享卡片长什么样 ↓shengyvself/dsh-autoresume
分享 · DeepSeek Harness Hub
shengyvself/dsh-autoresume

Web 重启 / 上游故障后自动注入「继续」 —— 会话停在中间态,插件替你接上,不用手动点。

这是你的仓库?认领条目

回到顶部