agentvibes 2.0.9 → 2.0.12

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 (152) hide show
  1. package/.claude/commands/agent-vibes/bmad.md +203 -0
  2. package/.claude/github-star-reminder.txt +1 -0
  3. package/.claude/hooks/bmad-tts-injector.sh +333 -0
  4. package/.claude/hooks/bmad-voice-manager.sh +34 -0
  5. package/.claude/hooks/check-output-style.sh +2 -2
  6. package/.claude/hooks/github-star-reminder.sh +94 -0
  7. package/.claude/hooks/personality-manager.sh +2 -2
  8. package/.claude/hooks/piper-installer.sh +194 -0
  9. package/.claude/hooks/play-tts-elevenlabs.sh +30 -3
  10. package/.claude/hooks/play-tts-local-wrapper.sh +44 -0
  11. package/.claude/hooks/play-tts-piper.sh +10 -2
  12. package/.claude/hooks/play-tts-remote.sh +81 -0
  13. package/.claude/hooks/play-tts.sh +34 -0
  14. package/.claude/hooks/provider-commands.sh +30 -1
  15. package/.claude/hooks/voice-manager.sh +2 -2
  16. package/.claude/output-styles/agent-vibes.md +52 -36
  17. package/README.md +2 -2
  18. package/RELEASE_NOTES.md +412 -0
  19. package/agentvibes.org/.claude/commands/agent-vibes/add.md +21 -0
  20. package/agentvibes.org/.claude/commands/agent-vibes/agent-vibes.md +68 -0
  21. package/agentvibes.org/.claude/commands/agent-vibes/commands.json +53 -0
  22. package/agentvibes.org/.claude/commands/agent-vibes/get.md +9 -0
  23. package/agentvibes.org/.claude/commands/agent-vibes/list.md +13 -0
  24. package/agentvibes.org/.claude/commands/agent-vibes/personality.md +79 -0
  25. package/agentvibes.org/.claude/commands/agent-vibes/preview.md +16 -0
  26. package/agentvibes.org/.claude/commands/agent-vibes/provider.md +54 -0
  27. package/agentvibes.org/.claude/commands/agent-vibes/replay.md +19 -0
  28. package/agentvibes.org/.claude/commands/agent-vibes/sample.md +12 -0
  29. package/agentvibes.org/.claude/commands/agent-vibes/sentiment.md +52 -0
  30. package/agentvibes.org/.claude/commands/agent-vibes/set-language.md +47 -0
  31. package/agentvibes.org/.claude/commands/agent-vibes/set-pretext.md +65 -0
  32. package/agentvibes.org/.claude/commands/agent-vibes/switch.md +53 -0
  33. package/agentvibes.org/.claude/commands/agent-vibes/update.md +20 -0
  34. package/agentvibes.org/.claude/commands/agent-vibes/version.md +10 -0
  35. package/agentvibes.org/.claude/commands/agent-vibes/whoami.md +7 -0
  36. package/agentvibes.org/.claude/hooks/bmad-voice-manager.sh +278 -0
  37. package/agentvibes.org/.claude/hooks/language-manager.sh +190 -0
  38. package/agentvibes.org/.claude/hooks/personality-manager.sh +279 -0
  39. package/agentvibes.org/.claude/hooks/piper-download-voices.sh +133 -0
  40. package/agentvibes.org/.claude/hooks/piper-voice-manager.sh +227 -0
  41. package/agentvibes.org/.claude/hooks/play-tts-elevenlabs.sh +201 -0
  42. package/agentvibes.org/.claude/hooks/play-tts-piper.sh +175 -0
  43. package/agentvibes.org/.claude/hooks/play-tts.sh +138 -0
  44. package/agentvibes.org/.claude/hooks/provider-commands.sh +374 -0
  45. package/agentvibes.org/.claude/hooks/provider-manager.sh +196 -0
  46. package/agentvibes.org/.claude/hooks/sentiment-manager.sh +163 -0
  47. package/agentvibes.org/.claude/hooks/voice-manager.sh +349 -0
  48. package/agentvibes.org/.claude/hooks/voices-config.sh +33 -0
  49. package/agentvibes.org/.claude/journal/2025-10-07.html +373 -0
  50. package/agentvibes.org/.claude/journal/index.html +91 -0
  51. package/agentvibes.org/.claude/output-styles/agent-vibes.md +203 -0
  52. package/agentvibes.org/.claude/personalities/angry.md +16 -0
  53. package/agentvibes.org/.claude/personalities/annoying.md +16 -0
  54. package/agentvibes.org/.claude/personalities/crass.md +16 -0
  55. package/agentvibes.org/.claude/personalities/dramatic.md +16 -0
  56. package/agentvibes.org/.claude/personalities/dry-humor.md +52 -0
  57. package/agentvibes.org/.claude/personalities/flirty.md +22 -0
  58. package/agentvibes.org/.claude/personalities/funny.md +16 -0
  59. package/agentvibes.org/.claude/personalities/grandpa.md +34 -0
  60. package/agentvibes.org/.claude/personalities/millennial.md +16 -0
  61. package/agentvibes.org/.claude/personalities/moody.md +16 -0
  62. package/agentvibes.org/.claude/personalities/normal.md +18 -0
  63. package/agentvibes.org/.claude/personalities/pirate.md +16 -0
  64. package/agentvibes.org/.claude/personalities/poetic.md +16 -0
  65. package/agentvibes.org/.claude/personalities/professional.md +16 -0
  66. package/agentvibes.org/.claude/personalities/robot.md +16 -0
  67. package/agentvibes.org/.claude/personalities/sarcastic.md +40 -0
  68. package/agentvibes.org/.claude/personalities/sassy.md +16 -0
  69. package/agentvibes.org/.claude/personalities/surfer-dude.md +16 -0
  70. package/agentvibes.org/.claude/personalities/zen.md +16 -0
  71. package/agentvibes.org/.mcp-minimal.json +60 -0
  72. package/agentvibes.org/CHANGELOG.md +56 -0
  73. package/agentvibes.org/README.md +93 -0
  74. package/agentvibes.org/app/(auth)/layout.tsx +15 -0
  75. package/agentvibes.org/app/(auth)/reset-password/page.tsx +45 -0
  76. package/agentvibes.org/app/(auth)/signin/page.tsx +82 -0
  77. package/agentvibes.org/app/(auth)/signup/page.tsx +104 -0
  78. package/agentvibes.org/app/(default)/layout.tsx +31 -0
  79. package/agentvibes.org/app/(default)/page.tsx +20 -0
  80. package/agentvibes.org/app/api/hello/route.ts +3 -0
  81. package/agentvibes.org/app/css/additional-styles/theme.css +82 -0
  82. package/agentvibes.org/app/css/additional-styles/utility-patterns.css +55 -0
  83. package/agentvibes.org/app/css/style.css +100 -0
  84. package/agentvibes.org/app/layout.tsx +63 -0
  85. package/agentvibes.org/components/cta.tsx +58 -0
  86. package/agentvibes.org/components/features.tsx +256 -0
  87. package/agentvibes.org/components/hero-home.tsx +133 -0
  88. package/agentvibes.org/components/modal-video.tsx +137 -0
  89. package/agentvibes.org/components/page-illustration.tsx +55 -0
  90. package/agentvibes.org/components/spotlight.tsx +77 -0
  91. package/agentvibes.org/components/testimonials.tsx +282 -0
  92. package/agentvibes.org/components/ui/footer.tsx +82 -0
  93. package/agentvibes.org/components/ui/header.tsx +53 -0
  94. package/agentvibes.org/components/ui/logo.tsx +10 -0
  95. package/agentvibes.org/components/workflows.tsx +176 -0
  96. package/agentvibes.org/next.config.js +4 -0
  97. package/agentvibes.org/package-lock.json +1974 -0
  98. package/agentvibes.org/package.json +30 -0
  99. package/agentvibes.org/pnpm-lock.yaml +1141 -0
  100. package/agentvibes.org/postcss.config.js +5 -0
  101. package/agentvibes.org/public/audio/02-sarcastic.mp3 +0 -0
  102. package/agentvibes.org/public/audio/03-angry.mp3 +0 -0
  103. package/agentvibes.org/public/audio/04-grandpa.mp3 +0 -0
  104. package/agentvibes.org/public/audio/05-sarcastic-example2.mp3 +0 -0
  105. package/agentvibes.org/public/audio/french-rachel.mp3 +0 -0
  106. package/agentvibes.org/public/audio/spanish-antoni.mp3 +0 -0
  107. package/agentvibes.org/public/favicon.ico +0 -0
  108. package/agentvibes.org/public/fonts/nacelle-italic.woff2 +0 -0
  109. package/agentvibes.org/public/fonts/nacelle-regular.woff2 +0 -0
  110. package/agentvibes.org/public/fonts/nacelle-semibold.woff2 +0 -0
  111. package/agentvibes.org/public/fonts/nacelle-semibolditalic.woff2 +0 -0
  112. package/agentvibes.org/public/images/blurred-shape-gray.svg +1 -0
  113. package/agentvibes.org/public/images/blurred-shape.svg +1 -0
  114. package/agentvibes.org/public/images/client-logo-01.svg +1 -0
  115. package/agentvibes.org/public/images/client-logo-02.svg +1 -0
  116. package/agentvibes.org/public/images/client-logo-03.svg +1 -0
  117. package/agentvibes.org/public/images/client-logo-04.svg +1 -0
  118. package/agentvibes.org/public/images/client-logo-05.svg +1 -0
  119. package/agentvibes.org/public/images/client-logo-06.svg +1 -0
  120. package/agentvibes.org/public/images/client-logo-07.svg +1 -0
  121. package/agentvibes.org/public/images/client-logo-08.svg +1 -0
  122. package/agentvibes.org/public/images/client-logo-09.svg +1 -0
  123. package/agentvibes.org/public/images/features.png +0 -0
  124. package/agentvibes.org/public/images/footer-illustration.svg +1 -0
  125. package/agentvibes.org/public/images/hero-image-01.jpg +0 -0
  126. package/agentvibes.org/public/images/logo.svg +1 -0
  127. package/agentvibes.org/public/images/page-illustration.svg +1 -0
  128. package/agentvibes.org/public/images/secondary-illustration.svg +1 -0
  129. package/agentvibes.org/public/images/testimonial-01.jpg +0 -0
  130. package/agentvibes.org/public/images/testimonial-02.jpg +0 -0
  131. package/agentvibes.org/public/images/testimonial-03.jpg +0 -0
  132. package/agentvibes.org/public/images/testimonial-04.jpg +0 -0
  133. package/agentvibes.org/public/images/testimonial-05.jpg +0 -0
  134. package/agentvibes.org/public/images/testimonial-06.jpg +0 -0
  135. package/agentvibes.org/public/images/testimonial-07.jpg +0 -0
  136. package/agentvibes.org/public/images/testimonial-08.jpg +0 -0
  137. package/agentvibes.org/public/images/testimonial-09.jpg +0 -0
  138. package/agentvibes.org/public/images/workflow-01.png +0 -0
  139. package/agentvibes.org/public/images/workflow-02.png +0 -0
  140. package/agentvibes.org/public/images/workflow-03.png +0 -0
  141. package/agentvibes.org/public/videos/video.mp4 +0 -0
  142. package/agentvibes.org/tsconfig.json +28 -0
  143. package/agentvibes.org/utils/useMasonry.tsx +67 -0
  144. package/agentvibes.org/utils/useMousePosition.tsx +27 -0
  145. package/docs/REMOTE_TTS_SETUP.md +190 -0
  146. package/package.json +2 -2
  147. package/src/installer.js +193 -9
  148. package/test/helpers/test-helper.bash +4 -2
  149. package/test/unit/personality-manager.bats +16 -4
  150. package/test/unit/personality-voice-mapping.bats +15 -6
  151. package/test/unit/play-tts.bats +0 -9
  152. package/.claude/commands/agent-vibes-bmad.md +0 -132
