Claude Code Voice Notify
Stop staring at the screen. Get pulled back the instant Claude Code finishes — or the moment it needs you.


Demo

Why you need this
When Claude Code is running a long task, you switch to another tab — and then forget to come back. You either interrupt it mid-task or lose minutes waiting for nothing. This extension plays a sound, speaks a voice message, and/or shows a popup the instant:
- Claude finishes a task (
Stop hook)
- Claude needs your input (
Notification / AskUserQuestion hook)
No polling. No terminal watching. Just a chime when it matters.
Setup — 3 steps
- Install the extension from the VS Code Marketplace.
- Click Install on the prompt that appears (or run
Claude Notify: Install Claude Code Hooks from the Command Palette).
- Restart any running Claude Code sessions.
Run Claude Notify: Test Sound to confirm it's working.
Features
|
Feature |
Default |
| 🔊 |
Sound — plays a chime when Claude stops or needs input |
On |
| 🗣️ |
Voice (TTS) — speaks "Claude finished the task" out loud |
Off |
| 💬 |
Toast popup — VS Code notification message |
Off |
| 🔔 |
Status bar button — click to toggle/configure without hunting through settings |
Always |
| 🎵 |
Custom sounds — add your own .wav or .mp3 files |
Optional |
| 🔁 |
Sound modes — random, sequential, or fixed |
random |
Why it works everywhere
The extension uses Claude Code's hooks system instead of reading the terminal. Two hooks (Stop and Notification) write a tiny trigger file when an event fires. A file watcher in the extension reacts to that file.
Claude Code event → hook writes trigger file → file watcher → sound + toast + voice
Because the link is a file, it fires no matter where Claude Code runs — integrated terminal, external terminal, CLI, or even JetBrains IDE — as long as it's on the same machine.
A 🔔 Claude Notify button sits in the bottom-right status bar. Click or hover to open a menu:
- Toggle notifications ON / OFF
- Add a
.wav or .mp3 sound file
- Remove sounds (reverts to bundled sounds)
- Test the current sound
- Open full settings
Commands
| Command |
What it does |
Claude Notify: Open Menu |
Opens the status-bar quick menu |
Claude Notify: Install Claude Code Hooks |
Adds the hooks to ~/.claude/settings.json |
Claude Notify: Remove Claude Code Hooks |
Removes only the hooks this extension added |
Claude Notify: Add Sound File |
Pick a .wav/.mp3 to add to the play list |
Claude Notify: Remove Sound File |
Remove sounds from the play list |
Claude Notify: Test Sound |
Plays the current notification sound |
Claude Notify: Enable / Disable Notifications |
Toggles the master switch |
Settings
| Setting |
Default |
Description |
claudeNotify.enabled |
true |
Master on/off switch |
claudeNotify.sound.enabled |
true |
Play a sound file |
claudeNotify.tts.enabled |
false |
Speak a message (text-to-speech) |
claudeNotify.showToast |
false |
Show a VS Code popup |
claudeNotify.notifyOnStop |
true |
Notify when Claude finishes |
claudeNotify.notifyOnInput |
true |
Notify when Claude asks for input |
claudeNotify.volume |
1 |
Volume 0–1 |
claudeNotify.selectionMode |
random |
random, sequential, or fixed |
claudeNotify.sounds |
[] |
Absolute paths to your own sound files |
claudeNotify.maxPlaySeconds |
20 |
Max seconds a sound may play |
claudeNotify.tts.doneMessage |
Claude finished the task |
Spoken on Stop |
claudeNotify.tts.askMessage |
Claude needs your input |
Spoken on Notification |
Sound playback — no native dependencies
The extension shells out to a player that ships with your OS:
- Windows — PowerShell
System.Windows.Media.MediaPlayer (.wav and .mp3 with volume control)
- macOS —
afplay
- Linux — first available of
paplay, ffplay, aplay, mpg123, play
Bundled sounds are .wav (universally supported). Add your own .mp3 via claudeNotify.sounds — on Linux, .mp3 needs ffplay or mpg123.
Privacy
Everything is local. The extension only reads/writes files in your home directory (~/.claude-notify/ and, with your consent, ~/.claude/settings.json) and plays audio. No network calls, ever.
Found this useful?
If this saves you time, a ⭐ rating on the VS Code Marketplace helps others find it. Bug reports and feature requests go to GitHub Issues.
Unofficial. This extension is not affiliated with, endorsed by, or sponsored by Anthropic. "Claude" and "Claude Code" are referenced only to describe what the extension works with.
MIT License