dsh-web-notification:DSH Web 的模型回复通知插件

前言

使用 DeepSeek Harness(DSH)Web GUI 时,模型回复完成后的状态提示不一定足够明显。尤其当页面失去焦点或切到其他标签页时,很难第一时间知道本轮回复已经结束。

dsh-web-notification 是一个面向 DSH Web 端的小型插件,用来在模型完成回复时显示系统级 Web 通知。

这是什么

dsh-web-notification 的核心定位是:在 DeepSeek Harness Web GUI 中,模型完成回复时显示系统级 Web 通知。

它面向 Web profile 使用,许可证为 MIT。GitHub 仓库为:

https://github.com/2h0n/dsh-web-notification

核心功能

下面是已核实的运行时行为:

  • 每次模型完成回复时触发系统级 Web 通知,标题为 🐳 Model Replied,正文为本轮用户消息。
  • 无用户消息时,通知正文回退到会话标题。
  • 启动时及首次用户交互时自动请求通知权限;Safari 中请求权限需要用户手势。
  • 按轮次去重,避免同一回复重复通知。
  • 不注入可见 UI 元素。
  • 多会话的回复会各自触发通知。
  • 通知使用唯一 tag:dsh-reply-done-<sessionId>-<turn>,并设置 renotify: true
  • 构建侧通过 build.mjssrc/client/index.js 打包为浏览器 bundle,并以 __ModuleLoader__ 握手格式加载。

安装与启用

先安装指定版本压缩包到 web profile:

npx @deepseek-ai/dsh plugin --profile web add https://github.com/2h0n/dsh-web-notification/archive/refs/tags/v0.1.0.tar.gz

安装完成后重启 Web:

npx @deepseek-ai/dsh web

建议按下面的步骤验证:

1、浏览器控制台没有 dsh-web-notification 相关错误。
2、在同一会话发送两条消息,确认每条回复都会触发一次通知。
3、再次执行 npx @deepseek-ai/dsh web 后,插件仍然存在。

安装时注意:

  • npx @deepseek-ai/dsh plugin --profile web add 安装该包时,会因包声明 dsh.bundle 自动追加到 dsh.profile.bundles
  • 如果改用 pnpm add 安装,需要手动添加 bundle 条目。
  • 如果安装报 ERR_PNPM_TARBALL_INTEGRITY,可先运行 pnpm install --update-checksums,再重试。

本地开发与移除

本地开发需要 Node.js 22.19+ 或 24+。

执行构建:

node build.mjs

lib/ 是构建输出目录,不应手动编辑。

安装当前目录:

npx @deepseek-ai/dsh plugin --profile web add "$PWD"

然后重启 Web:

npx @deepseek-ai/dsh web

如需移除插件:

npx @deepseek-ai/dsh plugin --profile web remove dsh-web-notification

适用场景与注意

这个插件适合需要在 DSH Web 中离开当前页面后,仍能收到“模型已回复”提醒的使用者。

插件依赖浏览器通知能力,首次使用需要授予通知权限;Safari 中必须在用户手势中请求权限。由于插件会随 DSH Web 客户端加载,建议安装前检查源码、依赖声明与许可证;本文介绍的插件许可证为 MIT。

GitHub 仓库:

https://github.com/2h0n/dsh-web-notification
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye