全部插件

DSH / BUNDLE / CLIENT-UI

dsh-chime-alerts

v0.5.8nienieai / dsh-chime-alerts2dc38729ca

可安装组合包UI 与客户端插件社区 · Topic 自动分析Web UI

概览

dsh-chime-alerts

源码级技术说明DeepSeek Harness plugin: sound alerts for ten agent events — completion, subagent completion, background-job completion, approval, plugin approval, question, plan-review, goal-blocked, interruption, and background-job failure (browser Web Audio + system beep, per-event toggles/sounds/volume, quick-mute button)展开完整技术说明收起技术说明
DeepSeek Harness plugin: sound alerts for ten agent events — completion, subagent completion, background-job completion, approval, plugin approval, question, plan-review, goal-blocked, interruption, and background-job failure (browser Web Audio + system beep, per-event toggles/sounds/volume, quick-mute button)

README / ZH

插件文档

目录摘要

DeepSeek Harness plugin: sound alerts for ten agent events — completion, subagent completion, background-job completion, approval, plugin approval, question, plan-review, goal-blocked, interruption, and background-job failure (browser Web Audio + system beep, per-event toggles/sounds/volume, quick-mute button)

dsh.pub 核对固定版本的组合包契约、运行时事实与分发语义;完整 README 请查看源仓库。

在 GitHub 阅读完整 README

LIMITATIONS

已知限制

- 仅覆盖本 DSH 进程内宿主能观察到的事件 - 浏览器音需要页面开着;页面关闭时只有宿主蜂鸣(需开启) - **Linux / macOS 分支已实现并通过 Node 模拟测试,但尚未在真实机器上实测**;Windows 为本机实测平台 - 轮询延迟:动态版 ≤~1.5s(700ms 轮询 + 800ms 防抖);静态版「完成/子任务/后台/目标受阻」为准实时(快照订阅),「授权/提问/计划评审/插件授权」≤~1.5s(1500ms 轮询 + 宿主 3s 节流) - 设置导航扬声器图标与工作区静音按钮依赖外壳 DOM 结构(CSS hack / 固定定位注入),外壳改版需同步适配 - **待修:工作区行内静音按钮在真实浏览器中未验证**(记录于 2026-09,尚未定位)。静态/动态客户端都用 `document.querySelectorAll('div[role="treeitem"][aria-expanded]')` 取工作区行,再把**整行 `textContent`** 与 工作区标题做**精确相等**匹配(`client.web.js` 的 `syncWorkspaceMuteButtons`);匹配不上就 `continue` 静默跳过—— **按钮不出现且不报任何错**。因此只要外壳把行文本改成「标题 + 计数 / 图标 / 空白」之类,或在行内渲染了额外文本, 按钮就会整片消失而没有任何迹象。已知代码层面该 role/属性确实存在(`dsh-client-ui-workspace`),但**尚未在真实 DOM 上确认匹配成功**;现象待复现后再决定改法(候选:改用行元素上的稳定标识而非文本、或加一次匹配失败告警日志) - **依赖 DSH 内部契约**:事件名与参数签名(`goal/changed`、`Session.ownEvents()`、`SessionSummary` 字段)不是公开 API,DSH 升级可能再次漂移;本仓库的测试用真实契约做回归(见 `tools/test-host.mjs` 的「契约回归」与 `tools/test-client-web.mjs` 的 `/events` 用例),升级 DSH 后请先跑 `npm test` - **实参与类型声明可能不一致**:实测 `session/event` 的 listener 只收到 2 个实参(`Session`、`SessionEvent`),而 inspect 签名写的是 3 个位置参数;插件因此**按对象形状**而非实参位置识别(`type` 字段判事件、`id`+`snapshotEvents()` 判 Session),两种布局都能工作。同类坑:动态宿主半没有 `process`(故动态安装的平台检测恒为 null,走 win32 兼容分支),静态安装是真实 Node 模块、不受此限