DSH voice/SFX alert: plays 'done' on turn end and 'fail' on errors — per-turn dedup, error-first, three modes (cloned-voice TTS / 20 built-in SFX / off), voice library with clone & preset routing + trial synthesis, waveOut/MCI players never touching system volume, credential-free control. 每轮结束自动播报完成/失败:内置 20 音效零配置,也可克隆自己的音色。
安装验证:运行验证通过 (L5) · 验证于 dsh 0.2.1-rc.3 · 验证日期 安装验证详情 →
数据截至 (UTC)
功能介绍AI
DSH 对话语音/音效播报插件:每个 turn 结束自动提醒,出错播失败提示,内置 20 个音效并支持音色克隆。
- 每个 turn 结束自动语音/音效提醒
- 出错时播放失败提示音
- 内置 20 个音效(提醒 10 + 大自然 10)零配置,可选音色克隆
能力标签为 AI 推断或 README 规则抽取(见角标),词表受限、未经安装验证;AI = 推断,README = 原文关键词。
安装
dsh plugin --profile web add dsh-voice-alert安装方式: npm · 运行验证通过 (L5) · 验证于 dsh 0.2.1-rc.3
验证与兼容性
按插件版本分组:每张卡是该插件版本实测过的 dsh 版本与安装兼容结论(L5 优先)。只列真测过的组合——未列出 = 未实测,不推定兼容。L1–L3 为插件级静态档(与 dsh 版本无关,各 dsh 行同值):在行内「验证等级」格里与 L4/L5 并列显示、标注「静态」,证据体为插件级单份、随行内「查看检查项与证据」出现,不在各版本重复存储。
External credentials(插件级):未检测到
依据:engines.dsh 一条区间(官方独占判定,peerDependencies 不参与)。 看原始区间
>=0.1.7-rc.1
✓ 当前 dsh 0.2.1-rc.5 在支持范围内 —— 安装不会因版本被拒。
判定通道:0.2.1-alpha.4 起官方优先按 engines.dsh 判定——作者写了它,peerDependencies 就不再检查。
能否正常运行是另一件事 → 见下方实测矩阵(L1–L5)。
| 插件版本 \ dsh | dsh 0.2.1-rc.3 | dsh 0.2.1-rc.2 | dsh 0.2.1-alpha.2 | dsh 0.2.0-rc.2 | dsh 0.2.0-rc.1 |
|---|---|---|---|---|---|
| 0.4.18 | · | · | · | · | · |
| 0.4.15 | ✓ | · | · | · | · |
| 0.4.13 | · | ✓ | · | · | · |
| 0.4.12 | · | · | · | · | · |
| 0.4.11 | · | · | · | · | · |
0.4.18npm2026-10-30
dsh-voice-alert
该版本无运行时安装实测(仅静态扫描)——兼容性未知,不推定。
0.4.15npm✓ 运行验证通过 12026-10-26
dsh-voice-alert
✓dsh 0.2.1-rc.32026-10-26L5 · 运行验证通过
- • Node.js: v24.14.0
- • DSH: 0.2.1-rc.3
- • 被测插件工件: npm · dsh-voice-alert@0.4.15
ID: dsh-voice-alert-2@0.4.15@dsh0.2.1-rc.3 · 档位: l4-sandbox
签发:2026-10-26 · 有效至:2026-11-02
查看检查项与证据
↳ 沿用自更早记录 dsh-voice-alert-2@0.4.18@dsh0.2.1-rc.5(l3-fullscan)
↳ 沿用自更早记录 dsh-voice-alert-2@0.4.18@dsh0.2.1-rc.5(l3-fullscan)
↳ 沿用自更早记录 dsh-voice-alert-2@0.4.18@dsh0.2.1-rc.5(l3-fullscan)
已在加载器目录树中激活(150 个条目)
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
0.4.13npm✓ 运行验证通过 12026-10-21
dsh-voice-alert
✓dsh 0.2.1-rc.22026-10-21L5 · 运行验证通过
- • Node.js: v24.14.0
- • DSH: 0.2.1-rc.2
- • 被测插件工件: npm · dsh-voice-alert@0.4.13
ID: dsh-voice-alert-2@0.4.13@dsh0.2.1-rc.2 · 档位: l3-fullscan
签发:2026-10-21 · 有效至:2026-10-28
查看检查项与证据
↳ 沿用自更早记录 dsh-voice-alert-2@0.4.18@dsh0.2.1-rc.5(l3-fullscan)
↳ 沿用自更早记录 dsh-voice-alert-2@0.4.18@dsh0.2.1-rc.5(l3-fullscan)
↳ 沿用自更早记录 dsh-voice-alert-2@0.4.18@dsh0.2.1-rc.5(l3-fullscan)
已在加载器目录树中激活(150 个条目)
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
0.4.12npm2026-10-18
dsh-voice-alert
该版本无运行时安装实测(仅静态扫描)——兼容性未知,不推定。
0.4.11npm2026-10-13
dsh-voice-alert
该版本无运行时安装实测(仅静态扫描)——兼容性未知,不推定。
仅展示最近 3 个已发布版本;源码快照(commit hash)组、未标注工件组与更早版本不展示——全量档案保留在数据层(插件无任何已发布版本时,快照/未标注组才照常展示)。
作者徽章
将 dsh.so 徽章嵌入你的 README,展示插件的自动安全扫描与安装检测状态:
`[](https://www.dsh.so/artifact/dsh-voice-alert-2/?ref=badge)``[](https://www.dsh.so/artifact/dsh-voice-alert-2/?ref=badge-install)``[](https://www.dsh.so/artifact/dsh-voice-alert-2/?ref=badge-install)``[](https://www.dsh.so/artifact/dsh-voice-alert-2/?ref=badge-install)``[](https://www.dsh.so/artifact/dsh-voice-alert-2/?ref=badge-install)``[](https://www.dsh.so/artifact/dsh-voice-alert-2/?ref=badge-install)`dsh.so 是独立社区项目,与 DeepSeek AI 无隶属或背书关系;徽章由 dsh.so 维护,嵌入链接带 ?ref= 归因参数。
安全报告
两层自动化检查,都不是人工审核:静态扫描(逐插件规则判定)与模型驱动的动态安全审计(只覆盖静态判定 warn 及以上的插件子集,不执行插件代码)。
静态扫描 低;动态审计最高 中(有结论时以动态为准)→ 总评级 中。
v0.4.18dsh 清单0.4.18npm2026-10-300.4.18版本一致clean · npmvet 为 AST 静态扫描(npm 发布物或 git 源码)。
静态发现(11 条)
- 警告childProcessImport · code-exec
lib/edgevoice.js:23import { spawn, spawnSync } from "node:child_process"; - 警告childProcess · code-exec
lib/generate.js:82const probe = spawnSync("ffmpeg", ["-version"], { windowsHide: true, stdio: "ignore" }); - 警告childProcess · code-exec
lib/generate.js:94child = spawn(ffmpegPath, args, { windowsHide: true, stdio: ["ignore", "pipe", "pipe"] }); - 警告childProcess · code-exec
lib/generate.js:206const result = spawnSync( - 警告childProcess · code-exec
lib/index.js:478const probe = spawnSync(config.pythonPath, [String(config.volumeProbeScript)], { - 警告netIp · network
lib/index.js:835const url = new URL(req.url || "/", "http://127.0.0.1"); - 警告netIp · network
lib/index.js:1264const url = new URL(req.url || "/", "http://127.0.0.1"); - 警告netIp · network
lib/index.js:1340const url = new URL(req.url || "/", "http://127.0.0.1"); - 警告childProcess · code-exec
lib/player.js:265const child = spawn(command.file, command.args, LAUNCH_OPTIONS); - 警告childProcess · code-exec
lib/player.js:620const run = spawnSync(command, ["-c", "import sys;print(sys.executable)"], { - 警告childProcess · code-exec
lib/player.js:636const where = spawnSync("where", ["python"], { encoding: "utf8", windowsHide: true, timeout: 6000 });
展开 3 条审计发现
- medium仅靠回环判断的 POST 路由不校验内容类型,可被跨站请求调用
lib/index.js/settings(POST)、/generate、/voices/save、/voices/import、/voices/probe 只依据 req.socket.remoteAddress 放行,从不检查 Content-Type 或 Origin/Sec-Fetch-Site。恶意网页可向 http://127.0.0.1:<port>/dsh-voice-alert/settings 发送 content-type: text/plain 的简单跨站 POST(不触发预检),JSON 体会被解析并生效:翻转 enabled/alertMode、改写三条播报文案、整体替换音色库,或通过 /generate、/voices/probe 强制真实 TTS 合成消耗用户额度。响应为 opaque,攻击者读不到密钥。GET /play?kind=... 同样可被跨站触发。DSH Desktop 的浏览器访问围栏会对无凭据请求返回 403,可缓解但不能消除其他宿主上的暴露。
- lowTTS API Key 的前 8 个字符经 HTTP 返回并写入 status.json
lib/index.jsstatusPayload()/settingsPayload()/voicesLibraryPayload() 会暴露该长期厂商凭据的前 8 个字符;statusPayload 还会被 control.writeStatus() 落盘到 status.json,任何能读取该文件或访问回环路由的进程都能拿到密钥的一部分,实际降低了密钥熵。
- low跨站 GET 请求可任意触发播报并长期占用声卡
lib/index.js/play、/preview、/sfx/play 是有副作用的 GET 接口,仅由回环检查保护;用户访问的任意网页可发出 no-cors GET 反复拉起 powershell/python 播放器,骚扰式播报,并通过 acquirePlaybackSlot/occupyPlaybackSlot 长时间占用播放槽位,阻塞正常播报。影响为骚扰性而非数据损失。
插件整体防御性良好;主要风险是本地回环 HTTP 接口无鉴权,POST 路由不校验 Content-Type,可被跨站请求篡改配置并强制消耗 TTS 额度。
口径(2026-10-28):有动态审计结论时以动态结论为准(可能上调也可能下调);没有结论时(未入队 / 审计失败 / 人工撤回)才用静态扫描档(vet 主判 + dsh 兜底)。动态审计永不写豁免表(豁免只能人工三筛手写);模型判错时由人工复核撤回,撤回后档位回到静态扫描档。
免责声明:静态扫描与动态安全审计都是自动化分析,不构成安全保证。安装前请自行审查。
活跃度
最近提交 2026-10-25 · 活跃度:活跃
• 仓库创建: 2026-09-16
• 星标: ★ 1 · 复刻: 0
• 健康度: 活跃 — 近 30 天有提交
来源
作者 README
GitHub 原文 ↗展示作者仓库中的原始 README 内容,实时抓取、未做改写;优先加载中文版(README.zh-CN.md 等),无中文版时回退英文。
常见问题
dsh-voice-alert 是什么?
dsh-voice-alert 是收录在 dsh.so 的 DeepSeek Harness(dsh)插件。dsh.so 是独立社区注册表:基于公开源码仓库收录,并为每个条目公开自动安全扫描与安装验证结果。
dsh.so 或本页是官方项目吗?
dsh.so 是独立社区注册表,与 DeepSeek AI 没有隶属、背书或赞助关系。
如何安装 dsh-voice-alert?
在 DeepSeek Harness(dsh)环境中运行 dsh plugin --profile web add dsh-voice-alert。该命令已通过隔离沙盒中的真实安装实测(L4)与 Web 冒烟运行验证(L5)。
这个页面的安全扫描是人工审计吗?
两层都是自动化检查,不是人工审计。静态扫描是对仓库源码的启发式分析,可能误报也可能漏掉上下文。模型驱动的动态安全审计只覆盖静态判定 warn 及以上的插件、不执行插件代码,有结论时以它为准(可能上调也可能下调);豁免始终由人工三筛手写。两者都不代表背书:安装前请自行审查仓库与权限申请,并结合验证等级与健康度判断。
本页数据有多新?
本页数据截至 2026-10-30(UTC):取注册表刷新、安装验证、安全扫描与动态审计时间戳中最新的合法日期,不使用构建时间冒充数据日期。
