检测模型死循环并剪枝压缩上下文,自动续跑原任务
30.7/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/29 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add terry2010/dsh-loop-recover该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · other
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 4 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(runtime_smoke_failed · 2026/10/29) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件读取剪贴板或密钥环境变量写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 61 处,展示前 28 条)
- 读取本地文件main.js:104
const value = JSON.parse(readFileSync(join(root, DESKTOP_RUNTIME_FILE), "utf8")); - 删除本地文件main.js:2914
unlink(options) { - 写入本地文件main.js:3323
await rename(temp, filename); - 写入本地文件main.js:3350
await mkdir(dirname(filename), { - 写入本地文件main.js:3356
await writeFile(temp, content, { - 删除本地文件main.js:3362
await rm(temp, { force: true }); - 写入本地文件main.js:3411
mkdirSync(dir, { recursive: true }); - 读取本地文件main.js:3413
if (!existsSync(manifestPath)) { - 写入本地文件main.js:3420
writeFileSync(manifestPath, JSON.stringify(manifest, void 0, 2) + "\n"); - 读取本地文件main.js:3423
if (!existsSync(patchPath)) writeFileSync(patchPath, PROFILE_PATCH_TEMPLATE); - 写入本地文件main.js:3423
if (!existsSync(patchPath)) writeFileSync(patchPath, PROFILE_PATCH_TEMPLATE); - 读取本地文件main.js:3425
if (!existsSync(workspacePath)) writeFileSync(workspacePath, PROFILE_PNPM_WORKSPACE); - 读取本地文件main.js:3438
if (!existsSync(owned)) return; - 删除本地文件main.js:3440
for (const link of symlinksUnder(join(dir, "node_modules"))) if (pointsInto(link, ownedModules)) unlinkSync(link); - 删除本地文件main.js:3441
rmSync(owned, { - 读取本地文件main.js:3449
if (!existsSync(modules)) return links; - 删除本地文件main.js:3621
unlinkSync(lockPath); - 删除本地文件main.js:3631
unlinkSync(lockPath); - 执行外部命令来自配置/变量main.js:3794
const child = spawn(this.node, [ - 发起网络请求main.js:8230
const response = await fetch(url, { redirect: "manual" }); - 发起网络请求main.js:8291
const response = await fetch(target, init); - 执行外部命令来自配置/变量main.js:9344
child = spawn(shell, ["-ilc", DUMP], { - 发起网络请求main.js:9604
const response = await this.request(url, { - 写入剪贴板main.js:10041
await clipboard.writeText(url); - 读取剪贴板main.js:10042
if (await clipboard.readText() !== url) throw new Error("desktop policy: clipboard did not retain download address"); - 发起网络请求main.js:10131
return this.browserSession.fetch(url.href, { - 发起网络请求main.js:12195
welcomeBackend = await connectDesktopWelcome(ready.url, (input, init) => net.fetch(input, init), async () => (await session.defaultSession.cookies.get - 写入剪贴板main.js:12986
await clipboard.writeText(platformLoginUrl(state.attempt.authorizeUrl));
扫描于 2026/11/2(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-compaction@deepseek-ai/cordis@deepseek-ai/dsh-llm@deepseek-ai/dsh-session-format-v3-to-v4@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
README
由 DeepSeek 最新模型翻译生成dsh-loop-recover
English README
DeepSeek Harness 插件:检测模型死循环 → 流内剪枝 → 压缩上下文 → 自动续跑任务。
与只会"打断"的插件不同:循环内容不进会话日志,中毒上下文被检查点摘要物理替换,模型在干净上下文上继续跑同一个任务——不用开新会话。
真机已验证完整链路:检测 → 剪枝 → 压缩(97 条 shadow)→ 续跑 → 任务 completed。
工作流
模型进入死循环 → 流内检测命中 → 剪枝:循环尾巴不写入 session log → 压缩:旧上下文被 surfaceOp replace 整体 shadow,只留检查点摘要 → whenIdle → followup() 注入续跑消息 → 任务继续
检测能力
| 层 | 抓什么 |
| periodic | abc123×N 字面复读 |
| ngram | 64 字符块复现 3+ 次(措辞不同的语义打转) |
| anchor | 大段内容整体重写 |
| charrun | sssssss 单字符坍缩(实义字符 ≥128,---- 等符号不误伤) |
| pool | 短句散布重复(叙事型打转,真实长任务验证) |
| intent | web_search 换措辞搜同一主题 → steer 纠正 |
三种模式
展开完整文档(README 剩余 1 节)
dsh-loop-recover English README DeepSeek Harness 插件:检测模型死循环 → 流内剪枝 → 压缩上下文 → 自动续跑任务。 与只会"打断"的插件不同:循环内容不进会话日志,中毒上下文被检查点摘要物理替换,模型在干净上下文上继续跑同一个任务——不用开新会话。 真机已验证完整链路:检测 → 剪枝 → 压缩(97 条 shadow)→ 续跑 → 任务 completed。 工作流 模型进入死循环 → 流内检测命中 → 剪枝:循环尾巴不写入 session log → 压缩:旧上下文被 surfaceOp replace 整体 shadow,只留检查点摘要 → whenIdle → followup() 注入续跑消息 → 任务继续 检测能力 | 层 | 抓什么 | | periodic | abc123×N 字面复读 | | ngram | 64 字符块复现 3+ 次(措辞不同的语义打转) | | anchor | 大段内容整体重写 | | charrun | sssssss 单字符坍缩(实义字符 ≥128,---- 等符号不误伤) | | pool | 短句散布重复(叙事型打转,真实长任务验证) | | intent | web_search 换措辞搜同一主题 → steer 纠正 | 三种模式 | mode | 行为 | | rescue(默认) | 中断 + 剪枝 + 压缩 + 自动续跑 | | cut | 中断 + 剪枝,不续跑 | | observe | 只记日志不干预(建议先跑观察误伤率) | maxConsecutiveRescues(默认 3)防止无限套娃;正常输出自动重置计数。 安装(桌面版) dsh plugin --profile desktop add github:terry2010/dsh-loop-recover 注意:桌面 app 跑的是 desktop profile,不是 web 重启 app 后,插件列表里出现 loop-recover 即生效。 ⚠️ 冲突说明(必须二选一,否则会互相干扰) | 插件 | 冲突原因 | | dsh-agent-loop-guard / @mrweicodes/dsh-loop-guard | 同时包装 llm/stream:循环触发时两个插件各自截断输出、各发各的 block-end——流被双重切断,session 记录错乱,任务直接失败 | | dsh-client-auto-continue | 重复唤醒:任务暂停时它和本插件的 followup 各自发续跑消息,模型收到两条冲突指令,行为不可预期 | | dsh-session-shift | 职责重叠:它的上下文压力接续(≥60% 自动开新会话)和本插件的压缩续跑会叠加触发——一边压缩一边开新会话 | 建议:想试本插件,先把上面三个都禁用;确认稳定后再决定保留哪个组合。 配置(cordis.patch.yml) - id: loop-recover config: mode: rescue # rescue | cut | observe watch: both # both | reasoning | text maxConsecutiveRescues: 3 retryTemperature: 1.0 # 续跑请求换采样参数,打破确定性复读 retryReasoningEffort: low retryRequests: 1 compactOnRescue: true # 续跑前压缩上下文 detector: runMinChars: 128 # 单字符刷屏阈值 ngramSize: 64 anchorSize: 512 poolMinRepeats: 4 # 散布短句重复阈值 intentEnabled: true 开发 npm install npm test # 46 个单测+集成测 npm run check # 插件加载冒烟 真实死循环样本回归:test/fixtures-real-loop.txt(Ornith 长上下文实采)。 License MIT。检测器/意图检测 vendor 自 dsh-loop-detector(viego-qiin),剪枝/续跑机制移植自 dsh-loop-rescue(citydirector),压缩接力参考 rice-patrol(LeeLizuoLiu)。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
terry2010/dsh-loop-recover
检测模型死循环并剪枝压缩上下文,自动续跑原任务
相关插件 · 其他
模型破甲清洗YuJunZhiXue/dsh-purge
⚔️ DeepSeek Harness 网络安全红队工具dsh-purge
★ 14,822已汉化DeepSeek 客户端
73
逆向分析桥接Fanqi89/dsh-rea
REA(Reverse Engineer Anything)MCP 桥接,用来把 REA 逆向工具接入 DSH 插件
★ 51已汉化DSH
72
红队越狱测试套件Minglink/dsh-infinite-gen-5
DeepSeek v4.1 flash 逆向工具无限五代 求 Star 收藏 ⭐欢迎大家提交项目的改进
★ 3,759已汉化DSH
71.4
语音女友beiyege-01/dsh-voice-ai-girlfriend
语音 AI 女友Voice AI girlfriend for DeepSeek Harness:Whisper…
★ 718已汉化DSH
71.2
协同办公空间dream-num/univer-workspace
一个让人类与 AI Agent 共同创作、协作和审阅的开源 Office 工作空间。
★ 2,261已汉化DSH
70.7
破甲评测WoYun520/dsh-purge
在本机分离宿主拦截与模型拒绝,做受控红队评测
★ 199已汉化DSH
69.7