DSH Plugins Marketplace

DSH Plugins

Plugins

/

dsh-notify-tone

T

dsh-notify-tone

Manifest valid★ 4
UI (client)hasBundlePatch

dsh-notify-tone(声音 + 视觉 + 系统通知提醒插件)

本项目由 DeepSeek 贡献(协助设计、开发与测试)

dsh web GUI 的提醒插件:

  • 需要操作提醒:AI 执行任务中遇到需要用户授权或选择时(沙箱权限授权弹窗、ask_user_question 提问、计划审批等),同时触发提示音、屏幕光效与系统通知,提醒你回到窗口处理。
  • 回答完成提醒:AI 每轮回答结束时,同样触发三重提醒,提醒你回复已生成。

特性

  • 声音提醒:Web Audio 合成(基频 + 泛音,无音频文件),内置 5 套音色——经典双音、清脆叮咚(叮——)、明亮三连、柔和轻音、尖锐警示(方波高频,最醒目),点击即可试听并选中。
  • 视觉提醒:屏幕四周大圆弧光带 + 泡泡式弹性向内挤压脉冲(柔和、不遮挡、不拦截鼠标);「需要操作」「回答完成」各自独立配色(8 种预设 + 🌈 自定义色相),选色即时预览。
  • 系统通知:触发时弹出操作系统级桌面通知(含系统声音),在浏览器外、其他窗口、浏览器最小化时也能看到;点击通知可跳回 dsh 窗口。首次使用需在浏览器中授权(打开开关时自动请求)。
  • 分别开关:总开关、声音开关、视觉开关、系统通知开关四者独立,互不影响。
  • 🔔 按钮可拖动:按住 🔔 拖动即可移动到任意位置(不与其他插件按钮冲突),位置自动记忆,重启后保持。
  • 菜单方向自适应:按钮靠近屏幕边缘时,设置菜单自动选择向上/向下弹出,不会被裁剪、不遮挡按钮。
  • 持久生效:所有开关、音色、颜色、按钮位置都存 localStorage,重启后保持;旧版设置(dsh.notify-sound.*)自动迁移。
  • 悬浮设置菜单:鼠标悬停页面右下角 🔔 按钮自动弹出:总开关、声音/视觉/系统通知分别开关、音色选择(点击试听)、颜色选择(展开面板,点击预览)。
  • 不侵入:不改动 dsh 任何原有组件与第三方插件;插件只做「监听会话状态 + 发声 + 视觉层 + 系统通知 + 一个悬浮按钮/菜单」。
    alt text
    alt text
    alt text

安装

前置

已安装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(完全退出 dsh web 进程再启动)即生效。

说明:本插件通过 npm 安装后,由 dsh 自动登记进 profile 的 dsh.profile.bundles 并激活, 无需手动修改 cordis.patch.yml。

卸载

  • npm/GitHub 方式:dsh plugin --profile web remove dsh-notify-tone,重启 dsh。
  • 本地目录方式:删除 cordis.patch.yml 中的 notify-tone 插入行,删除 node_modules/dsh-notify-tone/ 目录,重启 dsh。

故障排查

  • 听不到声音:浏览器自动播放策略要求页面至少被点击过一次;点击页面任意位置后再试。
  • 收不到系统通知:① 打开 🔔 菜单「系统通知」开关并允许浏览器的授权询问;② 若显示"权限已被禁用",需到浏览器站点设置(地址栏左侧锁图标 → 网站设置)中把「通知」改为允许;③ Windows 还需确认系统"通知和操作"未对浏览器静音。
  • 通知横幅不弹出、直接进通知中心:这是浏览器/系统的正常行为——当 dsh 页面正处于前台时,浏览器不会弹横幅(你正在看页面,横幅会打扰),通知会直接收进通知中心;切到其他应用/桌面后,通知才会以横幅 + 系统提示音弹出。若你希望在页面前台时也看到横幅,可尝试:Windows 设置 → 系统 → 通知 → 应用列表中找到浏览器 → 确认「显示通知横幅」已开启。
  • 若之后运行过 pnpm install 导致手动放置的包被清理,请重新复制本目录到 ~/.dsh/profiles/web/node_modules/(或在 profile 目录执行 dsh plugin --profile web add link:<本目录绝对路径>)。

pnpm 11 + dsh-better-sidebar:安装后插件不生效

现象:执行 dsh plugin --profile web add dsh-notify-tone 时提示安装成功(+ dsh-notify-tone ^0.2.0),但末尾报 [ERR_PNPM_IGNORED_BUILDS] Ignored build scripts: node-pty@1.1.0 和 dsh: pnpm failed ...; 重启 dsh 后插件没有出现。

原因:pnpm 11 的安全策略默认阻止依赖运行构建脚本。node-pty 是 dsh-better-sidebar(另一个第三方插件)的依赖,与本插件无关;当它的构建脚本被忽略时, pnpm 会以非零退出码结束,而 dsh 只在 pnpm 成功(退出码 0)时才把插件同步进 dsh.profile.bundles,导致本插件依赖已装、但未进入 bundles 层、不加载。

解决:编辑 profile 的 pnpm-workspace.yaml(~/.dsh/profiles/web/pnpm-workspace.yaml), 在 allowBuilds: 下把 node-pty 设为允许构建:

allowBuilds:
  node-pty: true

(如果该行是占位文本 node-pty: set this to true or false,直接改成 true; 也可以运行 pnpm 提示的 pnpm approve-builds 交互式批准。)然后重新执行:

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

确认输出末尾为 Done、无 ERR_PNPM_IGNORED_BUILDS 后重启 dsh 即可。

本插件自身零依赖、无构建脚本、纯浏览器端,这个问题只在你同时安装 dsh-better-sidebar 且使用 pnpm 11 时可能出现。

致谢

本项目由 DeepSeek 贡献:功能设计、代码实现、测试验证与文档编写均由 DeepSeek 协助完成,作者负责需求提出与验收。

MIT License

Compatibility

DSH 0.2.1-rc.2: failed

Versions

Latest versionPublishedSize
0.1.0——
0.2.0——
0.2.1——
0.2.2——
0.2.3——

Comments

Loading…