失控回合硬止损:拦截同一工具+同一参数的重复调用,单轮步数或时长超预算即结束本轮。
安装
# Release 预构建包
dsh plugin --profile web add "https://github.com/ikta2010/dsh-loop-breaker/releases/latest/download/dsh-loop-breaker.tgz"
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:ikta2010/dsh-loop-breaker
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
硬止损插件:同一工具 + 同一参数反复调用时,直接中断本轮。
为什么需要
2026-09-13 从真实会话日志实测:
- 单个 turn 最多跑出 337 步
- 同一条命令被重复调用 120 次 / 85 次
- dsh 自带的
repeat-tool-reminder只提醒、不中断 dsh-agent-loop只暴露maxParallelToolCalls,没有步数上限
结果就是"跑四小时 / 最后只能 /stop"。
实现
用两个上游扩展点:
| 钩子 | 作用 |
|---|---|
tools/post-execute(waterfall) |
计数;超限时返回 {kind:'block', feedback, additionalContexts} 否决该次结果并注入可见说明 |
agent/pre-step(waterfall) |
返回 {kind:'reject'} 让下一步不进入 → 本轮结束 |
判定键是「工具名 + 参数规范化后的 JSON」,所以正常干活(每次不同命令)不会误伤。
配置
- id: loop-breaker
name: 'dsh-loop-breaker'
config:
consecutiveLimit: 4 # 连续重复多少次硬止损
totalLimit: 12 # 单轮内累计多少次硬止损
include: [] # 只统计这些工具(空=全部)
exclude: [] # 排除这些工具
argumentsPreviewChars: 400
安装
bash /nas/dsh/工具/dsh-loop-breaker/install.sh
装完需要重启一次 dsh web 才会加载(会短暂断开网页,会话不丢):
dsh-restart
卸载
dsh plugin --profile web remove dsh-loop-breaker
rm -rf ~/.dsh/profiles/web/node_modules/dsh-loop-breaker
链接
同类插件
DayuanJiang/next-ai-draw-io#dsh-plugin★ 36599
dsh 的 draw.io 绘图插件:通过 next-ai-drawio MCP 服务器作图,点回复里的链接在右侧栏打开实时预览,可以手动修改图,AI 的每次修改都是可以恢复的版本。需 Node.js 18+,首次使用由 npx 下载 MCP 服务器。
Tencent/WeKnora#dsh-weknora★ 36302
把 WeKnora 知识库接入 dsh 的四个只读工具:列出知识库、混合检索原文片段、按顺序还原单篇文档,以及直接取用 WeKnora 自己带引用的 RAG 或 ReAct agent 回答(含可续聊的 session id)。
superdesigndev/treg★ 7042
给 Agent 的工具目录:按「要做的事」检索约 2,600 个外部接口(SEO 与 SERP、外链、社交、人物与公司信息补全、广告库、抓取),查看参数与单次调用价格后直接调用,凭据由服务端注入。附带技能,MCP 行在未设置 TREG_TOKEN 前保持禁用。
T-Auto/dsh-ops★ 5074
为 Windows 的 DSH 提供 bash、PowerShell 7 及 Rust 高性能工具,减少 token 消耗。
sixtysevenlf/dsh-blender-plugin★ 1575
让 DSH agent 通过直连 TCP 通道驱动本地 Blender,提供 15 个工具:视口帧、自定义视角渲染、Python 执行、无头与作业卸载、事务回滚,以及 34 个 family / 228 个 op 的规划层。
TencentCloudBase/CloudBase-AI-Toolkit#dsh-plugin★ 1155
把腾讯云 CloudBase 后端接入 DeepSeek Harness——在对话里搭好并部署全栈应用,查询结果渲染为表格卡片(分页、排序、导出 CSV),部署后可预览真实域名,并提供 CloudBase MCP 工具集(`mcp__cloudbase__*`),登录走 device-code 流程。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。