会话重试加固 bainianlaoyao/dsh-session-robustness
DeepSeek 客户端v0.1.6官方重试耗尽后继续重跑瞬时失败请求,直到成功或取消
29.7/100
综合分
3
GitHub 星标
189
npm 周下载
—/5
用户评分
数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/bainianlaoyao/dsh-session-robustness.git状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
生态插件
可安装,未声明 dsh 能力
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 50 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包dsh-session-robustness @ 0.1.6
✓Node 引擎要求 >=20 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/9/21 23:54:28
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
发起外部网络请求
查看扫描证据(共 1 处,展示前 1 条)
- 发起网络请求lib/client.js:49
return fetch("/session-robustness/api/" + method, {
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 重试瞬时失败请求
- 官方重试后继续重跑
- 支持取消或暂停
DSH 插件:官方 llm-retry(n/5)之后,对同一个未完成步骤的临时 API 失败继续重试,直到成功、取消或暂停。
README
由 DeepSeek 最新模型翻译生成dsh-session-robustness
工程级会话鲁棒:当一次 turn 的模型请求因 超时 / 传输 / 限流 / 5xx / 空响应 / SSE 断流 失败时,不要在官方默认的「再试五次」之后把会话掐死,而是 继续重试直到成功、你取消、或你暂停。
这不是客户端发「继续」续跑,也不是换模型。它接在官方 dsh-llm-retry 后面,在同一个打开的 step 上重跑同一条请求。
为什么需要它
DSH 已经有官方重试执行器 @deepseek-ai/dsh-llm-retry:
- 挂在 host 组合里(dsh-base 已启用)
- 策略写在每个 provider 的 retryPolicy 上
- 省略时是 mode: normal,默认 maxRetries = 5
- 合格 code:EMPTY_RESPONSE / RATE_LIMIT / SERVER / TIMEOUT / TRANSPORT(官方);本插件额外无条件覆盖 STREAM_CLOSED / MALFORMED_RESPONSE / STREAM / HTTP_408 / HTTP_409 / HTTP_425 / HTTP_429 / HTTP_499 / HTTP_5xx
展开完整文档(README 剩余 1 节)
dsh-session-robustness
工程级会话鲁棒:当一次 turn 的模型请求因 超时 / 传输 / 限流 / 5xx / 空响应 / SSE 断流 失败时,不要在官方默认的「再试五次」之后把会话掐死,而是 继续重试直到成功、你取消、或你暂停。
这不是客户端发「继续」续跑,也不是换模型。它接在官方 dsh-llm-retry 后面,在同一个打开的 step 上重跑同一条请求。
为什么需要它
DSH 已经有官方重试执行器 @deepseek-ai/dsh-llm-retry:
- 挂在 host 组合里(dsh-base 已启用)
- 策略写在每个 provider 的 retryPolicy 上
- 省略时是 mode: normal,默认 maxRetries = 5
- 合格 code:EMPTY_RESPONSE / RATE_LIMIT / SERVER / TIMEOUT / TRANSPORT(官方);本插件额外无条件覆盖 STREAM_CLOSED / MALFORMED_RESPONSE / STREAM / HTTP_408 / HTTP_409 / HTTP_425 / HTTP_429 / HTTP_499 / HTTP_5xx
所以一次 TIMEOUT 通常是:界面「已重试模型请求 (n/5)」,5/5 之后 agent/request-error 不再返回 { kind: 'retry' },loop 把失败当成终态,turn 结束。
官方也有 retryPolicy.mode: always(无次数上限、连 AUTH/QUOTA 也会一直重)。本插件 不走那条路:永久错误等也没用,无限重试会把会话挂死并烧钱。本插件只覆盖瞬时 API 失败。
行为
adapter 流失败 → agent/request-error waterfall → compaction(只处理 CONTEXT_WINDOW_EXCEEDED) → dsh-llm-retry(normal:合格 code 最多 5 次) → 本插件(官方预算耗尽后,瞬时失败继续重试)
- 每次重试都在 同一个打开的 turn / 同一个 step 上重跑,失败分片不会进入模型可见历史
- 退避:指数 + 抖动;提供方 Retry-After 在上限内优先
- 用户点 Stop / 取消 turn:立即停止
- 设置页可暂停 / 关闭,不必卸插件
- 父会话和 in-process 子 agent 共用 host 上的 agent/request-error waterfall,都会接管。进程外 / ACP 子 agent 不会。
永不重试:AUTH、MISSING_CREDENTIAL、INVALID_CREDENTIAL、QUOTA、CONTEXT_WINDOW_EXCEEDED、NO_ADAPTER、ABORTED。上下文溢出仍交给官方 compaction。用户 Stop 不会被重试。
0.1.3 起,能进 agent/request-error 的网络失败一律无条件重试,不再依赖文案:SSE 对端关闭(STREAM_CLOSED,例如 ended without [DONE])、半截 JSON(MALFORMED_RESPONSE)、Responses 未识别流失败(STREAM)、HTTP 408/409/425/429/499/5xx。0.1.5 起还包括适配器原样透传的 stream_read_error,以及网关文案 Upstream request failed(pi-ai 常落成 PI_AI_ERROR)。PI_AI_ERROR / UNKNOWN / 未知码仍用文案启发式(Codex overloaded、Upstream request failed 等)。HTTP_400 / INVALID_REQUEST / CONTENT_FILTER 仍不重试。
进不了 waterfall 的失败本插件也接不到:prepareCall 抛错、标题/摘要走的 ctx.llm.stream()、工具调用失败。
0.1.6 起,只对 openai-codex:流失败后丢掉该会话的 WebSocket 续写(previous_response_id)。pi-ai 的 websocket-cached / auto 会把失败流上的 response.id 当成续写锚点,API 已经恢复也会一直钉在那个不完整的响应上。官方那 5 次重试也会清(只观察 llm/stream,不在流内重试)。成功回合的续写保留;服务端 prompt cache 和会话历史不受影响。其它 provider 不动。
Codex overloaded 为什么也要覆盖
openai-codex 走 pi-ai。上游 SSE 事件 error / response.failed 会变成:
Codex error: Our servers are currently overloaded. Please try again later.
pi-ai 的 classifyPiAiError() 只认 HTTP 状态码和少数关键词,不认 overloaded,于是失败码落成兜底的 PI_AI_ERROR。官方 dsh-llm-retry 只重试那 5 个标准码,本插件原先也只看码表,所以这条瞬时失败会直接变成「本轮运行失败」。
0.1.2 起:PI_AI_ERROR / UNKNOWN 若文案明显是瞬时故障(overloaded、try again later、service unavailable 等),也会继续重试。AUTH / QUOTA 等永久码仍优先,即使文案里写了 try again。
安装
dsh plugin --profile web add dsh-session-robustness
或从 GitHub:
dsh plugin --profile web add github:bainianlaoyao/dsh-session-robustness
包声明了 dsh.bundle.patch + dsh.client。安装后重启 web profile,设置页会出现 会话鲁棒性。
本地开发(本仓库):
dsh plugin --profile web add D:/Data/DEV/dsh/dsh-session-robustness
使用
1. 打开 设置 → 会话鲁棒性
2. 默认已启用、次数上限 0(无限)
3. 官方还在重试时,聊天里是「已重试模型请求 (n/5)」——这时还没轮到本插件
4. 5/5 之后 composer 上方会出现「官方 5 次已用完,正在接管第 N 次」,可当场暂停
5. 需要硬上限时把「次数上限」改成正整数(这是 官方 5 次之后 的额外次数)
也可直接写 $DSH_HOME/settings.yaml:
session-robustness:
enabled: true
paused: false
maxRetries: 0 # 0 = 无限(官方 5 次之后) initialDelayMs: 1000 maxDelayMs: 30000 jitterRatio: 0.2
extraRetryableCodes: [] # 例如 INVALID_REQUEST;永久错误仍会被拒绝
不是什么
- 不是 dsh-client-auto-retry:那个在 turn 已经结束 后自动发「继续」
- 不是 retryPolicy.mode: always:那个会重试 AUTH/QUOTA
- 不是改官方 npm 包:升级不会被覆盖
- 不包装 ctx.llm.stream():原始流无法持久区分已发出的分片
卸载
dsh plugin --profile web remove dsh-session-robustness
设置里的 session-robustness 段会留在 $DSH_HOME/settings.yaml;不需要了就手动删。
开发与测试
npm test # 静态冒烟:waterfall 接管、永不重试码、HTTP JSON 桥
相关插件
同一作者的其它 dsh 插件,均已收录于 dsh 插件市场:
- dsh-codex-mode —— 面向 GPT 系模型的 Codex 形状编码预设:exec_command / write_stdin / apply_patch / view_image、OpenAI Chat Completions 与 Responses 两条路由,外加图形化子代理类型。
- dsh-llm-api-pool —— 聚合多个 OpenAI 兼容 API key,按余额热切换。
- dsh-bash-on-windows —— 让 Git Bash 成为 Windows 上唯一且名副其实的终端工具。
- dsh-easy-archive —— 工作区侧边栏行内两步归档会话。
License
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
bainianlaoyao/dsh-session-robustness
官方重试耗尽后继续重跑瞬时失败请求,直到成功或取消
相关插件 · 其他
模型破甲清洗YuJunZhiXue/dsh-purge
⚔️ DeepSeek Harness 网络安全红队工具dsh-purge
★ 16,148已汉化DeepSeek 客户端
73
女娲蒸馏alchaincyf/nuwa-skill
输入名人名字,提炼其思维模型与决策方式供你调用
★ 37,308已汉化DSH
72
逆向分析桥接Fanqi89/dsh-rea
REA(Reverse Engineer Anything)MCP 桥接,用来把 REA 逆向工具接入 DSH 插件
★ 51已汉化DSH
72
语音女友beiyege-01/dsh-voice-ai-girlfriend
语音 AI 女友Voice AI girlfriend for DeepSeek Harness:Whisper…
★ 888已汉化DSH
71.6
红队越狱测试套件Minglink/dsh-infinite-gen-5
DeepSeek v4.1 flash 逆向工具无限五代 求 Star 收藏 ⭐欢迎大家提交项目的改进
★ 3,759已汉化DSH
71.4
协同办公空间dream-num/univer-workspace
一个让人类与 AI Agent 共同创作、协作和审阅的开源 Office 工作空间。
★ 2,266已汉化DSH
70.7
这是你的仓库?认领条目