jiay98528-dev/dsh-plugin-weaknet-adaptor ↗★ 0
dsh-plugin-weaknet-adaptor
DeepSeek Harness 弱网适配插件:提供模型流长退避重试、本地响应缓存、心跳自动重连及降级省 Token 模式。
AI 分析
核心用途是提升网络不稳定环境下的使用体验,防止因断网导致会话中断。适合网络环境较差、经常遇到连接超时或需要节省 Token 的用户。支持双语设置页。
安装
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:jiay98528-dev/dsh-plugin-weaknet-adaptor说明文档
阅读完整 README ↗⚙️ Configuration / 参数配置
All parameters can be changed live from Settings → Weak Network(设置 → 弱网适配).
Changes persist best-effort to /.dsh/weaknet-params.json.
| 组 Group | 参数 Key | 类型 Type | 默认 Default | 说明与预期效果 Description & expected effect |
|---|---|---|---|---|
| 总开关 Master | enabled | boolean | true | 总开关;关闭后完全恢复原生流程。Master switch; off restores the native flow entirely. |
| 网络探测与心跳 Probing & heartbeat | probeUrl | string | https://www.gstatic.com/generate_204 | 心跳探测地址;任意 HTTP 响应(含非 2xx)视为可达。Probe URL; any HTTP response (incl. non-2xx) counts as reachable. 内网/代理环境请改内网轻量端点。 |
probeTimeoutMs | number | 5000 | 探测超时(500–60000)。调小判定更快但高延迟易误报。Probe timeout; smaller = faster detection, larger = fewer false positives. | |
probeMode | enum | fetch | fetch(web 服务探测)/ off(仅被动恢复)。off 用于无 fetch provider 的环境。 | |
heartbeatBaseIntervalMs | number | 1000 | 探测失败后的初始间隔(200–60000)。Heartbeat base interval. | |
heartbeatMaxIntervalMs | number | 600000 | 重连最长等待(10 分钟)(10000–3600000)。间隔指数增长到此封顶。Longest reconnect wait (10 min) — the interval caps here. | |
heartbeatBackoffFactor | number | 2 | 探测间隔倍增系数(1.1–5);抖动频繁建议接近 1.1。 | |
successThreshold | number | 1 | 连续成功多少次判定恢复(1–10);波动网络建议 2–3。 | |
criticalFailures | number | 3 | 连续失败达到该次数状态变红(离线告警),此前为黄(弱网)。 | |
| 请求重试 Request retry | maxAttempts | number | 10 | 单个请求最大重试次数(1–100);超限按原流程终止,消息不丢。 |
backoffBaseMs | number | 1000 | 重试基础退避(100–60000)。 | |
backoffMaxMs | number | 600000 | 重试退避上限(1000–3600000)。 | |
backoffFactor | number | 2 | 重试退避倍增系数(1.1–5)。 | |
jitterRatio | number | 0.2 | 退避抖动(0–0.5);多会话并发建议 ≥0.2 避免重试风暴。 | |
retryableCodes | string[] | TRANSPORT, TIMEOUT, STREAM_CLOSED, EMPTY_RESPONSE, MALFORMED_RESPONSE | 视为网络故障的错误码;供应商自定义码可追加。 | |
retryStatuses | number[] | 429, 500, 502, 503, 504 | 视为可重试的 HTTP 状态;勿加入 4xx 认证错误。 | |
| 本地缓存 Local cache | cacheEnabled | boolean | true | 完整成功响应缓存;命中零 token 重放。 |
cacheMaxEntries | number | 50 | LRU 条目上限(1–1000)。 | |
cacheMaxAgeMs | number | 600000 | 缓存有效期(1000–86400000)。 | |
| 降级省 token Economy | reduceMaxTokens | number|null | null | 降级期间输出 token 上限(100–128000);留空不限制。建议从 2000 起步。 |
pruneToolResults | boolean | false | 降级期间对会话 tool-result 确定性裁剪(不可逆),长任务接近上下文上限时开启。 | |
| 界面 UI | showStatusDock | boolean | true | composer 底部信息栏显示网络状态(绿=正常、黄=弱网、红=中断)。 |
statusPollMs | number | 5000 | 状态轮询间隔(1000–60000)。 | |
| 存储 Storage | persistParams | boolean | true | 参数 best-effort 持久化;写失败静默回退内存。 |