v4.2.2 - Robust Audio Theme Switching & Auto-Sync
What's New
Robust Audio Theme Switching
The audio_theme setting now reliably controls all 14 hooks. Previously, a hardcoded audio_files section in the config templates silently overrode the theme — switching to "custom" had no effect. This is now fixed.
Auto-Sync from Project Directory
After running git pull, the installed hook_runner.py in ~/.claude/hooks/ automatically detects the newer project version and updates itself on the next hook trigger. No manual copy needed.
configure.sh Theme Sync
Running bash scripts/configure.sh --theme custom now also copies the latest hook_runner.py to ~/.claude/hooks/, ensuring the installed copy stays current.
README: "Ask Claude Code" Quick Reference
New table in the Configuration section showing users exactly what to say to Claude Code for common tasks like switching themes and toggling hooks.
Changes
- Config templates (
default_preferences.json,user_preferences.json): Removed conflictingaudio_filesblock that overrodeaudio_theme - hook_runner.py: Added
HOOK_RUNNER_VERSIONconstant +check_and_self_update()auto-sync function + smarterget_audio_file()that ignores default template paths - configure.sh:
--themecommand now syncshook_runner.pyto~/.claude/hooks/ - README.md: Added "Ask Claude Code" table, updated config examples to use
audio_theme, removed outdatedaudio_filesexamples, version bumps - CLAUDE.md: Updated version to 4.2.2, added changelog entry
Upgrade
cd ~/claude-code-audio-hooks
git pull
# hook_runner.py will auto-sync on next hook trigger
# Or force sync now:
cp hooks/hook_runner.py ~/.claude/hooks/hook_runner.pyNo reinstall needed — existing installations self-update automatically.
Full Changelog: v4.2.1...v4.2.2