agentvibes 2.0.17-beta.7 → 2.0.17-beta.9

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 (210) hide show
  1. package/.claude/commands/agent-vibes/add.md +0 -0
  2. package/.claude/commands/agent-vibes/agent-vibes.md +0 -0
  3. package/.claude/commands/agent-vibes/bmad.md +0 -0
  4. package/.claude/commands/agent-vibes/commands.json +0 -0
  5. package/.claude/commands/agent-vibes/get.md +0 -0
  6. package/.claude/commands/agent-vibes/language.md +0 -0
  7. package/.claude/commands/agent-vibes/learn.md +0 -0
  8. package/.claude/commands/agent-vibes/list.md +0 -0
  9. package/.claude/commands/agent-vibes/personality.md +0 -0
  10. package/.claude/commands/agent-vibes/preview.md +0 -0
  11. package/.claude/commands/agent-vibes/replay.md +0 -0
  12. package/.claude/commands/agent-vibes/sample.md +0 -0
  13. package/.claude/commands/agent-vibes/sentiment.md +0 -0
  14. package/.claude/commands/agent-vibes/set-language.md +0 -0
  15. package/.claude/commands/agent-vibes/set-pretext.md +0 -0
  16. package/.claude/commands/agent-vibes/set-speed.md +0 -0
  17. package/.claude/commands/agent-vibes/switch.md +0 -0
  18. package/.claude/commands/agent-vibes/target-voice.md +0 -0
  19. package/.claude/commands/agent-vibes/target.md +0 -0
  20. package/.claude/commands/agent-vibes/update.md +0 -0
  21. package/.claude/commands/agent-vibes/version.md +0 -0
  22. package/.claude/commands/agent-vibes/whoami.md +0 -0
  23. package/.claude/github-star-reminder.txt +0 -0
  24. package/.claude/hooks/speed-manager.sh +0 -0
  25. package/.claude/language-voices.yaml +0 -0
  26. package/.claude/output-styles/agent-vibes.md +0 -0
  27. package/.claude/personalities/angry.md +0 -0
  28. package/.claude/personalities/annoying.md +0 -0
  29. package/.claude/personalities/crass.md +0 -0
  30. package/.claude/personalities/dramatic.md +0 -0
  31. package/.claude/personalities/dry-humor.md +0 -0
  32. package/.claude/personalities/flirty.md +0 -0
  33. package/.claude/personalities/funny.md +0 -0
  34. package/.claude/personalities/grandpa.md +0 -0
  35. package/.claude/personalities/millennial.md +0 -0
  36. package/.claude/personalities/moody.md +0 -0
  37. package/.claude/personalities/normal.md +0 -0
  38. package/.claude/personalities/pirate.md +0 -0
  39. package/.claude/personalities/poetic.md +0 -0
  40. package/.claude/personalities/professional.md +0 -0
  41. package/.claude/personalities/robot.md +0 -0
  42. package/.claude/personalities/sarcastic.md +0 -0
  43. package/.claude/personalities/sassy.md +0 -0
  44. package/.claude/personalities/surfer-dude.md +0 -0
  45. package/.claude/personalities/zen.md +0 -0
  46. package/.claude/piper-voices/en_US-lessac-medium.onnx +0 -0
  47. package/.claude/piper-voices/en_US-lessac-medium.onnx.json +0 -0
  48. package/.claude/piper-voices-dir.txt +0 -0
  49. package/.claude/plugins/bmad-voices-enabled.flag +0 -0
  50. package/.claude/plugins/bmad-voices.md +0 -0
  51. package/.mcp-minimal.json +0 -0
  52. package/AUDIO_TUNNEL_FIX_SUMMARY.md +0 -0
  53. package/LICENSE +0 -0
  54. package/NPM_PUBLISH_GUIDE.md +0 -0
  55. package/README.md +19 -6
  56. package/RELEASE_NOTES.md +0 -0
  57. package/RELEASE_NOTES_V2.md +136 -5
  58. package/agentvibes.org/.claude/commands/agent-vibes/add.md +21 -0
  59. package/agentvibes.org/.claude/commands/agent-vibes/agent-vibes.md +68 -0
  60. package/agentvibes.org/.claude/commands/agent-vibes/commands.json +53 -0
  61. package/agentvibes.org/.claude/commands/agent-vibes/get.md +9 -0
  62. package/agentvibes.org/.claude/commands/agent-vibes/list.md +13 -0
  63. package/agentvibes.org/.claude/commands/agent-vibes/personality.md +79 -0
  64. package/agentvibes.org/.claude/commands/agent-vibes/preview.md +16 -0
  65. package/agentvibes.org/.claude/commands/agent-vibes/provider.md +54 -0
  66. package/agentvibes.org/.claude/commands/agent-vibes/replay.md +19 -0
  67. package/agentvibes.org/.claude/commands/agent-vibes/sample.md +12 -0
  68. package/agentvibes.org/.claude/commands/agent-vibes/sentiment.md +52 -0
  69. package/agentvibes.org/.claude/commands/agent-vibes/set-language.md +47 -0
  70. package/agentvibes.org/.claude/commands/agent-vibes/set-pretext.md +65 -0
  71. package/agentvibes.org/.claude/commands/agent-vibes/switch.md +53 -0
  72. package/agentvibes.org/.claude/commands/agent-vibes/update.md +20 -0
  73. package/agentvibes.org/.claude/commands/agent-vibes/version.md +10 -0
  74. package/agentvibes.org/.claude/commands/agent-vibes/whoami.md +7 -0
  75. package/agentvibes.org/.claude/hooks/bmad-voice-manager.sh +278 -0
  76. package/agentvibes.org/.claude/hooks/language-manager.sh +190 -0
  77. package/agentvibes.org/.claude/hooks/personality-manager.sh +279 -0
  78. package/agentvibes.org/.claude/hooks/piper-download-voices.sh +133 -0
  79. package/agentvibes.org/.claude/hooks/piper-voice-manager.sh +227 -0
  80. package/agentvibes.org/.claude/hooks/play-tts-elevenlabs.sh +201 -0
  81. package/agentvibes.org/.claude/hooks/play-tts-piper.sh +175 -0
  82. package/agentvibes.org/.claude/hooks/play-tts.sh +138 -0
  83. package/agentvibes.org/.claude/hooks/provider-commands.sh +374 -0
  84. package/agentvibes.org/.claude/hooks/provider-manager.sh +196 -0
  85. package/agentvibes.org/.claude/hooks/sentiment-manager.sh +163 -0
  86. package/agentvibes.org/.claude/hooks/voice-manager.sh +349 -0
  87. package/agentvibes.org/.claude/hooks/voices-config.sh +33 -0
  88. package/agentvibes.org/.claude/journal/2025-10-07.html +373 -0
  89. package/agentvibes.org/.claude/journal/index.html +91 -0
  90. package/agentvibes.org/.claude/output-styles/agent-vibes.md +203 -0
  91. package/agentvibes.org/.claude/personalities/angry.md +16 -0
  92. package/agentvibes.org/.claude/personalities/annoying.md +16 -0
  93. package/agentvibes.org/.claude/personalities/crass.md +16 -0
  94. package/agentvibes.org/.claude/personalities/dramatic.md +16 -0
  95. package/agentvibes.org/.claude/personalities/dry-humor.md +52 -0
  96. package/agentvibes.org/.claude/personalities/flirty.md +22 -0
  97. package/agentvibes.org/.claude/personalities/funny.md +16 -0
  98. package/agentvibes.org/.claude/personalities/grandpa.md +34 -0
  99. package/agentvibes.org/.claude/personalities/millennial.md +16 -0
  100. package/agentvibes.org/.claude/personalities/moody.md +16 -0
  101. package/agentvibes.org/.claude/personalities/normal.md +18 -0
  102. package/agentvibes.org/.claude/personalities/pirate.md +16 -0
  103. package/agentvibes.org/.claude/personalities/poetic.md +16 -0
  104. package/agentvibes.org/.claude/personalities/professional.md +16 -0
  105. package/agentvibes.org/.claude/personalities/robot.md +16 -0
  106. package/agentvibes.org/.claude/personalities/sarcastic.md +40 -0
  107. package/agentvibes.org/.claude/personalities/sassy.md +16 -0
  108. package/agentvibes.org/.claude/personalities/surfer-dude.md +16 -0
  109. package/agentvibes.org/.claude/personalities/zen.md +16 -0
  110. package/agentvibes.org/.mcp-minimal.json +60 -0
  111. package/agentvibes.org/CHANGELOG.md +56 -0
  112. package/agentvibes.org/README.md +93 -0
  113. package/agentvibes.org/app/(auth)/layout.tsx +15 -0
  114. package/agentvibes.org/app/(auth)/reset-password/page.tsx +45 -0
  115. package/agentvibes.org/app/(auth)/signin/page.tsx +82 -0
  116. package/agentvibes.org/app/(auth)/signup/page.tsx +104 -0
  117. package/agentvibes.org/app/(default)/layout.tsx +31 -0
  118. package/agentvibes.org/app/(default)/page.tsx +20 -0
  119. package/agentvibes.org/app/api/hello/route.ts +3 -0
  120. package/agentvibes.org/app/css/additional-styles/theme.css +82 -0
  121. package/agentvibes.org/app/css/additional-styles/utility-patterns.css +55 -0
  122. package/agentvibes.org/app/css/style.css +100 -0
  123. package/agentvibes.org/app/layout.tsx +63 -0
  124. package/agentvibes.org/components/cta.tsx +58 -0
  125. package/agentvibes.org/components/features.tsx +256 -0
  126. package/agentvibes.org/components/hero-home.tsx +133 -0
  127. package/agentvibes.org/components/modal-video.tsx +137 -0
  128. package/agentvibes.org/components/page-illustration.tsx +55 -0
  129. package/agentvibes.org/components/spotlight.tsx +77 -0
  130. package/agentvibes.org/components/testimonials.tsx +282 -0
  131. package/agentvibes.org/components/ui/footer.tsx +82 -0
  132. package/agentvibes.org/components/ui/header.tsx +53 -0
  133. package/agentvibes.org/components/ui/logo.tsx +10 -0
  134. package/agentvibes.org/components/workflows.tsx +176 -0
  135. package/agentvibes.org/next.config.js +4 -0
  136. package/agentvibes.org/package-lock.json +1974 -0
  137. package/agentvibes.org/package.json +30 -0
  138. package/agentvibes.org/pnpm-lock.yaml +1141 -0
  139. package/agentvibes.org/postcss.config.js +5 -0
  140. package/agentvibes.org/public/audio/02-sarcastic.mp3 +0 -0
  141. package/agentvibes.org/public/audio/03-angry.mp3 +0 -0
  142. package/agentvibes.org/public/audio/04-grandpa.mp3 +0 -0
  143. package/agentvibes.org/public/audio/05-sarcastic-example2.mp3 +0 -0
  144. package/agentvibes.org/public/audio/french-rachel.mp3 +0 -0
  145. package/agentvibes.org/public/audio/spanish-antoni.mp3 +0 -0
  146. package/agentvibes.org/public/favicon.ico +0 -0
  147. package/agentvibes.org/public/fonts/nacelle-italic.woff2 +0 -0
  148. package/agentvibes.org/public/fonts/nacelle-regular.woff2 +0 -0
  149. package/agentvibes.org/public/fonts/nacelle-semibold.woff2 +0 -0
  150. package/agentvibes.org/public/fonts/nacelle-semibolditalic.woff2 +0 -0
  151. package/agentvibes.org/public/images/blurred-shape-gray.svg +1 -0
  152. package/agentvibes.org/public/images/blurred-shape.svg +1 -0
  153. package/agentvibes.org/public/images/client-logo-01.svg +1 -0
  154. package/agentvibes.org/public/images/client-logo-02.svg +1 -0
  155. package/agentvibes.org/public/images/client-logo-03.svg +1 -0
  156. package/agentvibes.org/public/images/client-logo-04.svg +1 -0
  157. package/agentvibes.org/public/images/client-logo-05.svg +1 -0
  158. package/agentvibes.org/public/images/client-logo-06.svg +1 -0
  159. package/agentvibes.org/public/images/client-logo-07.svg +1 -0
  160. package/agentvibes.org/public/images/client-logo-08.svg +1 -0
  161. package/agentvibes.org/public/images/client-logo-09.svg +1 -0
  162. package/agentvibes.org/public/images/features.png +0 -0
  163. package/agentvibes.org/public/images/footer-illustration.svg +1 -0
  164. package/agentvibes.org/public/images/hero-image-01.jpg +0 -0
  165. package/agentvibes.org/public/images/logo.svg +1 -0
  166. package/agentvibes.org/public/images/page-illustration.svg +1 -0
  167. package/agentvibes.org/public/images/secondary-illustration.svg +1 -0
  168. package/agentvibes.org/public/images/testimonial-01.jpg +0 -0
  169. package/agentvibes.org/public/images/testimonial-02.jpg +0 -0
  170. package/agentvibes.org/public/images/testimonial-03.jpg +0 -0
  171. package/agentvibes.org/public/images/testimonial-04.jpg +0 -0
  172. package/agentvibes.org/public/images/testimonial-05.jpg +0 -0
  173. package/agentvibes.org/public/images/testimonial-06.jpg +0 -0
  174. package/agentvibes.org/public/images/testimonial-07.jpg +0 -0
  175. package/agentvibes.org/public/images/testimonial-08.jpg +0 -0
  176. package/agentvibes.org/public/images/testimonial-09.jpg +0 -0
  177. package/agentvibes.org/public/images/workflow-01.png +0 -0
  178. package/agentvibes.org/public/images/workflow-02.png +0 -0
  179. package/agentvibes.org/public/images/workflow-03.png +0 -0
  180. package/agentvibes.org/public/videos/video.mp4 +0 -0
  181. package/agentvibes.org/tsconfig.json +28 -0
  182. package/agentvibes.org/utils/useMasonry.tsx +67 -0
  183. package/agentvibes.org/utils/useMousePosition.tsx +27 -0
  184. package/docs/ai-optimized-documentation-standards.md +0 -0
  185. package/docs/architecture/provider-system.md +0 -0
  186. package/docs/remote-audio-setup.md +0 -0
  187. package/docs/voice-mapping-format.md +0 -0
  188. package/linkedin/vibe-coding-and-pulseaudio.md +121 -0
  189. package/mcp-server/QUICK_START.md +0 -0
  190. package/mcp-server/README.md +0 -0
  191. package/mcp-server/examples/claude_desktop_config.json +0 -0
  192. package/mcp-server/examples/claude_desktop_config_piper.json +0 -0
  193. package/mcp-server/examples/custom_instructions.md +0 -0
  194. package/mcp-server/pyproject.toml +0 -0
  195. package/mcp-server/requirements.txt +0 -0
  196. package/mcp-server/server.py +0 -0
  197. package/package.json +1 -1
  198. package/scripts/README.md +0 -0
  199. package/scripts/piper-voice/README.md +0 -0
  200. package/scripts/setup-windows-audio.ps1 +0 -0
  201. package/src/commands/install-mcp.js +0 -0
  202. package/src/installer.js +18 -0
  203. package/templates/activation-instructions-bmad.md +0 -0
  204. package/templates/output-styles/agent-vibes.md +0 -0
  205. package/test/README.md +0 -0
  206. package/test/helpers/test-helper.bash +0 -0
  207. package/test/test-framework.md +0 -0
  208. package/test/unit/personality-manager.bats +0 -0
  209. package/test/unit/play-tts.bats +0 -0
  210. package/test/unit/voice-manager.bats +0 -0
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/.mcp-minimal.json CHANGED
File without changes
File without changes
package/LICENSE CHANGED
File without changes
File without changes
package/README.md CHANGED
@@ -123,6 +123,20 @@ Instead of remembering slash commands like `/agent-vibes:switch Aria`, just say:
123
123
  - The MCP server will automatically install Python packages (mcp, pipx, Piper TTS)
