dding-dong
When code is done, the doorbell rings.
A Claude Code plugin that alerts you with sounds and OS notifications on task completion, errors, and input requests.
How does it notify you?
Cross-Platform
Works on macOS, Linux, and WSL. Automatically detects your environment and audio tools.
Sound Packs
Choose from built-in packs — default, retro 8-bit, or musical piano chords. Create your own too.
TTS Voice
Generate custom voice notifications with Qwen3-TTS. Clone your own voice for a personal touch.
Quiet Hours
Set quiet hours to silence notifications during focus time or late-night sessions.
Flexible Config
5-stage config merge: defaults → global → project → local → env vars. Override anything, anywhere.
Korean & English
Full bilingual support. Notification messages, setup wizard, and all skills in both languages.
What sounds will you hear?
3 built-in sound packs, 5 events each. Click to preview.
Default notification sound pack
Default notification sound pack
Chiptune-style game sound effects pack
Piano chord-based harmonic notification pack
Make it speak in your voice
Generate TTS voice notifications with Qwen3-TTS. Clone your voice with as few as 3 seconds of audio.
Voice Cloning
As few as 3 seconds of audio is all it takes to clone your voice. Every notification sounds like you.
5 Event Voices
Unique voice lines for each event — task complete, error, input required, session start, and end.
One Command Setup
Run /dd-tts-pack and follow the prompts. Auto-downloads Qwen3-TTS model on first use.
Listen to a sample
Voice clones generated with Qwen3-TTS — try both Korean and English
Subway announcement voice clone — Qwen3-TTS
"이번 작업의 종착역에 도착하였습니다. 결과를 확인해 주시기 바랍니다."
"열차 운행에 장애가 발생하였습니다."
"이번 역은 대기, 대기역입니다. 고객님의 입력이 필요합니다."
"이번 열차는 코딩, 코딩행입니다. 출발합니다."
"이번 열차는 여기까지입니다. 이용해 주셔서 감사합니다."
Subway announcement voice clone (English) — Qwen3-TTS
"This train has arrived at its final destination. Please check your results."
"We are experiencing a service disruption on this line."
"This station is Standby. Your input is required."
"This is a Coding-bound train. Now departing."
"This train terminates here. Thank you for riding with us."
30 seconds to start
Three simple steps to get notifications working.
Install
Add dding-dong from the plugin marketplace.
/plugin marketplace add https://github.com/CaesiumY/dding-dong
/plugin install dding-dong Setup
Auto-detect your platform and audio tools.
/dding-dong:dd-setup Test
Hear all notification sounds in sequence.
/dding-dong:dd-test All the skills you need
Every slash command to configure, customize, and troubleshoot dding-dong.
Getting Started
dd-setup
Auto-detect your platform and audio tools. Interactive setup wizard.
/dding-dong:dd-setup dd-test
Play all notification sounds in sequence to verify your setup.
/dding-dong:dd-test dd-help
Show the complete plugin reference — skills, config, events, and packs.
/dding-dong:dd-help Sound Management
dd-sounds
List, switch, and preview installed sound packs.
/dding-dong:dd-sounds dd-pack-create
Create custom sound packs with your own WAV files.
/dding-dong:dd-pack-create dd-tts-pack
Generate voice notifications with Qwen3-TTS and voice cloning.
/dding-dong:dd-tts-pack Utilities
dd-config
View, modify, and reset notification settings.
/dding-dong:dd-config dd-doctor
Diagnose notification issues — checks platform, config, and audio tools.
/dding-dong:dd-doctor dd-feedback
Submit bug reports and feature requests as GitHub issues.
/dding-dong:dd-feedback Customize to your taste
5-stage config merge — later stages override earlier ones.
{
"enabled": true,
"sound": {
"pack": "default",
"volume": 0.7
},
"notification": true,
"lang": "ko",
"quietHours": {
"enabled": true,
"start": "23:00",
"end": "07:00"
}
} -
DDING_DONG_ENABLEDEnable/disable notifications -
DDING_DONG_VOLUMEVolume level (0.0–1.0) -
DDING_DONG_LANGLanguage (ko/en) -
DDING_DONG_PACKSound pack name
dding-dong everywhere
macOS
afplay osascript Linux
pw-play / paplay / ffplay / mpv / aplay notify-send WSL
PowerShell MediaPlayer wsl-notify-send / WinRT Toast