DeepSHPlugins
dsh-plugin-notify-sound 项目预览
GITHUB / COMMUNITY PROJECT

dsh-plugin-notify-sound

工具与集成JavaScriptMIT

按工作区定制的任务完成铃声,以及审批、提问、计划评审、目标受阻、任务失败等需要人介入事件的注意提示音,支持内置合成音、语音播报与自定义音频。

5 Starsldchaowin 更新时间 2026-08-14
访问 GitHub 仓库
dsh-plugin-notify-sound 项目预览

项目介绍

中文

按工作区定制的任务完成铃声,以及审批、提问、计划评审、目标受阻、任务失败等需要人介入事件的注意提示音,支持内置合成音、语音播报与自定义音频。

English

Per-workspace completion ringtones plus attention sounds for approval, question, plan-review, goal-blocked, and task-failure events, with built-in synth, voice (TTS), and custom audio.

项目信息与收录信号

快照 2026-09-11
作者 / 组织
ldchaowin
仓库
ldchaowin/dsh-plugin-notify-sound
GitHub Stars
5
Forks
0
开发语言
JavaScript
许可证
MIT
最近推送
2026-08-14
Manifest
数据中检测到声明

公开仓库不自动等于可商用;许可证与当前兼容性以原项目文档为准。Manifest 和数据评分不构成安装安全认证。

数据评分

69/ 100
维护活跃
81
文档与实用信息
100
生态关注度
22
安装便捷信号
100
项目声明信号
100

README 含完整安装与使用说明;关注度尚低(5);标准命令一键安装。

评分来自已有数据快照的五维模型,仅作浏览参考,不是实际使用评测或安全检测结论。

安装与使用

所有项目资料与许可均以对应 GitHub 仓库为准。

dsh plugin --profile web add dsh-plugin-notify-sound

复制命令不会自动执行。请先阅读仓库文档,确认环境要求与许可证。

项目截图

仓库 README

GitHub 原文

已保存的仓库文档快照;文档抓取时间未记录,可能与上方目录介绍处于不同版本。安装前请核对当前仓库说明。

dsh-plugin-notify-sound

English | 中文

A DeepSeek Harness (DSH) plugin for the Web UI: play a customizable ringtone when a task finishes — per workspace — and an attention sound whenever something needs a human.

Features

Completion sounds (per workspace)

  • Plays when a session turn finishes (running: true → false) or a background job completes.
  • The sound is resolved per workspace: a workspace-specific override wins, otherwise the default.
  • Three sound sources:
  • Built-in synthesized sounds — 6 options (Ding / Chime / Bell / Complete / Success / Mute),

generated live with Web Audio, no audio files required.

  • Voice announcement (TTS) — the browser speaks a custom phrase (e.g. “我做完啦!”, “All done!”)

using a system Chinese voice; voice and rate are configurable.

  • Custom audio — upload any MP3/WAV/etc. file.

Attention sounds (when a human is needed)

The following events always ring (they are not affected by the “quiet current session” option):

EventDetectionDefault sound
Approval requestsession pendingInteraction: approvalgeneric attention sound
User questionpendingInteraction: questiongeneric attention sound
Plan reviewpendingInteraction: plan-reviewgeneric attention sound
Goal blockedgoal projection enters blockedgeneric attention sound
Background task failurejob status failedBell (dedicated failure sound)

Each kind can override the generic attention sound, or use a shared TTS phrase (e.g. “需要你的确认” / “Your confirmation is needed”).

Settings panel (Settings → 通知铃声 / Notification Sounds)

Master switch, “quiet when viewing the current session”, default completion sound, per-workspace completion sounds, generic + per-kind attention sounds, voice settings (voice / rate / preview / refresh), per-row preview and custom-audio upload.

Install

Requires a DSH version with bundle-plugin support (dsh.profile.bundles + dsh.bundle.patch) and pnpm on PATH (corepack enable or npm i -g pnpm).

# One command: pnpm installs the package and adds it to the profile's bundle layer
dsh plugin --profile web add dsh-plugin-notify-sound

# Restart the server (or refresh the page), then open Settings → 通知铃声

Other profiles work the same way: dsh plugin --profile <name> add dsh-plugin-notify-sound.

Manual install (without pnpm)

  1. Copy this package and its runtime deps (@deepseek-ai/schemastery,

@deepseek-ai/cosmokit, @standard-schema/spec) into $DSH_HOME/profiles/web/node_modules/.

  1. Append "dsh-plugin-notify-sound" to dsh.profile.bundles in

$DSH_HOME/profiles/web/package.json.

  1. Restart dsh web.

Configuration storage

  • The browser half persists its configuration in localStorage (key

dsh-notify-sound:config), sanitizing every read and filling defaults.

  • The host half also registers the dsh-plugin-notify-sound settings namespace: on rc.6 the

settings API allowlist (WEB_SETTINGS_NAMESPACES in dsh-host-apiproxy) does not expose third-party namespaces to browsers, so the client does not depend on settingsScope today; the registration keeps the migration path open for future releases.

Development

npm test      # 50+ assertions across host and client halves (Node only, no browser needed)
npm run check # syntax check

Layout:

  • lib/index.js — host half: registers the settings namespace (schema + defaults)
  • lib/client.js — browser bundle: completion/attention event detection, sound engine

(Web Audio / TTS / Audio), settings panel

  • lib/types/index.d.ts — host-side type declarations
  • cordis.patch.yml — bundle patch layer (inserts the notify-sound row)
  • tools/ — tests and verification scripts (not shipped in the npm package)

Publish

npm login                       # npm account (2FA recommended)
npm publish --access public

License

MIT

使用前核对

安装步骤、兼容版本与授权范围以原项目当前文档为准。Stars 和评分是快照中的导航信号。

安装与排错 · 项目问题反馈

同类项目