Plugin directory / Developer / dsh-ui-chime
dsh-ui-chime
Verified · install-tested on dsh uAcharGG
What it does
A plugin in the Developer category for DeepSeek Harness.
Works — verified, early-stage project
A plugin in the Developer category for DeepSeek Harness. It installs cleanly and boots without issues in our testing. It's early-stage but functional.
“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.
README
@uachar/dsh-ui-chime
A browser chime plugin for DeepSeek Harness: a short synthesized "ding" plays when the model reaches a boundary you care about — a completed turn, or a point where it is waiting for you. No audio assets, no session-log writes, no changes to the dsh core; installed as a standalone package.
Features
- Rings when a full turn completes (
turn/endwithcompleted/max-tokens) — the intermediate thinking phases of multi-step turns stay silent. - Rings when an approval is requested (
approval/asked) — the model is waiting on a permission decision. - Rings when the model calls
ask_user_question(tool/call) — it is waiting for you to pick an option. - Volume control with instant preview; setting persists across sessions.
- Synthesized with Web Audio (oscillators + gain envelope) — zero audio files, no added asset weight.
- History replay (opening a session, pagination, reconnect) never rings: an event counts as live only if it is within 10 seconds of now.
How to use
- Volume control: the composer tool row has a speaker button (Windows-style line icon) on the left; click it to open a slider. Dragging the slider plays a preview chime at the new volume, so you can hear the level as you adjust. The setting persists in
localStorage(dsh.ui-chime.volume). - Autoplay policy: browsers keep
AudioContextsuspended until the first user gesture, so the chime is silent before the page has been clicked once — click anywhere and it works afterwards.
Installation & removal
Requires a working
dshCLI (pnpm) and a profile, e.g.web.
Install from npm (recommended)
pnpm dsh plugin --profile web add @uachar/dsh-ui-chime
Install from the GitHub release tarball
pnpm dsh plugin --profile web add https://github.com/uAcharGG/dsh-ui-chime/releases/download/v0.1.0/uachar-dsh-ui-chime-0.1.0.tgz
Build & install from source
git clone https://github.com/uAcharGG/dsh-ui-chime.git
cd dsh-ui-chime
pnpm install
pnpm run build # tsc -> tsdown; emits lib/index.js and lib/client.js
pnpm dsh plugin --profile web add link:<absolute path to this checkout>
Restart dsh after any install to take effect.
Removal
pnpm dsh plugin --profile web remove @uachar/dsh-ui-chime
Then restart dsh. (Enable/disable via the manager panel only edits the composition layer without removing the code.)
Project structure
| File | Purpose |
|---|---|
cordis.patch.yml |
bundle composition layer: inserts the plugin as one ui-chime row |
src/index.ts |
host half: empty apply (so the row appears in the Host loader / dsh.client scan) |
src/client/index.ts |
browser half: headless Conversation Definition (ring triggers) + volume control registration |
src/client/chime.ts |
Web Audio synthesis engine + persisted volume |
src/client/volume-control.tsx |
speaker button and volume slider in the composer tool row |
lib/ |
build output (published) |
Limitations
- Autoplay policy — the first chime before any user gesture is silently skipped (the unlock listeners make the next one ring).
- Boundary events only — the triggers are
turn/end,approval/asked, andask_user_questiontool calls; a step interrupted mid-reasoning never rings. - No per-session control — the chime rings for every session at one loudness (volume is global, persisted in localStorage).
License
MIT
Install
Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:
dsh plugin add dshbase-catalog Then say "install dsh-ui-chime for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.
This plugin is GitHub source (not published to npm) — install it straight from the repo:
Web profile:
dsh plugin --profile web add github:uAcharGG/dsh-ui-chime Headless (CLI) profile:
dsh plugin --profile headless add github:uAcharGG/dsh-ui-chime Test report
Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.