English | δΈζ
A Claude Code plugin that chimes when Claude needs you, so you can safely switch away and do something else. Two slash commands to install β and it runs on Windows, macOS and Linux alike.
| When | Sound |
|---|---|
| Claude asks for permission / needs your input | "ding-dong?" (rising two-note, question intonation) |
| Claude finishes a task | "ding-dong-DAA!" (same melodic line resolving into a chord) |
Sounds are short (~1s) and soft, share one timbre, and are distinguishable at a glance.
Both chimes, one second apart β press play, with the sound on:
demo.mp4
Or grab the files on their own:
- π
sounds/notify.wavβ needs your input, ~1s - β
sounds/complete.wavβ task complete, ~1s
/plugin marketplace add ChALyX/claude-bell
/plugin install claude-bell@claude-bell
Or clone and install from a local path:
/plugin marketplace add /path/to/claude-bell
/plugin install claude-bell@claude-bell
Restart Claude Code to activate. /reload-plugins is not enough β hook config is only read at startup, and reloading plugins does not pick it up.
Takes effect immediately, no restart needed:
/claude-bell:volume 50
- Range 0β100,
0mutes, no argument shows the current volume
Put your own sound files in ~/.claude/claude-bell/ (on Windows: C:\Users\<you>\.claude\claude-bell\):
notify.wavβ played when Claude asks for confirmationcomplete.wavβ played when a task completes
If present, they take priority over the built-in sounds; delete them to restore the defaults.
Supported format: WAV only (a Windows player limitation), recommended length under 1.5s.
| Command | Description |
|---|---|
/claude-bell:volume <0-100> |
Set volume, effective immediately; 0 mutes; no argument shows current volume |
Why the prompt you answered instantly made no sound β that's the design, not a bug.
notify rides on Claude Code's Notification event, which is not emitted the moment a permission prompt appears. Claude Code first waits a few seconds to see whether you are there:
| You | Result |
|---|---|
| Answer the prompt right away | Notification is cancelled β no sound at all. You were at the keyboard, so it doesn't interrupt you. |
| Leave it unanswered | Event fires and the chime plays, roughly 6.5s after the prompt appeared. |
So silence on a prompt you answered instantly is expected, not a missed sound. This wait is Claude Code's own behaviour: no setting exposes it, and it cannot be shortened from a plugin.
complete rides on Stop, which has no such wait β it plays at the end of every turn, about 1.3s later. That 1.3s is the cost of spawning a script host and opening an audio device (on Windows, PowerShell + WPF MediaPlayer); it is the only part of the delay this plugin owns.
The 60s idle reminder (idle_prompt) is filtered out on purpose and never rings.
Timings measured on Windows 11; other platforms will differ.