agentvibes 2.0.20 → 2.0.22

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 (233) hide show
  1. package/.claude/agents/health-coach.md +154 -0
  2. package/.claude/agents/motivator.md +171 -0
  3. package/.claude/agents/negotiator.md +97 -0
  4. package/.claude/commands/agent-vibes/agent-health-coach.md +15 -0
  5. package/.claude/commands/agent-vibes/agent-motivator.md +15 -0
  6. package/.claude/commands/agent-vibes/agent-negotiator.md +15 -0
  7. package/.claude/commands/agent-vibes/agent.md +79 -0
  8. package/.claude/commands/agent-vibes/commands.json +4 -0
  9. package/.claude/commands/agent-vibes/set-favorite-voice.md +84 -0
  10. package/.claude/github-star-reminder.txt +1 -1
  11. package/.claude/hooks/download-extra-voices.sh +244 -0
  12. package/.claude/hooks/personality-manager.sh +81 -0
  13. package/.claude/hooks/piper-download-voices.sh +3 -93
  14. package/.claude/hooks/piper-multispeaker-registry.sh +165 -0
  15. package/.claude/hooks/play-tts-elevenlabs.sh +5 -3
  16. package/.claude/hooks/play-tts-piper.sh +27 -44
  17. package/.claude/hooks/provider-manager.sh +24 -5
  18. package/.claude/hooks/speed-manager.sh +10 -12
  19. package/.claude/hooks/voice-manager.sh +94 -56
  20. package/README.md +0 -3
  21. package/RELEASE_NOTES.md +40 -247
  22. package/docs/agents.md +485 -0
  23. package/docs/commands.md +1 -21
  24. package/docs/extra-voices-implementation-summary.md +235 -0
  25. package/docs/voice-registration-fix.md +254 -0
  26. package/fix-vscode-colors.sh +88 -0
  27. package/fixcolors +88 -0
  28. package/generate-all-agent-voices.sh +174 -0
  29. package/generate-missing-elevenlabs-complete.sh +236 -0
  30. package/generate-missing-elevenlabs.sh +110 -0
  31. package/generate-new-voices.sh +108 -0
  32. package/generate-piper-agent-intros.sh +85 -0
  33. package/generate-provider-and-agent-intros.sh +136 -0
  34. package/logo/fav_icon_128x128.png +0 -0
  35. package/logo/fav_icon_128x128.png:Zone.Identifier +4 -0
  36. package/logo/logo1.webp +0 -0
  37. package/logo/logo1.webp:Zone.Identifier +4 -0
  38. package/logo/social.png +0 -0
  39. package/logo/social.png:Zone.Identifier +4 -0
  40. package/mcp-server/agentvibes.db +0 -0
  41. package/mcp-server/server.py +47 -14
  42. package/package.json +3 -3
  43. package/regenerate-agent-voices.sh +79 -0
  44. package/test/unit/provider-manager.bats +8 -5
  45. package/test/unit/speed-manager.bats +4 -4
  46. package/agentvibes.org/.claude/audio/tts-padded-1760744118.mp3 +0 -0
  47. package/agentvibes.org/.claude/audio/tts-padded-1760748535.mp3 +0 -0
  48. package/agentvibes.org/.claude/audio/tts-padded-1760748676.mp3 +0 -0
  49. package/agentvibes.org/.claude/audio/tts-padded-1760750748.mp3 +0 -0
  50. package/agentvibes.org/.claude/audio/tts-padded-1760750947.mp3 +0 -0
  51. package/agentvibes.org/.claude/audio/tts-padded-1760752718.mp3 +0 -0
  52. package/agentvibes.org/.claude/audio/tts-padded-1760752907.mp3 +0 -0
  53. package/agentvibes.org/.claude/audio/tts-padded-1760753017.mp3 +0 -0
  54. package/agentvibes.org/.claude/audio/tts-padded-1760753045.mp3 +0 -0
  55. package/agentvibes.org/.claude/audio/tts-padded-1760753241.mp3 +0 -0
  56. package/agentvibes.org/.claude/audio/tts-padded-1760753315.mp3 +0 -0
  57. package/agentvibes.org/.claude/audio/tts-padded-1760753382.mp3 +0 -0
  58. package/agentvibes.org/.claude/audio/tts-padded-1760753408.mp3 +0 -0
  59. package/agentvibes.org/.claude/audio/tts-padded-1760753426.mp3 +0 -0
  60. package/agentvibes.org/.claude/audio/tts-padded-1760753446.mp3 +0 -0
  61. package/agentvibes.org/.claude/audio/tts-padded-1760753541.mp3 +0 -0
  62. package/agentvibes.org/.claude/audio/tts-padded-1760753553.mp3 +0 -0
  63. package/agentvibes.org/.claude/audio/tts-padded-1760753577.mp3 +0 -0
  64. package/agentvibes.org/.claude/commands/agent-vibes/add.md +0 -21
  65. package/agentvibes.org/.claude/commands/agent-vibes/agent-vibes.md +0 -68
  66. package/agentvibes.org/.claude/commands/agent-vibes/bmad.md +0 -196
  67. package/agentvibes.org/.claude/commands/agent-vibes/commands.json +0 -77
  68. package/agentvibes.org/.claude/commands/agent-vibes/get.md +0 -9
  69. package/agentvibes.org/.claude/commands/agent-vibes/language.md +0 -23
  70. package/agentvibes.org/.claude/commands/agent-vibes/learn.md +0 -67
  71. package/agentvibes.org/.claude/commands/agent-vibes/list.md +0 -13
  72. package/agentvibes.org/.claude/commands/agent-vibes/personality.md +0 -79
  73. package/agentvibes.org/.claude/commands/agent-vibes/preview.md +0 -17
  74. package/agentvibes.org/.claude/commands/agent-vibes/provider.md +0 -54
  75. package/agentvibes.org/.claude/commands/agent-vibes/replay-target.md +0 -14
  76. package/agentvibes.org/.claude/commands/agent-vibes/replay.md +0 -19
  77. package/agentvibes.org/.claude/commands/agent-vibes/sample.md +0 -12
  78. package/agentvibes.org/.claude/commands/agent-vibes/sentiment.md +0 -52
  79. package/agentvibes.org/.claude/commands/agent-vibes/set-language.md +0 -47
  80. package/agentvibes.org/.claude/commands/agent-vibes/set-pretext.md +0 -65
  81. package/agentvibes.org/.claude/commands/agent-vibes/set-speed.md +0 -41
  82. package/agentvibes.org/.claude/commands/agent-vibes/switch.md +0 -53
  83. package/agentvibes.org/.claude/commands/agent-vibes/target-voice.md +0 -26
  84. package/agentvibes.org/.claude/commands/agent-vibes/target.md +0 -30
  85. package/agentvibes.org/.claude/commands/agent-vibes/update.md +0 -20
  86. package/agentvibes.org/.claude/commands/agent-vibes/version.md +0 -10
  87. package/agentvibes.org/.claude/commands/agent-vibes/whoami.md +0 -7
  88. package/agentvibes.org/.claude/hooks/bmad-tts-injector.sh +0 -386
  89. package/agentvibes.org/.claude/hooks/bmad-voice-manager.sh +0 -375
  90. package/agentvibes.org/.claude/hooks/check-output-style.sh +0 -60
  91. package/agentvibes.org/.claude/hooks/github-star-reminder.sh +0 -94
  92. package/agentvibes.org/.claude/hooks/language-manager.sh +0 -360
  93. package/agentvibes.org/.claude/hooks/learn-manager.sh +0 -443
  94. package/agentvibes.org/.claude/hooks/personality-manager.sh +0 -324
  95. package/agentvibes.org/.claude/hooks/piper-download-voices.sh +0 -133
  96. package/agentvibes.org/.claude/hooks/piper-installer.sh +0 -144
  97. package/agentvibes.org/.claude/hooks/piper-voice-manager.sh +0 -227
  98. package/agentvibes.org/.claude/hooks/play-tts-elevenlabs.sh +0 -376
  99. package/agentvibes.org/.claude/hooks/play-tts-piper.sh +0 -281
  100. package/agentvibes.org/.claude/hooks/play-tts.sh +0 -69
  101. package/agentvibes.org/.claude/hooks/provider-commands.sh +0 -505
  102. package/agentvibes.org/.claude/hooks/provider-manager.sh +0 -248
  103. package/agentvibes.org/.claude/hooks/replay-target-audio.sh +0 -64
  104. package/agentvibes.org/.claude/hooks/sentiment-manager.sh +0 -163
  105. package/agentvibes.org/.claude/hooks/speed-manager.sh +0 -259
  106. package/agentvibes.org/.claude/hooks/voice-manager.sh +0 -477
  107. package/agentvibes.org/.claude/hooks/voices-config.sh +0 -33
  108. package/agentvibes.org/.claude/journal/2025-10-07.html +0 -373
  109. package/agentvibes.org/.claude/journal/index.html +0 -91
  110. package/agentvibes.org/.claude/output-styles/agent-vibes.md +0 -203
  111. package/agentvibes.org/.claude/personalities/angry.md +0 -17
  112. package/agentvibes.org/.claude/personalities/annoying.md +0 -17
  113. package/agentvibes.org/.claude/personalities/crass.md +0 -17
  114. package/agentvibes.org/.claude/personalities/dramatic.md +0 -17
  115. package/agentvibes.org/.claude/personalities/dry-humor.md +0 -53
  116. package/agentvibes.org/.claude/personalities/flirty.md +0 -23
  117. package/agentvibes.org/.claude/personalities/funny.md +0 -17
  118. package/agentvibes.org/.claude/personalities/grandpa.md +0 -35
  119. package/agentvibes.org/.claude/personalities/millennial.md +0 -17
  120. package/agentvibes.org/.claude/personalities/moody.md +0 -17
  121. package/agentvibes.org/.claude/personalities/normal.md +0 -19
  122. package/agentvibes.org/.claude/personalities/pirate.md +0 -17
  123. package/agentvibes.org/.claude/personalities/poetic.md +0 -17
  124. package/agentvibes.org/.claude/personalities/professional.md +0 -17
  125. package/agentvibes.org/.claude/personalities/robot.md +0 -17
  126. package/agentvibes.org/.claude/personalities/sarcastic.md +0 -41
  127. package/agentvibes.org/.claude/personalities/sassy.md +0 -17
  128. package/agentvibes.org/.claude/personalities/surfer-dude.md +0 -17
  129. package/agentvibes.org/.claude/personalities/zen.md +0 -17
  130. package/agentvibes.org/.claude/piper-voices-dir.txt +0 -1
  131. package/agentvibes.org/.claude/plugins/bmad-voices.md +0 -42
  132. package/agentvibes.org/.claude/tts-provider.txt +0 -1
  133. package/agentvibes.org/.mcp-minimal.json +0 -60
  134. package/agentvibes.org/CHANGELOG.md +0 -56
  135. package/agentvibes.org/README.md +0 -93
  136. package/agentvibes.org/app/(auth)/layout.tsx +0 -15
  137. package/agentvibes.org/app/(auth)/reset-password/page.tsx +0 -45
  138. package/agentvibes.org/app/(auth)/signin/page.tsx +0 -82
  139. package/agentvibes.org/app/(auth)/signup/page.tsx +0 -104
  140. package/agentvibes.org/app/(default)/blog/[slug]/page.tsx +0 -128
  141. package/agentvibes.org/app/(default)/blog/page.tsx +0 -95
  142. package/agentvibes.org/app/(default)/layout.tsx +0 -31
  143. package/agentvibes.org/app/(default)/page.tsx +0 -20
  144. package/agentvibes.org/app/api/hello/route.ts +0 -3
  145. package/agentvibes.org/app/css/additional-styles/theme.css +0 -82
  146. package/agentvibes.org/app/css/additional-styles/utility-patterns.css +0 -55
  147. package/agentvibes.org/app/css/style.css +0 -100
  148. package/agentvibes.org/app/layout.tsx +0 -63
  149. package/agentvibes.org/components/code-block.tsx +0 -27
  150. package/agentvibes.org/components/cta.tsx +0 -58
  151. package/agentvibes.org/components/features.tsx +0 -256
  152. package/agentvibes.org/components/hero-home.tsx +0 -133
  153. package/agentvibes.org/components/mdx-components.tsx +0 -128
  154. package/agentvibes.org/components/modal-video.tsx +0 -137
  155. package/agentvibes.org/components/page-illustration.tsx +0 -55
  156. package/agentvibes.org/components/spotlight.tsx +0 -77
  157. package/agentvibes.org/components/testimonials.tsx +0 -282
  158. package/agentvibes.org/components/ui/footer.tsx +0 -82
  159. package/agentvibes.org/components/ui/header.tsx +0 -68
  160. package/agentvibes.org/components/ui/logo.tsx +0 -10
  161. package/agentvibes.org/components/workflows.tsx +0 -176
  162. package/agentvibes.org/content/blog/discovering-new-piper-voices.mdx +0 -253
  163. package/agentvibes.org/content/blog/getting-started-agentvibes.mdx +0 -228
  164. package/agentvibes.org/content/blog/introducing-agentvibes-v2.mdx +0 -250
  165. package/agentvibes.org/content/blog/language-learning-with-agentvibes.mdx +0 -142
  166. package/agentvibes.org/content/blog/voice-personalities-guide.mdx +0 -119
  167. package/agentvibes.org/lib/blog.ts +0 -73
  168. package/agentvibes.org/next.config.js +0 -6
  169. package/agentvibes.org/package-lock.json +0 -4285
  170. package/agentvibes.org/package.json +0 -40
  171. package/agentvibes.org/pnpm-lock.yaml +0 -1141
  172. package/agentvibes.org/postcss.config.js +0 -5
  173. package/agentvibes.org/public/audio/02-sarcastic.mp3 +0 -0
  174. package/agentvibes.org/public/audio/03-angry.mp3 +0 -0
  175. package/agentvibes.org/public/audio/04-grandpa.mp3 +0 -0
  176. package/agentvibes.org/public/audio/05-sarcastic-example2.mp3 +0 -0
  177. package/agentvibes.org/public/audio/french-rachel.mp3 +0 -0
  178. package/agentvibes.org/public/audio/piper-voices/speaker_0_Cori_Samuel.wav +0 -0
  179. package/agentvibes.org/public/audio/piper-voices/speaker_10_Steve_C.wav +0 -0
  180. package/agentvibes.org/public/audio/piper-voices/speaker_11_Owlivia.wav +0 -0
  181. package/agentvibes.org/public/audio/piper-voices/speaker_12_Paul_Hampton.wav +0 -0
  182. package/agentvibes.org/public/audio/piper-voices/speaker_13_Jennifer_Dorr.wav +0 -0
  183. package/agentvibes.org/public/audio/piper-voices/speaker_14_Emily_Cripps.wav +0 -0
  184. package/agentvibes.org/public/audio/piper-voices/speaker_15_Martin_Clifton.wav +0 -0
  185. package/agentvibes.org/public/audio/piper-voices/speaker_1_Kara_Shallenberg.wav +0 -0
  186. package/agentvibes.org/public/audio/piper-voices/speaker_2_Kristin_Hughes.wav +0 -0
  187. package/agentvibes.org/public/audio/piper-voices/speaker_3_Maria_Kasper.wav +0 -0
  188. package/agentvibes.org/public/audio/piper-voices/speaker_4_Mike_Pelton.wav +0 -0
  189. package/agentvibes.org/public/audio/piper-voices/speaker_5_Mark_Nelson.wav +0 -0
  190. package/agentvibes.org/public/audio/piper-voices/speaker_6_Michael_Scherer.wav +0 -0
  191. package/agentvibes.org/public/audio/piper-voices/speaker_7_James_K_White.wav +0 -0
  192. package/agentvibes.org/public/audio/piper-voices/speaker_8_Rose_Ibex.wav +0 -0
  193. package/agentvibes.org/public/audio/piper-voices/speaker_9_progressingamerica.wav +0 -0
  194. package/agentvibes.org/public/audio/spanish-antoni.mp3 +0 -0
  195. package/agentvibes.org/public/favicon.ico +0 -0
  196. package/agentvibes.org/public/fonts/nacelle-italic.woff2 +0 -0
  197. package/agentvibes.org/public/fonts/nacelle-regular.woff2 +0 -0
  198. package/agentvibes.org/public/fonts/nacelle-semibold.woff2 +0 -0
  199. package/agentvibes.org/public/fonts/nacelle-semibolditalic.woff2 +0 -0
  200. package/agentvibes.org/public/images/blurred-shape-gray.svg +0 -1
  201. package/agentvibes.org/public/images/blurred-shape.svg +0 -1
  202. package/agentvibes.org/public/images/client-logo-01.svg +0 -1
  203. package/agentvibes.org/public/images/client-logo-02.svg +0 -1
  204. package/agentvibes.org/public/images/client-logo-03.svg +0 -1
  205. package/agentvibes.org/public/images/client-logo-04.svg +0 -1
  206. package/agentvibes.org/public/images/client-logo-05.svg +0 -1
  207. package/agentvibes.org/public/images/client-logo-06.svg +0 -1
  208. package/agentvibes.org/public/images/client-logo-07.svg +0 -1
  209. package/agentvibes.org/public/images/client-logo-08.svg +0 -1
  210. package/agentvibes.org/public/images/client-logo-09.svg +0 -1
  211. package/agentvibes.org/public/images/features.png +0 -0
  212. package/agentvibes.org/public/images/footer-illustration.svg +0 -1
  213. package/agentvibes.org/public/images/hero-image-01.jpg +0 -0
  214. package/agentvibes.org/public/images/logo.svg +0 -1
  215. package/agentvibes.org/public/images/page-illustration.svg +0 -1
  216. package/agentvibes.org/public/images/secondary-illustration.svg +0 -1
  217. package/agentvibes.org/public/images/testimonial-01.jpg +0 -0
  218. package/agentvibes.org/public/images/testimonial-02.jpg +0 -0
  219. package/agentvibes.org/public/images/testimonial-03.jpg +0 -0
  220. package/agentvibes.org/public/images/testimonial-04.jpg +0 -0
  221. package/agentvibes.org/public/images/testimonial-05.jpg +0 -0
  222. package/agentvibes.org/public/images/testimonial-06.jpg +0 -0
  223. package/agentvibes.org/public/images/testimonial-07.jpg +0 -0
  224. package/agentvibes.org/public/images/testimonial-08.jpg +0 -0
  225. package/agentvibes.org/public/images/testimonial-09.jpg +0 -0
  226. package/agentvibes.org/public/images/workflow-01.png +0 -0
  227. package/agentvibes.org/public/images/workflow-02.png +0 -0
  228. package/agentvibes.org/public/images/workflow-03.png +0 -0
  229. package/agentvibes.org/public/videos/video.mp4 +0 -0
  230. package/agentvibes.org/tsconfig.json +0 -28
  231. package/agentvibes.org/utils/useMasonry.tsx +0 -67
  232. package/agentvibes.org/utils/useMousePosition.tsx +0 -27
  233. package/docs/bryce-beattie-voice-licensing.md +0 -131
