dsh-image-count-guard
在终端中运行以下命令:
dsh plugin install MacilyDots/dsh-image-count-guard
将以下提示词粘贴到 DeepSeek Harness 对话框中:
在 DeepSeek Harness 中执行 dsh plugin install MacilyDots/dsh-image-count-guard 安装本插件(源码:https://github.com/MacilyDots/dsh-image-count-guard),安装后请重启 DSH。
插件介绍
在 DSH 里切到视觉模型时,上游网关往往会对「单次请求里能带多少张图」设硬上限(例如 OpenCode Go 上常见为 20 张)。而 dsh-llm-pi-ai 适配器默认只按 base64 体积做预算,并不按张数裁剪,于是会话里图片会一路堆到几十张:总字节仍低于默认上限,却在发请求时被网关直接拒掉。
dsh-image-count-guard 就是这类场景的兜底:当错误信息表明是「图片数量超限」时,它按张数从会话历史里卸载较早的图片,让下一次请求能继续走通。卸载遵循官方 image/offload 语义——被卸下的图会变成占位说明(仍可只读引用附件),需要时再让模型调用 read_image 即可。
插件通过 Cordis 锁文件里的结构锚点挂载,不依赖其它插件是否安装,也不绑定本机路径;DSH 主目录取自 $env:DSH_HOME,否则回退到用户目录下的 .dsh。若网关换了英文报错措辞,可在 src/index.js 的 LIMIT_PATTERNS 里补充匹配规则,并重新执行 install.ps1 同步到 node_modules。
适合经常在同一会话里贴图、截图或附件、且已启用视觉模型的工作流用户:尤其是「张数超限但总字节不大」、仅靠收紧字节预算仍拦不住的情况。安装后需重启 DSH;卡在超限的会话里发 continue,插件生效后通常会记录 image/offload 事件并成功发出下一请求。
使用场景
- 切换到视觉模型后请求因单次图片张数超限被拒
- 会话里图片很多但总 base64 仍低于字节预算
- 卡在超限错误的会话里需要继续对话
适合人员
- 在 DSH 中频繁使用视觉模型的用户
- 同一会话里大量贴图或截图的 Agent 工作流
- 遇到网关张数上限而非体积上限问题的开发者