package/RELEASE_NOTES.md CHANGED
@@ -1,5 +1,417 @@
1
1
  # 🎤 AgentVibes Release Notes
2
2
 
3
+ ## 📦 v2.0.12 - Remote TTS & BMAD Command Fix (2025-01-10)
4
+
5
+ ### 🤖 AI Summary
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
32
+
33
+ ### 🐛 Bug Fixes
34
+
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
96
+
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
102
+
103
+ ### 📊 Files Changed
104
+
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)
109
+
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
118
+
119
+ ### 🎯 User Impact
120
+
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
126
+
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
133
+
134
+ ### 💡 Usage Examples
135
+
136
+ #### Remote TTS Setup
137
+ ```bash
138
+ # Quick setup for HTTP method (recommended)
139
+ echo "http" > .claude/tts-remote-method.txt
140
+
141
+ # On your LOCAL machine, create SSH tunnel:
142
+ ssh -R 8765:localhost:8765 user@remote-server
143
+
144
+ # Now TTS audio plays on your local machine!
145
+ ```
146
+
147
+ #### BMAD Voice Integration
148
+ ```bash
149
+ # Enable BMAD plugin
150
+ /agent-vibes:bmad enable
151
+
152
+ # Check status
153
+ /agent-vibes:bmad status
154
+
155
+ # Set custom voice for agent
156
+ /agent-vibes:bmad set pm "Aria"
157
+
158
+ # List all agent mappings
159
+ /agent-vibes:bmad list
160
+ ```
161
+
162
+ ### 🔄 Migration Notes
163
+
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
+ **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
182
+
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>
199
+
200
+ ---
201
+
202
+ ## 📦 v2.0.10 - GitHub Star Reminder & Provider Fixes (2025-01-10)
203
+
204
+ ### 🤖 AI Summary
205
+
206
+ This patch release adds a gentle daily GitHub star reminder system and fixes critical bugs in provider switching and output style commands. Users can now be reminded to star the project (once per day, easily disabled), the ElevenLabs provider switching now works correctly with proper language support for 30+ languages, and all documentation now shows the correct output style command `Agent Vibes` instead of the lowercase `agent-vibes`.
207
+
208
+ ### ✨ New Features
209
+
210
+ #### Daily GitHub Star Reminder System
211
+ - **Gentle reminders** - Shows once per day when using TTS
212
+ - **Easy to disable** - Run `echo "disabled" > .claude/github-star-reminder.txt`
213
+ - **Non-intrusive** - Beautiful formatted message with clear instructions
214
+ - **Community support** - Encourages users to support the project
215
+ - **Smart tracking** - Date-based reminder system prevents spam
216
+
217
+ **Example Reminder:**
218
+ ```
219
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
220
+ ⭐ Enjoying AgentVibes?
221
+
222
+ If you find this project helpful, please consider giving us
223
+ a star on GitHub! It helps others discover AgentVibes and
224
+ motivates us to keep improving it.
225
+
226
+ 👉 https://github.com/paulpreibisch/AgentVibes
227
+
228
+ Thank you for your support! 🙏
229
+
230
+ 💡 To disable these reminders, run:
231
+ echo "disabled" > .claude/github-star-reminder.txt
232
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
233
+ ```
234
+
235
+ #### Piper TTS Installer Script
236
+ - **Automated installation** - Created `.claude/hooks/piper-installer.sh`
237
+ - **Platform detection** - Checks for WSL/Linux compatibility
238
+ - **Dependency management** - Installs pipx automatically if needed
239
+ - **Voice downloads** - Offers to download voice models after installation
240
+ - **Clear instructions** - Provides next steps and usage guide
241
+
242
+ ### 🐛 Bug Fixes
243
+
244
+ #### Provider Switching Function Fixes
245
+ - **Fixed function name mismatch** - `get_current_language()` → `get_language_code()` in provider-commands.sh:102
246
+ - **Fixed ElevenLabs language support** - `get_current_language()` → `get_language_code()` in play-tts-elevenlabs.sh:52
247
+ - **Added language validation** - New `is_language_supported()` function validates provider/language compatibility
248
+ - **Implemented language mapping** - Full 30+ language code mapping (spanish→es, french→fr, etc.)
249
+ - **Provider switching works** - Users can now switch between ElevenLabs and Piper without errors
250
+
251
+ **What Was Broken:**
252
+ ```bash
253
+ # Before: Provider switching failed with "command not found" error
254
+ /agent-vibes:provider switch elevenlabs
255
+ # .claude/hooks/provider-commands.sh: line 102: get_current_language: command not found
256
+
257
+ # After: Works perfectly
258
+ /agent-vibes:provider switch elevenlabs
259
+ # ✓ Provider switched to: elevenlabs
260
+ ```
261
+
262
+ #### Output Style Command Correction
263
+ - **Fixed installer** - Updated `src/installer.js` (2 locations)
264
+ - **Fixed hooks** - Updated check-output-style.sh, personality-manager.sh, voice-manager.sh
265
+ - **Correct command** - Changed `/output-style agent-vibes` → `/output-style Agent Vibes`
266
+ - **Consistent docs** - All documentation now shows the correct command
267
+
268
+ **Why This Matters:**
269
+ The output style name is case-sensitive in Claude Code. The incorrect lowercase command would fail silently, preventing users from enabling TTS narration.
270
+
271
+ ### 🔧 Technical Changes
272
+
273
+ #### GitHub Star Reminder Implementation
274
+ **New Files:**
275
+ - `.claude/hooks/github-star-reminder.sh` - Main reminder script with disable support
276
+ - `.claude/github-star-reminder.txt` - Tracks last reminder date
277
+
278
+ **Integration:**
279
+ - Added to `play-tts.sh` router (runs before TTS playback)
280
+ - Silent errors (2>/dev/null || true) prevent disruption
281
+ - Project-local or global config support
282
+
283
+ **Disable Options:**
284
+ 1. Echo "disabled" to reminder file
285
+ 2. Create `.claude/github-star-reminder-disabled.flag`
286
+ 3. Create `~/.claude/github-star-reminder-disabled.flag`
287
+
288
+ #### Provider Command Fixes
289
+ **Modified Functions:**
290
+ - `provider-commands.sh`:
291
+ - Added `is_language_supported()` function (lines 15-42)
292
+ - Fixed `get_current_language()` call to `get_language_code()` (line 131)
293
+
294
+ - `play-tts-elevenlabs.sh`:
295
+ - Fixed `get_current_language()` call to `get_language_code()` (line 52)
296
+ - Replaced `get_language_code_for_name()` with full case statement (lines 56-83)
297
+ - Supports all 30+ languages with ISO 639-1 codes
298
+
299
+ **Language Code Mapping:**
300
+ ```bash
301
+ case "$CURRENT_LANGUAGE" in
302
+ spanish) LANGUAGE_CODE="es" ;;
303
+ french) LANGUAGE_CODE="fr" ;;
304
+ german) LANGUAGE_CODE="de" ;;
305
+ italian) LANGUAGE_CODE="it" ;;
306
+ # ... 26 more languages
307
+ english|*) LANGUAGE_CODE="en" ;;
308
+ esac
309
+ ```
310
+
311
+ #### Output Style Updates
312
+ **Files Modified:**
313
+ - `src/installer.js` - Lines 588, 614
314
+ - `.claude/hooks/check-output-style.sh` - Line 45
315
+ - `.claude/hooks/personality-manager.sh` - Line 197
316
+ - `.claude/hooks/voice-manager.sh` - Line 248
317
+
318
+ All now correctly reference `/output-style Agent Vibes` instead of the incorrect lowercase version.
319
+
320
+ ### 🎯 User Impact
321
+
322
+ **Before v2.0.10:**
323
+ - Provider switching failed with cryptic "command not found" errors
324
+ - Users couldn't switch between ElevenLabs and Piper
325
+ - Documentation showed wrong output style command
326
+ - No gentle reminder to support the project
327
+
328
+ **After v2.0.10:**
329
+ - Provider switching works seamlessly
330
+ - Full 30+ language support with ElevenLabs
331
+ - Correct output style command everywhere
332
+ - Optional daily star reminder (easily disabled)
333
+ - Piper TTS installer for easy setup
334
+
335
+ ### 📊 Files Changed
336
+
337
+ **Added (3 files):**
338
+ - `.claude/hooks/github-star-reminder.sh` (94 lines)
339
+ - `.claude/hooks/piper-installer.sh` (144 lines)
340
+ - `.claude/github-star-reminder.txt` (1 line)
341
+
342
+ **Modified (8 files):**
343
+ - `.claude/hooks/check-output-style.sh` (4 lines changed)
344
+ - `.claude/hooks/personality-manager.sh` (4 lines changed)
345
+ - `.claude/hooks/play-tts-elevenlabs.sh` (33 lines added)
346
+ - `.claude/hooks/play-tts.sh` (3 lines added)
347
+ - `.claude/hooks/provider-commands.sh` (31 lines added)
348
+ - `.claude/hooks/voice-manager.sh` (4 lines changed)
349
+ - `README.md` (4 lines changed)
350
+ - `src/installer.js` (4 lines changed)
351
+
352
+ **Test Updates (3 files):**
353
+ - `test/helpers/test-helper.bash` (6 lines changed)
354
+ - `test/unit/personality-manager.bats` (20 lines changed)
355
+ - `test/unit/personality-voice-mapping.bats` (21 lines changed)
356
+ - `test/unit/play-tts.bats` (9 lines removed)
357
+
358
+ **Total Changes:** 347 insertions, 35 deletions across 15 files
359
+
360
+ ### 🔄 Migration Notes
361
+
362
+ **For All Users:**
363
+ - Update via `/agent-vibes:update` or `npx agentvibes update`
364
+ - No breaking changes - all existing settings preserved
365
+ - GitHub star reminder shows once per day (easily disabled)
366
+ - Provider switching now works correctly
367
+
368
+ **To Disable GitHub Star Reminders:**
369
+ ```bash
370
+ echo "disabled" > .claude/github-star-reminder.txt
371
+ ```
372
+
373
+ **To Install Piper TTS:**
374
+ ```bash
375
+ .claude/hooks/piper-installer.sh
376
+ ```
377
+
378
+ ### 💡 What's Next
379
+
380
+ The next release (v2.1.0) will focus on:
381
+ - Enhanced Piper TTS voice management
382
+ - Improved multilingual voice selection
383
+ - Additional personality styles
384
+ - BMAD plugin enhancements
385
+
386
+ ### 📝 Commits in This Release
387
+
388
+ ```
389
+ 869b1e8 feat: Add Piper TTS installer and improve GitHub star reminders
390
+ a9f3b0b feat: Add daily GitHub star reminder system
391
+ 18c389e fix: Update output style command and provider switching functions
392
+ 07ee376 test: Remove flaky API key test
393
+ 5a1a78b test: Skip flaky API key test in CI environments
394
+ 4ff1075 Merge branch 'master' of github.com:paulpreibisch/AgentVibes
395
+ 73d8303 test: Update tests for provider-aware personality system
396
+ ec21c34 docs: Update README to version v2.0.9 [skip ci]
397
+ ```
398
+
399
+ ### 🙏 Credits
400
+
401
+ - Thanks to users who reported the provider switching issues
402
+ - Special appreciation to the community for supporting AgentVibes
403
+ - ElevenLabs team for their excellent multilingual API
404
+
405
+ ---
406
+
407
+ 🤖 Generated with [Claude Code](https://claude.com/claude-code)
408
+
409
+ Co-Authored-By: Claude <noreply@anthropic.com>
410
+
411
+ ---
412
+
413
+ # 🎤 AgentVibes Release Notes
414
+
3
415
  ## 📦 v2.0.9 - Installer Release Notes Fix (2025-01-07)
4
416
 
5
417
  ### 🤖 AI Summary
@@ -0,0 +1,21 @@
1
+ ---
2
+ description: Add a new custom ElevenLabs TTS voice
3
+ argument-hint: <voice_name> <voice_id>
4
+ ---
5
+
6
+ Add a new custom ElevenLabs TTS voice to your voice library.
7
+
8
+ Usage:
9
+ - `/agent-vibes:add "My Custom Voice" abc123xyz456789`
10
+ - `/agent-vibes:add Narrator KTPVrSVAEUSJRClDzBw7`
11
+
12
+ The voice ID should be a 15-30 character alphanumeric string from your ElevenLabs account.
13
+
14
+ To find your voice IDs:
15
+ 1. Go to https://elevenlabs.io/app/voice-library
16
+ 2. Click on a voice
17
+ 3. Copy the voice ID from the URL or settings
18
+
19
+ After adding, you can switch to it with `/agent-vibes:switch "Voice Name"`
20
+
21
+ !bash .claude/hooks/voice-manager.sh add $ARGUMENTS
@@ -0,0 +1,68 @@
1
+ ---
2
+ description: ElevenLabs TTS voice management commands
3
+ ---
4
+
5
+ # 🎤 ElevenLabs Voice Management
6
+
7
+ Manage your ElevenLabs text-to-speech voices with these commands:
8
+
9
+ ## Available Commands
10
+
11
+ ### `/agent-vibes:list [first|last] [N]`
12
+ List all available voices, with optional filtering
13
+ - `/agent-vibes:list` - Show all voices
14
+ - `/agent-vibes:list first 5` - Show first 5 voices
15
+ - `/agent-vibes:list last 3` - Show last 3 voices
16
+
17
+ ### `/agent-vibes:preview [first|last] [N]`
18
+ Preview voices by playing audio samples
19
+ - `/agent-vibes:preview` - Preview first 3 voices
20
+ - `/agent-vibes:preview 5` - Preview first 5 voices
21
+ - `/agent-vibes:preview last 5` - Preview last 5 voices
22
+
23
+ ### `/agent-vibes:switch <voice_name>`
24
+ Switch to a different default voice
25
+ - `/agent-vibes:switch Northern Terry`
26
+ - `/agent-vibes:switch "Cowboy Bob"`
27
+
28
+ ### `/agent-vibes:get`
29
+ Display the currently selected voice
30
+
31
+ ### `/agent-vibes:add <name> <voice_id>`
32
+ Add a new custom voice from your ElevenLabs account
33
+ - `/agent-vibes:add "My Voice" abc123xyz456`
34
+
35
+ ### `/agent-vibes:replay [N]`
36
+ Replay recently played TTS audio
37
+ - `/agent-vibes:replay` - Replay last audio
38
+ - `/agent-vibes:replay 1` - Replay most recent
39
+ - `/agent-vibes:replay 2` - Replay second-to-last
40
+ - `/agent-vibes:replay 3` - Replay third-to-last
41
+
42
+ Keeps last 10 audio files in history.
43
+
44
+ ### `/agent-vibes:set-pretext <word>`
45
+ Set a prefix word/phrase for all TTS messages
46
+ - `/agent-vibes:set-pretext AgentVibes` - All TTS starts with "AgentVibes:"
47
+ - `/agent-vibes:set-pretext "Project Alpha"` - Custom phrase
48
+ - `/agent-vibes:set-pretext ""` - Clear pretext
49
+
50
+ Saved locally in `.claude/config/agentvibes.json`
51
+
52
+ ## Getting Voice IDs
53
+
54
+ To add your own custom voices:
55
+ 1. Go to https://elevenlabs.io/app/voice-library
56
+ 2. Select or create a voice
57
+ 3. Copy the voice ID (15-30 character alphanumeric string)
58
+ 4. Use `/agent-vibes:add` to add it
59
+
60
+ ## Default Voices
61
+
62
+ The system comes with these Character Voices from ElevenLabs:
63
+ - Northern Terry, Grandpa Spuds Oxley, Ms. Walker
64
+ - Ralf Eisend, Amy, Michael, Jessica Anne Bogart
65
+ - Aria, Lutz Laugh, Dr. Von Fusion, Matthew Schmitz
66
+ - Demon Monster, Cowboy Bob, Drill Sergeant
67
+
68
+ Enjoy your TTS experience! 🎵
@@ -0,0 +1,53 @@
1
+ {
2
+ "namespace": "agent-vibes",
3
+ "commands": [
4
+ {
5
+ "name": "list",
6
+ "description": "List all available ElevenLabs voices"
7
+ },
8
+ {
9
+ "name": "preview",
10
+ "description": "Preview ElevenLabs voices by playing audio samples"
11
+ },
12
+ {
13
+ "name": "switch",
14
+ "description": "Switch to a different ElevenLabs voice"
15
+ },
16
+ {
17
+ "name": "whoami",
18
+ "description": "Display currently selected voice"
19
+ },
20
+ {
21
+ "name": "sample",
22
+ "description": "Play a sample with the current or specified voice"
23
+ },
24
+ {
25
+ "name": "replay",
26
+ "description": "Replay the last TTS message"
27
+ },
28
+ {
29
+ "name": "personality",
30
+ "description": "Manage AI personality settings"
31
+ },
32
+ {
33
+ "name": "sentiment",
34
+ "description": "Set temporary personality sentiment"
35
+ },
36
+ {
37
+ "name": "set-pretext",
38
+ "description": "Configure pre-TTS message text"
39
+ },
40
+ {
41
+ "name": "set-language",
42
+ "description": "Set TTS language for multilingual voices"
43
+ },
44
+ {
45
+ "name": "add",
46
+ "description": "Add a new personality"
47
+ },
48
+ {
49
+ "name": "get",
50
+ "description": "Get personality details"
51
+ }
52
+ ]
53
+ }
@@ -0,0 +1,9 @@
1
+ ---
2
+ description: Get the currently selected ElevenLabs TTS voice
3
+ ---
4
+
5
+ Display the currently selected ElevenLabs TTS voice.
6
+
7
+ This shows which voice is currently set as the default for TTS audio generation.
8
+
9
+ !bash .claude/hooks/voice-manager.sh get
@@ -0,0 +1,13 @@
1
+ ---
2
+ description: List available ElevenLabs TTS voices with optional filtering
3
+ argument-hint: [first|last] [N]
4
+ ---
5
+
6
+ List available ElevenLabs TTS voices.
7
+
8
+ Usage examples:
9
+ - `/agent-vibes:list` - Show all voices
10
+ - `/agent-vibes:list first 5` - Show first 5 voices
11
+ - `/agent-vibes:list last 3` - Show last 3 voices
12
+
13
+ !bash .claude/hooks/voice-manager.sh list $ARGUMENTS
@@ -0,0 +1,79 @@
1
+ ---
2
+ description: Set or customize the personality style for TTS messages
3
+ argument-hint: [personality_name|list|add|edit|get|reset]
4
+ ---
5
+
6
+ # /agent-vibes:personality
7
+
8
+ Set or customize the personality style for TTS messages.
9
+
10
+ This command allows you to add character and emotion to your TTS announcements by applying personality modifiers to messages.
11
+
12
+ ## Usage
13
+
14
+ ```bash
15
+ # Set a personality
16
+ /agent-vibes:personality flirty
17
+ /agent-vibes:personality sarcastic
18
+
19
+ # List all personalities
20
+ /agent-vibes:personality list
21
+
22
+ # Add custom personality
23
+ /agent-vibes:personality add cowboy "Howdy partner!" "Yeehaw!"
24
+
25
+ # Show current personality
26
+ /agent-vibes:personality get
27
+
28
+ # Reset to normal
29
+ /agent-vibes:personality reset
30
+ ```
31
+
32
+ ## Available Personalities
33
+
34
+ - **normal** - Standard professional tone
35
+ - **flirty** - Playful and charming
36
+ - **angry** - Frustrated and irritated
37
+ - **sassy** - Bold with attitude
38
+ - **moody** - Melancholic and brooding
39
+ - **funny** - Lighthearted and comedic
40
+ - **sarcastic** - Dry wit and irony
41
+ - **poetic** - Elegant and lyrical
42
+ - **annoying** - Over-enthusiastic
43
+ - **professional** - Formal and precise
44
+ - **pirate** - Seafaring swagger
45
+ - **robot** - Mechanical and precise
46
+ - **surfer-dude** - Chill beach vibes
47
+ - **millennial** - Internet generation speak
48
+ - **zen** - Peaceful and mindful
49
+ - **dramatic** - Theatrical flair
50
+ - **crass** - Edgy and blunt
51
+ - **random** - Picks a different personality each time!
52
+
53
+ ## Editing Personalities
54
+
55
+ Each personality is stored as a markdown file in `.claude/personalities/`. You can:
56
+
57
+ ### Edit existing personalities:
58
+ ```bash
59
+ /agent-vibes:personality edit flirty
60
+ ```
61
+ This shows the file path - edit it directly to customize behavior.
62
+
63
+ ### Create new personalities:
64
+ ```bash
65
+ /agent-vibes:personality add cowboy
66
+ ```
67
+ Creates a new personality file, then edit it to customize.
68
+
69
+ ### Personality files contain:
70
+ - **Prefix**: Text added before messages
71
+ - **Suffix**: Text added after messages
72
+ - **AI Instructions**: How the AI should speak
73
+ - **Example Responses**: Sample messages
74
+
75
+ Files are located in `.claude/personalities/[name].md`
76
+
77
+ ## Implementation
78
+
79
+ !bash .claude/hooks/personality-manager.sh $ARGUMENTS
@@ -0,0 +1,16 @@
1
+ ---
2
+ description: Preview ElevenLabs TTS voices by playing audio samples
3
+ argument-hint: [voice_name|first|last] [N]
4
+ ---
5
+
6
+ Preview ElevenLabs TTS voices by playing audio samples.
7
+
8
+ Usage examples:
9
+ - `/agent-vibes:preview` - Preview first 3 voices (default)
10
+ - `/agent-vibes:preview 5` - Preview first 5 voices
11
+ - `/agent-vibes:preview Jessica` - Preview Jessica Anne Bogart voice
12
+ - `/agent-vibes:preview "Northern Terry"` - Preview Northern Terry voice
13
+ - `/agent-vibes:preview first 10` - Preview first 10 voices
14
+ - `/agent-vibes:preview last 5` - Preview last 5 voices
15
+
16
+ !bash .claude/hooks/voice-manager.sh preview $ARGUMENTS