Skip to content

feat(agents): add --sounds option to codemie setup command for installing audio feedback system#135

Merged
8nevil8 merged 10 commits intocodemie-ai:mainfrom
homich1991:main
Feb 13, 2026
Merged

feat(agents): add --sounds option to codemie setup command for installing audio feedback system#135
8nevil8 merged 10 commits intocodemie-ai:mainfrom
homich1991:main

Conversation

@homich1991
Copy link
Contributor

@homich1991 homich1991 commented Feb 9, 2026

Summary

Introduces the --sounds option for codemie setup command that installs audio feedback for Claude Code hooks. The system plays sounds on key events (SessionStart, UserPromptSubmit, PermissionRequest, Stop).

Original idea: https://x.com/delba_oliveira/status/2020515010985005255?s=46&t=ukLy_CZ-WY30mj3kuA3BUQ

Features

Cross-platform audio player detection (afplay, aplay, paplay, mpg123)
Automatic hook directory creation (~/.claude/hooks/)
play-random-sound.sh script installation
settings.json configuration with hooks
Documentation with sound download resources

Changes

Add new option to setup script which do all installation and settings change.
User only needs to add sounds to respective directories

Impact

Users will have ability to activate sound system for more convenient and fun use of codemie-claude

Checklist

  • Self-reviewed
  • Manual testing performed
  • Documentation updated (if needed)
  • No breaking changes (or clearly documented)

homich1991 and others added 7 commits February 9, 2026 15:05
Introduces the /codemie:sound-hooks-add plugin command that installs audio
feedback for Claude Code hooks. The system plays random sounds on key events
(SessionStart, UserPromptSubmit, PermissionRequest, Stop).

Features:
- Cross-platform audio player detection (afplay, aplay, paplay, mpg123)
- Automatic hook directory creation (~/.claude/hooks/)
- play-random-sound.sh script installation
- settings.json configuration with hooks
- Documentation with sound download resources

Generated with AI

Co-Authored-By: codemie-ai <codemie.ai@gmail.com>
- Move play-random-sound.sh from plugin scripts to shared addons directory
- Remove sound-hooks-add.md command in favor of programmatic installation
- Create sounds-installer.ts utility for automated hook setup
- Add hook configuration logic to setup command
- Update plugin README to reflect new installation method
- Integrate sound hooks into main setup flow for better UX
- Update SSO plugin tests to reflect new installation flow

Breaking Change: sound-hooks-add command removed, now part of setup flow

Generated with AI

Co-Authored-By: codemie-ai <codemie.ai@gmail.com>
Security & Cross-platform:
- Replace process.env.HOME with os.homedir() for Windows compatibility
- Add Windows installation instructions (mpg123 via Chocolatey)
- Fix misleading "Cross-platform" label on Linux-only command

Error Handling:
- Add logging to script path fallback catch block
- Use createErrorContext() for all error logging (3 locations)
- Add structured error metadata (operation, paths, etc.)

Type Safety:
- Replace 'any' type with ClaudeSettings interface
- Add validation for settings.json structure (object vs array)
- Log warnings for invalid settings structure

Performance:
- Use Promise.all() for parallel directory creation (4 dirs)

Documentation:
- Add JSDoc explaining UI exception in utils layer
- Update error message to reference correct command (setup --sounds)

Generated with AI

Co-Authored-By: codemie-ai <codemie.ai@gmail.com>
Security & Cross-platform:
- Replace process.env.HOME with os.homedir() for Windows compatibility
- Add Windows installation instructions (mpg123 via Chocolatey)
- Fix misleading "Cross-platform" label on Linux-only command

Error Handling:
- Add logging to script path fallback catch block
- Use createErrorContext() for all error logging (3 locations)
- Add structured error metadata (operation, paths, etc.)

Type Safety:
- Replace 'any' type with ClaudeSettings interface
- Add validation for settings.json structure (object vs array)
- Log warnings for invalid settings structure

Performance:
- Use Promise.all() for parallel directory creation (4 dirs)

Documentation:
- Add JSDoc explaining UI exception in utils layer
- Update error message to reference correct command (setup --sounds)

Generated with AI

Co-Authored-By: codemie-ai <codemie.ai@gmail.com>
# Conflicts:
#	src/cli/commands/setup.ts
# Conflicts:
#	src/cli/commands/setup.ts
- Move sounds-installer from utils to agents/plugins/claude for better organization
- Add play-random-sound.ps1 script for Windows compatibility
- Relocate play-random-sound.sh to plugin/sounds directory
- Add Windows-specific instructions in installation output and README
- Update hooks configuration to support sound playback on multiple events
- Enhance BaseAgentAdapter with sounds installation hooks

Co-Authored-By: codemie-ai <codemie.ai@gmail.com>"
@8nevil8 8nevil8 merged commit 9140ef0 into codemie-ai:main Feb 13, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants