dsh-request-manager
管理Deepseek Harness的LLM API请求策略的实用插件。/ Practical plugin for managing LLM API request sending policies for DeepSeek Harness.
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 21, 2026
- Updated
- Aug 21, 2026
Introduction
dsh-request-manager
中文 | English
管理 DeepSeek Harness 的 LLM API 请求策略,修改默认的请求行为策略。
插件在会话区顶部加入了「请求管理」按钮,点击打开「请求管理面板」。所有设置全局生效、跨会话共享,无需独立开关——每个功能由其配置值决定是否介入。

功能
请求额外间隔
在每个 API 请求之间插入额外的延时(毫秒)。各会话的首个请求不等待,自动与手动重试同样生效;0 = 不介入。
重试次数
修改默认 API 请求失败后的自动重试次数(DSH 当前版本默认 5 次),留空 = 不覆盖。某些类型的 API 请求失败 DSH 默认不会重试(例如 SSE stream ended without [DONE]、NETWORK ERROR 等),本选项不影响这类失败的重试策略。
拦截「请求失败」
API 请求失败后,请求管理面板自动展开,显示拦截的失败请求处理方式卡片:

- 🔁 重试:原地重发同一请求(仍受额外间隔约束);若再次失败会再次显示,可反复重试。
- 🚩 放弃:按 DSH 原生路径终结该轮。
本选项对 DSH 默认不会重试的失败也统一生效。超时时长(秒)与超时动作可配置:超过设定时长后按所选动作自动重试或自动放弃,0 = 不启用超时;点击停止或销毁会话会立即放行。选择「自动重试」时,持续失败的请求会按超时周期反复重发。
安装方法
dsh plugin --profile web add github:tree-func/dsh-request-manager
安装后重启 DSH 进程生效。
卸载方法
dsh plugin --profile web remove dsh-request-manager
架构
单包 bundle 插件,host 与 client 两半:
dsh-request-manager/
├── package.json # dsh.bundle.patch + dsh.client.platform: web 声明
├── cordis.patch.yml # 在 profile root 层插入本 bundle
├── index.js # host 半边
└── client.js # 浏览器半边
- host(index.js):以 bundle 形式挂在 web profile 根层,在 root 层监听所有会话的
agent/request(插入额外间隔)与agent/request-error(重试次数覆盖、拦截挂起)事件;并注册/reqmgr-api常驻路由,供浏览器读写全局配置、提交拦截决议。 - client(client.js):经官方 ModuleLoader 加载,向
conversation.session.header.utilities槽位注册「请求管理」按钮与下拉面板;每秒轮询拦截挂起状态,样式全部使用--dsw-*语义令牌以适配浅色/深色主题;配置经浏览器 localStorage 持久化,页面加载时自动恢复到宿主。
已知局限
- 会话之间相互隔离:失败拦截的提示(按钮警示圆点、自动展开的面板)只出现在发生失败的那个会话里;停留在其他会话时不会收到任何提示。若长时间不切回,该挂起会按超时设置被自动重试或放弃。
本地化
界面文案经官方 locale 服务注册词典(命名空间 requestManager),跟随 DSH 语言设置在中英文间自动切换。
构建方法
本插件为纯 JavaScript,源码即产物,无需构建步骤:
npm test # 语法校验(node --check index.js && node --check client.js)
开发期迭代:修改 client.js 后刷新浏览器页面即可;修改 index.js 需重启 DSH 进程。
许可证
本插件使用 AI 辅助制作。