Skip to content

v1.2.0

Latest

Choose a tag to compare

@miiaowuwu miiaowuwu released this 18 Aug 06:32
· 10 commits to main since this release

中文

dsh-sound-lab 1.2.0 —— DSH 声音工坊(Sound Lab)

DeepSeek Harness(桌面版 / web 版)的声音工坊:对话事件音效、AI 角色语音生成、音效库管理。

功能总览

  • 四个触发条件,独立配置:会话结束 / 弹出选项 / 请求许可 / 停止,每个可单独【启用 + 选择音效】
  • 三种音效选择:内置提示音(Web Audio 琶音,零依赖)/ 不播放 / 音效库具体音效
  • 注意类事件始终响铃:弹出选项 / 请求许可出现即播,不受会话运行/查看状态限制
  • AI 生成角色音频:音效库上方入口,用你自己的阿里云百炼 API Key 与复刻音色ID,输入文本一键生成专属音色语音(可自定义文件名 / 试听 / 删除,一键加入音效库自动登记),弹窗内附图文详细教程
  • 可拖动悬浮球:拖到屏幕边缘自动缩成小半球;配置弹窗可拖动、置顶
  • 三种外观:鲸鱼娘(默认)/ 纯白 / 纯黑,语音名字可自定义
  • 音量滑杆(0–100%)+ 测试音效:可试听具体音效与内置提示音
  • 音效库管理:插件 sounds/ 目录本地音频(sounds.json 控制文件管理,放进目录即自动登记),支持上传(拖拽/选择)、删除、重命名(✎)、恢复被隐藏的附带音效
  • 配置双持久化:localStorage + 宿主 config.json,重启不丢;加载时逐字段清洗,脏数据回退默认
  • 启动即预加载:首次播放秒出;无音效时内置提示音兜底

本次更新(1.2.0)

  • 包名更名:npm 包名由 dsh-client-ui-event-sounds 改为 dsh-sound-lab(与仓库名一致),安装命令、部署目录($DSH_HOME/plugins/dsh-sound-lab)同步更新
  • 新增「AI生成角色音频」:宿主端移植百炼 CosyVoice 合成协议(长文本分段 + WAV 帧拼接);生成时可自定义文件名(重名 409 拦截),音频可试听 / 删除,一键加入音效库自动登记(不复制文件,直接引用);token 消耗由用户自负
  • 凭据三档状态:未配置(缺任一)/ 未通过(全配置但调用失败)/ 配置成功;防抖合并保存 + 生成请求直接携带 + 关闭弹窗强制落盘,杜绝「填了却提示未配置」
  • 详细教程内置:弹窗内「📖 详细教程」图文展示获取 API Key 与音色ID 的完整步骤(可展开,弹窗最高 4:6、不超过页面)
  • 音效库重构为 manifest 控制:新增 sounds/sounds.json 控制文件驱动音效库,磁盘文件未登记时自动对账补录(放进目录即可用);生成目录移到 sounds/generated/,直接链接引用;音效分 ai / local / bundled 三类
  • 附带音效升级为 3 个:新增「啊哇哇!」,与「hirari do~」「呢?」同为内置附带音效,不可删除/重命名(删除=软隐藏可随时恢复)
  • 音效重命名:非附带音效可在列表中 ✎ 行内重命名(自动补扩展名、重名 409、联动触发条件引用)
  • 隐藏音效实时试听:隐藏列表可直接试听且秒出——启动时预加载全部音效(含隐藏)进缓存,试听复用缓存不再二次下载
  • UI 微调:「自定义」按钮改名「上传」(上传成功自动关弹窗,恢复不关,隐藏列表实时同步);音效库超 4 条上下滚动;音效名不显示文件后缀;「不播放」固定置顶
  • 工程化:宿主端 TTS 接口 + manifest 对账/重命名/登记冒烟测试扩充(43 项);教程图片随包发布(lib/tutorial/)

