Notifications & Integrations
dsh-chime
xiaxingtianxia2-glitch/dsh-chime · ★ 3
Task-completion chime for DeepSeek Harness, playing the original opencode sounds for done, question, plan-review and error events with zero external dependencies.
安装
dsh plugin --profile web add github:xiaxingtianxia2-glitch/dsh-chimeGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
For install and environment setup, plus plugin development tutorials, see DSH community docs ↗
README
Table of contents
dsh-chime
What is this
Replicates opencode's task-completion chime inside DeepSeek Harness: a crisp notification sound when a turn finishes, when the agent asks you a question, when a plan is submitted for review, or when a turn ends in error. All three sources are the original mp3 files from the opencode repository, embedded losslessly (base64 inside the client bundle). The plugin is fully self-contained with zero external dependencies.
How it works
- Host half (Cordis bundle entry) listens to
agent/status(arunning → idletransition means a turn finished; error-marked turns play the error sound) andtools/execute(queues the question sound the moment theask_user_questionquestion tool or theexit_plan_modeplan tool starts), enqueueing sounds as needed; - webServer routes:
/chime/pollserves the pending queue,/chime/debugexposes status and a listen-through entry; - Client half (browser) polls
/chime/pollevery 250 ms and plays the embedded base64 sources viaAudio.
Sounds
| Sound | Trigger | Source (original opencode) |
|---|---|---|
| done | a turn finishes | bip-bop-01.mp3 |
| question | the question dialog appears / a plan is submitted for review | yup-01.mp3 |
| error | a turn ends in error | nope-03.mp3 |
Install
dsh plugin --profile web add dsh-chime
Or install from the GitHub source (identical content):
dsh plugin --profile web add github:xiaxingtianxia2-glitch/dsh-chime
Restart dsh web after install (the client channel is scanned at startup). This plugin listens at host level — every agent/session (including subagents) triggers it on completion.
Usage
Nothing to do — it just works. Listen and debug:
curl http://127.0.0.1:3080/chime/debug
{"pendingCount":0,"recent":["done","question"],"runningCount":1}
recent = recent enqueue history; pendingCount = queue length (consumed by
the client every 250 ms); runningCount = live agent count.
Listen to a specific sound:
curl http://127.0.0.1:3080/chime/debug?play=done # done | question | error
FAQ
- No sound? Check the system volume and that the browser tab is not muted;
then visit
/chime/debug?play=doneto test. If it enqueues but does not play, refresh the page to reload the client player. - Subagent completions also chime? Yes — host-level listening covers all
agents, matching opencode semantics. Uninstall to stop:
dsh plugin --profile web remove dsh-chime. - Question sound missing? The question sound triggers when the question
tool starts (the moment the dialog appears); the plan-review sound
triggers when the
exit_plan_modetool starts. Non-standard question/plan channels that do not go through these tools will not trigger it. - Still active after restart? Yes — bundle plugins are assembled from the profile on startup.