agentvibes 2.0.12 → 2.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/.claude/commands/agent-vibes/bmad.md +0 -7
  2. package/.claude/github-star-reminder.txt +1 -1
  3. package/.claude/hooks/piper-installer.sh +7 -57
  4. package/.claude/hooks/play-tts-piper.sh +2 -10
  5. package/.claude/hooks/play-tts.sh +0 -31
  6. package/README.md +3 -3
  7. package/RELEASE_NOTES.md +44 -170
  8. package/package.json +1 -1
  9. package/src/installer.js +1 -112
  10. package/.claude/hooks/play-tts-local-wrapper.sh +0 -44
  11. package/.claude/hooks/play-tts-remote.sh +0 -81
  12. package/agentvibes.org/.claude/commands/agent-vibes/add.md +0 -21
  13. package/agentvibes.org/.claude/commands/agent-vibes/agent-vibes.md +0 -68
  14. package/agentvibes.org/.claude/commands/agent-vibes/commands.json +0 -53
  15. package/agentvibes.org/.claude/commands/agent-vibes/get.md +0 -9
  16. package/agentvibes.org/.claude/commands/agent-vibes/list.md +0 -13
  17. package/agentvibes.org/.claude/commands/agent-vibes/personality.md +0 -79
  18. package/agentvibes.org/.claude/commands/agent-vibes/preview.md +0 -16
  19. package/agentvibes.org/.claude/commands/agent-vibes/provider.md +0 -54
  20. package/agentvibes.org/.claude/commands/agent-vibes/replay.md +0 -19
  21. package/agentvibes.org/.claude/commands/agent-vibes/sample.md +0 -12
  22. package/agentvibes.org/.claude/commands/agent-vibes/sentiment.md +0 -52
  23. package/agentvibes.org/.claude/commands/agent-vibes/set-language.md +0 -47
  24. package/agentvibes.org/.claude/commands/agent-vibes/set-pretext.md +0 -65
  25. package/agentvibes.org/.claude/commands/agent-vibes/switch.md +0 -53
  26. package/agentvibes.org/.claude/commands/agent-vibes/update.md +0 -20
  27. package/agentvibes.org/.claude/commands/agent-vibes/version.md +0 -10
  28. package/agentvibes.org/.claude/commands/agent-vibes/whoami.md +0 -7
  29. package/agentvibes.org/.claude/hooks/bmad-voice-manager.sh +0 -278
  30. package/agentvibes.org/.claude/hooks/language-manager.sh +0 -190
  31. package/agentvibes.org/.claude/hooks/personality-manager.sh +0 -279
  32. package/agentvibes.org/.claude/hooks/piper-download-voices.sh +0 -133
  33. package/agentvibes.org/.claude/hooks/piper-voice-manager.sh +0 -227
  34. package/agentvibes.org/.claude/hooks/play-tts-elevenlabs.sh +0 -201
  35. package/agentvibes.org/.claude/hooks/play-tts-piper.sh +0 -175
  36. package/agentvibes.org/.claude/hooks/play-tts.sh +0 -138
  37. package/agentvibes.org/.claude/hooks/provider-commands.sh +0 -374
  38. package/agentvibes.org/.claude/hooks/provider-manager.sh +0 -196
  39. package/agentvibes.org/.claude/hooks/sentiment-manager.sh +0 -163
  40. package/agentvibes.org/.claude/hooks/voice-manager.sh +0 -349
  41. package/agentvibes.org/.claude/hooks/voices-config.sh +0 -33
  42. package/agentvibes.org/.claude/journal/2025-10-07.html +0 -373
  43. package/agentvibes.org/.claude/journal/index.html +0 -91
  44. package/agentvibes.org/.claude/output-styles/agent-vibes.md +0 -203
  45. package/agentvibes.org/.claude/personalities/angry.md +0 -16
  46. package/agentvibes.org/.claude/personalities/annoying.md +0 -16
  47. package/agentvibes.org/.claude/personalities/crass.md +0 -16
  48. package/agentvibes.org/.claude/personalities/dramatic.md +0 -16
  49. package/agentvibes.org/.claude/personalities/dry-humor.md +0 -52
  50. package/agentvibes.org/.claude/personalities/flirty.md +0 -22
  51. package/agentvibes.org/.claude/personalities/funny.md +0 -16
  52. package/agentvibes.org/.claude/personalities/grandpa.md +0 -34
  53. package/agentvibes.org/.claude/personalities/millennial.md +0 -16
  54. package/agentvibes.org/.claude/personalities/moody.md +0 -16
  55. package/agentvibes.org/.claude/personalities/normal.md +0 -18
  56. package/agentvibes.org/.claude/personalities/pirate.md +0 -16
  57. package/agentvibes.org/.claude/personalities/poetic.md +0 -16
  58. package/agentvibes.org/.claude/personalities/professional.md +0 -16
  59. package/agentvibes.org/.claude/personalities/robot.md +0 -16
  60. package/agentvibes.org/.claude/personalities/sarcastic.md +0 -40
  61. package/agentvibes.org/.claude/personalities/sassy.md +0 -16
  62. package/agentvibes.org/.claude/personalities/surfer-dude.md +0 -16
  63. package/agentvibes.org/.claude/personalities/zen.md +0 -16
  64. package/agentvibes.org/.mcp-minimal.json +0 -60
  65. package/agentvibes.org/CHANGELOG.md +0 -56
  66. package/agentvibes.org/README.md +0 -93
  67. package/agentvibes.org/app/(auth)/layout.tsx +0 -15
  68. package/agentvibes.org/app/(auth)/reset-password/page.tsx +0 -45
  69. package/agentvibes.org/app/(auth)/signin/page.tsx +0 -82
  70. package/agentvibes.org/app/(auth)/signup/page.tsx +0 -104
  71. package/agentvibes.org/app/(default)/layout.tsx +0 -31
  72. package/agentvibes.org/app/(default)/page.tsx +0 -20
  73. package/agentvibes.org/app/api/hello/route.ts +0 -3
  74. package/agentvibes.org/app/css/additional-styles/theme.css +0 -82
  75. package/agentvibes.org/app/css/additional-styles/utility-patterns.css +0 -55
  76. package/agentvibes.org/app/css/style.css +0 -100
  77. package/agentvibes.org/app/layout.tsx +0 -63
  78. package/agentvibes.org/components/cta.tsx +0 -58
  79. package/agentvibes.org/components/features.tsx +0 -256
  80. package/agentvibes.org/components/hero-home.tsx +0 -133
  81. package/agentvibes.org/components/modal-video.tsx +0 -137
  82. package/agentvibes.org/components/page-illustration.tsx +0 -55
  83. package/agentvibes.org/components/spotlight.tsx +0 -77
  84. package/agentvibes.org/components/testimonials.tsx +0 -282
  85. package/agentvibes.org/components/ui/footer.tsx +0 -82
  86. package/agentvibes.org/components/ui/header.tsx +0 -53
  87. package/agentvibes.org/components/ui/logo.tsx +0 -10
  88. package/agentvibes.org/components/workflows.tsx +0 -176
  89. package/agentvibes.org/next.config.js +0 -4
  90. package/agentvibes.org/package-lock.json +0 -1974
  91. package/agentvibes.org/package.json +0 -30
  92. package/agentvibes.org/pnpm-lock.yaml +0 -1141
  93. package/agentvibes.org/postcss.config.js +0 -5
  94. package/agentvibes.org/public/audio/02-sarcastic.mp3 +0 -0
  95. package/agentvibes.org/public/audio/03-angry.mp3 +0 -0
  96. package/agentvibes.org/public/audio/04-grandpa.mp3 +0 -0
  97. package/agentvibes.org/public/audio/05-sarcastic-example2.mp3 +0 -0
  98. package/agentvibes.org/public/audio/french-rachel.mp3 +0 -0
  99. package/agentvibes.org/public/audio/spanish-antoni.mp3 +0 -0
  100. package/agentvibes.org/public/favicon.ico +0 -0
  101. package/agentvibes.org/public/fonts/nacelle-italic.woff2 +0 -0
  102. package/agentvibes.org/public/fonts/nacelle-regular.woff2 +0 -0
  103. package/agentvibes.org/public/fonts/nacelle-semibold.woff2 +0 -0
  104. package/agentvibes.org/public/fonts/nacelle-semibolditalic.woff2 +0 -0
  105. package/agentvibes.org/public/images/blurred-shape-gray.svg +0 -1
  106. package/agentvibes.org/public/images/blurred-shape.svg +0 -1
  107. package/agentvibes.org/public/images/client-logo-01.svg +0 -1
  108. package/agentvibes.org/public/images/client-logo-02.svg +0 -1
  109. package/agentvibes.org/public/images/client-logo-03.svg +0 -1
  110. package/agentvibes.org/public/images/client-logo-04.svg +0 -1
  111. package/agentvibes.org/public/images/client-logo-05.svg +0 -1
  112. package/agentvibes.org/public/images/client-logo-06.svg +0 -1
  113. package/agentvibes.org/public/images/client-logo-07.svg +0 -1
  114. package/agentvibes.org/public/images/client-logo-08.svg +0 -1
  115. package/agentvibes.org/public/images/client-logo-09.svg +0 -1
  116. package/agentvibes.org/public/images/features.png +0 -0
  117. package/agentvibes.org/public/images/footer-illustration.svg +0 -1
  118. package/agentvibes.org/public/images/hero-image-01.jpg +0 -0
  119. package/agentvibes.org/public/images/logo.svg +0 -1
  120. package/agentvibes.org/public/images/page-illustration.svg +0 -1
  121. package/agentvibes.org/public/images/secondary-illustration.svg +0 -1
  122. package/agentvibes.org/public/images/testimonial-01.jpg +0 -0
  123. package/agentvibes.org/public/images/testimonial-02.jpg +0 -0
  124. package/agentvibes.org/public/images/testimonial-03.jpg +0 -0
  125. package/agentvibes.org/public/images/testimonial-04.jpg +0 -0
  126. package/agentvibes.org/public/images/testimonial-05.jpg +0 -0
  127. package/agentvibes.org/public/images/testimonial-06.jpg +0 -0
  128. package/agentvibes.org/public/images/testimonial-07.jpg +0 -0
  129. package/agentvibes.org/public/images/testimonial-08.jpg +0 -0
  130. package/agentvibes.org/public/images/testimonial-09.jpg +0 -0
  131. package/agentvibes.org/public/images/workflow-01.png +0 -0
  132. package/agentvibes.org/public/images/workflow-02.png +0 -0
  133. package/agentvibes.org/public/images/workflow-03.png +0 -0
  134. package/agentvibes.org/public/videos/video.mp4 +0 -0
  135. package/agentvibes.org/tsconfig.json +0 -28
  136. package/agentvibes.org/utils/useMasonry.tsx +0 -67
  137. package/agentvibes.org/utils/useMousePosition.tsx +0 -27
  138. package/docs/REMOTE_TTS_SETUP.md +0 -190