安装(桌面版 / web 版皆可用,任选其一)

  • 方式一(推荐,零依赖):如果 dsh 尚未运行,先启动一次(桌面应用或 npx @deepseek-ai/dsh web)完成初始化;然后双击 dsh-sound-lab-Setup-1.2.0-x64.exe,安装器会自动重启 dsh 即可生效
  • 方式二(需 Node.js):如果 dsh 尚未运行,先启动一次(npx @deepseek-ai/dsh web)完成初始化;然后二选一,根据你的实际运行方式执行其中一条,最后重启 dsh
    • 桌面版:npx @deepseek-ai/dsh plugin --profile desktop add dsh-sound-lab --config.minimumReleaseAge=0
    • web 版:npx @deepseek-ai/dsh plugin --profile web add dsh-sound-lab --config.minimumReleaseAge=0
  • 未安装/未初始化 dsh 时:Setup 安装器与 npm run setup 会自动完成首次初始化(自动下载 Node.js 并运行 npx @deepseek-ai/dsh web);手动方式则先下载 DeepSeek Harness 桌面版,或安装 Node.js(https://nodejs.org)后运行 npx @deepseek-ai/dsh web。如需安装后自动重启,推荐方式一 Setup 安装器。
  • 卸载:双击 dsh-sound-lab-UnSetup-1.2.0-x64.exe,完成后会自动重启 dsh

粉丝向非官方个人项目,音效素材版权归《明日方舟》官方及声优所有,仅供个人学习娱乐,不用于商业用途。


English

dsh-sound-lab 1.2.0 — DSH Sound Lab (Angelina「hirari do~」)

A DSH Sound Lab for both DeepSeek Harness Desktop and dsh web: event sounds, AI character voice lines and a sound library

Features

  • 4 independently configured triggers: session end / options popup / permission request / stop — each with its own 【enable + sound】
  • 3 sound choices per trigger: built-in chime (Web Audio arpeggio, zero dependencies) / no sound / a specific sound from the library
  • Attention events always ring: options popup & permission request play as soon as they appear, regardless of the running/viewing state
  • AI voice generation: an entry above the sound library — bring your own Alibaba Cloud Bailian API Key and cloned voice ID, type a line and generate speech in your custom voice (custom file name / preview / delete, one-click add to the library with automatic registration), with an illustrated step-by-step tutorial built in
  • Draggable floating ball that collapses into a half-ball at screen edges; draggable always-on-top settings dialog
  • 3 appearances: Whale Girl (default) / Pure White / Pure Black, plus a customizable voice name
  • Volume slider (0–100%) + test sound with preview for both specific sounds and the built-in chime
  • Sound library management: local audio in the plugin sounds/ folder (driven by a sounds.json control file — drop a file in and it's registered automatically), custom upload (pick/drag-drop), delete, rename (✎), restore hidden bundled sounds
  • Dual-persisted config: localStorage + host config.json; every field is sanitized on load, bad values fall back to defaults
  • Preload on startup for instant first play; built-in chime as fallback

What's new in 1.2.0

  • Renamed package: npm package renamed from dsh-client-ui-event-sounds to dsh-sound-lab (now matching the repo name); install commands and the deploy dir ($DSH_HOME/plugins/dsh-sound-lab) updated accordingly
  • New "AI Voice" dialog: the host side ports the Bailian CosyVoice synthesis protocol (long-text chunking + WAV frame concat); custom file names (409 on duplicates), preview / delete, one-click add to the library with automatic registration (no file copy — direct reference); token consumption is on the user
  • 3-state credential status: unconfigured (any missing) / failed (all set but the call errors) / configured; debounced merged saving + credentials carried by the generate request + forced flush on dialog close — no more "configured but prompts unconfigured"
  • Built-in illustrated tutorial covering how to get your API Key and cloned voice ID (expandable, dialog up to 4:6, never taller than the page)
  • Sound library now manifest-driven: a sounds/sounds.json control file drives the library; unregistered files on disk are reconciled automatically (drop a file in and it works); generated audio lives in sounds/generated/ referenced by path; kinds: ai / local / bundled
  • 3 bundled sounds now: "AWAWA!" joins "hirari do~" and "Huh?" — all bundled sounds cannot be deleted or renamed (delete = soft-hide, restorable anytime)
  • Sound renaming: non-bundled sounds can be renamed inline via ✎ (auto extension, 409 on duplicates, trigger references update together)
  • Hidden sounds preview instantly: all sounds (incl. hidden) are preloaded on startup; preview reuses the cache — no more waiting
  • UI polish: the "Custom" button is now "Upload" (closes on upload, stays open on restore, hidden list syncs live); the library scrolls beyond 4 entries; file extensions hidden from names; "No sound" pinned on top
  • Engineering: host-side smoke tests expanded to 43 cases (TTS endpoints + manifest reconcile/rename/register); tutorial images ship with the package (lib/tutorial/)

Install (works for both Desktop & web users — pick either)

  • Option A (recommended, zero deps): if dsh isn't running, start it once (Desktop app or npx @deepseek-ai/dsh web) to initialize profiles; then double-click dsh-sound-lab-Setup-1.2.0-x64.exe — it restarts dsh automatically
  • Option B (needs Node.js) — if dsh isn't running, start it once (npx @deepseek-ai/dsh web) to initialize profiles; then pick one based on how you run dsh and restart dsh:
    • Desktop: npx @deepseek-ai/dsh plugin --profile desktop add dsh-sound-lab --config.minimumReleaseAge=0
    • web: npx @deepseek-ai/dsh plugin --profile web add dsh-sound-lab --config.minimumReleaseAge=0
  • No dsh installed/initialized yet? The Setup installer and npm run setup handle first-time initialization automatically (they download Node.js if needed and run npx @deepseek-ai/dsh web); manually, download the DeepSeek Harness Desktop app, or install Node.js (https://nodejs.org) and run npx @deepseek-ai/dsh web. For auto-restart after install, prefer Option A (the Setup installer).
  • Uninstall: double-click dsh-sound-lab-UnSetup-1.2.0-x64.exe, then dsh restarts automatically

Fan-made unofficial project; sound assets belong to Arknights and its voice actors. For personal learning & entertainment only — not for commercial use.