dsh-notify-tone:DSH Web 端任务完成与待操作提醒

前言

用 DeepSeek Harness 的 dsh web 做长任务时,常见情况是窗口在后台、你在看别的应用,或者 AI 在等沙箱授权、ask_user_question、计划审批——页面没有明显动静,容易错过。只靠扫一眼界面很难区分「还在跑」和「已经停在你这边」。dsh-notify-tone 是 Talone22 维护的客户端插件,挂在 DSH Web GUI 上,在「需要用户操作」和「每轮回答结束」两类节点上,用声音、屏幕光效和系统通知做三重提醒,不改动 DSH 原有组件。

这是什么

dsh-notify-tone 面向 dsh 网页版:监听会话状态,在合适时机发声、画视觉层、发操作系统级通知,并在页面右下角提供一个可拖动的 🔔 悬浮按钮与设置菜单。项目在 GitHub 上为 Talone22/dsh-notify-tone,社区目录见 SkillHub 插件页,分类为客户端;README 注明本项目由 DeepSeek 协助设计、开发与测试,许可证为 MIT。

核心功能

两类触发时机

  • 需要操作提醒:执行任务中遇到需用户授权或选择时(例如沙箱权限弹窗、ask_user_question、计划审批等),同时触发提示音、视觉光效与系统通知。
  • 回答完成提醒:AI 每轮回答结束时,同样触发上述三重提醒。

声音

使用 Web Audio 合成(基频 + 泛音,不依赖音频文件)。内置 5 套音色:经典双音、清脆叮咚、明亮三连、柔和轻音、尖锐警示(方波高频)。在菜单中可点击试听并选中。

视觉

屏幕四周大圆弧光带,配合向内挤压的脉冲动画;不遮挡内容、不拦截鼠标。「需要操作」与「回答完成」可分别配色:8 种预设或自定义色相,选色可即时预览。

系统通知

触发时弹出操作系统级桌面通知(含系统声音),在浏览器外、其他窗口或浏览器最小化时也能看到;点击通知可回到 dsh 窗口。首次使用需在浏览器中授权(打开开关时会请求)。

开关与持久化

总开关、声音、视觉、系统通知四路独立。🔔 按钮可拖动,位置写入 localStorage 并在重启后保持;菜单会根据按钮靠近屏幕边缘自动向上或向下弹出。旧版键名 dsh.notify-sound.* 会自动迁移。

安装与启用

前置条件:已安装 DeepSeek Harness,且 dsh web 能正常启动。

方式一:npm(已发布到 npm)

dsh plugin --profile web add dsh-notify-tone

方式二:从 GitHub 安装

dsh plugin --profile web add git+https://github.com/Talone22/dsh-notify-tone.git

方式三:本地链接(开发调试)

dsh plugin --profile web add link:/绝对路径/dsh-notify-tone

安装后需完全退出 dsh web 再启动。npm 安装后由 dsh 自动登记进 profile 的 dsh.profile.bundles 并激活,无需手改 cordis.patch.yml。

卸载:npm/GitHub 方式执行 dsh plugin --profile web remove dsh-notify-tone 后重启;本地 link 方式需按 README 删除 patch 插入行与对应目录。

典型用法

  1. 按上文任选一种方式安装并重启 dsh web。
  2. 将鼠标悬停页面右下角 🔔,在弹出菜单中打开总开关,并按需开启声音、视觉、系统通知。
  3. 在菜单里选择音色(点击试听)、为两类事件分别选色;拖动 🔔 到不挡操作的位置。
  4. 切到其他应用或最小化浏览器,待 AI 完成一轮回答或弹出需你授权/选择的交互时,应听到所选音色、看到边缘光效,并在系统通知栏收到提醒;点击通知可回到 dsh。

若听不到声音:浏览器自动播放策略要求页面至少被点击过一次,先点击页面任意位置再试。

若收不到系统通知:打开菜单中的「系统通知」并允许浏览器授权;若权限被禁用,需在站点设置里将「通知」设为允许;Windows 上还需确认系统未对浏览器静音。当 dsh 页面前台时,部分环境不会弹横幅,通知可能直接进入通知中心;切到其他应用后才会以横幅形式出现,属浏览器/系统常见行为。

适用场景与注意

适合长期在 dsh web 里跑 Agent、又经常把窗口放到后台的开发者。插件以当前 dsh 进程与浏览器上下文运行,安装前建议浏览 源码仓库 与 MIT 许可证,自行判断是否满足环境要求。

若同时使用 dsh-better-sidebar 且为 pnpm 11,可能出现 dsh plugin --profile web add dsh-notify-tone 末尾报 ERR_PNPM_IGNORED_BUILDS(与 node-pty 构建脚本被忽略有关,与本插件零依赖无关),导致插件未进入 bundles。可在 ~/.dsh/profiles/web/pnpm-workspace.yaml 的 allowBuilds: 下将 node-pty 设为 true,或按 pnpm 提示执行 pnpm approve-builds,然后重新执行安装命令,确认输出为 Done 后再重启 dsh。

结尾

dsh-notify-tone 把「该你操作了」和「回答已写好」两类节点做成可配置的声音、光效与系统通知,设置集中在右下角 🔔,状态本地持久化。更多说明与截图见 GitHub README,也可从 SkillHub 目录页 进入仓库。

羽毛球分组比赛记分
小程序二维码

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

小夜