minyang2020/dsh-migrate-on-429
minyang2020★ 0JavaScript最后同步: 2026-08-22
DeepSeek Harness (dsh) plugin: automatic session handoff when a session keeps hitting 429 TPM rate limits — cancel old, summarize handover, continue in a fresh session. True handoff, never parallel.
README 摘要
dsh-migrate-on-429 中文 · English DeepSeek Harness (dsh) 插件:当会话 频繁触发 429 TPM 限流 (通常因为上下文过长,每次请求携带超大输入)时,自动 总结当前会话并迁移到新会话继续任务 —— 先取消旧会话、再启动新会话,保证 交接而非并行 。 旧插件 dsh-auto-continue-429 只会反复发 continue 重试(每次 continue 都重新发送全部超大上下文 → 继续 429 → 纯烧额度)。本插件是它的超集:阈值前照常自动 continue 重试,仍持续失败就真正"换一个干净会话"续跑。 工作原理 1. 检测 :监听 agent/request-error (请求级, prepend 优先于 dsh-llm-retry)与 session/event 的 turn/end ,统计 RATE LIMIT (429)/ QUOTA / CONTEXT WINDOW EXCEEDED 失败。 2. 阈值前 :按退避延迟自动向当前会话发 continue (与旧插件行为一致)。 3. 达到阈值(默认 3 次连续失败) : - agent.cancel() 中止旧会话运行中的轮次并清空收件箱 —— 先停旧的 ; - 等待旧会话 whenIdle() 真正空闲 —— 确保不并行 ; - 从会话事件日志生成 交接摘要 (结构化提取:原始任务 / 用户后续指示 / 助手最近输出 / 涉及文件 / cwd / 预设 / 模型;可选再尝试一次 LLM 精炼,失败自动回退结构化); - 交接文档写入 /.dsh/migrations/ - .md ; - ctx.agents.create() 创建 全新会话 (沿用同 cwd / 同 agent preset / 同模型,完整装配工具与系统提示),把"交接总结 + 原任务 + 继续规则"作为首条用户消息注入 —— 新会话自动出现在 Web UI 侧边栏,从尚未完成的部分继续; - 旧会话永久解除武装(不再自动 continue),并追加一条可见说明。 配置 配置文件 /.dsh/migrate-on-429.json (可在 Web 设置页「429 自动迁移」tab 里改;也可用环境变量 DSH MIGRATE ON 429 CONFIG 重定向到其它路径,便于测试/多 profile 隔离): 键 默认 说明 enabled true 主开关 quickOn true 对话框快捷开关(与主开关独立) migrateThreshold 3 连续失败达到此数触发迁移(2–50) windowMs 180000 请求级 429 滚动统计窗口(30s–1h) llmSummary true 尝试 LLM 精炼交接摘要(失败自动回退结构化) continu…
在 GitHub 查看完整 README →分类
DeepSeek Harness: Everything is a Plugin.
★ 182,325
amruthpillai/reactive-resumeA one-of-a-kind resume builder that keeps your privacy in mind. Completely secure, customizable, portable, open-source and free forever. Try it out today!
★ 41,477
anywhere-labs/deepseek-harness-desktop为 DeepSeek Harness (DSH) 插件生态打造的现代化桌面端解决方案。万物皆「插件」,桌面本身也是「插件」。
★ 17,784