Cursor Task Sound Notifier
Never miss a completed AI task again. This extension plays a looping sound alert whenever Cursor finishes an agent task — so you can freely switch to another window without constantly checking back.
Features
- Looping alert — the sound repeats until you explicitly stop it, so you won't miss the notification even if you step away
- One-click to stop — a notification popup appears with a Stop Sound button; clicking it immediately silences the alert
- Custom sound support — point to any
.wav, .mp3, .ogg, .aac, .flac or .m4a file for a fully personalized alert
- Built-in Windows system sounds — choose from Exclamation, Asterisk, Question, Hand, or Beep without any extra files
- Tunable repeat speed — control the pause between each loop (set to
0 for maximum spam, back-to-back with no gap)
- Visual notification — optional popup message alongside the sound, with customizable text
- Zero configuration — the Cursor hook is installed automatically on first launch
- Cross-platform — Windows (PowerShell), macOS (afplay), Linux (paplay/aplay)
Requirements
Setup
Zero configuration required. On first activation, the extension automatically:
- Creates the Cursor hook script in
~/.cursor/hooks/
- Registers the hook in
~/.cursor/hooks.json (without overwriting your existing hooks)
A one-time notification will ask you to restart Cursor so the hook takes effect. After that, every completed AI task triggers the sound automatically.
You can test immediately without restarting via the command palette: Sound Notifier: Test sound (looping)
Configuration
All settings are available under Ctrl+, → search soundNotifier.
| Setting |
Default |
Description |
soundNotifier.enabled |
true |
Enable or disable all sound notifications |
soundNotifier.customSoundPath |
"" |
Absolute path to an audio file — .wav, .mp3, .ogg, .aac, .flac, .m4a (leave empty to use a system sound) |
soundNotifier.systemSound |
Exclamation |
Windows system sound: Exclamation, Asterisk, Question, Hand, Beep |
soundNotifier.loopIntervalMs |
300 |
Pause in ms after each sound repeat. 0 = back-to-back, no gap (most aggressive) |
soundNotifier.showNotification |
true |
Show the visual popup with the Stop Sound button |
soundNotifier.notificationMessage |
✅ AI task completed! |
Text shown in the notification |
Repeat speed presets
loopIntervalMs |
Effect |
2000+ |
Calm — a short pause between each repeat |
300 (default) |
Frequent — short pause |
0 |
Back-to-back with no gap — maximum aggression |
Example: custom sound file
Supports .wav, .mp3, .ogg, .aac, .flac, .m4a:
{
"soundNotifier.customSoundPath": "C:\\Users\\YourName\\sounds\\alert.mp3"
}
Commands
Open the command palette (Ctrl+Shift+P) and search for:
| Command |
Description |
Sound Notifier: Test sound (looping) |
Trigger the looping sound immediately |
Sound Notifier: Stop sound |
Stop any currently playing sound |
Sound Notifier: Enable / Disable |
Toggle the extension on or off |
License
MIT
| |