🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

消息合并防抖 praystring/dsh-send-debounce

DeepSeek Harness
praystring34 天前有提交已提供中文文档扫描:未发现敏感能力

把连发的短消息合并成一轮,只唤醒模型回复一次

30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/1 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查未通过:要求 dsh >=0.1.5-rc.2 <0.2.0-0 || >=0.1.6-alpha.1 <0.2.0-0 || >=0.1.7-alpha.1 <0.2.0-0,而最新版为 0.2.1-rc.2。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add praystring/dsh-send-debounce
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么
dsh 原生插件 · other
装得上吗
实装验证未通过(unknown),装前请到仓库确认最近更新与 issue
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 34 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
⚠︎ 实装验证未通过(unknown · 2026/10/1) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装

要求 dsh >=0.1.5-rc.2 <0.2.0-0 || >=0.1.6-alpha.1 <0.2.0-0 || >=0.1.7-alpha.1 <0.2.0-0,而最新版为 0.2.1-rc.2

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-send-debounce(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=22.5 · 基线 Node 22.19 满足
✗dsh CLI 依赖要求 >=0.1.5-rc.2 <0.2.0-0 || >=0.1.6-alpha.1 <0.2.0-0 || >=0.1.7-alpha.1 <0.2.0-0 · 最新 0.2.1-rc.2 不兼容
✓入口文件main/exports/bin 已声明

源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/20 04:30:07

安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/dsh
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 合并连发短消息
  • 只唤醒模型回复一次

把聊天框里连发的几条短消息合并成一轮后再唤醒模型(DSH 插件)

README

由 DeepSeek 最新模型翻译生成
dsh-send-debounce 给 DSH 的「连发消息」加一层缓冲:用户在聊天框里一句接一句地发,中间不产生 N 次唤醒/回复;停手若干秒后,这几条合并成一轮送进模型,只回一次。 英文说明见 README.en.md。 / English: see README.en.md. 它做什么 - 拦截点:服务端每个 agent 的 followup()(@deepseek-ai/dsh-agent-loop)。 - 用户消息立刻进排队区(网页上看得到),但先不唤醒模型。 - 默认静默 5 秒;期间每来一条短消息就重置计时。 - 到点后把这一批合并成一条消息,再唤醒一次。 - 长消息(默认 ≥120 字)或带图片/附件的消息立即发出,不延迟。 - steer()(插话)和 agent.followup 的插件来源(如 dsh-proactive、dsh-tick)不受影响。
展开完整文档(README 剩余 1 节)
dsh-send-debounce

给 DSH 的「连发消息」加一层缓冲:用户在聊天框里一句接一句地发,中间不产生 N 次唤醒/回复;停手若干秒后,这几条合并成一轮送进模型,只回一次。

英文说明见 README.en.md。 / English: see README.en.md.

它做什么

- 拦截点:服务端每个 agent 的 followup()(@deepseek-ai/dsh-agent-loop)。
- 用户消息立刻进排队区(网页上看得到),但先不唤醒模型。
- 默认静默 5 秒;期间每来一条短消息就重置计时。
- 到点后把这一批合并成一条消息,再唤醒一次。
- 长消息(默认 ≥120 字)或带图片/附件的消息立即发出,不延迟。
- steer()(插话)和 agent.followup 的插件来源(如 dsh-proactive、dsh-tick)不受影响。

配置(环境变量,改完重启 dsh 生效)

| 变量 | 默认 | 含义 |
| DSH_SEND_DEBOUNCE | 开 | off / 0 / false / no 一键关闭 |
| DSH_SEND_DEBOUNCE_MS | 5000 | 静默时长(毫秒);0 等于关闭延迟;非法值退回默认 |
| DSH_SEND_DEBOUNCE_MAX_CHARS | 120 | 「短话」上限;0 = 一律延迟;非法值退回默认 |

安装

从 npm(公开包):

dsh plugin --profile web add dsh-send-debounce

从本地目录(自用/开发):

dsh plugin --profile web add file:/path/to/dsh-send-debounce

装完把 dsh-send-debounce 加进该 profile 的 dsh.profile.bundles(cordis.patch.yml 就是这一层),然后重启并确认网页还在:

dsh --profile web --dump-config | grep -n dsh-send-debounce
sudo systemctl restart dsh
curl -s -o /dev/null -w '%{http_code}\n' http://127.0.0.1:3080/

安全边界(很重要)

这个插件的原则是只做缓冲,别的什么都不碰:

- 只处理网页用户自己发的消息(message.source.kind === "user")。插件来源的消息(dsh-proactive、dsh-tick 等)原样放行,否则会卡住它们的 whenIdle()。
- 不碰 steer()(插话),也不主动修改会话历史;只把自己入队的那几条消息在到点后合并成一条,交给原生 followup()。
- 长消息和带附件/图片的消息立即发出,绝不延迟,避免大段内容被拖着。
- 原文不改写:合并只是在两条消息之间插入空行,保留各自原文与顺序。
- 任何异常都退回原生行为:读队列失败、合并失败、发送失败都会被 try/catch 兜住,逐条补发或直接放行,不让聊天框卡住。
- 不联网、不读工作区、不写文件、不读环境里的密钥:只读三个 DSH_SEND_DEBOUNCE 配置项。
源码全部在 index.mjs,可自行核对。

已知限制

- 静默期是进程内定时器:dsh 在合并触发前重启,这批消息仍持久化在会话里,但不会自动被唤醒*,要等下一条消息进来(或手动触发)才会继续。重启前请等几秒让缓冲落地。
- 环境变量改动需重启 dsh,不支持热更新。
- 长短按字符数判断,不看语义;一句很短但很急的话也会被缓 5 秒。
- 合并后模型看到的是合并文本,不再区分原来是几轮输入;原始入队记录仍在会话的 inbox 事件里,但这只对排查有用。
- 只在服务端生效(手机浏览器同样受益),不改变前端界面。

回滚

按 profile 备份还原:

cp ~/.dsh/profiles/web/package.json.bak- ~/.dsh/profiles/web/package.json
sudo systemctl restart dsh

或只把 dsh.profile.bundles 里的 dsh-send-debounce 删掉再重启即可完全卸载(卸载会清掉定时器并恢复原生 followup())。

自测

不需要 dsh 环境,直接用 Node 跑:

npm test # 等价于 node test.mjs

覆盖:连发合并、长消息直发、插件来源直通、图片直发、间隔超时各成一轮、卸载恢复、关闭开关、配置解析与非法值兜底、重复安装/卸载、agent 销毁清定时器、纯函数。

许可证

MIT,见 LICENSE。
预览分享卡片长什么样 ↓praystring/dsh-send-debounce
分享 · DeepSeek Harness Hub
praystring/dsh-send-debounce

把连发的短消息合并成一轮,只唤醒模型回复一次

这是你的仓库?认领条目

回到顶部