@@ -1,8 +1,3 @@
1
- ---
2
- description: Complete BMAD voice integration for agents
3
- argument-hint: [command] [args...]
4
- ---
5
-
6
1
  # /agent-vibes:bmad Command
7
2
 
8
3
  Complete BMAD voice integration - assigns unique voices to each BMAD agent AND makes them speak when activated.
@@ -199,5 +194,3 @@ if [[ -n "$BMAD_AGENT_ID" ]]; then
199
194
  fi
200
195
  fi
201
196
  ```
202
-
203
- !bash .claude/hooks/bmad-voice-manager.sh $ARGUMENTS
@@ -1 +1 @@
1
- 20251010
1
+ 20251009
@@ -69,65 +69,15 @@ fi
69
69
 
70
70
  # Install Piper TTS
71
71
  echo "📥 Installing Piper TTS via pipx..."
72
- pipx install piper-tts || pipx install --force piper-tts
72
+ pipx install piper-tts
73
73
 
74
- # Ensure pipx's bin directory is in PATH
75
- echo ""
76
- echo "🔧 Configuring PATH..."
77
- pipx ensurepath
78
-
79
- # Add pipx bin to current session PATH
80
- PIPX_BIN_DIR="$HOME/.local/bin"
81
- if [[ -d "$PIPX_BIN_DIR" ]]; then
82
- export PATH="$PIPX_BIN_DIR:$PATH"
83
- fi
84
-
85
- # Check if piper is available now
86
74
  if ! command -v piper &> /dev/null; then
87
- # Try to find piper in the pipx installation directory
88
- if [[ -f "$PIPX_BIN_DIR/piper" ]]; then
89
- echo "✅ Piper installed at: $PIPX_BIN_DIR/piper"
90
-
91
- # Update shell configuration files
92
- SHELL_CONFIG=""
93
- if [[ -f "$HOME/.bashrc" ]]; then
94
- SHELL_CONFIG="$HOME/.bashrc"
95
- elif [[ -f "$HOME/.zshrc" ]]; then
96
- SHELL_CONFIG="$HOME/.zshrc"
97
- fi
98
-
99
- if [[ -n "$SHELL_CONFIG" ]]; then
100
- # Check if PATH update already exists
101
- if ! grep -q "export PATH=\"\$HOME/.local/bin:\$PATH\"" "$SHELL_CONFIG"; then
102
- echo "" >> "$SHELL_CONFIG"
103
- echo "# Added by AgentVibes Piper installer" >> "$SHELL_CONFIG"
104
- echo "export PATH=\"\$HOME/.local/bin:\$PATH\"" >> "$SHELL_CONFIG"
105
- echo "✅ Updated $SHELL_CONFIG with PATH configuration"
106
- fi
107
- fi
108
-
109
- # Make piper available in current session
110
- export PATH="$PIPX_BIN_DIR:$PATH"
111
-
112
- # Verify it's working
113
- if "$PIPX_BIN_DIR/piper" --version &> /dev/null; then
114
- echo "✅ Piper is working! You may need to restart your terminal or run:"
115
- echo " export PATH=\"\$HOME/.local/bin:\$PATH\""
116
- else
117
- echo "❌ Piper installed but not executing properly"
118
- echo " Please restart your terminal and try again"
119
- exit 1
120
- fi
121
- else
122
- echo ""
123
- echo "❌ Installation completed but piper command not found"
124
- echo ""
125
- echo " Try these steps:"
126
- echo " 1. Run: pipx ensurepath"
127
- echo " 2. Restart your terminal"
128
- echo " 3. Run: export PATH=\"\$HOME/.local/bin:\$PATH\""
129
- exit 1
130
- fi
75
+ echo ""
76
+ echo "❌ Installation completed but piper command not found in PATH"
77
+ echo ""
78
+ echo " Try running: pipx ensurepath"
79
+ echo " Then restart your terminal"
80
+ exit 1
131
81
  fi
132
82
 
133
83
  echo ""
@@ -79,15 +79,7 @@ if [[ -z "$TEXT" ]]; then
79
79
  fi
80
80
 
81
81
  # Check if Piper is installed
82
- PIPER_CMD=""
83
- if command -v piper &> /dev/null; then
84
- PIPER_CMD="piper"
85
- elif [[ -x "$HOME/.local/bin/piper" ]]; then
86
- # Check pipx installation directory
87
- PIPER_CMD="$HOME/.local/bin/piper"
88
- echo "⚠️ Using Piper from: $PIPER_CMD"
89
- echo " Add to PATH: export PATH=\"\$HOME/.local/bin:\$PATH\""
90
- else
82
+ if ! command -v piper &> /dev/null; then
91
83
  echo "❌ Error: Piper TTS not installed"
92
84
  echo "Install with: pipx install piper-tts"
93
85
  echo "Or run: .claude/hooks/piper-installer.sh"
@@ -160,7 +152,7 @@ TEMP_FILE="$AUDIO_DIR/tts-$(date +%s).wav"
160
152
  # @exitcode 0=success, 4=synthesis error
161
153
  # @sideeffects Creates audio file
162
154
  # @edgecases Handles piper errors, invalid models
163
- echo "$TEXT" | "$PIPER_CMD" --model "$VOICE_PATH" --output_file "$TEMP_FILE" 2>/dev/null
155
+ echo "$TEXT" | piper --model "$VOICE_PATH" --output_file "$TEMP_FILE" 2>/dev/null
164
156
 
165
157
  if [[ ! -f "$TEMP_FILE" ]] || [[ ! -s "$TEMP_FILE" ]]; then
166
158
  echo "❌ Failed to synthesize speech with Piper"
@@ -18,37 +18,6 @@ VOICE_OVERRIDE="$2" # Optional: voice name or ID
18
18
  # Get script directory
19
19
  SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
20
20
 
21
- # Check if we're in an SSH session and should use remote TTS
22
- if [ -n "$SSH_CONNECTION" ] || [ -n "$SSH_CLIENT" ]; then
23
- # Check if remote TTS forwarding is enabled
24
- if [ -f "$HOME/.claude/tts-remote-forward" ] || [ "$AGENTVIBES_REMOTE_TTS" = "true" ]; then
25
- # In SSH session with forwarding enabled - generate locally but don't play
26
- # The audio data should be captured and sent to the client
27
-
28
- # Source provider manager to get active provider
29
- source "$SCRIPT_DIR/provider-manager.sh"
30
- ACTIVE_PROVIDER=$(get_active_provider)
31
-
32
- case "$ACTIVE_PROVIDER" in
33
- piper)
34
- # Generate audio and output to stdout for SSH forwarding
35
- exec "$SCRIPT_DIR/play-tts-remote.sh" "$TEXT"
36
- ;;
37
- elevenlabs)
38
- # For ElevenLabs, we might need a different approach
39
- # since it requires API calls
40
- exec "$SCRIPT_DIR/play-tts-elevenlabs.sh" "$TEXT" "$VOICE_OVERRIDE"
41
- ;;
42
- *)
43
- echo "❌ Unknown provider: $ACTIVE_PROVIDER" >&2
44
- exit 1
45
- ;;
46
- esac
47
- exit 0
48
- fi
49
- fi
50
-
51
- # Normal local playback path
52
21
  # Source provider manager to get active provider
53
22
  source "$SCRIPT_DIR/provider-manager.sh"
54
23
 
package/README.md CHANGED
@@ -11,7 +11,7 @@
11
11
  [![Publish](https://github.com/paulpreibisch/AgentVibes/actions/workflows/publish.yml/badge.svg)](https://github.com/paulpreibisch/AgentVibes/actions/workflows/publish.yml)
12
12
  [![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
13
13
 
14
- **Author**: Paul Preibisch ([@997Fire](https://x.com/997Fire)) | **Version**: v2.0.10
14
+ **Author**: Paul Preibisch ([@997Fire](https://x.com/997Fire)) | **Version**: v2.0.14
15
15
 
16
16
  ---
17
17
 
@@ -45,8 +45,8 @@
45
45
 
46
46
  ## 📰 Latest Release
47
47
 
48
- **[v2.0.0 - The Multi-Provider Revolution](https://github.com/paulpreibisch/AgentVibes/releases/tag/v2.0.10)** 🎉
49
-
48
+ **[v2.0.14 - Release Notes](https://github.com/paulpreibisch/AgentVibes/releases/tag/v2.0.14)** 🎉
49
+ This patch release updates the npm package's README to display the correct version numbers. Since v2.0.13 was published before the README was corrected, the npm website displayed outdated version information. This release ensures users see v2.0.14 everywhere.
50
50
  The biggest update ever! **Multi-provider TTS support** (ElevenLabs + Piper TTS), **30+ languages**, expanded voice library (27+ voices), advanced sentiment system, enhanced BMAD integration, and comprehensive multilingual support. Choose between premium ElevenLabs voices or free offline Piper TTS!
51
51
 
52
52
  **Key highlights:**
package/RELEASE_NOTES.md CHANGED
@@ -1,201 +1,75 @@
1
1
  # 🎤 AgentVibes Release Notes
2
2
 
3
- ## 📦 v2.0.12 - Remote TTS & BMAD Command Fix (2025-01-10)
3
+ ## 📦 v2.0.14 - README Version Fix for npm (2025-10-11)
4
4
 
5
5
  ### 🤖 AI Summary
6
6
 
7
- This patch release adds powerful remote TTS audio forwarding for WSL/remote server environments and fixes the missing `/agent-vibes:bmad` slash command. Users working on remote servers or WSL can now hear TTS audio on their local machine through SSH forwarding, while BMAD users can finally access the voice integration command that was previously undetected.
8
-
9
- ### ✨ New Features
10
-
11
- #### Remote TTS Audio Forwarding
12
- - **SSH audio forwarding** - TTS audio plays on your local machine when working remotely
13
- - **Automatic detection** - Detects SSH_CONNECTION and forwards audio automatically
14
- - **Multiple forwarding methods**:
15
- - OSC 52 clipboard (terminals supporting OSC sequences)
16
- - HTTP server (Python-based local audio player)
17
- - SSH tunnel (port forwarding setup)
18
- - **WSL compatibility** - Perfect for WSL users who want audio on Windows host
19
- - **Configuration guide** - New `docs/REMOTE_TTS_SETUP.md` with setup instructions
20
- - **Fallback support** - Gracefully falls back to local playback if forwarding fails
21
-
22
- **New Scripts:**
23
- - `.claude/hooks/play-tts-remote.sh` - Remote audio forwarding logic
24
- - `.claude/hooks/play-tts-local-wrapper.sh` - Local playback wrapper for HTTP method
25
- - `docs/REMOTE_TTS_SETUP.md` - Complete setup guide
26
-
27
- #### Enhanced Piper TTS Installation
28
- - **PATH detection** - Automatically finds Piper in `~/.local/bin` even if not in PATH
29
- - **Installation validation** - Verifies Piper installation success before proceeding
30
- - **Better error handling** - Clear messages when Piper isn't found
31
- - **Automatic voice download prompts** - Offers to download voice models after installation
7
+ This patch release updates the npm package's README to display the correct version numbers. Since v2.0.13 was published before the README was corrected, the npm website displayed outdated version information. This release ensures users see v2.0.14 everywhere.
32
8
 
33
9
  ### 🐛 Bug Fixes
34
10
 
35
- #### BMAD Command Detection Fix
36
- - **Fixed**: `/agent-vibes:bmad` command not appearing in Claude Code slash command list
37
- - **Root Cause**: Missing YAML frontmatter and bash directive in command file
38
- - **Impact**: BMAD voice integration features are now accessible
39
- - **Added**:
40
- - YAML frontmatter with description and argument-hint
41
- - `!bash .claude/hooks/bmad-voice-manager.sh $ARGUMENTS` directive
42
- - **File**: `.claude/commands/agent-vibes/bmad.md`
43
-
44
- **What Was Broken:**
45
- ```bash
46
- # Before: Command not found
47
- /agent-vibes:bmad status
48
- # Error: Unknown command
49
-
50
- # After: Works perfectly
51
- /agent-vibes:bmad status
52
- # ✅ BMAD voice plugin: ENABLED
53
- ```
54
-
55
- ### 🔧 Technical Changes
56
-
57
- #### Remote TTS Architecture
58
- **Main Router (`play-tts.sh`):**
59
- - Detects `$SSH_CONNECTION` environment variable
60
- - Routes to `play-tts-remote.sh` when SSH session detected
61
- - Falls back to local playback for non-SSH sessions
62
-
63
- **Forwarding Methods:**
64
- 1. **OSC 52 (Clipboard)**:
65
- - Encodes audio as base64
66
- - Sends via OSC 52 escape sequence
67
- - Requires terminal supporting OSC 52
68
- - Best for: iTerm2, Windows Terminal, Hyper
69
-
70
- 2. **HTTP Server**:
71
- - Starts Python HTTP server on port 8765
72
- - Serves audio files over SSH tunnel
73
- - Opens browser to play audio
74
- - Best for: All environments with Python
75
-
76
- 3. **SSH Tunnel**:
77
- - Uses SSH reverse tunnel (-R)
78
- - Forwards audio files to local machine
79
- - Requires SSH agent forwarding
80
- - Best for: Advanced users
81
-
82
- **Configuration:**
83
- ```bash
84
- # Set in .claude/tts-remote-method.txt (project-local)
85
- # or ~/.claude/tts-remote-method.txt (global)
86
- echo "http" > .claude/tts-remote-method.txt
87
- ```
88
-
89
- #### Piper Installer Improvements
90
- **Modified: `.claude/hooks/piper-installer.sh`**
91
- - Added `~/.local/bin/piper` detection
92
- - Checks for execution permission
93
- - Validates installation with `piper --version`
94
- - Shows PATH instructions when Piper found but not in PATH
95
- - Auto-detects pipx installation directory
11
+ #### npm README Version Display
12
+ - **Fixed**: npm package page now shows correct version (v2.0.14)
13
+ - **Root Cause**: v2.0.13 was published with uncorrected README
14
+ - **Impact**: Users visiting npmjs.com/package/agentvibes now see accurate version info
15
+ - **Solution**: Republish with corrected README
96
16
 
97
- **Modified: `src/installer.js`**
98
- - Enhanced Piper installation workflow
99
- - Added PATH detection before installation
100
- - Shows helpful PATH export command when needed
101
- - Validates Piper is accessible after installation
17
+ ### 📝 What Changed
102
18
 
103
- ### 📊 Files Changed
19
+ **Modified: `README.md`**
20
+ - Author line now shows v2.0.14
21
+ - Latest Release section shows v2.0.14
104
22
 
105
- **Added (3 files):**
106
- - `.claude/hooks/play-tts-remote.sh` (81 lines)
107
- - `.claude/hooks/play-tts-local-wrapper.sh` (44 lines)
108
- - `docs/REMOTE_TTS_SETUP.md` (190 lines)
23
+ **Modified: `package.json`, `package-lock.json`**
24
+ - Bumped version from 2.0.13 to 2.0.14
109
25
 
110
- **Modified (5 files):**
111
- - `.claude/commands/agent-vibes/bmad.md` (8 insertions)
112
- - `.claude/hooks/play-tts.sh` (31 insertions)
113
- - `.claude/hooks/play-tts-piper.sh` (12 lines changed)
114
- - `.claude/hooks/piper-installer.sh` (58 insertions, 6 deletions)
115
- - `src/installer.js` (107 insertions, 6 deletions)
116
-
117
- **Total Changes:** 545 insertions, 13 deletions across 8 files
26
+ ### 🔄 Migration Notes
118
27
 
119
- ### 🎯 User Impact
28
+ **For All Users:**
29
+ - No functional changes - this is purely a documentation update
30
+ - Update via `/agent-vibes:update` to get latest version
31
+ - All features from v2.0.13 are identical
120
32
 
121
- **Before v2.0.12:**
122
- - Remote/WSL users couldn't hear TTS audio
123
- - `/agent-vibes:bmad` command was invisible
124
- - Piper installation didn't validate PATH
125
- - No remote audio forwarding options
33
+ ---
126
34
 
127
- **After v2.0.12:**
128
- - Remote TTS works via SSH forwarding
129
- - BMAD command fully functional
130
- - Piper installer validates PATH and accessibility
131
- - Multiple forwarding methods for different environments
132
- - Complete setup guide for remote audio
35
+ ## 📦 v2.0.13 - Workflow Fix & Clean Release (2025-10-11)
133
36
 
134
- ### 💡 Usage Examples
37
+ ### 🤖 AI Summary
135
38
 
136
- #### Remote TTS Setup
137
- ```bash
138
- # Quick setup for HTTP method (recommended)
139
- echo "http" > .claude/tts-remote-method.txt
39
+ This patch release fixes the npm publish workflow's README update patterns and provides a clean version without the experimental remote-SSH features that were accidentally included in v2.0.11 and v2.0.12. The workflow now correctly updates the README version information during releases, and users get a stable version based on v2.0.10.
140
40
 
