dsh-sound-lab: Configure event sound effects and character desktop pets for DSH Web GUI

前言

用 DSH 跑会话时,人的注意力经常不在窗口上:会话可能早就结束,也可能正卡在权限确认或选项弹窗上等你处理,回头才发现已经空等了很久。这类事件最适合用声音提醒——响一声就知道该回来看了。

下面介绍的 dsh-sound-lab 解决的就是这个问题。它是 DSH Web GUI 的声音工坊:为四种对话触发事件挑选音效、生成 AI 角色语音、上传管理自己的音效库,全部在设置对话框里点选完成,不需要写代码;同时内置一个明日方舟安洁莉娜角色的悬浮桌宠。

这是什么

dsh-sound-lab 由 miiaowuwu 维护,是一个 DSH 插件(当前版本 1.3.2,MIT 许可证)。DSH 的理念是「一切皆插件」,这个插件在 Web GUI 侧做了三件事:

1、事件音效:会话结束、选项弹窗、权限请求、停止四种触发条件,各自独立启用并指定音效;
2、音效库:上传、管理本地音频,非内置音效可重命名,误隐藏的内置音效可恢复;
3、AI Voice:接入阿里云百炼,用克隆音色把台词生成语音,一键加入音效库。

桌面侧则是一个悬浮窗:默认是安洁莉娜的精灵图动画桌宠,也可以切换成圆形小球。

核心功能

触发事件音效

设置对话框提供 4 个触发条件:会话结束 / 选项弹窗 / 权限请求 / 停止。每个触发条件都有独立的启用开关和音效下拉,下拉里可选内置铃声(Web Audio 琶音)、无声,或音效库里的指定音效。

其中选项弹窗和权限请求属于「注意事件」:弹窗一出现就响铃,并且优先于完成类音效——保证需要你操作的事件不会被错过。

音量用 0–100% 的滑块调节,试音下拉配合 ▶ 按钮可即时预览,另有重置按钮。

悬浮桌宠与外观

默认形态是安洁莉娜动画桌宠(60fps 精灵图、半速播放):

  • 待机时站立,点击会打招呼,可拖拽移动;
  • 拖到屏幕边缘会停靠:左右停靠隐藏 40% 并旋转 30°,顶部停靠倒挂并隐藏 80%,底部停靠不隐藏;
  • 空闲 90 秒入睡;
  • 会话结束时庆祝,选项弹窗与权限请求时困惑,停止与报错时倒下。

外观有 3 种:Whale Girl(默认)/ Pure White / Pure Black,语音名称可自定义。不想用角色动画的话,可切换成圆形小球:小球拖到屏幕边缘会折叠成半球(只显示一个 ">" 图标),点击打开设置对话框。

事件切换动画带 150ms 半淡入过渡,避免动作之间生硬跳变。

音效库管理

音效来自插件 sounds/ 目录下的本地音频,支持 mp3/wav/ogg/m4a/flac/opus/aac/wma/webm 格式,由 sounds.json 控制文件管理。在设置对话框里可以:

1、选择文件或直接拖拽上传;
2、删除音效,非内置音效可重命名;
3、恢复被隐藏的内置音效。

插件内置 3 个音效:"hirari do~" / "Huh?" / "AWAWA!",不可删除或重命名——执行删除时只是软隐藏,随时可恢复;隐藏状态的音效可直接预览、即时播放。

音频由宿主侧 /dsh-sounds-control 静态服务提供,支持 Range/206 分块、ETag 与流式传输。

AI Voice 语音生成

AI Voice 对话框需自备阿里云百炼 API Key 与克隆音色 ID。填入后输入台词即可生成语音,支持自定义文件名、预览和删除;满意可一键加入音效库并自动注册,之后就能在触发条件下拉里选用。token 费用自理。

配置持久化

设置会双写持久化:一份存 localStorage,一份存宿主侧 config 文件,重启后不丢。

