为对话结束、权限请求和出错分别播放提示音
32.9/100
综合分
4
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/29 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add contraliz/dsh-occlick该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · security
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 3 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
DeepSeek Harness 的 OpenCode 通知音效:回合结束、请求权限、回合出错各有独立选择器。
README
由 DeepSeek 最新模型翻译生成dsh-occlick
在 DeepSeek Harness 里播放 OpenCode 通知音效 —— 一轮对话结束时响一声,智能体请求权限时响一声,一轮对话失败时响一声,每种事件都能从整套 OpenCode 音效库里单独挑一段。
OpenCode 为自家桌面应用准备了一小套通知音效。这个插件把这套音效搬到 DSH:一轮对话结束时响一声,智能体请求权限时响一声,一轮对话失败时响一声。这样跑长任务时你可以把视线移开,等智能体需要你时再听声音回来。
Settings → Sound effects 下的三个音效选择器:Turn finished、Permission requested 和 Turn ended on an error,每个都带一个 OpenCode 音效下拉菜单
Settings → Sound effects:每种事件一个选择器,覆盖全部 45 段 OpenCode 音效,外加 Off (silent)。选中某段音效会立刻试听。
展开完整文档(README 剩余 1 节)
dsh-occlick 在 DeepSeek Harness 里播放 OpenCode 通知音效 —— 一轮对话结束时响一声,智能体请求权限时响一声,一轮对话失败时响一声,每种事件都能从整套 OpenCode 音效库里单独挑一段。 OpenCode 为自家桌面应用准备了一小套通知音效。这个插件把这套音效搬到 DSH:一轮对话结束时响一声,智能体请求权限时响一声,一轮对话失败时响一声。这样跑长任务时你可以把视线移开,等智能体需要你时再听声音回来。 Settings → Sound effects 下的三个音效选择器:Turn finished、Permission requested 和 Turn ended on an error,每个都带一个 OpenCode 音效下拉菜单 Settings → Sound effects:每种事件一个选择器,覆盖全部 45 段 OpenCode 音效,外加 Off (silent)。选中某段音效会立刻试听。 功能说明 | 事件 | 来源 | 行为 | | 一轮对话结束 | 会话 running: true → false | 播放一次结束音效 | | 请求权限 | approval/request | 播放权限音效,然后把请求交给审批界面 | | 一轮对话因错误结束 | api-session/error | 播放错误音效;随后的一轮结束保持静音 | | 用户中止对话 | 停止按钮或 Esc Esc | 静音;被中止的一轮不算结束 | | 启动或重连时的抖动 | 约 250 ms 内出现 true → false | 静音 | | 页面加载时已有任务在跑 | 首个快照就是 running: true | 观察到运行约 2 s 后才出声 | | 重复的空闲刷新 | false → false | 静音 | | 子代理会话 | origin: subagent | 静音 | | 挂载在空闲列表上 | — | 静音(不回放历史) | - 三个通道,三个选择器:一轮结束、请求权限、一轮因错误结束,各自挑自己的音效。 - 每个事件只响一次:音效跟着事件走,不跟每一步、每次工具调用或每个流式 token。失败的一轮播放错误音效,不播结束音效,两者绝不叠加。 - 每种 45 段音效:OpenCode 自带的全部音效 —— Alert、Bip-bop、Nope、Staplebops 和 Yup —— 选中即试听。 - 在 DSH 里配置:同一组选择器既出现在 Settings → Sound effects,也出现在 Plugins 下插件自己的那一行,因此照常走启用/停用和卸载流程。 - 该安静的地方保持安静:子代理的回合不出声,已停止的回合不出声,一连串审批请求只响一次,打开或重新加载 harness 不会重放旧的回合结束音。 DSH 按会话发布运行状态,所以当你在看别处时结束的回合仍会发声。错误按会话记忆 15 秒,因此失败的回合不会再播放回合结束音。审批请求在 1.5 秒内合并,所以一连串请求只响一次。 安装 需要 DSH 0.2.0 或更高版本 和 Web 客户端(桌面应用,或 dsh web)。插件是 Cordis 客户端 bundle,需要页面来渲染设置,也需要音频输出。 从插件页面安装 1. 打开 Plugins → Add plugin。 2. 粘贴仓库地址: https://github.com/contraliz/dsh-occlick 3. 点击 Install,然后点击 Enable now。 4. 打开 Settings → Sound effects,选一个音效。 从命令行安装 复制与你运行 DSH 方式匹配的配置档对应那一行: DSH desktop app dsh plugin --profile desktop add github:contraliz/dsh-occlick dsh web dsh plugin --profile web add github:contraliz/dsh-occlick 命令行安装后重启 DSH:bundle 条目在启动时组装。卸载时用同样的命令,把 add 换成 remove dsh-occlick。 从本地检出安装 git clone https://github.com/contraliz/dsh-occlick cd dsh-occlick dsh plugin --profile web add . 选择音效 打开 Settings → Sound effects,或 Plugins → dsh-occlick → Configure。两处显示同样的三个选择器,每个都列出全部音效,标签与 OpenCode 一致。 每个通道还提供 Off (silent),所以可以静音某个事件,同时让其他事件继续发声。 默认值是 OpenCode 桌面应用对相同事件使用的音效: | 通道 | 默认值 | OpenCode 对应项 | | Turn finished | staplebops-01 | Agent complete | | Permission requested | staplebops-02 | Permission required | | Turn ended on an error | nope-03 | Error | 选择音效后会立即保存并播放,所以不用等事件发生就能试听。 | 系列 | 数量 | 库内名称 | | Alert | 10 | alert-01 … alert-10 | | Bip-bop | 10 | bip-bop-01 … bip-bop-10 | | Nope | 12 | nope-01 … nope-12 | | Staplebops | 7 | staplebops-01 … staplebops-07 | | Yup | 6 | yup-01 … yup-06 | 选择结果存在浏览器的 dsh-occlick.turn、dsh-occlick.permission 和 dsh-occlick.error 下,所以按浏览器保存,而不是按配置档保存。版本 0.2.x 保存的回合音效(dsh-occlick.sound)会迁移过来。清除站点数据会恢复默认值。 Category 集成与连接 —— 插件把 DSH 已有的回合、审批和错误信号转成本地通知渠道。它不连接任何外部服务,不新增模型、工具或技能,也不改动对话内容。 建议标签:notifications、sound、audio、accessibility、opencode。 权限与风险 dsh-occlick 是客户端 Cordis 包,宿主侧为空。它不申请任何 DSH 权限,不调用工具,不执行 shell 命令,不访问文件系统路径,也不读取任何凭据。 | 层面 | 插件做什么 | | 客户端服务 | 读取 sessions.list(其中的 running 位),注册三个插槽条目(settings.section、plugins.row.config,以及一个透传的 conversation.composer 选择器),并注册自己的语言词典 | | 远程事件 | 监听 approval/request(随后调用下一个处理器,审批界面仍然优先)和 api-session/error | | 浏览器存储 | 只读写上面列出的 dsh-occlick.* 键 | | 网络 | 运行时无网络 —— 音频片段内嵌在包里,不发任何请求 | | 音频 | 复用同一个 HTMLAudioElement,播放本地 data: URI | | 文件、shell、MCP、子代理 | 无 | - 自动播放,静默完成:浏览器要求先有用户手势才允许播放音频,所以第一次按下指针或按键时,会用一段零长度静音片段预热该元素。预热全程静音,绝不会出声;在窗口里随便点击不会自己触发声音。 - 你主动停止不算完成:用输入框的停止按钮或 Esc Esc 快捷键停止回合,不会播放回合结束音。 - 数据不出本机:没有分析统计,没有遥测,没有远程日志。 兼容性 | 要求 | 说明 | | DSH 0.2.0+ | 用到客户端插槽、sessions.list、remote.$on 和 ctx.locale;包内声明了 engines.dsh | | Web 客户端 | 桌面应用或 dsh web。无头/TUI 配置档没有设置页,也没有音频输出,插件在那里不生效 | | Chromium/Electron WebView | 需要 HTMLAudioElement、localStorage 和 CSS 自定义属性 | | Node.js 22+ | 仅用于开发(构建和测试);安装后的插件不运行 Node | | 启用浏览器存储 | 存储被禁用时,选项回退到默认值 | 已在 Windows 11 的 DSH 桌面应用 0.2.1 上测试。如果在其他 DSH 版本上看不到选择器,说明客户端插槽 API 变了;请提交 issue 并附上 DSH 版本。 故障排查 - 第一次点击前没有声音:窗口收到手势之前,浏览器会拦截音频。点击或输入一次即可;之后回合结束会正常播放,点击本身是静音的。 - 某个声道没声音:检查它的选择器是不是设成了 Off (silent)。 - 全都没声音:检查系统和浏览器音量,确认 DSH 窗口没有在系统混音器里被静音。 - 点击时播放了旧声音:0.4.0 及更早版本的预热会出声;升级到 0.4.1 或更高版本。 - 选项重置:清除站点数据或换用其他浏览器,保存的密钥就会消失。 详情 - 打包发布,不打补丁:包内自带 cordis.patch.yml,因此 DSH 会把它列在 Plugins 下,显示独立行和 Configure 页面,而不是作为松散的 Loader 行出现。 - 放音频,不发通知:插件通过一个复用的 HTMLAudioElement 播放音频片段。它不弹系统通知,不注册服务,也不加工具栏按钮。 - 每个事件只响一次:按会话对下降沿做防抖,错误标记会抑制该轮的回合音效,停止事件则完全抑制回合音效。 - 宿主侧零工作:lib/index.js 导出一个空的 apply,所以服务端半边不加载任何东西,也不保存任何状态。 开发 npm run fetch:sounds # download the OpenCode clips into assets/audio (needs network) npm run build # regenerate lib/client.js from src/client.js + assets/audio npm test # offline checks for the generated bundle lib/client.js 是生成产物,且已提交到仓库,因为 DSH 每个插件行只提供一个脚本:所有音频片段都以 data URI 形式内嵌其中。要改就改 src/client.js 再重新构建,不要直接编辑 lib/client.js。 源码结构: | 路径 | 作用 | | src/client.js | 浏览器半边:事件检测、播放、设置选择器 | | lib/client.js | 生成的浏览器打包产物(已提交,保证安装后即可加载) | | lib/index.js | 宿主半边:空的 apply,让 Loader 有一行可显示 | | assets/audio | 下载来的 OpenCode 音频片段 | | scripts/build.mjs | 把 assets/audio 内嵌进 lib/client.js | | scripts/fetch-sounds.mjs | 维护者工具,从 OpenCode 刷新 assets/audio | | test/client.test.mjs | 针对生成产物的离线检查 | 致谢 音效库来自 OpenCode 桌面应用(packages/ui/src/assets/audio),采用 MIT 协议。详见 THIRD_PARTY_NOTICES.md。 许可证 MIT。详见 LICENSE。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
contraliz/dsh-occlick
为对话结束、权限请求和出错分别播放提示音
相关插件 · 安全 / 权限
智能体逆向工程morluto/rea
用智能体逆向工程任何东西,从应用行为到原生二进制。
★ 415,267已汉化DSH
73.3
智能体集群框架ruvnet/ruflo
面向 Claude Code 与 Codex 的智能体元基座meta-harness。
★ 80,414已汉化MCP
71.9
WorkBuddy 模型接入corrinehu/dsh-workbuddy-connect
2026 年 10 月 20 日起,WorkBuddy…
★ 1,604已汉化DSH
71.7
破甲一键通z91772524-ai/pojia-next
十五个 AI…
★ 967已汉化DSH
71.6
AI 代理虚拟终端strukto-ai/mirage
Mirage 是给 AI 智能体用的虚拟终端:一层 shell,统管数据、命令行和运行时。Unix…
★ 3,756已汉化DSH
70.8
Agent 操作层agentic-os-org/ANOLISA
ANOLISA(Agentic Nexus Operating Layer & Interface System Architecture)|智能体操作系统,带运行时、安全、可观测性,以及 Tokenless 响应压缩,降低 token 用量与成本。
★ 649已汉化DSH
70.7