141
- # On your LOCAL machine, create SSH tunnel:
142
- ssh -R 8765:localhost:8765 user@remote-server
41
+ ### 🐛 Bug Fixes
143
42
 
144
- # Now TTS audio plays on your local machine!
145
- ```
43
+ #### Publish Workflow README Update Fix
44
+ - **Fixed sed patterns** - Workflow now correctly matches and updates README release section
45
+ - **Flexible pattern matching** - Handles different release title formats ("Multi-Provider Revolution" vs "Release Notes")
46
+ - **Correct version display** - README now shows v2.0.13 in both author line and latest release section
146
47
 
147
- #### BMAD Voice Integration
148
- ```bash
149
- # Enable BMAD plugin
150
- /agent-vibes:bmad enable
48
+ #### Clean Version Without Remote-SSH Features
49
+ - **Skipped v2.0.11/v2.0.12** - These versions included experimental remote TTS forwarding features
50
+ - **Based on v2.0.10** - This is a clean release from the stable master branch
51
+ - **No breaking changes** - All existing functionality from v2.0.10 is preserved
151
52
 
152
- # Check status
153
- /agent-vibes:bmad status
53
+ ### 📝 Technical Changes
154
54
 
155
- # Set custom voice for agent
156
- /agent-vibes:bmad set pm "Aria"
55
+ **Modified: `.github/workflows/publish.yml`**
56
+ - Updated sed pattern from exact "Release Notes" match to flexible `[^\]]*` pattern
57
+ - Improved pattern to match any title format in release section header
58
+ - Added comment explaining the flexible matching approach
157
59
 