安装与启用

两种安装方式对 Desktop 用户和 web 用户都可用,二选一。

方式 A:Setup 安装器

1、如果 dsh 还没启动过,先启动一次以初始化 profile,然后退出;
2、从 GitHub Releases 下载 dsh-sound-lab-Setup-1.3.2-x64.exe,双击安装;
3、安装器会自动重启 dsh。

安装器会把插件部署到 $DSH_HOME/plugins/dsh-sound-lab,并通过官方 dsh plugin 命令注册到所有已初始化 profile(web、desktop 等共享同一副本)。更新时重新下载最新的 Setup 安装包运行即可,旧版本自动覆盖,无需先卸载。卸载时双击 dsh-sound-lab-UnSetup-1.3.2-x64.exe,完成后自动重启 dsh。

方式 B:CLI 命令

需要 Node.js 环境。按自己运行 dsh 的方式二选一执行。

Desktop 用户:

npx @deepseek-ai/dsh plugin --profile desktop add dsh-sound-lab --config.minimumReleaseAge=0

web 用户(通过 npx dsh web 运行):

npx @deepseek-ai/dsh plugin --profile web add dsh-sound-lab --config.minimumReleaseAge=0

两条命令都附带 --config.minimumReleaseAge=0。安装完成后重启 dsh:

npx @deepseek-ai/dsh web

经过上面的步骤,重启后看到悬浮桌宠(或小球)就说明插件已生效,点击即可打开设置对话框。

开发场景下还有两个便利脚本:npm run setup 自动检测所有本地 profile 并注册插件;npm run setup:deploy 部署到 $DSH_HOME/plugins 并让每个 profile 指向该副本。

典型用法

给「会话结束」配一个提醒音:

1、点击悬浮的桌宠或小球,打开设置对话框;
2、在触发条件里勾选「会话结束」的启用开关;
3、音效下拉选「内置铃声」,或选音效库里已有的音效;
4、用试音下拉 + ▶ 预览确认效果,再用音量滑块调整大小。

上传自己的音效:

1、在音效库区域选择文件或拖拽上传(支持 mp3/wav/ogg/m4a/flac/opus/aac/wma/webm);
2、非内置音效可重命名;
3、回到触发条件下拉,选用刚上传的音效。

生成角色语音并入库:

1、准备好阿里云百炼 API Key 与克隆音色 ID;
2、打开 AI Voice 对话框,填入 Key 与音色 ID,输入台词;
3、设定文件名,生成后预览;
4、一键加入音效库并自动注册,即可在触发条件下拉中选用。

适用场景与注意事项

适合的用户:

  • 经常把 DSH 会话挂在后台,希望事件发生时有声音提醒的人;
  • 想维护自己的音效库,或用克隆音色生成角色语音的人;
  • 喜欢桌宠、想要一点桌面氛围的用户——不喜欢可以切小球或换外观。

使用前注意:

1、插件以当前 dsh 进程的权限运行,安装前建议先阅读源码,确认许可证(MIT)符合你的使用要求;
2、这是明日方舟安洁莉娜的同人项目,仅限个人学习娱乐,不可商用;
3、AI 语音生成需自备阿里云百炼 API Key 与克隆音色 ID,token 费用自理;
4、内置 3 个音效不可删除或重命名,删除只是软隐藏,可随时恢复。

结尾

dsh-sound-lab 把事件提醒做成了可视化点选:四种触发条件各配各的音效,音效库自己上传管理,还能用克隆音色现做语音;配上桌宠,挂在后台的会话也有了明确的存在感。如果你在用 DSH Web GUI,可以试一试。

  • 社区目录页:https://www.skillhub.cn/plugins/miiaowuwu/dsh-sound-lab (社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系)
  • GitHub:https://github.com/miiaowuwu/dsh-sound-lab
羽毛球分组比赛记分
小程序二维码

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

Xiaoye