@@ -0,0 +1,85 @@
1
+ #!/bin/bash
2
+
3
+ # Script to generate Piper TTS audio for provider and agent intros
4
+ # Uses multi-speaker Piper voices
5
+
6
+ # Output directories
7
+ PIPER_DIR="agentvibes.org/public/audio/piper-voices"
8
+ AGENTS_DIR="agentvibes.org/public/audio/agents"
9
+
10
+ mkdir -p "$PIPER_DIR"
11
+ mkdir -p "$AGENTS_DIR"
12
+
13
+ # Voice model paths
14
+ VOICE_MODEL_16="mcp-server/voices/16Speakers.onnx"
15
+ VOICE_MODEL_LESSAC=".claude/piper-voices/en_US-lessac-medium.onnx"
16
+
17
+ # Provider explanation texts
18
+ PIPER_TEXT="Hello! I'm Piper TTS, your free, offline text-to-speech provider. I'm a fast neural text-to-speech system that runs entirely on your local machine, which means no API costs, complete privacy, and lightning-fast response times. I offer over fifty high-quality voices in multiple languages, all available without an internet connection. I'm perfect for developers who want professional voice synthesis without subscription fees or usage limits. Best of all, I work seamlessly with AgentVibes right out of the box. Try me out and experience free, high-quality text-to-speech!"
19
+
20
+ # Agent intro texts (updated with disclaimers)
21
+ NEGOTIATOR_TEXT="Hello, I'm your Negotiator agent, inspired by some of the proven methods from Chris Voss, former FBI lead hostage negotiator. I specialize in tactical empathy, calibrated questions, and psychological techniques that help you win negotiations. Whether you're discussing salary, closing a business deal, or navigating a difficult situation, I'll do my best to guide you through strategies from Never Split the Difference. To activate me in AgentVibes, just select the Negotiator agent and I'll help you prepare for any high-stakes conversation. Let's get you the outcome you deserve. Please note, this is an experimental feature and it's meant for entertainment purposes only."
22
+
23
+ HEALTH_COACH_TEXT="Hey there! I'm your Health Coach, inspired by the Keto Flex approach from Ben Azadi. I focus on sustainable wellness through clean ketogenic nutrition, intermittent fasting, and addressing root causes rather than just symptoms. Whether you want to lose weight, boost your energy, or improve your metabolic flexibility, I'll do my best to guide you with evidence-based protocols. Activate me in AgentVibes by selecting the Health Coach agent, and let's start your transformation. Remember, you're not broken, your metabolism just needs support. Please note, this is an experimental feature and it's meant for entertainment purposes only."
24
+
25
+ MOTIVATOR_TEXT="LISTEN UP! I'm your Motivator agent, inspired by the most powerful strategies from Tony Robbins, David Goggins, Mel Robbins, and Les Brown to help you TAKE ACTION NOW. You've got five seconds before your brain kills that idea. Five, four, three, two, one, GO! I'll do my best to use state management, the forty percent rule, and the philosophy of massive action to help destroy your limiting beliefs and get you moving. Select the Motivator agent in AgentVibes when you need someone to hold you accountable and push you past your comfort zone. Your life is happening RIGHT NOW. Stop waiting. Let's DO this! Please note, this is an experimental feature and it's meant for entertainment purposes only."
26
+
27
+ # Function to generate Piper audio
28
+ generate_piper_audio() {
29
+ local text=$1
30
+ local output_file=$2
31
+ local model=$3
32
+ local speaker=${4:-0} # Default to speaker 0
33
+
34
+ echo "Generating: $output_file (speaker $speaker)"
35
+
36
+ # Check if model exists
37
+ if [ ! -f "$model" ]; then
38
+ echo "✗ Model not found: $model"
39
+ return 1
40
+ fi
41
+
42
+ # Use echo to pipe text to piper
43
+ echo "$text" | piper --model "$model" --speaker "$speaker" --output_file "$output_file"
44
+
45
+ if [ $? -eq 0 ]; then
46
+ echo "✓ Successfully generated: $output_file"
47
+ else
48
+ echo "✗ Failed to generate: $output_file"
49
+ return 1
50
+ fi
51
+ }
52
+
53
+ echo "=========================================="
54
+ echo "Generating Piper Agent Intro Audio"
55
+ echo "=========================================="
56
+ echo ""
57
+
58
+ # Generate Piper provider intro (using Kristin Hughes - speaker 2)
59
+ echo "1. Piper Provider Intro (Kristin Hughes - Speaker 2)"
60
+ echo "------------------------------------------"
61
+ generate_piper_audio "$PIPER_TEXT" "${PIPER_DIR}/provider-intro-piper.wav" "$VOICE_MODEL_16" 2
62
+
63
+ echo ""
64
+ echo "2. Agent Intro: Negotiator (Michael - Speaker 6)"
65
+ echo "------------------------------------------"
66
+ generate_piper_audio "$NEGOTIATOR_TEXT" "${AGENTS_DIR}/piper-negotiator.wav" "$VOICE_MODEL_16" 6
67
+
68
+ echo ""
69
+ echo "3. Agent Intro: Health Coach (Michael - Speaker 6)"
70
+ echo "------------------------------------------"
71
+ generate_piper_audio "$HEALTH_COACH_TEXT" "${AGENTS_DIR}/piper-health-coach.wav" "$VOICE_MODEL_16" 6
72
+
73
+ echo ""
74
+ echo "4. Agent Intro: Motivator (Anthony Malone - Speaker 7)"
75
+ echo "------------------------------------------"
76
+ generate_piper_audio "$MOTIVATOR_TEXT" "${AGENTS_DIR}/piper-motivator.wav" "$VOICE_MODEL_16" 7
77
+
78
+ echo ""
79
+ echo "=========================================="
80
+ echo "Generation Complete!"
81
+ echo "=========================================="
82
+ echo ""
83
+ echo "Generated files:"
84
+ ls -lh "${PIPER_DIR}/provider-intro-piper.wav" 2>/dev/null
85
+ ls -lh "${AGENTS_DIR}"/piper-*.wav 2>/dev/null
@@ -0,0 +1,136 @@
1
+ #!/bin/bash
2
+
3
+ # Script to generate provider intro audio and agent intro audio files
4
+ # Uses ElevenLabs API
5
+
6
+ # Check if ELEVENLABS_API_KEY is set in environment
7
+ if [ -z "$ELEVENLABS_API_KEY" ]; then
8
+ echo "Error: ELEVENLABS_API_KEY environment variable is not set"
9
+ echo "Please run: source ~/.zshrc"
10
+ echo "Or set it manually: export ELEVENLABS_API_KEY='your-key-here'"
11
+ exit 1
12
+ fi
13
+
14
+ # Output directories
15
+ ELEVENLABS_DIR="agentvibes.org/public/audio/elevenlabs"
16
+ PIPER_DIR="agentvibes.org/public/audio/piper-voices"
17
+ AGENTS_DIR="agentvibes.org/public/audio/agents"
18
+
19
+ mkdir -p "$ELEVENLABS_DIR"
20
+ mkdir -p "$PIPER_DIR"
21
+ mkdir -p "$AGENTS_DIR"
22
+
23
+ # Voice IDs
24
+ MS_WALKER_ID="t0jbNlBVZ17f02VDIeMI" # Ms. Walker for ElevenLabs intro
25
+ MICHAEL_ID="flq6f7yk4E4fJM5XTYuZ" # Michael for Negotiator
26
+ DRILL_SERGEANT_ID="DGzg6RaUqxGRTHSBjfgF" # Drill Sergeant for Health Coach
27
+ ARIA_ID="9BWtsMINqrJLrRacOk9x" # Aria for Motivator
28
+
29
+ # Provider explanation texts
30
+ PIPER_TEXT="Hello! I'm Piper TTS, your free, offline text-to-speech provider. I'm a fast neural text-to-speech system that runs entirely on your local machine, which means no API costs, complete privacy, and lightning-fast response times. I offer over fifty high-quality voices in multiple languages, all available without an internet connection. I'm perfect for developers who want professional voice synthesis without subscription fees or usage limits. Best of all, I work seamlessly with AgentVibes right out of the box. Try me out and experience free, high-quality text-to-speech!"
31
+
32
+ ELEVENLABS_TEXT="Welcome to AgentVibes. AgentVibes offers multi-provider support. By selecting ElevenLabs, you have access to premium AI voices. If you want to create an API key, you can create a subscription from AgentVibes. Click on our affiliate link to create an API key now. If however you would rather use free voices, then we advise you to select Piper. For now however, you can click on the personalities and voices below to hear some samples of ElevenLabs amazing voices."
33
+
34
+ # Agent intro texts (from the webpage)
35
+ NEGOTIATOR_TEXT="Hello, I'm your Negotiator agent, inspired by some of the proven methods from Chris Voss, former FBI lead hostage negotiator. I specialize in tactical empathy, calibrated questions, and psychological techniques that help you win negotiations. Whether you're discussing salary, closing a business deal, or navigating a difficult situation, I'll do my best to guide you through strategies from Never Split the Difference. To activate me in AgentVibes, just select the Negotiator agent and I'll help you prepare for any high-stakes conversation. Let's get you the outcome you deserve. Please note, this is an experimental feature and it's meant for entertainment purposes only."
36
+
37
+ HEALTH_COACH_TEXT="Hey there! I'm your Health Coach, inspired by the Keto Flex approach from Ben Azadi. I focus on sustainable wellness through clean ketogenic nutrition, intermittent fasting, and addressing root causes rather than just symptoms. Whether you want to lose weight, boost your energy, or improve your metabolic flexibility, I'll do my best to guide you with evidence-based protocols. Activate me in AgentVibes by selecting the Health Coach agent, and let's start your transformation. Remember, you're not broken, your metabolism just needs support. Please note, this is an experimental feature and it's meant for entertainment purposes only."
38
+
39
+ MOTIVATOR_TEXT="LISTEN UP! I'm your Motivator agent, inspired by the most powerful strategies from Tony Robbins, David Goggins, Mel Robbins, and Les Brown to help you TAKE ACTION NOW. You've got five seconds before your brain kills that idea. Five, four, three, two, one, GO! I'll do my best to use state management, the forty percent rule, and the philosophy of massive action to help destroy your limiting beliefs and get you moving. Select the Motivator agent in AgentVibes when you need someone to hold you accountable and push you past your comfort zone. Your life is happening RIGHT NOW. Stop waiting. Let's DO this! Please note, this is an experimental feature and it's meant for entertainment purposes only."
40
+
41
+ # Function to generate ElevenLabs audio
42
+ generate_elevenlabs_audio() {
43
+ local voice_id=$1
44
+ local text=$2
45
+ local output_file=$3
46
+
47
+ echo "Generating: $output_file"
48
+
49
+ curl -X POST "https://api.elevenlabs.io/v1/text-to-speech/${voice_id}" \
50
+ -H "xi-api-key: ${ELEVENLABS_API_KEY}" \
51
+ -H "Content-Type: application/json" \
52
+ -d "{
53
+ \"text\": \"${text}\",
54
+ \"model_id\": \"eleven_monolingual_v1\",
55
+ \"voice_settings\": {
56
+ \"stability\": 0.5,
57
+ \"similarity_boost\": 0.75
58
+ }
59
+ }" \
60
+ --output "$output_file"
61
+
62
+ if [ $? -eq 0 ]; then
63
+ echo "✓ Successfully generated: $output_file"
64
+ else
65
+ echo "✗ Failed to generate: $output_file"
66
+ return 1
67
+ fi
68
+
69
+ sleep 1
70
+ }
71
+
72
+ # Function to generate Piper audio
73
+ generate_piper_audio() {
74
+ local text=$1
75
+ local output_file=$2
76
+ local voice_num=${3:-0} # Default to Cori (voice 0)
77
+
78
+ echo "Generating Piper audio: $output_file"
79
+
80
+ # Check if piper is available
81
+ if ! command -v piper &> /dev/null; then
82
+ echo "⚠ Piper not found. Skipping Piper audio generation."
83
+ echo " Install with: pip install piper-tts"
84
+ return 1
85
+ fi
86
+
87
+ # Use echo to pipe text to piper
88
+ echo "$text" | piper --model en_US-lessac-medium --output_file "$output_file"
89
+
90
+ if [ $? -eq 0 ]; then
91
+ echo "✓ Successfully generated: $output_file"
92
+ else
93
+ echo "✗ Failed to generate: $output_file"
94
+ return 1
95
+ fi
96
+ }
97
+
98
+ echo "=========================================="
99
+ echo "Generating Provider & Agent Intro Audio"
100
+ echo "=========================================="
101
+ echo ""
102
+
103
+ # Generate ElevenLabs provider intro
104
+ echo "1. ElevenLabs Provider Intro (Ms. Walker)"
105
+ echo "------------------------------------------"
106
+ generate_elevenlabs_audio "$MS_WALKER_ID" "$ELEVENLABS_TEXT" "${ELEVENLABS_DIR}/provider-intro-elevenlabs.mp3"
107
+
108
+ echo ""
109
+ echo "2. Piper Provider Intro (Cori - will use Piper if installed)"
110
+ echo "------------------------------------------"
111
+ generate_piper_audio "$PIPER_TEXT" "${PIPER_DIR}/provider-intro-piper.wav" 0
112
+
113
+ echo ""
114
+ echo "3. Agent Intro: Negotiator (Michael)"
115
+ echo "------------------------------------------"
116
+ generate_elevenlabs_audio "$MICHAEL_ID" "$NEGOTIATOR_TEXT" "${AGENTS_DIR}/elevenlabs-negotiator.mp3"
117
+
118
+ echo ""
119
+ echo "4. Agent Intro: Health Coach (Drill Sergeant)"
120
+ echo "------------------------------------------"
121
+ generate_elevenlabs_audio "$DRILL_SERGEANT_ID" "$HEALTH_COACH_TEXT" "${AGENTS_DIR}/elevenlabs-health-coach.mp3"
122
+
123
+ echo ""
124
+ echo "5. Agent Intro: Motivator (Aria)"
125
+ echo "------------------------------------------"
126
+ generate_elevenlabs_audio "$ARIA_ID" "$MOTIVATOR_TEXT" "${AGENTS_DIR}/elevenlabs-motivator.mp3"
127
+
128
+ echo ""
129
+ echo "=========================================="
130
+ echo "Generation Complete!"
131
+ echo "=========================================="
132
+ echo ""
133
+ echo "Generated files:"
134
+ ls -lh "${ELEVENLABS_DIR}/provider-intro-elevenlabs.mp3" 2>/dev/null
135
+ ls -lh "${PIPER_DIR}/provider-intro-piper.wav" 2>/dev/null
136
+ ls -lh "${AGENTS_DIR}"/*.mp3 2>/dev/null
Binary file
@@ -0,0 +1,4 @@
1
+ [ZoneTransfer]
2
+ ZoneId=3
3
+ ReferrerUrl=https://www.canva.com/
4
+ HostUrl=https://export-download.canva.com/fRU5Q/DAG2eUfRU5Q/2/0/0001-1153403610714354268.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAQYCGKMUH5AO7UJ26%2F20251021%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20251021T024124Z&X-Amz-Expires=87229&X-Amz-Signature=884995a892910b81bf02e2dc6003bbb3ed8a93f52561d45d63298bb53922a21e&X-Amz-SignedHeaders=host&response-content-disposition=attachment%3B%20filename%2A%3DUTF-8%27%27Untitled%2520design.png&response-expires=Wed%2C%2022%20Oct%202025%2002%3A55%3A13%20GMT
Binary file
@@ -0,0 +1,4 @@
1
+ [ZoneTransfer]
2
+ ZoneId=3
3
+ ReferrerUrl=https://sora.chatgpt.com/
4
+ HostUrl=https://videos.openai.com/az/vg-assets/assets%2Ftask_01k84jjqdre4a94gwhrjvxrmcc%2F1761090380_img_1.webp?se=2025-10-27T23%3A47%3A42Z&sp=r&sv=2024-08-04&sr=b&skoid=1af02b11-169c-463d-b441-d2ccfc9f02c8&sktid=a48cca56-e6da-484e-a814-9c849652bcb3&skt=2025-10-21T23%3A38%3A46Z&ske=2025-10-28T23%3A43%3A46Z&sks=b&skv=2024-08-04&sig=YnhyNHHZNTvrxPzGVMR1e%2BXWpRxFJtAmBRHdDFQHv/4%3D&ac=oaivgprodscus
Binary file
@@ -0,0 +1,4 @@
1
+ [ZoneTransfer]
2
+ ZoneId=3
3
+ ReferrerUrl=https://www.canva.com/
4
+ HostUrl=https://export-download.canva.com/KdRmo/DAG2d2KdRmo/4/0/0001-2945836257450757554.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAQYCGKMUH5AO7UJ26%2F20251021%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20251021T225916Z&X-Amz-Expires=8054&X-Amz-Signature=8d0a628517760b995ae1d6f71c8bb1d6cab49f4a61bffebc1d58a6d51829c0ef&X-Amz-SignedHeaders=host&response-content-disposition=attachment%3B%20filename%2A%3DUTF-8%27%27npx%2520agentvibes%2520install.png&response-expires=Wed%2C%2022%20Oct%202025%2001%3A13%3A30%20GMT
File without changes
@@ -382,24 +382,22 @@ class AgentVibesServer:
382
382
  args = ["target", speed] if target else [speed]
383
383
  result = await self._run_script("speed-manager.sh", args)
384
384
  if result and "✓" in result:
385
- # Tongue twisters to demonstrate the new speed
386
- tongue_twisters = [
387
- "Peter Piper picked a peck of pickled peppers",
388
- "She sells seashells by the seashore",
389
- "How much wood would a woodchuck chuck if a woodchuck could chuck wood",
390
- "Fuzzy Wuzzy was a bear, Fuzzy Wuzzy had no hair",
391
- "I scream, you scream, we all scream for ice cream",
392
- "Red lorry, yellow lorry, red lorry, yellow lorry",
393
- "Six slippery snails slid slowly seaward",
385
+ # Simple test messages to demonstrate the new speed
386
+ test_messages = [
387
+ "Testing speed change",
388
+ "Speed test in progress",
389
+ "Checking audio speed",
390
+ "Speed configuration test",
391
+ "Audio speed test",
394
392
  ]
395
393
 
396
- # Pick a random tongue twister and speak it
397
- tongue_twister = random.choice(tongue_twisters)
394
+ # Pick a random test message and speak it
395
+ test_message = random.choice(test_messages)
398
396
 
399
397
  try:
400
- # Speak the tongue twister to demonstrate the new speed
401
- await self.text_to_speech(tongue_twister)
402
- return f"{result}\n🔊 Testing new speed: \"{tongue_twister}\""
398
+ # Speak the test message to demonstrate the new speed
399
+ await self.text_to_speech(test_message)
400
+ return f"{result}\n🔊 Testing new speed: \"{test_message}\""
403
401
  except Exception as e:
404
402
  # If TTS fails, still return success for the speed change
405
403
  return f"{result}\n⚠️ Speed changed but demo failed: {e}"
@@ -416,6 +414,24 @@ class AgentVibesServer:
416
414
  result = await self._run_script("speed-manager.sh", ["get"])
417
415
  return result if result else "❌ Failed to get speed settings"
418
416
 
417
+ async def download_extra_voices(self, auto_yes: bool = False) -> str:
418
+ """
419
+ Download extra high-quality Piper voices from HuggingFace.
420
+
421
+ Downloads custom voices: Kristin, Jenny, and Tracy/16Speakers.
422
+
423
+ Args:
424
+ auto_yes: If True, skips confirmation prompt and downloads automatically
425
+
426
+ Returns:
427
+ Success message with download summary
428
+ """
429
+ args = ["--yes"] if auto_yes else []
430
+ result = await self._run_script("download-extra-voices.sh", args)
431
+ if result and ("✅" in result or "Successfully downloaded" in result or "already downloaded" in result):
432
+ return result
433
+ return f"❌ Failed to download extra voices: {result}"
434
+
419
435
  # Helper methods
420
436
  async def _run_script(self, script_name: str, args: list[str]) -> str:
421
437
  """Run a bash script and return output"""
@@ -679,6 +695,20 @@ Examples:
679
695
  description="Get current speech speed settings for main and target voices",
680
696
  inputSchema={"type": "object", "properties": {}},
681
697
  ),
698
+ Tool(
699
+ name="download_extra_voices",
700
+ description="Download extra high-quality custom Piper voices from HuggingFace. Includes: Kristin (US female), Jenny (UK female with Irish accent), and Tracy/16Speakers (multi-speaker). Perfect for adding variety to your TTS voices.",
701
+ inputSchema={
702
+ "type": "object",
703
+ "properties": {
704
+ "auto_yes": {
705
+ "type": "boolean",
706
+ "description": "Skip confirmation prompt and download automatically (default: False)",
707
+ "default": False
708
+ }
709
+ },
710
+ },
711
+ ),
682
712
  ]
683
713
 
684
714
 
@@ -717,6 +747,9 @@ async def call_tool(name: str, arguments: dict) -> list[TextContent]:
717
747
  result = await agent_vibes.set_speed(arguments["speed"], target)
718
748
  elif name == "get_speed":
719
749
  result = await agent_vibes.get_speed()
750
+ elif name == "download_extra_voices":
751
+ auto_yes = arguments.get("auto_yes", False)
752
+ result = await agent_vibes.download_extra_voices(auto_yes)
720
753
  else:
721
754
  result = f"Unknown tool: {name}"
722
755
 
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.20",
4
+ "version": "2.0.22",
5
5
  "description": "Now your AI Agents can finally talk back! Professional TTS voice for Claude Code and Claude Desktop (via MCP) with multi-provider support.",
6
6
  "homepage": "https://agentvibes.org",
7
7
  "keywords": [
@@ -34,8 +34,8 @@
34
34
  "install-local": "node src/installer.js install",
35
35
  "postinstall": "node mcp-server/install-deps.js",
36
36
  "install-mcp-deps": "node mcp-server/install-deps.js",
37
- "test": "bats test/unit/*.bats",
38
- "test:verbose": "bats -t test/unit/*.bats"
37
+ "test": "AGENTVIBES_TEST_MODE=true bats test/unit/*.bats",
38
+ "test:verbose": "AGENTVIBES_TEST_MODE=true bats -t test/unit/*.bats"
39
39
  },
40
40
  "dependencies": {
41
41
  "boxen": "^7.0.0",
@@ -0,0 +1,79 @@
1
+ #!/bin/bash
2
+
3
+ # Script to regenerate specific agent intros with new voice assignments
4
+ # Health Coach: Drill Sergeant
5
+ # Motivator: Aria
6
+
7
+ # Check if ELEVENLABS_API_KEY is set
8
+ if [ -z "$ELEVENLABS_API_KEY" ]; then
9
+ echo "Error: ELEVENLABS_API_KEY environment variable is not set"
10
+ echo "Please set it with: export ELEVENLABS_API_KEY='your-key-here'"
11
+ exit 1
12
+ fi
13
+
14
+ # Output directory
15
+ AGENTS_DIR="agentvibes.org/public/audio/agents"
16
+ mkdir -p "$AGENTS_DIR"
17
+
18
+ # Voice IDs
19
+ DRILL_SERGEANT_ID="DGzg6RaUqxGRTHSBjfgF"
20
+ ARIA_ID="9BWtsMINqrJLrRacOk9x"
21
+
22
+ # Agent intro texts
23
+ HEALTH_COACH_TEXT="Hey there! I'm your Health Coach, inspired by the Keto Flex approach from Ben Azadi. I focus on sustainable wellness through clean ketogenic nutrition, intermittent fasting, and addressing root causes rather than just symptoms. Whether you want to lose weight, boost your energy, or improve your metabolic flexibility, I'll do my best to guide you with evidence-based protocols. Activate me in AgentVibes by selecting the Health Coach agent, and let's start your transformation. Remember, you're not broken, your metabolism just needs support. Please note, this is an experimental feature and it's meant for entertainment purposes only."
24
+
25
+ MOTIVATOR_TEXT="LISTEN UP! I'm your Motivator agent, inspired by the most powerful strategies from Tony Robbins, David Goggins, Mel Robbins, and Les Brown to help you TAKE ACTION NOW. You've got five seconds before your brain kills that idea. Five, four, three, two, one, GO! I'll do my best to use state management, the forty percent rule, and the philosophy of massive action to help destroy your limiting beliefs and get you moving. Select the Motivator agent in AgentVibes when you need someone to hold you accountable and push you past your comfort zone. Your life is happening RIGHT NOW. Stop waiting. Let's DO this! Please note, this is an experimental feature and it's meant for entertainment purposes only."
26
+
27
+ # Function to generate ElevenLabs audio
28
+ generate_elevenlabs_audio() {
29
+ local voice_id=$1
30
+ local text=$2
31
+ local output_file=$3
32
+
33
+ echo "Generating: $output_file"
34
+
35
+ curl -X POST "https://api.elevenlabs.io/v1/text-to-speech/${voice_id}" \
36
+ -H "xi-api-key: ${ELEVENLABS_API_KEY}" \
37
+ -H "Content-Type: application/json" \
38
+ -d "{
39
+ \"text\": \"${text}\",
40
+ \"model_id\": \"eleven_monolingual_v1\",
41
+ \"voice_settings\": {
42
+ \"stability\": 0.5,
43
+ \"similarity_boost\": 0.75
44
+ }
45
+ }" \
46
+ --output "$output_file"
47
+
48
+ if [ $? -eq 0 ]; then
49
+ echo "✓ Successfully generated: $output_file"
50
+ else
51
+ echo "✗ Failed to generate: $output_file"
52
+ return 1
53
+ fi
54
+
55
+ sleep 1
56
+ }
57
+
58
+ echo "=========================================="
59
+ echo "Regenerating Agent Voices"
60
+ echo "=========================================="
61
+ echo ""
62
+
63
+ echo "1. Health Coach (Drill Sergeant)"
64
+ echo "------------------------------------------"
65
+ generate_elevenlabs_audio "$DRILL_SERGEANT_ID" "$HEALTH_COACH_TEXT" "${AGENTS_DIR}/elevenlabs-health-coach.mp3"
66
+
67
+ echo ""
68
+ echo "2. Motivator (Aria)"
69
+ echo "------------------------------------------"
70
+ generate_elevenlabs_audio "$ARIA_ID" "$MOTIVATOR_TEXT" "${AGENTS_DIR}/elevenlabs-motivator.mp3"
71
+
72
+ echo ""
73
+ echo "=========================================="
74
+ echo "Generation Complete!"
75
+ echo "=========================================="
76
+ echo ""
77
+ echo "Generated files:"
78
+ ls -lh "${AGENTS_DIR}/elevenlabs-health-coach.mp3" 2>/dev/null
79
+ ls -lh "${AGENTS_DIR}/elevenlabs-motivator.mp3" 2>/dev/null
@@ -114,10 +114,10 @@ teardown() {
114
114
  run "$PROVIDER_MANAGER" switch "piper"
115
115
 
116
116
  [ "$status" -eq 0 ]
117
- assert_output_contains "voice reset to default"
117
+ assert_output_contains "voice set to:"
118
118
 
119
- # Voice file should be removed
120
- [[ ! -f "$VOICE_FILE" ]]
119
+ # Voice file should exist with new default voice
120
+ [[ -f "$VOICE_FILE" ]]
121
121
  }
122
122
 
123
123
  @test "provider-manager switching providers removes voice file" {
@@ -127,8 +127,11 @@ teardown() {
127
127
 
128
128
  "$PROVIDER_MANAGER" switch "elevenlabs"
129
129
 
130
- # Voice file should be removed to force default for new provider
131
- [[ ! -f "$VOICE_FILE" ]]
130
+ # Voice file should exist with new default voice for provider
131
+ [[ -f "$VOICE_FILE" ]]
132
+
133
+ # Should contain the new provider's default voice
134
+ assert_file_contains "$VOICE_FILE" "Amy"
132
135
  }
133
136
 
134
137
  # ============================================================================
@@ -257,15 +257,15 @@ teardown() {
257
257
  [ "$status" -eq 0 ]
258
258
  assert_output_contains "Testing new speed with:"
259
259
 
260
- # Should contain one of the tongue twisters
261
- [[ "$output" =~ "Peter Piper"|"She sells seashells"|"woodchuck"|"Fuzzy Wuzzy"|"ice cream"|"lorry"|"slippery snails" ]]
260
+ # Should contain one of the test messages
261
+ [[ "$output" =~ "Testing speed"|"Speed test"|"Checking audio"|"Speed configuration"|"Audio speed" ]]
262
262
  }
263
263
 
264
- @test "speed-manager shows tongue twister text before playing" {
264
+ @test "speed-manager shows test message text before playing" {
265
265
  run "$SPEED_MANAGER" "1x"
266
266
 
267
267
  [ "$status" -eq 0 ]
268
- # Should show the actual tongue twister being played
268
+ # Should show the actual test message being played
269
269
  assert_output_contains "Testing new speed with:"
270
270
  }
271
271
 
@@ -1,21 +0,0 @@
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
@@ -1,68 +0,0 @@
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! 🎵