158
- # List all agent mappings
159
- /agent-vibes:bmad list
160
- ```
60
+ **Modified: `package.json`, `package-lock.json`**
61
+ - Bumped version from 2.0.10 to 2.0.13
161
62
 
162
63
  ### 🔄 Migration Notes
163
64
 
164
- **For Remote/WSL Users:**
165
- 1. Update AgentVibes: `npx agentvibes update`
166
- 2. Read setup guide: `docs/REMOTE_TTS_SETUP.md`
167
- 3. Choose forwarding method (HTTP recommended)
168
- 4. Configure SSH tunnel for chosen method
169
- 5. Enjoy TTS audio on local machine!
170
-
171
- **For BMAD Users:**
172
- - Update to v2.0.12 to access `/agent-vibes:bmad` command
173
- - No configuration changes needed
174
- - All existing BMAD voice mappings preserved
175
-
176
65
  **For All Users:**
177
- - No breaking changes
178
- - Remote TTS is optional (auto-detected)
179
- - Local TTS works exactly as before
180
-
181
- ### 📝 Commits in This Release
66
+ - Update via `/agent-vibes:update` or `npx agentvibes@latest install`
67
+ - No breaking changes - all settings and configurations preserved
68
+ - If you were on v2.0.12, this removes the remote-SSH code
182
69
 
183
- ```
184
- ef99bda feat: add remote TTS audio forwarding support
185
- 156feb7 feat: enhance Piper TTS installation and audio forwarding support
186
- ```
187
-
188
- ### 🙏 Credits
189
-
190
- - Thanks to WSL and remote server users who requested audio forwarding
191
- - Special appreciation to BMAD users who reported the missing command
192
- - Python HTTP server method inspired by similar remote audio solutions
193
-
194
- ---
195
-
196
- 🤖 Generated with [Claude Code](https://claude.com/claude-code)
197
-
198
- Co-Authored-By: Claude <noreply@anthropic.com>
70
+ **Deprecation Notice:**
71
+ - v2.0.12 includes experimental features and should be avoided
72
+ - v2.0.13 is the recommended stable version
199
73
 
200
74
  ---
201
75
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "agentvibes",
4
- "version": "2.0.12",
4
+ "version": "2.0.14",
5
5
  "description": "Now your AI Agents can finally talk back! Professional TTS voice for Claude Code with multi-provider support.",
6
6
  "homepage": "https://agentvibes.org",
7
7
  "keywords": [
package/src/installer.js CHANGED
@@ -136,93 +136,8 @@ async function install(options = {}) {
136
136
 
137
137
  selectedProvider = provider;
138
138
 
139
- // If Piper selected, check if Piper is installed
139
+ // If Piper selected, ask for voice storage location
140
140
  if (selectedProvider === 'piper') {
141
- // Check if Piper is installed
142
- let piperInstalled = false;
143
- try {
144
- const { execSync } = await import('node:child_process');
145
- // First check if piper is in PATH
146
- execSync('which piper', { stdio: 'ignore' });
147
- piperInstalled = true;
148
- } catch {
149
- // If not in PATH, check if it exists in pipx installation directory
150
- const homeDir = process.env.HOME || process.env.USERPROFILE;
151
- const pipxPiperPath = path.join(homeDir, '.local', 'bin', 'piper');
152
- try {
153
- await fs.access(pipxPiperPath, fs.constants.X_OK);
154
- piperInstalled = true;
155
- console.log(chalk.yellow('\n⚠️ Piper is installed but not in PATH'));
156
- console.log(chalk.gray(` Location: ${pipxPiperPath}`));
157
- console.log(chalk.gray(' Run this to add to PATH:'));
158
- console.log(chalk.cyan(' export PATH="$HOME/.local/bin:$PATH"\n'));
159
- } catch {
160
- // Piper not found anywhere
161
- }
162
- }
163
-
164
- if (!piperInstalled) {
165
- console.log(chalk.yellow('\n⚠️ Piper TTS is not installed'));
166
- console.log(chalk.gray(' Piper is a free, offline neural TTS system'));
167
- console.log(chalk.gray(' It needs to be installed separately via pipx\n'));
168
-
169
- const { installPiper } = await inquirer.prompt([
170
- {
171
- type: 'confirm',
172
- name: 'installPiper',
173
- message: 'Would you like to install Piper TTS now?',
174
- default: true,
175
- },
176
- ]);
177
-
178
- if (installPiper) {
179
- console.log(chalk.cyan('\n🚀 Installing Piper TTS...\n'));
180
-
181
- // Check if piper-installer.sh exists in the source directory
182
- const piperInstallerPath = path.join(__dirname, '..', '.claude', 'hooks', 'piper-installer.sh');
183
-
184
- try {
185
- await fs.access(piperInstallerPath);
186
-
187
- // Run the Piper installer
188
- const { execSync } = await import('node:child_process');
189
- try {
190
- execSync(`bash "${piperInstallerPath}"`, {
191
- stdio: 'inherit',
192
- cwd: path.dirname(piperInstallerPath)
193
- });
194
-
195
- // Verify installation succeeded
196
- try {
197
- execSync('which piper', { stdio: 'ignore' });
198
- console.log(chalk.green('\n✓ Piper TTS installed successfully!\n'));
199
- piperInstalled = true;
200
- } catch {
201
- console.log(chalk.yellow('\n⚠️ Piper installed but not found in PATH'));
202
- console.log(chalk.gray(' You may need to restart your terminal\n'));
203
- }
204
- } catch (error) {
205
- console.log(chalk.red('\n✗ Piper installation failed'));
206
- console.log(chalk.gray(' You can try installing manually later with:'));
207
- console.log(chalk.cyan(' .claude/hooks/piper-installer.sh\n'));
208
- }
209
- } catch {
210
- console.log(chalk.yellow('\n⚠️ Piper installer script not found'));
211
- console.log(chalk.gray(' The installer will be copied during installation'));
212
- console.log(chalk.gray(' You can install Piper later with:'));
213
- console.log(chalk.cyan(' .claude/hooks/piper-installer.sh\n'));
214
- }
215
- } else {
216
- console.log(chalk.yellow('\n⚠️ Skipping Piper installation'));
217
- console.log(chalk.gray(' You can install it later with:'));
218
- console.log(chalk.cyan(' .claude/hooks/piper-installer.sh'));
219
- console.log(chalk.gray(' Or switch to ElevenLabs with:'));
220
- console.log(chalk.cyan(' /agent-vibes:provider switch elevenlabs\n'));
221
- }
222
- } else {
223
- console.log(chalk.green('\n✓ Piper TTS is already installed\n'));
224
- }
225
-
226
141
  const homeDir = process.env.HOME || process.env.USERPROFILE;
227
142
  const defaultPiperPath = path.join(homeDir, '.claude', 'piper-voices');
228
143
 
@@ -379,32 +294,6 @@ async function install(options = {}) {
379
294
  } else {
380
295
  selectedProvider = 'piper';
381
296
  console.log(chalk.green('✓ Using Piper TTS (free option)\n'));
382
-
383
- // Check if Piper is installed in auto mode
384
- let piperInstalled = false;
385
- const homeDir = process.env.HOME || process.env.USERPROFILE;
386
- const pipxPiperPath = path.join(homeDir, '.local', 'bin', 'piper');
387
-
388
- try {
389
- const { execSync } = await import('node:child_process');
390
- execSync('which piper', { stdio: 'ignore' });
391
- piperInstalled = true;
392
- console.log(chalk.green('✓ Piper TTS is already installed\n'));
393
- } catch {
394
- // Check if it exists in pipx installation directory
395
- try {
396
- await fs.access(pipxPiperPath, fs.constants.X_OK);
397
- piperInstalled = true;
398
- console.log(chalk.yellow('⚠️ Piper is installed but not in PATH'));
399
- console.log(chalk.gray(` Location: ${pipxPiperPath}`));
400
- console.log(chalk.gray(' Add to PATH with:'));
401
- console.log(chalk.cyan(' export PATH="$HOME/.local/bin:$PATH"\n'));
402
- } catch {
403
- console.log(chalk.yellow('⚠️ Piper TTS is not installed'));
404
- console.log(chalk.gray(' Install it after setup with:'));
405
- console.log(chalk.cyan(' .claude/hooks/piper-installer.sh\n'));
406
- }
407
- }
408
297
  }
409
298
  }
410
299
 
@@ -1,44 +0,0 @@
1
- #!/bin/bash
2
-
3
- # Local TTS Wrapper for AgentVibes
4
- # This script runs on your local Windows WSL and receives audio from remote server
5
- # Usage: ./play-tts-local-wrapper.sh "Text to speak"
6
-
7
- # Configuration
8
- REMOTE_HOST="${AGENTVIBES_REMOTE_HOST:-ubuntu-rdp}"
9
- REMOTE_SCRIPT=".claude/hooks/play-tts-remote.sh"
10
-
11
- # Get text from arguments or stdin
12
- if [ $# -gt 0 ]; then
13
- TEXT="$*"
14
- else
15
- TEXT=$(cat)
16
- fi
17
-
18
- # Function to play audio based on what's available
19
- play_audio() {
20
- # Try paplay first (WSLg PulseAudio)
21
- if command -v paplay &> /dev/null; then
22
- paplay --format=s16le --channels=1 --rate=22050
23
- # Try aplay next
24
- elif command -v aplay &> /dev/null; then
25
- aplay -f S16_LE -c 1 -r 22050
26
- # Try PowerShell audio playback as last resort
27
- elif command -v powershell.exe &> /dev/null; then
28
- # Save to temp file and play with Windows Media Player
29
- TEMP_FILE="/tmp/tts_audio_$$.wav"
30
- cat > "$TEMP_FILE"
31
- powershell.exe -Command "& {(New-Object Media.SoundPlayer '$TEMP_FILE').PlaySync()}" 2>/dev/null
32
- rm -f "$TEMP_FILE"
33
- else
34
- echo "Error: No audio playback method available" >&2
35
- exit 1
36
- fi
37
- }
38
-
39
- # SSH to remote, generate TTS, and pipe back for local playback
40
- echo "$TEXT" | ssh "$REMOTE_HOST" "bash $REMOTE_SCRIPT" | play_audio
41
-
42
- # Alternative method if you want to save the audio file
43
- # echo "$TEXT" | ssh "$REMOTE_HOST" "bash $REMOTE_SCRIPT" > /tmp/tts_output.wav
44
- # paplay /tmp/tts_output.wav