Back to home

HtO404

dsh-chime

Task-completion notification chime for the DSH web GUI: beeps when an agent turn finishes, even in background tabs. 10 preset sounds + custom import + volume.

Stars
0
Language
JavaScript
Created
Aug 15, 2026
Updated
Aug 15, 2026

Introduction

dsh-chime

npm version npm downloads GitHub stars license topic: dsh-plugin platform

A task-completion chime for the DeepSeek Harness (DSH) Web GUI.

The moment a root agent turn finishes, it rings — even while the tab is in the background. Stop watching the task list; it will tell you the second you're done.


Contents

Features · Quick Start · Usage · How It Works · Presets · FAQ · Support · Agent Install


You kicked off a 20-minute task, then switched tabs to watch a video. 20 minutes later you come back: the task finished long ago — and you have no idea when.

— dsh-chime exists to fill that one second.


Features

⏱ Rings in the background
Web Audio playback; works when the tab is hidden
🎵 10 curated presets
Seeded on first run, ready out of the box
📂 Bring your own sound
wav / mp3 / ogg — use your own audio
🔊 Volume control
0–100% slider, preview on release
⚙️ One panel, everything
Settings → Plugins, preferences persist
♻️ Survives restarts
Static host + client plugin, auto-starts with DSH

Quick Start

Option 1 — npm

dsh plugin --profile web add @hto404/dsh-chime

Option 2 — local folder

dsh plugin --profile web add link:C:\path\to\dsh-chime

Option 3 — manual

Place dsh-chime under node_modules/@hto404/ in your web profile, then append to ~/.dsh/cordis.patch.yml:

- insert:
    - id: chime
      name: '@hto404/dsh-chime'

Restart DSH (start-dsh.bat).


Usage

Settings panel

Live demo — try the controls yourself: docs/demo.html

Demo animation

  1. Restart DSH and open the Web GUI.
  2. Go to Settings → Plugins →「🔔 任务完成提示音」.
  3. Pick a preset, import your own sound, drag the volume, or mute — all applied and saved instantly.
  4. From then on, every finished task rings — even in a background tab.

Didn't hear anything the first time? Click 测试声音 once to unlock the browser's autoplay policy — everything works after that.


How It Works

Flow

RoleWhat it does
Host lib/index.jsListens to agent/status; queues a notification when a root agent turns idle; serves /dsh-chime/poll, /dsh-chime/presets, /dsh-chime/preset-audio
Client lib/client.jsPolls /dsh-chime/poll every 2s; plays the selected sound with Web Audio; the control panel lives in the settings.plugin.item slot

Rule of thumb: only root agents (main sessions) trigger the chime — intermediate subagent completions don't. A long task with a dozen subagents won't ping you mid-way; you hear it only when the final result lands.


Presets

Preset directory: $DSH_HOME/dsh-chime/sounds (default ~/.dsh/dsh-chime/sounds). The 10 bundled sounds are seeded there on first run. Drop any mp3/wav/ogg into that folder and restart the plugin to add your own.

PresetVibe
01-欢快铃声 · Cheerful BellLight and pleasant, like good news arriving
02-双声蜂鸣 · Double BeepClassic electronic, no-nonsense
03-消息弹出 · Message PopShort and light, presence without noise
04-确认音 · ConfirmationSteady and assured, the ritual of finishing
05-数字短音 · Quick ToneOne crisp note, unmistakable
06-快速叮咚 · Fast DingBright and loud, hardest to miss
07-气泡通知 · Bubble PopPlayful, a little cute
08-清亮提示音 · Clear ChimeAiry and mellow, for softer tastes
09-吉他通知 · Guitar AlertA warm chord, like someone calling you
10-游戏成功 · Game WinA rising sense of victory — task done!

Bundled sounds come from Mixkit Free Sound Effects under the Mixkit License (free for commercial use).


FAQ

The task finished but nothing rang — why?

Check, in order:

  1. Is Mute on, or the volume dragged to 0?
  2. Was it a subagent? dsh-chime only rings for root agents (main sessions).
  3. Did the browser block autoplay? Click 测试声音 once to unlock it.
Can I hear it while the tab is in the background?

Yes. Web Audio playback doesn't depend on page visibility — that's the whole point of dsh-chime.

How do I use my own sound?

Two ways: click 导入声音 in the panel and pick a local audio file, or drop an mp3/wav/ogg into the preset directory — it appears in the dropdown after a plugin restart.

Do I need to re-enable it after a DSH restart?

No. dsh-chime is a static, composition-mounted plugin — it starts automatically with DSH, and your sound settings persist.


Agent Install

Running an AI agent and want it to install this plugin for you? Point it at the instructions:

👉 AGENT-INSTALL.md — starts with "Agent,看这里" and walks any agent through installing this repo into DSH end-to-end.


Support

If it saved you from one extra glance at the task list —

give it a ⭐ so more people who've been walked around by their agents find it.

The point of a tool is to give your attention back to yourself. The eyes that used to watch the task list can rest now.


Apache-2.0 · Made for DeepSeek Harness · Sounds from Mixkit