124
124
  - But Python 3 itself must be installed first by you
125
125
 
126
+ **Step 1: Set Your ElevenLabs API Key (Windows)**
127
+
128
+ Open Command Prompt or PowerShell and run:
129
+ ```cmd
130
+ setx ELEVENLABS_API_KEY "your-api-key-here"
131
+ ```
132
+
133
+ **Important:** After running `setx`, you must:
134
+ 1. Close Claude Desktop completely (if running)
135
+ 2. Open a **new** terminal window (the variable won't be available in current terminal)
136
+ 3. Restart Claude Desktop
137
+
138
+ **Step 2: Configure Claude Desktop**
139
+
126
140
  Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
127
141
 
128
142
  ```json
@@ -130,15 +144,14 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS)
130
144
  "mcpServers": {
131
145
  "agentvibes": {
132
146
  "command": "npx",
133
- "args": ["-y", "agentvibes-mcp-server"],
134
- "env": {
135
- "ELEVENLABS_API_KEY": "${ELEVENLABS_API_KEY}"
136
- }
147
+ "args": ["-y", "agentvibes@beta", "agentvibes-mcp-server"]
137
148
  }
138
149
  }
139
150
  }
140
151
  ```
141
152
 
153
+ **Note:** The `env` section is optional. Claude Desktop automatically inherits Windows environment variables, so if you've set `ELEVENLABS_API_KEY` with `setx`, it will be available automatically.
154
+
142
155
  #### For Warp Terminal
143
156
 
144
157
  Add to `~/.warp/mcp.json`:
@@ -147,7 +160,7 @@ Add to `~/.warp/mcp.json`:
147
160
  {
148
161
  "agentvibes": {
149
162
  "command": "npx",
150
- "args": ["-y", "agentvibes-mcp-server"],
163
+ "args": ["-y", "agentvibes@beta", "agentvibes-mcp-server"],
151
164
  "env": {
152
165
  "ELEVENLABS_API_KEY": "${ELEVENLABS_API_KEY}"
153
166
  }
@@ -164,7 +177,7 @@ Add to `.mcp-minimal.json` in your project:
164
177
  "mcpServers": {
165
178
  "agentvibes": {
166
179
  "command": "npx",
167
- "args": ["-y", "agentvibes-mcp-server"],
180
+ "args": ["-y", "agentvibes@beta", "agentvibes-mcp-server"],
168
181
  "env": {
169
182
  "ELEVENLABS_API_KEY": "${ELEVENLABS_API_KEY}"
170
183
  }
package/RELEASE_NOTES.md CHANGED
File without changes
@@ -91,6 +91,107 @@ AgentVibes now speaks **30+ languages** with native voice quality!
91
91
 
92
92
  ---
93
93
 
94
+ ### 🎓 Language Learning Mode (Beta)
95
+
96
+ **Learn languages naturally with dual-language TTS!**
97
+
98
+ AgentVibes now includes a **language learning mode** that helps you learn new languages through context and repetition. Every acknowledgment and completion is spoken TWICE - first in your main language (English), then in your target language.
99
+
100
+ #### **How It Works:**
101
+
102
+ 1. **Set your target language** - Choose from 30+ supported languages
103
+ 2. **Enable learning mode** - Activates dual-language TTS
104
+ 3. **Natural repetition** - Hear everything twice in context
105
+ 4. **Adjustable speed** - Slow down target language for better comprehension
106
+
107
+ #### **New Learning Commands:**
108
+
109
+ ```bash
110
+ # Set the language you want to learn
111
+ /agent-vibes:target spanish
112
+ /agent-vibes:target french
113
+ /agent-vibes:target german
114
+
115
+ # Set voice for target language (auto-selected based on provider)
116
+ /agent-vibes:target-voice Antoni # ElevenLabs
117
+ /agent-vibes:target-voice es_ES-davefx-medium # Piper
118
+
119
+ # Enable/disable learning mode
120
+ /agent-vibes:learn
121
+
122
+ # Set your main/native language
123
+ /agent-vibes:language english
124
+
125
+ # Adjust speech speed (Piper only)
126
+ /agent-vibes:set-speed 2x # 2x slower (great for learning)
127
+ /agent-vibes:set-speed target 2x # Slow down target language only
128
+ /agent-vibes:set-speed normal # Reset to normal speed
129
+ ```
130
+
131
+ #### **Example Learning Session:**
132
+
133
+ ```
134
+ User: "hello"
135
+
136
+ Claude (English): "Hey there! Great to hear from you!"
137
+ 🔊 Plays in English with your configured voice
138
+
139
+ Claude (Spanish): "¡Hola! ¡Qué bueno saber de ti!"
140
+ 🔊 Plays in Spanish with target voice (Antoni/es_ES-davefx-medium)
141
+ ```
142
+
143
+ #### **Advanced Features:**
144
+
145
+ **🎚️ Speech Rate Control (Piper TTS):**
146
+ - Slow down target language for better comprehension
147
+ - Separate speed controls for main and target languages
148
+ - Intuitive syntax: `2x` = 2x slower, `0.5x` = 2x faster
149
+ - Perfect for language learners who need more time to process
150
+
151
+ **🔄 Mixed Provider Support:**
152
+ - Use **ElevenLabs for English** (premium quality)
153
+ - Use **Piper for Spanish** (free, slower speech)
154
+ - System auto-detects provider from voice name
155
+ - Seamless switching between providers
156
+
157
+ **🎯 Auto-Voice Selection:**
158
+ - System automatically selects the best voice for your target language
159
+ - Provider-aware: ElevenLabs voices for ElevenLabs, Piper voices for Piper
160
+ - Smart fallback if preferred voice unavailable
161
+
162
+ **🌍 Supported Target Languages:**
163
+ Spanish, French, German, Italian, Portuguese, Chinese, Japanese, Korean, Russian, Arabic, Hindi, Polish, Dutch, Turkish, Swedish, Danish, Norwegian, Finnish, Czech, Romanian, Ukrainian, Greek, Bulgarian, Croatian, Slovak, and more!
164
+
165
+ #### **Voice Mappings by Provider:**
166
+
167
+ **ElevenLabs Voices:**
168
+ - Spanish → Antoni
169
+ - French → Rachel
170
+ - German → Domi
171
+ - Italian → Bella
172
+ - Portuguese → Matilda
173
+ - Chinese, Japanese, Korean → Antoni (multilingual)
174
+
175
+ **Piper Voices (Free, Offline):**
176
+ - Spanish → es_ES-davefx-medium
177
+ - French → fr_FR-siwis-medium
178
+ - German → de_DE-thorsten-medium
179
+ - Italian → it_IT-riccardo-x_low
180
+ - Portuguese → pt_BR-faber-medium
181
+ - Chinese → zh_CN-huayan-medium
182
+ - Japanese → ja_JP-hikari-medium
183
+
184
+ #### **Why This Helps Learning:**
185
+
186
+ 1. **Context-based learning** - Hear words/phrases in real situations
187
+ 2. **Natural repetition** - Every message twice, reinforcing vocabulary
188
+ 3. **Pronunciation practice** - Native-quality voices model correct pronunciation
189
+ 4. **Adjustable pace** - Slow down difficult phrases with speed control
190
+ 5. **Consistent exposure** - Learn while coding, naturally building vocabulary
191
+ 6. **No extra effort** - Learning happens passively as you work
192
+
193
+ ---
194
+
94
195
  ### 🎤 Expanded Voice Library (27+ Voices)
95
196
 
96
197
  **New multilingual voices added:**
@@ -269,6 +370,8 @@ sarcastic, flirty, pirate, grandpa, dry-humor, angry, robot, zen, professional,
269
370
  │ ├── provider-manager.sh # Provider switching
270
371
  │ ├── provider-commands.sh # Provider CLI
271
372
  │ ├── language-manager.sh # Language system
373
+ │ ├── learn-manager.sh # Language learning mode
374
+ │ ├── speed-manager.sh # Speech rate control (Piper)
272
375
  │ ├── voice-manager.sh # Voice switching
273
376
  │ ├── personality-manager.sh # Personality system
274
377
  │ ├── sentiment-manager.sh # Sentiment system
@@ -289,6 +392,12 @@ sarcastic, flirty, pirate, grandpa, dry-humor, angry, robot, zen, professional,
289
392
  - `tts-personality.txt` - Active personality
290
393
  - `tts-sentiment.txt` - Active sentiment
291
394
  - `tts-language.txt` - Selected language
395
+ - `tts-learn-mode.txt` - Learning mode status (ON/OFF)
396
+ - `tts-target-language.txt` - Target language for learning
397
+ - `tts-target-voice.txt` - Voice for target language
398
+ - `tts-main-language.txt` - Main/native language
399
+ - `config/piper-speech-rate.txt` - Main voice speech rate (Piper)
400
+ - `config/piper-target-speech-rate.txt` - Target voice speech rate (Piper)
292
401
 
293
402
  ---
294
403
 
@@ -315,6 +424,15 @@ sarcastic, flirty, pirate, grandpa, dry-humor, angry, robot, zen, professional,
315
424
  - `/agent-vibes:set-language list` - Show languages
316
425
  - `/agent-vibes:set-language english` - Reset to English
317
426
 
427
+ ### Language Learning Commands:
428
+ - `/agent-vibes:target <language>` - Set target language to learn
429
+ - `/agent-vibes:target-voice <voice>` - Set voice for target language
430
+ - `/agent-vibes:learn` - Enable/disable learning mode
431
+ - `/agent-vibes:language <language>` - Set main/native language
432
+ - `/agent-vibes:set-speed <speed>` - Set speech rate (Piper only)
433
+ - `/agent-vibes:set-speed target <speed>` - Set target language speed
434
+ - `/agent-vibes:set-speed get` - Show current speed settings
435
+
318
436
  ### Personality Commands:
319
437
  - `/agent-vibes:personality <name>` - Set personality
320
438
  - `/agent-vibes:personality list` - Show all
@@ -407,6 +525,17 @@ sarcastic, flirty, pirate, grandpa, dry-humor, angry, robot, zen, professional,
407
525
 
408
526
  ## 🐛 Bug Fixes
409
527
 
528
+ ### v2.0.17-beta Series (Language Learning Mode):
529
+ - **Fixed ElevenLabs audio static** - Added MP3 codec (`-c:a libmp3lame`) to prevent WAV format issues
530
+ - **Fixed MCP provider switching** - Enhanced non-interactive detection with `CLAUDE_PROJECT_DIR` check
531
+ - **Fixed target voice sync** - Auto-updates target voice when switching providers
532
+ - **Fixed voice/provider mismatches** - Output style now lets system choose voice based on active provider
533
+ - **Fixed learning mode config** - Corrected file names (`tts-learn-mode.txt`) and value checks (`ON`/`OFF`)
534
+ - **Fixed Piper speech rate** - Properly reads numeric values from config files (strips comments)
535
+ - **Fixed interactive prompts in MCP** - Provider switch commands now work seamlessly via slash commands
536
+ - **Fixed Spanish voice download** - Voice models now download automatically with user consent
537
+
538
+ ### v2.0.0 Core Fixes:
410
539
  - Fixed symlink support for shared hooks
411
540
  - Fixed WSL audio static with silence padding
412
541
  - Fixed installer directory detection for npx
@@ -419,15 +548,17 @@ sarcastic, flirty, pirate, grandpa, dry-humor, angry, robot, zen, professional,
419
548
 
420
549
  ## 📊 Statistics
421
550
 
422
- **v2.0.0 by the numbers:**
551
+ **v2.0.17-beta by the numbers:**
423
552
  - 🎤 **200+ voices** across both providers
424
- - 🌍 **30+ languages** supported
553
+ - 🌍 **30+ languages** supported (learning mode for all)
554
+ - 🎓 **1 language learning mode** with dual-language TTS
425
555
  - 🎭 **19 personalities** included
426
556
  - 💭 **19 sentiments** available
427
- - 📝 **15 slash commands** total
428
- - 🔧 **12 hook scripts** installed
429
- - 🔌 **2 TTS providers** available
557
+ - 📝 **20+ slash commands** total (incl. learning commands)
558
+ - 🔧 **14 hook scripts** installed (incl. learn-manager, speed-manager)
559
+ - 🔌 **2 TTS providers** available (mixed provider support)
430
560
  - 🤖 **10 BMAD agents** with voice mapping
561
+ - 🎚️ **Adjustable speech rate** for Piper TTS (0.5x - 3x)
431
562
 
432
563
  ---
433
564
 
@@ -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