dsh-approval-ding:DSH 审批与提问时的短铃提示

前言

DeepSeek Harness(DSH)在 Agent 调用需要授权的工具,或通过 ask_user_question 停下来向你提问时,会等待你的操作。界面若不在前台,这一轮往往要等你切回窗口才会继续。常见做法是盯着终端或浏览器标签,或依赖系统通知——后者不一定与 DSH 的审批、提问时刻对齐。

下面介绍社区插件 dsh-approval-ding(维护者 tianhengzhibei):在请求出现的那一刻播放一声短铃,不参与批准、拒绝或作答,也不改变任何审批逻辑。

这是什么

dsh-approval-ding 是 DSH 的客户端类插件,分类为客户端。它在 Cordis 事件链上监听两类请求,触发后立即 return next(),把应答仍交给 Web 审批面板、提问卡片、命令行提示或其它插件。

插件包为纯 ESM,附带一个 WAV 资源,无需构建步骤和额外依赖(package.json 要求 Node >=18)。当前资料中的版本为 1.1.0,许可证 MIT。

核心功能

触发条件

触发点 什么时候响
approval/request 工具调用需要你的授权
user-questions/request ask_user_question 向你提问(含带超时的变体,以及 exit_plan_mode 的计划复核)

在审批策略为 never 时,请求会在进入 waterfall 之前被拒绝,插件不会发声。

行为边界

  • 只播放声音,不代答、不代批、不延迟请求。
  • 监听以 { prepend: true, global: true } 注册,先于应答器执行,随后原样传递事件。
  • 播放在独立子进程中完成(stdio: 'ignore'),PowerShell 冷启动或缺少声卡不会阻塞本轮;播放失败会被吞掉,不会让请求失败。
  • cooldownMs 默认 500 ms:并发请求只响一次。

默认铃声

内置 assets/ding.wav:约 0.62 s,E6(1318.51 Hz)加四个非谐波分音,44.1 kHz 单声道 16-bit。

配置项 sound: system 时使用操作系统通知音;其它值按 .wav 路径解析(绝对路径,或相对插件包根目录)。

平台与延迟

平台 播放方式
Windows powershell.exe + System.Media.SoundPlayer
macOS afplay
Linux paplay,失败时回退 aplay

声音在运行 DSH 宿主进程的那台机器上播放。浏览器连远程宿主时,铃在宿主侧响,不在浏览器标签里。

Windows 上辅助进程不能使用 detached: true(否则 PowerShell 可能立即退出且不播放)。资料注明 PowerShell 冷启动约 0.5 s,提示出现后大约半秒才能听到铃。

安装与启用

先做 profile 选择,再执行对应安装命令。

Web GUI 使用的 profile:

dsh plugin --profile web add github:tianhengzhibei/dsh-approval-ding

Desktop 应用 profile:

dsh plugin --profile desktop add github:tianhengzhibei/dsh-approval-ding

也可在 DSH 插件市场中搜索并安装。社区目录见 SkillHub 插件页,与 DeepSeek / 幻方无官方从属关系,属于「一切皆插件」生态中的独立条目。

配置

在 <profile>/cordis.patch.yml 中通过 patch 插入 bundle 配置;各项均可选,默认值如下。

# <profile>/cordis.patch.yml
- insert:
    - id: dsh-ding
      name: dsh-approval-ding
      config:
        enabled: true               # false mutes the plugin without uninstalling it
        sound: ding                 # "ding" | "system" | "C:\path\to\chime.wav"
        cooldownMs: 500             # parallel requests produce a single ding
        sources: [approval, question]  # drop one to silence only that kind

说明:

  1. enabled: false 可静音而不卸载插件。
  2. sources 去掉 approval 或 question 之一,可只对另一类请求发声。
  3. 自定义 WAV 路径在 Windows 示例中为绝对路径写法,Linux / macOS 按同样规则填写有效路径即可。

典型用法

安装并保持默认配置后,当 Agent 发起需授权的工具调用,或弹出提问批次时,应听到一声短铃。你仍按原有流程在界面或 CLI 中批准、拒绝或回答。

若希望只用系统提示音,将 sound 改为 system:

        sound: system

若只希望工具审批时响、提问时不响:

        sources: [approval]

适用场景与注意

适合长时间跑 Agent、常切到其它窗口或应用的开发者:用听觉补位,减少「DSH 在等但我没注意到」的空转。

安装前建议阅读 GitHub 仓库 源码与 MIT 许可证;插件以当前 DSH 进程权限运行,仅增加本地播放子进程,不替你做安全决策。

卸载可通过插件管理器移除 bundle,或在 profile 的 package.json 里从 dsh.profile.bundles 去掉 dsh-approval-ding。

结尾

dsh-approval-ding 把「需要人介入」的时刻用一声短铃标出来,逻辑与应答链保持不变。需要安装命令、触发表与平台细节时,以 README 为准。

  • 目录页:https://www.skillhub.cn/plugins/tianhengzhibei/dsh-approval-ding
  • GitHub:https://github.com/tianhengzhibei/dsh-approval-ding
羽毛球分组比赛记分
小程序二维码

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

Xiaoye