回合结束时播放提示音,智能体提问时播放另一种提示音,设置里可调音量并试听。
安装
# Release 预构建包
dsh plugin --profile web add "https://github.com/mkpoli/dsh-finish-sound/releases/download/v0.2.1/dsh-finish-sound.tgz"
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:mkpoli/dsh-finish-sound
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
该插件的 README 只有英文版本。
DSH Web UI plugin that plays a short cue when a turn finishes, and a different cue when the agent asks you something.
- Two events, two cues. A finish cue plays when a turn ends in any session, not only the one on screen. Subagent turns never ring the finish cue, so one parent turn rings once however many delegates it runs. A question cue plays when
ask_user_questionor an approval starts waiting for you. A run of queued turns only rings once, at the end. - One setting for every session. Settings → General → Event sounds turns both cues on or off for this browser, sets the volume and previews either cue.
- Your own sounds. Either cue can be replaced with an audio file of up to 2 MB and 10 seconds that the browser can decode (WAV, MP3, OGG, …). The file stays in this browser's IndexedDB; Use built-in returns to the shipped clip.
- Generated clips. Both cues are WAV files generated with MOSS-SoundEffect-v2.0 (Apache-2.0) and ship inside the plugin, so they play offline.
Cues
| Event | Sound | Clip |
|---|---|---|
| Turn finishes | Two bright marimba notes one step apart | assets/finish.wav |
| Agent asks | Two quick bright marimba notes going up, higher and softer than the finish cue | assets/question.wav |
Exact prompt and seed for each clip are in CLIP_PROVENANCE in lib/sounds.js.
Install
Use the DSH plugin manager (Plugins → Add plugin) with the spec:
github:mkpoli/dsh-finish-sound
Or install from the command line and add the bundle to the profile:
dsh plugin --profile web add github:mkpoli/dsh-finish-sound
Then add "dsh-finish-sound" to dsh.profile.bundles in ~/.dsh/profiles/web/package.json and restart dsh web. The package ships cordis.patch.yml, which inserts the loader entry; the browser half loads through the package's dsh.client declaration.
A prebuilt tarball is attached to the release:
dsh plugin --profile web add https://github.com/mkpoli/dsh-finish-sound/releases/latest/download/dsh-finish-sound.tgz
For a local checkout, link:/path/to/dsh-finish-sound works the same way.
Behaviour
- Browsers keep audio locked until the page has had a user gesture. A cue that fires before then plays on the next click or key press unless a new turn has already started.
- A snapshot that ends a turn and asks a question at the same time plays the question cue only.
- A subagent Session never rings the finish cue. The parent turn rings once, when its own turn ends.
Development
npm test # clips, generated catalogue, bundle freshness
npm run build # regenerate lib/sounds.js and lib/client.js from assets/ and src/
The browser bundle is generated. Replace a clip in assets/, edit src/client.js, then run npm run build: lib/sounds.js embeds each clip as a data URL and lib/client.js registers the plugin module and that catalogue in one file, because the client module loader resolves only modules a bundle registered.
The clips were generated locally with MOSS-SoundEffect-v2.0 from the prompts and seeds in CLIP_PROVENANCE (the seed goes to the pipeline's seed argument), then mastered: 30 Hz high-pass, trim, fades, peak normalization, mono PCM16. The question cue is set to 80% of the finish cue's RMS.
License
MIT. The clips are model output of an Apache-2.0 model.
链接
同类插件
xmanrui/dsh-im★ 3118
通过二维码或机器人凭据将 IM 机器人接入 DeepSeek Harness(支持飞书、微信、钉钉、企业微信、QQ、Slack、Telegram、Discord 和 WhatsApp 共 9 种渠道)。
shaobeichen/dsh-pocket★ 2685
手机远程访问 DSH Web 界面:扫码即用局域网或公网(cloudflared 隧道)访问,实时同屏、移动端适配布局,带设置页管理。
OpenPetsHQ/openpets#dsh★ 1373
将 DeepSeek Harness 的生命周期状态、错误与审批请求,桥接到本地运行的 OpenPets 桌面伙伴。
c1overzz/dsh-bili-scroll★ 1150
让你的 DSH 自己刷 B站 —— 读字幕原文挑内容、写日报,遇到值得看的会发评论 @ 你。
inclusionAI/Avernet#deepseek-harness-channel-bcn★ 599
通过 WebSocket V2 将 DeepSeek Harness 接入 Avernet Bot 协作网络,支持自动注册、Agent 会话隔离、工具调用事件和多 Bot 路由工具。
zaofan-make/dsh-qqbot★ 213
接入 QQ 官方机器人的 DeepSeek Harness 通道(tencent-connect/dsh-qqbot 功能增强 fork): 群/私聊与完整 agent 对话、表情包图库(自动打标+AI 斗图)、群管理(入群审批/禁言)、botplay 互动事件卡与翻页目录、用户扩展注册表(自定义斜杠命令与 QQ 工具)、定时唤醒、QQ 远程审批、悬浮球 dock Web UI。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。