agentvibes 2.0.6 → 2.0.8
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.
- package/.claude/commands/agent-vibes/preview.md +5 -4
- package/.claude/commands/agent-vibes/whoami.md +2 -2
- package/.claude/hooks/check-output-style.sh +60 -0
- package/.claude/hooks/language-manager.sh +50 -48
- package/.claude/hooks/personality-manager.sh +34 -2
- package/.claude/hooks/play-tts-piper.sh +27 -9
- package/.claude/hooks/play-tts.sh +29 -127
- package/.claude/hooks/provider-commands.sh +41 -2
- package/.claude/hooks/voice-manager.sh +85 -36
- package/.claude/personalities/angry.md +2 -1
- package/.claude/personalities/annoying.md +2 -1
- package/.claude/personalities/crass.md +2 -1
- package/.claude/personalities/dramatic.md +2 -1
- package/.claude/personalities/dry-humor.md +2 -1
- package/.claude/personalities/flirty.md +2 -1
- package/.claude/personalities/funny.md +2 -1
- package/.claude/personalities/grandpa.md +2 -1
- package/.claude/personalities/millennial.md +2 -1
- package/.claude/personalities/moody.md +2 -1
- package/.claude/personalities/normal.md +2 -1
- package/.claude/personalities/pirate.md +2 -1
- package/.claude/personalities/poetic.md +2 -1
- package/.claude/personalities/professional.md +2 -1
- package/.claude/personalities/robot.md +2 -1
- package/.claude/personalities/sarcastic.md +2 -1
- package/.claude/personalities/sassy.md +2 -1
- package/.claude/personalities/surfer-dude.md +2 -1
- package/.claude/personalities/zen.md +2 -1
- package/.claude/piper-voices-dir.txt +1 -0
- package/README.md +2 -2
- package/RELEASE_NOTES.md +277 -0
- package/agentvibes.org/.claude/commands/agent-vibes/add.md +21 -0
- package/agentvibes.org/.claude/commands/agent-vibes/agent-vibes.md +68 -0
- package/agentvibes.org/.claude/commands/agent-vibes/commands.json +53 -0
- package/agentvibes.org/.claude/commands/agent-vibes/get.md +9 -0
- package/agentvibes.org/.claude/commands/agent-vibes/list.md +13 -0
- package/agentvibes.org/.claude/commands/agent-vibes/personality.md +79 -0
- package/agentvibes.org/.claude/commands/agent-vibes/preview.md +16 -0
- package/agentvibes.org/.claude/commands/agent-vibes/provider.md +54 -0
- package/agentvibes.org/.claude/commands/agent-vibes/replay.md +19 -0
- package/agentvibes.org/.claude/commands/agent-vibes/sample.md +12 -0
- package/agentvibes.org/.claude/commands/agent-vibes/sentiment.md +52 -0
- package/agentvibes.org/.claude/commands/agent-vibes/set-language.md +47 -0
- package/agentvibes.org/.claude/commands/agent-vibes/set-pretext.md +65 -0
- package/agentvibes.org/.claude/commands/agent-vibes/switch.md +53 -0
- package/agentvibes.org/.claude/commands/agent-vibes/update.md +20 -0
- package/agentvibes.org/.claude/commands/agent-vibes/version.md +10 -0
- package/agentvibes.org/.claude/commands/agent-vibes/whoami.md +7 -0
- package/agentvibes.org/.claude/hooks/bmad-voice-manager.sh +278 -0
- package/agentvibes.org/.claude/hooks/language-manager.sh +190 -0
- package/agentvibes.org/.claude/hooks/personality-manager.sh +279 -0
- package/agentvibes.org/.claude/hooks/piper-download-voices.sh +133 -0
- package/agentvibes.org/.claude/hooks/piper-voice-manager.sh +227 -0
- package/agentvibes.org/.claude/hooks/play-tts-elevenlabs.sh +201 -0
- package/agentvibes.org/.claude/hooks/play-tts-piper.sh +175 -0
- package/agentvibes.org/.claude/hooks/play-tts.sh +138 -0
- package/agentvibes.org/.claude/hooks/provider-commands.sh +374 -0
- package/agentvibes.org/.claude/hooks/provider-manager.sh +196 -0
- package/agentvibes.org/.claude/hooks/sentiment-manager.sh +163 -0
- package/agentvibes.org/.claude/hooks/voice-manager.sh +349 -0
- package/agentvibes.org/.claude/hooks/voices-config.sh +33 -0
- package/agentvibes.org/.claude/journal/2025-10-07.html +373 -0
- package/agentvibes.org/.claude/journal/index.html +91 -0
- package/agentvibes.org/.claude/output-styles/agent-vibes.md +203 -0
- package/agentvibes.org/.claude/personalities/angry.md +16 -0
- package/agentvibes.org/.claude/personalities/annoying.md +16 -0
- package/agentvibes.org/.claude/personalities/crass.md +16 -0
- package/agentvibes.org/.claude/personalities/dramatic.md +16 -0
- package/agentvibes.org/.claude/personalities/dry-humor.md +52 -0
- package/agentvibes.org/.claude/personalities/flirty.md +22 -0
- package/agentvibes.org/.claude/personalities/funny.md +16 -0
- package/agentvibes.org/.claude/personalities/grandpa.md +34 -0
- package/agentvibes.org/.claude/personalities/millennial.md +16 -0
- package/agentvibes.org/.claude/personalities/moody.md +16 -0
- package/agentvibes.org/.claude/personalities/normal.md +18 -0
- package/agentvibes.org/.claude/personalities/pirate.md +16 -0
- package/agentvibes.org/.claude/personalities/poetic.md +16 -0
- package/agentvibes.org/.claude/personalities/professional.md +16 -0
- package/agentvibes.org/.claude/personalities/robot.md +16 -0
- package/agentvibes.org/.claude/personalities/sarcastic.md +40 -0
- package/agentvibes.org/.claude/personalities/sassy.md +16 -0
- package/agentvibes.org/.claude/personalities/surfer-dude.md +16 -0
- package/agentvibes.org/.claude/personalities/zen.md +16 -0
- package/agentvibes.org/.mcp-minimal.json +60 -0
- package/agentvibes.org/CHANGELOG.md +56 -0
- package/agentvibes.org/README.md +93 -0
- package/agentvibes.org/app/(auth)/layout.tsx +15 -0
- package/agentvibes.org/app/(auth)/reset-password/page.tsx +45 -0
- package/agentvibes.org/app/(auth)/signin/page.tsx +82 -0
- package/agentvibes.org/app/(auth)/signup/page.tsx +104 -0
- package/agentvibes.org/app/(default)/layout.tsx +31 -0
- package/agentvibes.org/app/(default)/page.tsx +20 -0
- package/agentvibes.org/app/api/hello/route.ts +3 -0
- package/agentvibes.org/app/css/additional-styles/theme.css +82 -0
- package/agentvibes.org/app/css/additional-styles/utility-patterns.css +55 -0
- package/agentvibes.org/app/css/style.css +100 -0
- package/agentvibes.org/app/layout.tsx +63 -0
- package/agentvibes.org/components/cta.tsx +58 -0
- package/agentvibes.org/components/features.tsx +256 -0
- package/agentvibes.org/components/hero-home.tsx +133 -0
- package/agentvibes.org/components/modal-video.tsx +137 -0
- package/agentvibes.org/components/page-illustration.tsx +55 -0
- package/agentvibes.org/components/spotlight.tsx +77 -0
- package/agentvibes.org/components/testimonials.tsx +282 -0
- package/agentvibes.org/components/ui/footer.tsx +82 -0
- package/agentvibes.org/components/ui/header.tsx +53 -0
- package/agentvibes.org/components/ui/logo.tsx +10 -0
- package/agentvibes.org/components/workflows.tsx +176 -0
- package/agentvibes.org/next.config.js +4 -0
- package/agentvibes.org/package-lock.json +1974 -0
- package/agentvibes.org/package.json +30 -0
- package/agentvibes.org/pnpm-lock.yaml +1141 -0
- package/agentvibes.org/postcss.config.js +5 -0
- package/agentvibes.org/public/audio/02-sarcastic.mp3 +0 -0
- package/agentvibes.org/public/audio/03-angry.mp3 +0 -0
- package/agentvibes.org/public/audio/04-grandpa.mp3 +0 -0
- package/agentvibes.org/public/audio/05-sarcastic-example2.mp3 +0 -0
- package/agentvibes.org/public/audio/french-rachel.mp3 +0 -0
- package/agentvibes.org/public/audio/spanish-antoni.mp3 +0 -0
- package/agentvibes.org/public/favicon.ico +0 -0
- package/agentvibes.org/public/fonts/nacelle-italic.woff2 +0 -0
- package/agentvibes.org/public/fonts/nacelle-regular.woff2 +0 -0
- package/agentvibes.org/public/fonts/nacelle-semibold.woff2 +0 -0
- package/agentvibes.org/public/fonts/nacelle-semibolditalic.woff2 +0 -0
- package/agentvibes.org/public/images/blurred-shape-gray.svg +1 -0
- package/agentvibes.org/public/images/blurred-shape.svg +1 -0
- package/agentvibes.org/public/images/client-logo-01.svg +1 -0
- package/agentvibes.org/public/images/client-logo-02.svg +1 -0
- package/agentvibes.org/public/images/client-logo-03.svg +1 -0
- package/agentvibes.org/public/images/client-logo-04.svg +1 -0
- package/agentvibes.org/public/images/client-logo-05.svg +1 -0
- package/agentvibes.org/public/images/client-logo-06.svg +1 -0
- package/agentvibes.org/public/images/client-logo-07.svg +1 -0
- package/agentvibes.org/public/images/client-logo-08.svg +1 -0
- package/agentvibes.org/public/images/client-logo-09.svg +1 -0
- package/agentvibes.org/public/images/features.png +0 -0
- package/agentvibes.org/public/images/footer-illustration.svg +1 -0
- package/agentvibes.org/public/images/hero-image-01.jpg +0 -0
- package/agentvibes.org/public/images/logo.svg +1 -0
- package/agentvibes.org/public/images/page-illustration.svg +1 -0
- package/agentvibes.org/public/images/secondary-illustration.svg +1 -0
- package/agentvibes.org/public/images/testimonial-01.jpg +0 -0
- package/agentvibes.org/public/images/testimonial-02.jpg +0 -0
- package/agentvibes.org/public/images/testimonial-03.jpg +0 -0
- package/agentvibes.org/public/images/testimonial-04.jpg +0 -0
- package/agentvibes.org/public/images/testimonial-05.jpg +0 -0
- package/agentvibes.org/public/images/testimonial-06.jpg +0 -0
- package/agentvibes.org/public/images/testimonial-07.jpg +0 -0
- package/agentvibes.org/public/images/testimonial-08.jpg +0 -0
- package/agentvibes.org/public/images/testimonial-09.jpg +0 -0
- package/agentvibes.org/public/images/workflow-01.png +0 -0
- package/agentvibes.org/public/images/workflow-02.png +0 -0
- package/agentvibes.org/public/images/workflow-03.png +0 -0
- package/agentvibes.org/public/videos/video.mp4 +0 -0
- package/agentvibes.org/tsconfig.json +28 -0
- package/agentvibes.org/utils/useMasonry.tsx +67 -0
- package/agentvibes.org/utils/useMousePosition.tsx +27 -0
- package/package.json +1 -1
- package/src/installer.js +145 -171
|
@@ -0,0 +1 @@
|
|
|
1
|
+
/home/fire/.claude/piper-voices
|
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
[](https://github.com/paulpreibisch/AgentVibes/actions/workflows/publish.yml)
|
|
12
12
|
[](https://opensource.org/licenses/Apache-2.0)
|
|
13
13
|
|
|
14
|
-
**Author**: Paul Preibisch ([@997Fire](https://x.com/997Fire)) | **Version**: v2.0.
|
|
14
|
+
**Author**: Paul Preibisch ([@997Fire](https://x.com/997Fire)) | **Version**: v2.0.7
|
|
15
15
|
|
|
16
16
|
---
|
|
17
17
|
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
|
|
46
46
|
## 📰 Latest Release
|
|
47
47
|
|
|
48
|
-
**[v2.0.0 - The Multi-Provider Revolution](https://github.com/paulpreibisch/AgentVibes/releases/tag/v2.0.
|
|
48
|
+
**[v2.0.0 - The Multi-Provider Revolution](https://github.com/paulpreibisch/AgentVibes/releases/tag/v2.0.7)** 🎉
|
|
49
49
|
|
|
50
50
|
The biggest update ever! **Multi-provider TTS support** (ElevenLabs + Piper TTS), **30+ languages**, expanded voice library (27+ voices), advanced sentiment system, enhanced BMAD integration, and comprehensive multilingual support. Choose between premium ElevenLabs voices or free offline Piper TTS!
|
|
51
51
|
|
package/RELEASE_NOTES.md
CHANGED
|
@@ -1,5 +1,282 @@
|
|
|
1
1
|
# 🎤 AgentVibes Release Notes
|
|
2
2
|
|
|
3
|
+
## 📦 v2.0.8 - Provider-Aware Personalities (2025-01-07)
|
|
4
|
+
|
|
5
|
+
### 🤖 AI Summary
|
|
6
|
+
|
|
7
|
+
This patch release makes the personality system fully provider-aware, fixing a critical issue where personality switching would fail to play TTS acknowledgments when using Piper TTS. Users can now seamlessly switch personalities regardless of which TTS provider they're using, with each personality automatically selecting the appropriate voice for the active provider.
|
|
8
|
+
|
|
9
|
+
### ✨ New Features
|
|
10
|
+
|
|
11
|
+
#### Provider-Aware Personality Voice Switching
|
|
12
|
+
- **Dual voice mappings** - All 19 personality files now include both `elevenlabs_voice` and `piper_voice` fields
|
|
13
|
+
- **Automatic voice selection** - Personality manager detects active TTS provider and switches to appropriate voice automatically
|
|
14
|
+
- **Piper voice mappings**:
|
|
15
|
+
- Female personalities (sarcastic, flirty, sassy, dramatic) → `en_US-amy-medium`
|
|
16
|
+
- Male casual (funny, pirate, surfer-dude, crass) → `en_US-joe-medium`
|
|
17
|
+
- Professional (professional, normal, dry-humor, poetic, zen) → `en_US-lessac-medium`
|
|
18
|
+
- Energetic (angry, annoying, robot) → `en_US-ryan-high`
|
|
19
|
+
- Character voices (grandpa, moody) → `en_US-libritts-high`
|
|
20
|
+
|
|
21
|
+
#### Output Style Detection Helper
|
|
22
|
+
- **New check-output-style.sh** - Helper script for future output style detection features
|
|
23
|
+
- **User-friendly tips** - Voice and personality commands now show helpful tip about enabling agent-vibes output style
|
|
24
|
+
- **Better UX** - Users are guided to `/output-style agent-vibes` when needed
|
|
25
|
+
|
|
26
|
+
### 🐛 Bug Fixes
|
|
27
|
+
|
|
28
|
+
#### Whoami Command Provider Detection
|
|
29
|
+
- **Fixed provider display** - `/agent-vibes:whoami` now correctly shows active provider (Piper TTS or ElevenLabs)
|
|
30
|
+
- **Updated command description** - Metadata now mentions both providers instead of hardcoding "ElevenLabs"
|
|
31
|
+
- **Accurate information** - Users see "Provider: Piper TTS (Free, Offline)" when using Piper
|
|
32
|
+
|
|
33
|
+
#### Voice Manager Provider Support
|
|
34
|
+
- **Piper model name recognition** - Voice manager now accepts Piper voice model names (e.g., `en_US-amy-medium`)
|
|
35
|
+
- **Provider-aware validation** - Skips ElevenLabs voice validation when using Piper with Piper model names
|
|
36
|
+
- **Smart voice ID display** - Only shows ElevenLabs voice ID when actually using ElevenLabs
|
|
37
|
+
|
|
38
|
+
#### Piper TTS Voice File Reading
|
|
39
|
+
- **Fixed voice file lookup** - `play-tts-piper.sh` now correctly reads voice from `.claude/tts-voice.txt`
|
|
40
|
+
- **Project-local support** - Checks project-local `.claude/tts-voice.txt` first, then global `~/.claude/tts-voice.txt`
|
|
41
|
+
- **Piper model detection** - Validates voice names contain underscore and dash pattern for Piper models
|
|
42
|
+
|
|
43
|
+
### 🔧 Technical Changes
|
|
44
|
+
|
|
45
|
+
#### Personality Manager Improvements
|
|
46
|
+
- **Provider detection** - Reads `tts-provider.txt` to determine active provider
|
|
47
|
+
- **Conditional voice selection** - Uses `piper_voice` field when Piper is active, `elevenlabs_voice` for ElevenLabs
|
|
48
|
+
- **Fallback voice** - Defaults to `en_US-lessac-medium` if no Piper voice specified
|
|
49
|
+
- **New field support** - Added `piper_voice` field extraction to `get_personality_data` function
|
|
50
|
+
|
|
51
|
+
#### Voice Manager Refactoring
|
|
52
|
+
- **Provider-aware switch logic** - Detects Piper model names and bypasses ElevenLabs validation
|
|
53
|
+
- **Pattern matching** - Uses `*"_"*"-"*` pattern to identify Piper voice model names
|
|
54
|
+
- **Cleaner output** - Removed voice ID display for Piper voices since they don't use IDs
|
|
55
|
+
|
|
56
|
+
#### Personality File Structure
|
|
57
|
+
- **Clearer naming** - Renamed `voice:` to `elevenlabs_voice:` in all personality frontmatter
|
|
58
|
+
- **Dual provider support** - Every personality now has both ElevenLabs and Piper voice assignments
|
|
59
|
+
- **Consistency** - Standardized field naming across all 19 personality files
|
|
60
|
+
|
|
61
|
+
### 🎯 User Impact
|
|
62
|
+
|
|
63
|
+
**Before:** Setting a personality like `/agent-vibes:personality sarcastic` while using Piper TTS would try to use an ElevenLabs voice name that doesn't exist in Piper, resulting in no audio playback for acknowledgments/completions.
|
|
64
|
+
|
|
65
|
+
**After:** Personality switching seamlessly works with both providers:
|
|
66
|
+
- Using Piper? Gets `en_US-amy-medium` for sarcastic personality
|
|
67
|
+
- Using ElevenLabs? Gets "Jessica Anne Bogart" voice
|
|
68
|
+
- Always hear proper TTS acknowledgments and completions!
|
|
69
|
+
|
|
70
|
+
### 📊 Files Changed
|
|
71
|
+
- Modified: 3 hook scripts (personality-manager.sh, voice-manager.sh, play-tts-piper.sh)
|
|
72
|
+
- Modified: 19 personality files (all now have dual voice mappings)
|
|
73
|
+
- Modified: 1 command file (whoami.md)
|
|
74
|
+
- Added: 1 new helper script (check-output-style.sh)
|
|
75
|
+
|
|
76
|
+
**Total Changes:** 247 insertions, 69 deletions across 25 files
|
|
77
|
+
|
|
78
|
+
## 📦 v2.0.7 - Bug Fixes & UX Improvements (2025-01-07)
|
|
79
|
+
|
|
80
|
+
### 🤖 AI Summary
|
|
81
|
+
|
|
82
|
+
This patch release fixes critical issues with the voice preview command and significantly improves the installer UX. The `/agent-vibes:preview` command now correctly handles provider-specific voices and provides helpful guidance when users try to preview voices from the wrong provider. The installer adds interactive provider selection with automatic API key setup and shell configuration, making first-time setup much smoother.
|
|
83
|
+
|
|
84
|
+
### 🐛 Bug Fixes
|
|
85
|
+
|
|
86
|
+
#### Voice Preview Command Fixed
|
|
87
|
+
- **Fixed provider-aware voice previewing** - The `/agent-vibes:preview` command now correctly routes through the provider system instead of directly calling ElevenLabs-specific code
|
|
88
|
+
- **Intelligent voice detection** - Detects when you try to preview an ElevenLabs voice (like "Antoni") while using Piper and provides helpful guidance with alternatives
|
|
89
|
+
- **Support for specific voice previews** - Can now preview individual Piper voices by model name (e.g., `/agent-vibes:preview en_US-lessac-medium`)
|
|
90
|
+
- **Fixed language-manager error** - Resolved issue where sourcing `language-manager.sh` would trigger unwanted command handler execution showing "AgentVibes Language Manager" usage text
|
|
91
|
+
- **Fixed function name mismatch** - Corrected `get_current_language` to `get_language_code` in play-tts-piper.sh
|
|
92
|
+
|
|
93
|
+
#### Provider Routing Improvements
|
|
94
|
+
- **Simplified play-tts.sh router** - Streamlined routing logic for cleaner provider delegation
|
|
95
|
+
- **Fixed provider routing** - Ensures TTS requests always route to the active provider correctly
|
|
96
|
+
- **Better error handling** - Clear, helpful messages when voice/provider mismatch occurs
|
|
97
|
+
|
|
98
|
+
### ✨ Installer UX Enhancements
|
|
99
|
+
|
|
100
|
+
#### Interactive Provider Selection
|
|
101
|
+
- **Provider choice prompt** - Installer now asks which TTS provider you want (Piper or ElevenLabs) with clear descriptions
|
|
102
|
+
- **Automatic API key setup** - Detects your shell (bash/zsh) and offers to add ELEVENLABS_API_KEY to shell config file
|
|
103
|
+
- **Shell detection** - Intelligently detects whether you're using bash or zsh and configures the correct file
|
|
104
|
+
- **Multiple setup paths** - Choose between automatic shell config, manual setup, or skip API key configuration
|
|
105
|
+
- **Piper voices path configuration** - Added prompt for custom Piper voice storage location
|
|
106
|
+
|
|
107
|
+
#### Clearer Installation Messaging
|
|
108
|
+
- **Better location explanation** - Clear explanation of why AgentVibes installs in `.claude/` directory (Claude Code auto-discovery)
|
|
109
|
+
- **Removed confusing prompts** - Simplified installation directory selection to avoid confusion
|
|
110
|
+
- **Better confirmation flow** - Two-step confirmation: location first, then provider/installation
|
|
111
|
+
- **Installation summary** - Shows exactly what will be installed before proceeding
|
|
112
|
+
|
|
113
|
+
### 🔧 Update Command Improvements
|
|
114
|
+
|
|
115
|
+
- **Fixed version display** - Update command now correctly shows v2.0.x instead of v1.1.3
|
|
116
|
+
- **Synced with install command** - Both install and update commands now show identical release notes and formatting
|
|
117
|
+
- **Directory filtering** - Properly filters out directories when counting hooks and personalities
|
|
118
|
+
- **Consistent formatting** - Matches install command's beautiful display style
|
|
119
|
+
|
|
120
|
+
### 🛠️ Code Quality
|
|
121
|
+
|
|
122
|
+
- **Fixed undefined variable** - Replaced `srcPersonalityFiles` with correct variable name
|
|
123
|
+
- **Proper scope management** - Moved `piperVoicesPath` declaration to correct scope to avoid undefined errors
|
|
124
|
+
- **Command handler isolation** - Wrapped language-manager.sh case statement to only run when executed directly, not when sourced
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
### 📊 Changes Summary
|
|
129
|
+
|
|
130
|
+
**Files Modified:** 8 files
|
|
131
|
+
- `.claude/commands/agent-vibes/preview.md` - Provider-aware routing
|
|
132
|
+
- `.claude/hooks/language-manager.sh` - Command handler isolation fix
|
|
133
|
+
- `.claude/hooks/play-tts-piper.sh` - Function name correction
|
|
134
|
+
- `.claude/hooks/play-tts.sh` - Simplified router
|
|
135
|
+
- `.claude/hooks/provider-commands.sh` - Enhanced Piper preview support
|
|
136
|
+
- `src/installer.js` - Interactive setup & UX improvements
|
|
137
|
+
- `.claude/commands/release.md` - Documentation update
|
|
138
|
+
- `.claude/piper-voices-dir.txt` - Storage config
|
|
139
|
+
|
|
140
|
+
**Lines Changed:**
|
|
141
|
+
- Added: 275 lines
|
|
142
|
+
- Removed: 354 lines
|
|
143
|
+
- Net: -79 lines (cleaner codebase!)
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
### 🎯 What's Improved
|
|
148
|
+
|
|
149
|
+
#### For New Users
|
|
150
|
+
- **Much easier setup** - Interactive prompts guide you through provider selection and API key configuration
|
|
151
|
+
- **Clearer explanations** - Better messaging about where files are installed and why (Claude Code auto-discovery)
|
|
152
|
+
- **Faster onboarding** - Shell detection and automatic config file modification save manual steps
|
|
153
|
+
|
|
154
|
+
#### For Existing Users
|
|
155
|
+
- **Preview command works correctly** - No more language-manager errors when previewing voices
|
|
156
|
+
- **Provider switching is seamless** - Better error messages when voice/provider mismatch occurs
|
|
157
|
+
- **Update command is accurate** - Shows correct version and release notes instead of old v1.1.3
|
|
158
|
+
|
|
159
|
+
#### For Developers
|
|
160
|
+
- **Cleaner codebase** - Removed 79 lines of unnecessary code
|
|
161
|
+
- **Better separation of concerns** - Command handlers only run when appropriate
|
|
162
|
+
- **Improved maintainability** - More consistent code patterns across scripts
|
|
163
|
+
|
|
164
|
+
---
|
|
165
|
+
|
|
166
|
+
### 🔧 Technical Details
|
|
167
|
+
|
|
168
|
+
#### Provider Preview Architecture
|
|
169
|
+
The preview command now uses a three-tier detection system:
|
|
170
|
+
|
|
171
|
+
1. **ElevenLabs Provider**: Routes to `voice-manager.sh preview` for ElevenLabs voice listing
|
|
172
|
+
2. **Piper Provider with voice arg**:
|
|
173
|
+
- Detects Piper voice format (`en_US-*-medium`)
|
|
174
|
+
- Detects ElevenLabs voice names (shows helpful error with alternatives)
|
|
175
|
+
- Validates voice model exists before previewing
|
|
176
|
+
3. **Piper Provider without args**: Shows first 3 sample voices (Lessac, Amy, Joe)
|
|
177
|
+
|
|
178
|
+
#### Language Manager Fix
|
|
179
|
+
The `language-manager.sh` script now checks if it's being executed directly vs sourced:
|
|
180
|
+
|
|
181
|
+
```bash
|
|
182
|
+
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
|
|
183
|
+
# Only run command handler when executed directly
|
|
184
|
+
case "${1:-}" in
|
|
185
|
+
set|get|code|check-voice|best-voice|list)
|
|
186
|
+
# Handle commands
|
|
187
|
+
;;
|
|
188
|
+
esac
|
|
189
|
+
fi
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
This prevents the case statement from executing when the script is sourced by other scripts like `play-tts-piper.sh`.
|
|
193
|
+
|
|
194
|
+
#### Installer Flow
|
|
195
|
+
```
|
|
196
|
+
1. Show installation details and location
|
|
197
|
+
2. Provider selection (Piper/ElevenLabs)
|
|
198
|
+
├─ If ElevenLabs: Check for API key
|
|
199
|
+
│ ├─ Detect shell (bash/zsh)
|
|
200
|
+
│ ├─ Offer to add to shell config
|
|
201
|
+
│ ├─ Manual setup option
|
|
202
|
+
│ └─ Skip option
|
|
203
|
+
└─ If Piper: Ask for voice storage path
|
|
204
|
+
3. Explain .claude/ installation location with reasoning
|
|
205
|
+
4. Confirm installation location
|
|
206
|
+
5. Show installation summary
|
|
207
|
+
6. Final confirmation
|
|
208
|
+
7. Install all files
|
|
209
|
+
8. Show success summary with next steps
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
214
|
+
### 💡 Usage Examples
|
|
215
|
+
|
|
216
|
+
#### Preview Commands
|
|
217
|
+
```bash
|
|
218
|
+
# Preview with Piper (no args = first 3 voices)
|
|
219
|
+
/agent-vibes:preview
|
|
220
|
+
|
|
221
|
+
# Preview specific Piper voice
|
|
222
|
+
/agent-vibes:preview en_US-lessac-medium
|
|
223
|
+
|
|
224
|
+
# Try to preview ElevenLabs voice while using Piper
|
|
225
|
+
/agent-vibes:preview Antoni
|
|
226
|
+
# ❌ 'Antoni' appears to be an ElevenLabs voice
|
|
227
|
+
# You're currently using Piper TTS (free provider).
|
|
228
|
+
# Options:
|
|
229
|
+
# 1. Run /agent-vibes:list to see available Piper voices
|
|
230
|
+
# 2. Switch to ElevenLabs: /agent-vibes:provider switch elevenlabs
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
#### Installer Provider Selection
|
|
234
|
+
```bash
|
|
235
|
+
npx agentvibes install
|
|
236
|
+
|
|
237
|
+
# 🎭 Choose Your TTS Provider:
|
|
238
|
+
# ? Which TTS provider would you like to use?
|
|
239
|
+
# 🆓 Piper TTS (Free, Offline) - 50+ neural voices, no API key needed
|
|
240
|
+
# 🎤 ElevenLabs (Premium) - 150+ AI voices, requires API key
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
---
|
|
244
|
+
|
|
245
|
+
### 📦 Upgrade Notes
|
|
246
|
+
|
|
247
|
+
**From v2.0.6:**
|
|
248
|
+
```bash
|
|
249
|
+
npm update -g agentvibes
|
|
250
|
+
# or
|
|
251
|
+
/agent-vibes:update
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
**No breaking changes** - This is a pure bug fix and UX improvement release. All existing configurations, voices, personalities, and settings are preserved.
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
### 🙏 Credits
|
|
259
|
+
|
|
260
|
+
- **Voice Preview Fix**: Resolved GitHub issue reported by users experiencing language-manager errors
|
|
261
|
+
- **Provider Architecture**: Multi-provider system improvements continue to mature
|
|
262
|
+
- **Installer UX**: Community feedback on first-time setup experience led to these improvements
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
### 📚 Resources
|
|
267
|
+
|
|
268
|
+
- **Documentation**: https://agentvibes.org
|
|
269
|
+
- **GitHub**: https://github.com/paulpreibisch/AgentVibes
|
|
270
|
+
- **Issues**: https://github.com/paulpreibisch/AgentVibes/issues
|
|
271
|
+
|
|
272
|
+
---
|
|
273
|
+
|
|
274
|
+
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
|
275
|
+
|
|
276
|
+
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
277
|
+
|
|
278
|
+
---
|
|
279
|
+
|
|
3
280
|
## 📦 v1.1.3 - Symlink Support & Audio Fixes (2025-10-04)
|
|
4
281
|
|
|
5
282
|
### 🤖 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
|
+
}
|