Ajax sounds for claude

This commit is contained in:
2026-04-14 08:28:02 +02:00
commit d99f37e7fa
37 changed files with 44 additions and 0 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Symlink
+1
View File
@@ -0,0 +1 @@
TaskCompleted
+1
View File
@@ -0,0 +1 @@
PermissionRequest
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+42
View File
@@ -0,0 +1,42 @@
#!/usr/bin/env bash
# Usage: play-hook-sound.sh <hook-type>
# hook-type: PermissionRequest | SessionStart | TaskCreated | TastCompleted
SOUNDS_DIR="$(dirname "$0")"
HOOK_TYPE="${1:-}"
if [[ -z "$HOOK_TYPE" ]]; then
echo "Usage: $0 <hook-type>" >&2
exit 1
fi
FOLDER="$SOUNDS_DIR/$HOOK_TYPE"
if [[ ! -d "$FOLDER" ]]; then
echo "Unknown hook type: $HOOK_TYPE" >&2
exit 1
fi
# Pick a random mp3 from the folder
mapfile -t FILES < <(ls "$FOLDER"/*.mp3 2>/dev/null)
if [[ ${#FILES[@]} -eq 0 ]]; then
echo "No sounds found in $FOLDER" >&2
exit 1
fi
SOUND="${FILES[RANDOM % ${#FILES[@]}]}"
# Play using whatever is available
if command -v mpv &>/dev/null; then
mpv --no-terminal "$SOUND" &
elif command -v paplay &>/dev/null; then
paplay "$SOUND" &
elif command -v aplay &>/dev/null; then
aplay "$SOUND" &
elif command -v ffplay &>/dev/null; then
ffplay -nodisp -autoexit "$SOUND" &>/dev/null &
else
echo "No audio player found (mpv, paplay, aplay, ffplay)" >&2
exit 1
fi