El aviso incluido
Claude Code envía una notificación de escritorio cuando termina o espera un permiso y parece que no estás, pero solo en Ghostty, Kitty e iTerm2. En Windows Terminal, VS Code, Warp y las demás, pide el pitido de la terminal:
// ~/.claude/settings.json
{
"preferredNotifChannel": "terminal_bell"
}
¿Usas tmux? Añade set -g allow-passthrough on a ~/.tmux.conf, o el aviso nunca llega a tu terminal.
Un sonido en cuanto termina
Un hook Stop se ejecuta en cuanto Claude acaba una respuesta. Elige la línea de tu sistema:
// ~/.claude/settings.json
{
"hooks": {
"Stop": [
{ "hooks": [{ "type": "command", "command": "afplay /System/Library/Sounds/Glass.aiff" }] }
]
}
}
// Windows:
"command": "powershell -NoProfile -Command \"(New-Object Media.SoundPlayer 'C:/Windows/Media/chimes.wav').PlaySync()\""
// Linux:
"command": "paplay /usr/share/sounds/freedesktop/stereo/complete.oga"
Por qué el hook Notification llega tarde
El idle_prompt del hook Notification salta un minuto después de que Claude termine, si no has escrito nada. Es un recordatorio, no un «he terminado». Usa Stop para «terminado» y Notification con permission_prompt para «necesito tu permiso», que salta tras unos seis segundos de espera.