agentvibes 1.1.3 ā 2.0.1
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/README.md +229 -28
- package/RELEASE_NOTES_V2.md +482 -0
- package/package.json +3 -2
- package/src/installer.js +21 -7
package/README.md
CHANGED
|
@@ -2,14 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
> **Bring your Claude Code sessions to life with voice!**
|
|
4
4
|
>
|
|
5
|
-
>
|
|
5
|
+
> š **[agentvibes.org](https://agentvibes.org)**
|
|
6
|
+
>
|
|
7
|
+
> Professional text-to-speech narration with multi-provider support - **ElevenLabs AI** or **Piper TTS (Free!)**
|
|
6
8
|
|
|
7
9
|
[](https://badge.fury.io/js/agentvibes)
|
|
8
10
|
[](https://github.com/paulpreibisch/AgentVibes/actions/workflows/test.yml)
|
|
9
11
|
[](https://github.com/paulpreibisch/AgentVibes/actions/workflows/publish.yml)
|
|
10
12
|
[](https://opensource.org/licenses/Apache-2.0)
|
|
11
13
|
|
|
12
|
-
**Author**: Paul Preibisch ([@997Fire](https://x.com/997Fire)) | **Version**: v2.0.
|
|
14
|
+
**Author**: Paul Preibisch ([@997Fire](https://x.com/997Fire)) | **Version**: v2.0.1
|
|
13
15
|
|
|
14
16
|
---
|
|
15
17
|
|
|
@@ -43,11 +45,18 @@
|
|
|
43
45
|
|
|
44
46
|
## š° Latest Release
|
|
45
47
|
|
|
46
|
-
**[v2.0.0 -
|
|
48
|
+
**[v2.0.0 - The Multi-Provider Revolution](https://github.com/paulpreibisch/AgentVibes/releases/tag/v2.0.1)** š
|
|
49
|
+
|
|
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!
|
|
47
51
|
|
|
48
|
-
|
|
52
|
+
**Key highlights:**
|
|
53
|
+
- š Multi-Provider Support - Switch between ElevenLabs (150+ voices) and Piper TTS (50+ free voices)
|
|
54
|
+
- š 30+ Languages - Speak in Spanish, French, German, Chinese, Japanese, and more
|
|
55
|
+
- š¤ 27+ Professional Voices - Expanded voice library with multilingual support
|
|
56
|
+
- š¬ Advanced Sentiment System - Apply personality styles to ANY voice
|
|
57
|
+
- š Enhanced BMAD Plugin - Multilingual agent voices with personality mapping
|
|
49
58
|
|
|
50
|
-
[ā View All Releases](https://github.com/paulpreibisch/AgentVibes/releases)
|
|
59
|
+
[ā View Full Release Notes](RELEASE_NOTES_V2.md) | [ā View All Releases](https://github.com/paulpreibisch/AgentVibes/releases)
|
|
51
60
|
|
|
52
61
|
---
|
|
53
62
|
|
|
@@ -59,13 +68,15 @@ Imagine Claude speaking to you with different voices and personalities as you co
|
|
|
59
68
|
|
|
60
69
|
### šÆ Key Features
|
|
61
70
|
|
|
62
|
-
-
|
|
71
|
+
- š **Multi-Provider Support** - Choose ElevenLabs (150+ premium voices) or Piper TTS (50+ free voices)
|
|
72
|
+
- š **30+ Languages** - Multilingual support with native voice quality
|
|
73
|
+
- šļø **27+ Professional AI Voices** - Character voices, accents, and unique personalities
|
|
63
74
|
- š **19 Built-in Personalities** - From sarcastic to flirty, pirate to dry humor
|
|
64
|
-
- š¬ **Sentiment System** - Apply personality styles to ANY voice
|
|
65
|
-
- š **BMAD Plugin** - Auto voice switching for BMAD agents
|
|
66
|
-
- š **Live Audio Feedback** - Hear task acknowledgments and completions
|
|
67
|
-
- šµ **Voice Preview** - Listen before you choose
|
|
68
|
-
-
|
|
75
|
+
- š¬ **Advanced Sentiment System** - Apply personality styles to ANY voice without changing it
|
|
76
|
+
- š **Enhanced BMAD Plugin** - Auto voice switching for BMAD agents with multilingual support
|
|
77
|
+
- š **Live Audio Feedback** - Hear task acknowledgments and completions in any language
|
|
78
|
+
- šµ **Voice Preview & Replay** - Listen before you choose, replay last 10 TTS messages
|
|
79
|
+
- š **Free Option Available** - Use Piper TTS with no API key required
|
|
69
80
|
- ā” **One-Command Install** - Get started in seconds
|
|
70
81
|
|
|
71
82
|
[ā Back to top](#-table-of-contents)
|
|
@@ -100,9 +111,34 @@ npm install
|
|
|
100
111
|
node bin/agent-vibes install
|
|
101
112
|
```
|
|
102
113
|
|
|
103
|
-
### Step 2:
|
|
114
|
+
### Step 2: Choose Your TTS Provider
|
|
115
|
+
|
|
116
|
+
AgentVibes supports two TTS providers - pick the one that fits your needs:
|
|
117
|
+
|
|
118
|
+
#### **Option A: Piper TTS (Free, Recommended for Getting Started)** š
|
|
119
|
+
|
|
120
|
+
**No setup required!** Piper TTS works out of the box with zero configuration.
|
|
121
|
+
|
|
122
|
+
- ā
Completely free, no API key needed
|
|
123
|
+
- ā
Works offline (perfect for Windows, WSL, Linux)
|
|
124
|
+
- ā
50+ neural voices
|
|
125
|
+
- ā
18 languages supported
|
|
126
|
+
- ā
Privacy-focused local processing
|
|
127
|
+
|
|
128
|
+
**To use:** Just install AgentVibes and you're done! The installer will set Piper as default if no ElevenLabs key is detected.
|
|
104
129
|
|
|
105
|
-
|
|
130
|
+
#### **Option B: ElevenLabs (Premium AI Voices)** š¤
|
|
131
|
+
|
|
132
|
+
**Best for production and variety.** Requires API key but offers 150+ premium voices.
|
|
133
|
+
|
|
134
|
+
- ā
150+ professional AI voices
|
|
135
|
+
- ā
30+ languages with multilingual v2
|
|
136
|
+
- ā
Studio-quality audio with emotional range
|
|
137
|
+
- ā
Character voices and unique personalities
|
|
138
|
+
|
|
139
|
+
**Setup steps:**
|
|
140
|
+
|
|
141
|
+
1. Sign up at [elevenlabs.io](https://elevenlabs.io/) (free tier: 10,000 chars/month)
|
|
106
142
|
2. Copy your API key from the dashboard
|
|
107
143
|
3. Add it to your environment:
|
|
108
144
|
|
|
@@ -112,6 +148,8 @@ echo 'export ELEVENLABS_API_KEY="your-api-key-here"' >> ~/.bashrc
|
|
|
112
148
|
source ~/.bashrc
|
|
113
149
|
```
|
|
114
150
|
|
|
151
|
+
**Switch providers anytime:** `/agent-vibes:provider switch`
|
|
152
|
+
|
|
115
153
|
### Step 3: Enable Voice in Claude Code
|
|
116
154
|
|
|
117
155
|
```bash
|
|
@@ -124,6 +162,117 @@ source ~/.bashrc
|
|
|
124
162
|
|
|
125
163
|
---
|
|
126
164
|
|
|
165
|
+
## š Multi-Provider Support
|
|
166
|
+
|
|
167
|
+
AgentVibes v2.0 introduces **multi-provider TTS support** - choose between premium ElevenLabs AI voices or free offline Piper TTS!
|
|
168
|
+
|
|
169
|
+
### š¤ ElevenLabs (Premium AI Voices)
|
|
170
|
+
|
|
171
|
+
**Features:**
|
|
172
|
+
- 150+ professional AI voices
|
|
173
|
+
- 30+ languages with multilingual v2 model
|
|
174
|
+
- Studio-quality audio with emotional range
|
|
175
|
+
- Character voices, accents, and unique personalities
|
|
176
|
+
- Voices include: Aria, Archer, Cowboy Bob, Pirate Marshal, Grandpa Spuds, Jessica Anne Bogart, and more!
|
|
177
|
+
|
|
178
|
+
**Requirements:**
|
|
179
|
+
- ElevenLabs API key (get free tier at [elevenlabs.io](https://elevenlabs.io))
|
|
180
|
+
- Internet connection for API calls
|
|
181
|
+
|
|
182
|
+
**Pricing (2025):**
|
|
183
|
+
- Free: 10,000 chars/month (light use)
|
|
184
|
+
- Starter: $5/month - 30,000 chars
|
|
185
|
+
- Creator: $22/month - 100,000 chars
|
|
186
|
+
- Pro: $99/month - 500,000 chars
|
|
187
|
+
|
|
188
|
+
### š Piper TTS (Free, Offline)
|
|
189
|
+
|
|
190
|
+
**Features:**
|
|
191
|
+
- 50+ neural voices, completely free
|
|
192
|
+
- 18 languages supported
|
|
193
|
+
- No API key required
|
|
194
|
+
- Works offline (perfect for Windows, WSL, and Linux)
|
|
195
|
+
- Privacy-focused local processing
|
|
196
|
+
- Cross-platform support (Windows, macOS, Linux)
|
|
197
|
+
|
|
198
|
+
**Requirements:**
|
|
199
|
+
- None! Works out of the box
|
|
200
|
+
- Automatic voice download on first use
|
|
201
|
+
- Native Windows support - no additional setup needed
|
|
202
|
+
|
|
203
|
+
### Provider Commands
|
|
204
|
+
|
|
205
|
+
```bash
|
|
206
|
+
# View current provider
|
|
207
|
+
/agent-vibes:provider info
|
|
208
|
+
|
|
209
|
+
# List available providers
|
|
210
|
+
/agent-vibes:provider list
|
|
211
|
+
|
|
212
|
+
# Switch providers instantly
|
|
213
|
+
/agent-vibes:provider switch
|
|
214
|
+
|
|
215
|
+
# Test provider functionality
|
|
216
|
+
/agent-vibes:provider test
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
### Switching Between Providers
|
|
220
|
+
|
|
221
|
+
**During Installation:**
|
|
222
|
+
The installer asks which provider you prefer and sets it up automatically.
|
|
223
|
+
|
|
224
|
+
**After Installation:**
|
|
225
|
+
```bash
|
|
226
|
+
# Switch to Piper TTS (free)
|
|
227
|
+
/agent-vibes:provider switch
|
|
228
|
+
# Select: piper
|
|
229
|
+
|
|
230
|
+
# Switch to ElevenLabs (premium)
|
|
231
|
+
/agent-vibes:provider switch
|
|
232
|
+
# Select: elevenlabs
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
**Automatic Fallback:**
|
|
236
|
+
If ElevenLabs API key is missing, AgentVibes automatically falls back to Piper TTS.
|
|
237
|
+
|
|
238
|
+
### Provider Comparison
|
|
239
|
+
|
|
240
|
+
| Feature | ElevenLabs | Piper TTS |
|
|
241
|
+
|---------|-----------|-----------|
|
|
242
|
+
| **Voices** | 150+ premium AI | 50+ neural voices |
|
|
243
|
+
| **Cost** | $0-99/month | Free forever |
|
|
244
|
+
| **Quality** | Studio-grade | High-quality neural |
|
|
245
|
+
| **Languages** | 30+ with multilingual v2 | 18 languages |
|
|
246
|
+
| **Offline** | ā Requires internet | ā
Works offline |
|
|
247
|
+
| **API Key** | ā
Required | ā Not needed |
|
|
248
|
+
| **Emotional Range** | ā
Advanced | ā ļø Limited |
|
|
249
|
+
| **Character Voices** | ā
Extensive library | ā ļø Standard voices |
|
|
250
|
+
| **Platform Support** | All platforms | Windows, macOS, Linux, WSL |
|
|
251
|
+
| **Best For** | Production, demos, variety | Development, privacy, Windows users |
|
|
252
|
+
|
|
253
|
+
### Which Provider Should I Choose?
|
|
254
|
+
|
|
255
|
+
**Choose ElevenLabs if:**
|
|
256
|
+
- You want premium studio-quality voices
|
|
257
|
+
- You need extensive character voice variety
|
|
258
|
+
- You're creating demos or production content
|
|
259
|
+
- You want advanced emotional range
|
|
260
|
+
- You have a budget for API costs
|
|
261
|
+
|
|
262
|
+
**Choose Piper TTS if:**
|
|
263
|
+
- You want completely free TTS (especially great for Windows!)
|
|
264
|
+
- You prefer offline/local processing
|
|
265
|
+
- You're on Windows, WSL, or Linux
|
|
266
|
+
- You value privacy and data control
|
|
267
|
+
- You're in development/testing phase
|
|
268
|
+
- You don't want to manage API keys or billing
|
|
269
|
+
|
|
270
|
+
**Pro Tip:** Use Piper for development and ElevenLabs for production/demos!
|
|
271
|
+
|
|
272
|
+
[ā Back to top](#-table-of-contents)
|
|
273
|
+
|
|
274
|
+
---
|
|
275
|
+
|
|
127
276
|
## š¤ Commands Reference
|
|
128
277
|
|
|
129
278
|
All commands are prefixed with `/agent-vibes:`
|
|
@@ -391,28 +540,46 @@ When you set a language, AgentVibes intelligently selects the best voice:
|
|
|
391
540
|
your-project/
|
|
392
541
|
āāā .claude/
|
|
393
542
|
āāā commands/
|
|
394
|
-
ā āāā agent-vibes/ #
|
|
543
|
+
ā āāā agent-vibes/ # 15 voice commands
|
|
395
544
|
ā āāā agent-vibes-bmad.md # BMAD plugin command
|
|
396
545
|
āāā hooks/
|
|
546
|
+
ā āāā play-tts.sh # Main TTS (provider-aware)
|
|
547
|
+
ā āāā play-tts-elevenlabs.sh # ElevenLabs implementation
|
|
548
|
+
ā āāā play-tts-piper.sh # Piper implementation
|
|
549
|
+
ā āāā provider-manager.sh # Provider switching
|
|
550
|
+
ā āāā provider-commands.sh # Provider CLI
|
|
551
|
+
ā āāā language-manager.sh # Language system
|
|
397
552
|
ā āāā voice-manager.sh # Voice switching
|
|
398
553
|
ā āāā personality-manager.sh # Personality system
|
|
399
554
|
ā āāā sentiment-manager.sh # Sentiment system
|
|
400
|
-
ā āāā bmad-voice-manager.sh # BMAD
|
|
401
|
-
ā āāā
|
|
402
|
-
ā
|
|
403
|
-
|
|
555
|
+
ā āāā bmad-voice-manager.sh # BMAD integration
|
|
556
|
+
ā āāā piper-voice-manager.sh # Piper voices
|
|
557
|
+
ā āāā piper-download-voices.sh # Piper downloader
|
|
558
|
+
ā āāā voices-config.sh # Voice ID mappings
|
|
559
|
+
āāā personalities/ # 19 personality templates
|
|
404
560
|
āāā plugins/
|
|
405
|
-
ā āāā bmad-voices.md
|
|
561
|
+
ā āāā bmad-voices.md # BMAD voice mappings
|
|
406
562
|
āāā output-styles/
|
|
407
|
-
ā āāā agent-vibes.md
|
|
408
|
-
āāā audio/
|
|
563
|
+
ā āāā agent-vibes.md # Voice output style
|
|
564
|
+
āāā audio/ # Generated TTS files
|
|
409
565
|
```
|
|
410
566
|
|
|
411
567
|
### Voice Settings Storage
|
|
412
568
|
|
|
413
|
-
- **
|
|
414
|
-
- **Current
|
|
415
|
-
- **Current
|
|
569
|
+
**Project-Local Settings** (`.claude/` in project):
|
|
570
|
+
- **Current Provider**: `tts-provider.txt` - Active TTS provider (elevenlabs/piper)
|
|
571
|
+
- **Current Voice**: `tts-voice.txt` - Selected voice name
|
|
572
|
+
- **Current Personality**: `tts-personality.txt` - Active personality
|
|
573
|
+
- **Current Sentiment**: `tts-sentiment.txt` - Active sentiment
|
|
574
|
+
- **Current Language**: `tts-language.txt` - Selected language
|
|
575
|
+
|
|
576
|
+
**Global Fallback** (`~/.claude/`):
|
|
577
|
+
Settings fall back to global config if project-local doesn't exist.
|
|
578
|
+
|
|
579
|
+
**How it works:**
|
|
580
|
+
1. AgentVibes checks `.claude/` in current project first
|
|
581
|
+
2. Falls back to `~/.claude/` if project setting doesn't exist
|
|
582
|
+
3. This allows different voices/personalities per project!
|
|
416
583
|
|
|
417
584
|
Settings persist across Claude Code sessions!
|
|
418
585
|
|
|
@@ -687,6 +854,38 @@ The update command will:
|
|
|
687
854
|
|
|
688
855
|
---
|
|
689
856
|
|
|
857
|
+
## ā ļø Important Disclaimers
|
|
858
|
+
|
|
859
|
+
**API Costs & Usage:**
|
|
860
|
+
- ElevenLabs usage may incur charges based on your subscription tier and character usage
|
|
861
|
+
- Users are solely responsible for their own API costs and usage
|
|
862
|
+
- Free tier: 10,000 characters/month | Paid plans: $5-99/month
|
|
863
|
+
- See [ElevenLabs Pricing](https://elevenlabs.io/pricing) for current rates
|
|
864
|
+
|
|
865
|
+
**Third-Party Services:**
|
|
866
|
+
- This project integrates with ElevenLabs (TTS API) and Piper TTS (local processing)
|
|
867
|
+
- We are **not affiliated with, endorsed by, or officially connected** to ElevenLabs, Anthropic, or Claude
|
|
868
|
+
- ElevenLabs and Piper TTS are subject to their respective terms of service
|
|
869
|
+
|
|
870
|
+
**Privacy & Data:**
|
|
871
|
+
- **ElevenLabs**: Your text prompts are sent to ElevenLabs servers for processing
|
|
872
|
+
- **Piper TTS**: All processing happens locally on your machine, no external data transmission
|
|
873
|
+
- Review [ElevenLabs Privacy Policy](https://elevenlabs.io/privacy) for their data handling
|
|
874
|
+
|
|
875
|
+
**Software License:**
|
|
876
|
+
- Provided "as-is" under Apache 2.0 License without warranty of any kind
|
|
877
|
+
- See [LICENSE](LICENSE) file for full terms
|
|
878
|
+
- No liability for data loss, bugs, service interruptions, or any damages
|
|
879
|
+
|
|
880
|
+
**Use at Your Own Risk:**
|
|
881
|
+
- This is open-source software maintained by the community
|
|
882
|
+
- Always test in development before production use
|
|
883
|
+
- Monitor your API usage and costs regularly
|
|
884
|
+
|
|
885
|
+
[ā Back to top](#-table-of-contents)
|
|
886
|
+
|
|
887
|
+
---
|
|
888
|
+
|
|
690
889
|
## š Credits
|
|
691
890
|
|
|
692
891
|
**Built with ā¤ļø by [Paul Preibisch](https://github.com/paulpreibisch)**
|
|
@@ -696,12 +895,14 @@ The update command will:
|
|
|
696
895
|
- š GitHub: [paulpreibisch](https://github.com/paulpreibisch)
|
|
697
896
|
|
|
698
897
|
**Powered by:**
|
|
699
|
-
- [ElevenLabs](https://elevenlabs.io/) AI voices
|
|
700
|
-
- [
|
|
898
|
+
- [ElevenLabs](https://elevenlabs.io/) - Premium AI voices
|
|
899
|
+
- [Piper TTS](https://github.com/rhasspy/piper) - Free neural voices
|
|
900
|
+
- [Claude Code](https://claude.com/claude-code) - AI coding assistant
|
|
701
901
|
- Licensed under Apache 2.0
|
|
702
902
|
|
|
703
|
-
**
|
|
704
|
-
- š” [Claude Code Hooks Mastery](https://github.com/disler/claude-code-hooks-mastery) by [@disler](https://github.com/disler)
|
|
903
|
+
**Special Thanks:**
|
|
904
|
+
- š” [Claude Code Hooks Mastery](https://github.com/disler/claude-code-hooks-mastery) by [@disler](https://github.com/disler) - Hooks inspiration
|
|
905
|
+
- š¤ [BMAD METHOD](https://github.com/bmad-code-org/BMAD-METHOD) - Multi-agent framework with auto voice switching integration
|
|
705
906
|
|
|
706
907
|
[ā Back to top](#-table-of-contents)
|
|
707
908
|
|
|
@@ -0,0 +1,482 @@
|
|
|
1
|
+
**Release Date:** October 2025
|
|
2
|
+
**Breaking Changes:** None - Fully backward compatible!
|
|
3
|
+
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## š Major Features
|
|
7
|
+
|
|
8
|
+
### š Multi-Provider TTS System
|
|
9
|
+
|
|
10
|
+
The biggest update in AgentVibes history! **Choose your TTS provider** and switch seamlessly without reconfiguring.
|
|
11
|
+
|
|
12
|
+
#### **Two Provider Options:**
|
|
13
|
+
|
|
14
|
+
**š¤ ElevenLabs (Premium AI Voices)**
|
|
15
|
+
- 150+ professional AI voices
|
|
16
|
+
- 30+ languages with multilingual v2 model
|
|
17
|
+
- Studio-quality audio with emotional range
|
|
18
|
+
- Character voices, accents, and personalities
|
|
19
|
+
- Voices: Aria, Archer, Cowboy Bob, Pirate Marshal, Grandpa Spuds, Jessica Anne Bogart, and more!
|
|
20
|
+
|
|
21
|
+
**š Piper TTS (Free, Offline)**
|
|
22
|
+
- 50+ neural voices, completely free
|
|
23
|
+
- 18 languages supported
|
|
24
|
+
- No API key required
|
|
25
|
+
- Works offline (perfect for WSL/Linux)
|
|
26
|
+
- Privacy-focused local processing
|
|
27
|
+
|
|
28
|
+
#### **New Provider Commands:**
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
# View current provider
|
|
32
|
+
/agent-vibes:provider info
|
|
33
|
+
|
|
34
|
+
# List available providers
|
|
35
|
+
/agent-vibes:provider list
|
|
36
|
+
|
|
37
|
+
# Switch providers instantly
|
|
38
|
+
/agent-vibes:provider switch
|
|
39
|
+
|
|
40
|
+
# Test provider functionality
|
|
41
|
+
/agent-vibes:provider test
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
#### **Intelligent Provider Selection:**
|
|
45
|
+
- **Interactive installer** asks which provider you prefer
|
|
46
|
+
- **Automatic fallback** if API key missing
|
|
47
|
+
- **Voice compatibility** - automatically maps voices to provider capabilities
|
|
48
|
+
- **Persistent settings** - your choice is saved across sessions
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
### š Advanced Multilingual Support (30+ Languages)
|
|
53
|
+
|
|
54
|
+
AgentVibes now speaks **30+ languages** with native voice quality!
|
|
55
|
+
|
|
56
|
+
#### **Supported Languages:**
|
|
57
|
+
- šŖšø Spanish, š«š· French, š©šŖ German, š®š¹ Italian, šµš¹ Portuguese
|
|
58
|
+
- šØš³ Chinese, šÆšµ Japanese, š°š· Korean, š®š³ Hindi, šøš¦ Arabic
|
|
59
|
+
- šµš± Polish, š³š± Dutch, š¹š· Turkish, šøšŖ Swedish, š·šŗ Russian
|
|
60
|
+
- And 15+ more!
|
|
61
|
+
|
|
62
|
+
#### **New Language Commands:**
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
# Set language for TTS
|
|
66
|
+
/agent-vibes:set-language spanish
|
|
67
|
+
/agent-vibes:set-language french
|
|
68
|
+
/agent-vibes:set-language german
|
|
69
|
+
|
|
70
|
+
# List all supported languages
|
|
71
|
+
/agent-vibes:set-language list
|
|
72
|
+
|
|
73
|
+
# Check current language
|
|
74
|
+
/agent-vibes:whoami
|
|
75
|
+
|
|
76
|
+
# Reset to English
|
|
77
|
+
/agent-vibes:set-language english
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
#### **Smart Voice Selection:**
|
|
81
|
+
- **Language-optimized voices** - Auto-switches to Antoni (Spanish), Rachel (French), Domi (German), Bella (Italian)
|
|
82
|
+
- **BMAD integration** - Agents speak in your chosen language
|
|
83
|
+
- **Personality support** - All 19 personalities work in any language
|
|
84
|
+
- **Provider-aware** - Works with both ElevenLabs and Piper TTS
|
|
85
|
+
|
|
86
|
+
#### **Language Priority System:**
|
|
87
|
+
1. BMAD Agent + Language Set ā Uses multilingual version of agent voice
|
|
88
|
+
2. BMAD Agent only ā Uses agent's default voice (English)
|
|
89
|
+
3. Language Set only ā Switches to language-optimized voice
|
|
90
|
+
4. Neither ā Uses current voice/personality
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
### š¤ Expanded Voice Library (27+ Voices)
|
|
95
|
+
|
|
96
|
+
**New multilingual voices added:**
|
|
97
|
+
|
|
98
|
+
| Voice | Character | Languages | Best For |
|
|
99
|
+
|-------|-----------|-----------|----------|
|
|
100
|
+
| **Antoni** | Well-balanced | 30+ | Spanish, International |
|
|
101
|
+
| **Rachel** | Clear, professional | 30+ | French, Global communication |
|
|
102
|
+
| **Domi** | Strong, confident | 30+ | German, Leadership |
|
|
103
|
+
| **Bella** | Soft, engaging | 30+ | Italian, Friendly |
|
|
104
|
+
| **Charlotte** | Expressive | 30+ | French, German, Spanish |
|
|
105
|
+
| **Matilda** | Warm | 30+ | Spanish, Portuguese |
|
|
106
|
+
|
|
107
|
+
**Enhanced English character voices:**
|
|
108
|
+
- Juniper, Tiffany, Tom (Team coordination)
|
|
109
|
+
- Ralf Eisend (International)
|
|
110
|
+
- Amy (Chinese accent)
|
|
111
|
+
- Lutz Laugh (Jovial)
|
|
112
|
+
- Burt Reynolds (Smooth baritone)
|
|
113
|
+
- Demon Monster (Dramatic)
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
### š Advanced Sentiment System
|
|
118
|
+
|
|
119
|
+
**Apply personality styles to ANY voice** without changing it!
|
|
120
|
+
|
|
121
|
+
#### **How It Works:**
|
|
122
|
+
- **Personality** = Voice + Style (e.g., Pirate Marshal + pirate speak)
|
|
123
|
+
- **Sentiment** = Your Voice + Style (e.g., Aria + sarcasm)
|
|
124
|
+
|
|
125
|
+
#### **New Sentiment Commands:**
|
|
126
|
+
|
|
127
|
+
```bash
|
|
128
|
+
# Apply sentiment to current voice
|
|
129
|
+
/agent-vibes:sentiment sarcastic
|
|
130
|
+
/agent-vibes:sentiment flirty
|
|
131
|
+
/agent-vibes:sentiment zen
|
|
132
|
+
|
|
133
|
+
# List all sentiments
|
|
134
|
+
/agent-vibes:sentiment list
|
|
135
|
+
|
|
136
|
+
# Check current sentiment
|
|
137
|
+
/agent-vibes:sentiment get
|
|
138
|
+
|
|
139
|
+
# Remove sentiment
|
|
140
|
+
/agent-vibes:sentiment clear
|
|
141
|
+
|
|
142
|
+
# Combine voice + sentiment
|
|
143
|
+
/agent-vibes:switch Aria --sentiment sarcastic
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
#### **All 19 Sentiments Available:**
|
|
147
|
+
sarcastic, flirty, pirate, grandpa, dry-humor, angry, robot, zen, professional, dramatic, millennial, surfer-dude, sassy, poetic, moody, funny, annoying, crass, normal, random
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
### š Enhanced BMAD Plugin Integration
|
|
152
|
+
|
|
153
|
+
**Auto-voice switching for multi-agent workflows** - now with language support!
|
|
154
|
+
|
|
155
|
+
#### **What's New:**
|
|
156
|
+
|
|
157
|
+
**š Multilingual BMAD Agents:**
|
|
158
|
+
- Set language, activate agent ā Agent speaks in that language
|
|
159
|
+
- Intelligent voice fallback if agent's voice doesn't support language
|
|
160
|
+
- All 10 BMAD agents work in 30+ languages
|
|
161
|
+
|
|
162
|
+
**š Per-Agent Personality:**
|
|
163
|
+
```bash
|
|
164
|
+
# Set agent with custom personality
|
|
165
|
+
/agent-vibes-bmad set pm "Jessica Anne Bogart" zen
|
|
166
|
+
/agent-vibes-bmad set dev "Matthew Schmitz" sarcastic
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
**š Enhanced Status Display:**
|
|
170
|
+
```bash
|
|
171
|
+
/agent-vibes-bmad status # Shows all mappings + current language
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
#### **Default BMAD Voice Mappings:**
|
|
175
|
+
|
|
176
|
+
| Agent | Role | Voice | Personality |
|
|
177
|
+
|-------|------|-------|-------------|
|
|
178
|
+
| pm | Product Manager | Jessica Anne Bogart | professional |
|
|
179
|
+
| dev | Developer | Matthew Schmitz | normal |
|
|
180
|
+
| qa | QA Engineer | Burt Reynolds | professional |
|
|
181
|
+
| architect | Architect | Michael | normal |
|
|
182
|
+
| po | Product Owner | Tiffany | professional |
|
|
183
|
+
| analyst | Analyst | Ralf Eisend | normal |
|
|
184
|
+
| sm | Scrum Master | Ms. Walker | professional |
|
|
185
|
+
| ux-expert | UX Expert | Aria | normal |
|
|
186
|
+
| bmad-master | BMAD Master | Archer | zen |
|
|
187
|
+
| bmad-orchestrator | Orchestrator | Tom | professional |
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
### šµ Audio Management Features
|
|
192
|
+
|
|
193
|
+
#### **Voice Preview System:**
|
|
194
|
+
```bash
|
|
195
|
+
/agent-vibes:preview # Hear first 3 voices
|
|
196
|
+
/agent-vibes:preview 10 # Hear first 10
|
|
197
|
+
/agent-vibes:preview last 5 # Hear last 5
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
#### **Audio Replay:**
|
|
201
|
+
```bash
|
|
202
|
+
/agent-vibes:replay # Replay last message
|
|
203
|
+
/agent-vibes:replay 3 # Replay 3rd-to-last
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
#### **Voice Testing:**
|
|
207
|
+
```bash
|
|
208
|
+
/agent-vibes:sample Aria # Test specific voice
|
|
209
|
+
/agent-vibes:sample "Cowboy Bob" # Test with custom text
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
214
|
+
### āļø Enhanced Installation & Updates
|
|
215
|
+
|
|
216
|
+
#### **Interactive Installer:**
|
|
217
|
+
- **Provider selection** during install
|
|
218
|
+
- **API key detection** and setup guidance
|
|
219
|
+
- **Piper TTS option** with automatic voice download
|
|
220
|
+
- **Visual progress** with ora spinners
|
|
221
|
+
- **Release notes display** showing latest changes
|
|
222
|
+
|
|
223
|
+
#### **Self-Update System:**
|
|
224
|
+
```bash
|
|
225
|
+
/agent-vibes:update # Update with confirmation
|
|
226
|
+
/agent-vibes:update --yes # Auto-confirm update
|
|
227
|
+
/agent-vibes:version # Check installed version
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
#### **Update Features:**
|
|
231
|
+
- ā
Updates all commands and hooks
|
|
232
|
+
- ā
Adds new personalities (preserves custom ones)
|
|
233
|
+
- ā
Shows release notes and commit history
|
|
234
|
+
- ā
Preserves your settings and configurations
|
|
235
|
+
- ā
Provider-aware (updates both ElevenLabs & Piper files)
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
### š ļø System Improvements
|
|
240
|
+
|
|
241
|
+
#### **Symlink Support:**
|
|
242
|
+
- Share hooks across projects via symlinks
|
|
243
|
+
- Maintain independent settings per project
|
|
244
|
+
- Project-local `.claude/` takes precedence over symlinks
|
|
245
|
+
|
|
246
|
+
#### **WSL Audio Fixes:**
|
|
247
|
+
- Automatic silence padding prevents audio static
|
|
248
|
+
- Enhanced audio playback for WSL2 users
|
|
249
|
+
- Cross-platform audio improvements
|
|
250
|
+
|
|
251
|
+
#### **GitHub Actions Integration:**
|
|
252
|
+
- Automated release creation
|
|
253
|
+
- Categorized release notes (feat/fix/chore)
|
|
254
|
+
- README auto-updates on release
|
|
255
|
+
- Comprehensive changelog generation
|
|
256
|
+
|
|
257
|
+
---
|
|
258
|
+
|
|
259
|
+
## š¦ What's Included
|
|
260
|
+
|
|
261
|
+
### Installation Structure:
|
|
262
|
+
```
|
|
263
|
+
.claude/
|
|
264
|
+
āāā commands/agent-vibes/ # 15 slash commands
|
|
265
|
+
āāā hooks/
|
|
266
|
+
ā āāā play-tts.sh # Main TTS (provider-aware)
|
|
267
|
+
ā āāā play-tts-elevenlabs.sh # ElevenLabs implementation
|
|
268
|
+
ā āāā play-tts-piper.sh # Piper implementation
|
|
269
|
+
ā āāā provider-manager.sh # Provider switching
|
|
270
|
+
ā āāā provider-commands.sh # Provider CLI
|
|
271
|
+
ā āāā language-manager.sh # Language system
|
|
272
|
+
ā āāā voice-manager.sh # Voice switching
|
|
273
|
+
ā āāā personality-manager.sh # Personality system
|
|
274
|
+
ā āāā sentiment-manager.sh # Sentiment system
|
|
275
|
+
ā āāā bmad-voice-manager.sh # BMAD integration
|
|
276
|
+
ā āāā piper-voice-manager.sh # Piper voices
|
|
277
|
+
ā āāā piper-download-voices.sh # Piper downloader
|
|
278
|
+
āāā personalities/ # 19 personality templates
|
|
279
|
+
āāā plugins/
|
|
280
|
+
ā āāā bmad-voices.md # BMAD mappings
|
|
281
|
+
āāā output-styles/
|
|
282
|
+
ā āāā agent-vibes.md # Voice output style
|
|
283
|
+
āāā audio/ # Generated TTS files
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
### Settings Storage:
|
|
287
|
+
- `tts-provider.txt` - Active provider (elevenlabs/piper)
|
|
288
|
+
- `tts-voice.txt` - Current voice
|
|
289
|
+
- `tts-personality.txt` - Active personality
|
|
290
|
+
- `tts-sentiment.txt` - Active sentiment
|
|
291
|
+
- `tts-language.txt` - Selected language
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
## šÆ Complete Command Reference
|
|
296
|
+
|
|
297
|
+
### Voice Commands:
|
|
298
|
+
- `/agent-vibes:list` - Show all voices
|
|
299
|
+
- `/agent-vibes:switch <voice>` - Change voice
|
|
300
|
+
- `/agent-vibes:whoami` - Show current setup
|
|
301
|
+
- `/agent-vibes:preview [N]` - Preview voices
|
|
302
|
+
- `/agent-vibes:sample <voice>` - Test voice
|
|
303
|
+
- `/agent-vibes:add <name> <id>` - Add custom voice
|
|
304
|
+
- `/agent-vibes:replay [N]` - Replay audio
|
|
305
|
+
- `/agent-vibes:get` - Get current voice
|
|
306
|
+
|
|
307
|
+
### Provider Commands:
|
|
308
|
+
- `/agent-vibes:provider switch` - Change TTS provider
|
|
309
|
+
- `/agent-vibes:provider info` - Show current provider
|
|
310
|
+
- `/agent-vibes:provider list` - List all providers
|
|
311
|
+
- `/agent-vibes:provider test` - Test provider
|
|
312
|
+
|
|
313
|
+
### Language Commands:
|
|
314
|
+
- `/agent-vibes:set-language <lang>` - Set TTS language
|
|
315
|
+
- `/agent-vibes:set-language list` - Show languages
|
|
316
|
+
- `/agent-vibes:set-language english` - Reset to English
|
|
317
|
+
|
|
318
|
+
### Personality Commands:
|
|
319
|
+
- `/agent-vibes:personality <name>` - Set personality
|
|
320
|
+
- `/agent-vibes:personality list` - Show all
|
|
321
|
+
- `/agent-vibes:personality add <name>` - Create custom
|
|
322
|
+
- `/agent-vibes:personality edit <name>` - Edit file
|
|
323
|
+
- `/agent-vibes:personality get` - Show current
|
|
324
|
+
- `/agent-vibes:personality reset` - Reset to normal
|
|
325
|
+
|
|
326
|
+
### Sentiment Commands:
|
|
327
|
+
- `/agent-vibes:sentiment <name>` - Apply sentiment
|
|
328
|
+
- `/agent-vibes:sentiment list` - Show all
|
|
329
|
+
- `/agent-vibes:sentiment get` - Show current
|
|
330
|
+
- `/agent-vibes:sentiment clear` - Remove sentiment
|
|
331
|
+
|
|
332
|
+
### BMAD Plugin Commands:
|
|
333
|
+
- `/agent-vibes-bmad status` - Show plugin status
|
|
334
|
+
- `/agent-vibes-bmad enable` - Enable plugin
|
|
335
|
+
- `/agent-vibes-bmad disable` - Disable plugin
|
|
336
|
+
- `/agent-vibes-bmad list` - List agent mappings
|
|
337
|
+
- `/agent-vibes-bmad set <agent> <voice> [personality]` - Update mapping
|
|
338
|
+
- `/agent-vibes-bmad edit` - Edit configuration
|
|
339
|
+
|
|
340
|
+
### System Commands:
|
|
341
|
+
- `/agent-vibes:version` - Show version
|
|
342
|
+
- `/agent-vibes:update [--yes]` - Update to latest
|
|
343
|
+
|
|
344
|
+
---
|
|
345
|
+
|
|
346
|
+
## š Migration Guide
|
|
347
|
+
|
|
348
|
+
### From v1.x to v2.0:
|
|
349
|
+
|
|
350
|
+
**No breaking changes!** v2.0 is fully backward compatible.
|
|
351
|
+
|
|
352
|
+
**Recommended steps:**
|
|
353
|
+
|
|
354
|
+
1. **Update AgentVibes:**
|
|
355
|
+
```bash
|
|
356
|
+
/agent-vibes:update
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
2. **Choose your provider:**
|
|
360
|
+
- If you have ElevenLabs API key ā Keep using ElevenLabs
|
|
361
|
+
- Want free/offline ā Switch to Piper TTS:
|
|
362
|
+
```bash
|
|
363
|
+
/agent-vibes:provider switch
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
3. **Try multilingual:**
|
|
367
|
+
```bash
|
|
368
|
+
/agent-vibes:set-language spanish
|
|
369
|
+
```
|
|
370
|
+
|
|
371
|
+
4. **Explore sentiments:**
|
|
372
|
+
```bash
|
|
373
|
+
/agent-vibes:sentiment sarcastic
|
|
374
|
+
```
|
|
375
|
+
|
|
376
|
+
**Your existing settings are preserved:**
|
|
377
|
+
- ā
Current voice
|
|
378
|
+
- ā
Personality preferences
|
|
379
|
+
- ā
Custom voices
|
|
380
|
+
- ā
BMAD mappings
|
|
381
|
+
|
|
382
|
+
---
|
|
383
|
+
|
|
384
|
+
## š° Pricing & Cost Management
|
|
385
|
+
|
|
386
|
+
### ElevenLabs Pricing (2025):
|
|
387
|
+
- **Free:** $0/month - 10,000 chars (light use)
|
|
388
|
+
- **Starter:** $5/month - 30,000 chars (casual)
|
|
389
|
+
- **Creator:** $22/month - 100,000 chars (regular)
|
|
390
|
+
- **Pro:** $99/month - 500,000 chars (heavy)
|
|
391
|
+
|
|
392
|
+
### Piper TTS:
|
|
393
|
+
- **Completely FREE** - No limits, no API key
|
|
394
|
+
- Offline processing
|
|
395
|
+
- Privacy-focused
|
|
396
|
+
- Great for development and testing
|
|
397
|
+
|
|
398
|
+
### Cost-Saving Tips:
|
|
399
|
+
1. Use Piper TTS for development
|
|
400
|
+
2. Use ElevenLabs for demos/production
|
|
401
|
+
3. Switch providers with one command:
|
|
402
|
+
```bash
|
|
403
|
+
/agent-vibes:provider switch
|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
---
|
|
407
|
+
|
|
408
|
+
## š Bug Fixes
|
|
409
|
+
|
|
410
|
+
- Fixed symlink support for shared hooks
|
|
411
|
+
- Fixed WSL audio static with silence padding
|
|
412
|
+
- Fixed installer directory detection for npx
|
|
413
|
+
- Fixed release notes display in installer
|
|
414
|
+
- Enhanced provider detection and fallback
|
|
415
|
+
- Improved error handling for missing API keys
|
|
416
|
+
- Better voice compatibility checking
|
|
417
|
+
|
|
418
|
+
---
|
|
419
|
+
|
|
420
|
+
## š Statistics
|
|
421
|
+
|
|
422
|
+
**v2.0.0 by the numbers:**
|
|
423
|
+
- š¤ **200+ voices** across both providers
|
|
424
|
+
- š **30+ languages** supported
|
|
425
|
+
- š **19 personalities** included
|
|
426
|
+
- š **19 sentiments** available
|
|
427
|
+
- š **15 slash commands** total
|
|
428
|
+
- š§ **12 hook scripts** installed
|
|
429
|
+
- š **2 TTS providers** available
|
|
430
|
+
- š¤ **10 BMAD agents** with voice mapping
|
|
431
|
+
|
|
432
|
+
---
|
|
433
|
+
|
|
434
|
+
## š Credits
|
|
435
|
+
|
|
436
|
+
**Built with ā¤ļø by [Paul Preibisch](https://github.com/paulpreibisch)**
|
|
437
|
+
|
|
438
|
+
**Powered by:**
|
|
439
|
+
- [ElevenLabs](https://elevenlabs.io/) - Premium AI voices
|
|
440
|
+
- [Piper TTS](https://github.com/rhasspy/piper) - Free neural voices
|
|
441
|
+
- [Claude Code](https://claude.com/claude-code) - AI coding assistant
|
|
442
|
+
|
|
443
|
+
**Special Thanks:**
|
|
444
|
+
- [@disler](https://github.com/disler) for Claude Code hooks inspiration
|
|
445
|
+
- ElevenLabs team for incredible voice technology
|
|
446
|
+
- Piper TTS community for open-source excellence
|
|
447
|
+
- BMAD community for multi-agent framework
|
|
448
|
+
|
|
449
|
+
---
|
|
450
|
+
|
|
451
|
+
## š Get Started
|
|
452
|
+
|
|
453
|
+
### Install v2.0:
|
|
454
|
+
```bash
|
|
455
|
+
npx agentvibes install
|
|
456
|
+
```
|
|
457
|
+
|
|
458
|
+
### Update from v1.x:
|
|
459
|
+
```bash
|
|
460
|
+
/agent-vibes:update
|
|
461
|
+
```
|
|
462
|
+
|
|
463
|
+
### Enable Voice in Claude Code:
|
|
464
|
+
```bash
|
|
465
|
+
/output-style agent-vibes
|
|
466
|
+
```
|
|
467
|
+
|
|
468
|
+
---
|
|
469
|
+
|
|
470
|
+
## š Resources
|
|
471
|
+
|
|
472
|
+
- š **Documentation:** [README.md](README.md)
|
|
473
|
+
- š **Issues:** [GitHub Issues](https://github.com/paulpreibisch/AgentVibes/issues)
|
|
474
|
+
- š¬ **Discussions:** [GitHub Discussions](https://github.com/paulpreibisch/AgentVibes/discussions)
|
|
475
|
+
- š **Website:** [agentvibes.org](https://agentvibes.org)
|
|
476
|
+
- š¦ **NPM:** [npmjs.com/package/agentvibes](https://www.npmjs.com/package/agentvibes)
|
|
477
|
+
|
|
478
|
+
---
|
|
479
|
+
|
|
480
|
+
**Ready to code with personality in multiple languages? Install v2.0 now! š¤āØ**
|
|
481
|
+
|
|
482
|
+
[ā Back to top](#-agentvibes-v200---the-multi-provider-revolution)
|
package/package.json
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "agentvibes",
|
|
4
|
-
"version": "
|
|
5
|
-
"description": "
|
|
4
|
+
"version": "2.0.1",
|
|
5
|
+
"description": "Bring your Claude Code sessions to life with voice! Professional TTS narration with multi-provider support.",
|
|
6
|
+
"homepage": "https://agentvibes.org",
|
|
6
7
|
"keywords": [
|
|
7
8
|
"elevenlabs",
|
|
8
9
|
"tts",
|
package/src/installer.js
CHANGED
|
@@ -97,12 +97,14 @@ async function install(options = {}) {
|
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
console.log(chalk.cyan('\nš¦ What will be installed:'));
|
|
100
|
-
console.log(chalk.gray(` ā¢
|
|
101
|
-
console.log(chalk.gray(` ā¢
|
|
102
|
-
console.log(chalk.gray(` ā¢
|
|
100
|
+
console.log(chalk.gray(` ⢠16 slash commands ā ${targetDir}/.claude/commands/agent-vibes/`));
|
|
101
|
+
console.log(chalk.gray(` ⢠Multi-provider TTS system (ElevenLabs + Piper TTS) ā ${targetDir}/.claude/hooks/`));
|
|
102
|
+
console.log(chalk.gray(` ⢠19 personality templates ā ${targetDir}/.claude/personalities/`));
|
|
103
103
|
console.log(chalk.gray(` ⢠Agent Vibes output style ā ${targetDir}/.claude/output-styles/`));
|
|
104
|
-
console.log(chalk.gray(` ā¢
|
|
105
|
-
console.log(chalk.gray(` ā¢
|
|
104
|
+
console.log(chalk.gray(` ⢠27+ curated voices (ElevenLabs premium)`));
|
|
105
|
+
console.log(chalk.gray(` ⢠50+ neural voices (Piper TTS - free & offline)`));
|
|
106
|
+
console.log(chalk.gray(` ⢠30+ language support with native voices`));
|
|
107
|
+
console.log(chalk.gray(` ⢠BMAD integration for multi-agent sessions\n`));
|
|
106
108
|
|
|
107
109
|
// Confirmation prompt (unless --yes flag is used)
|
|
108
110
|
if (!options.yes) {
|
|
@@ -199,10 +201,22 @@ async function install(options = {}) {
|
|
|
199
201
|
// Create personalities directory
|
|
200
202
|
await fs.mkdir(destPersonalitiesDir, { recursive: true });
|
|
201
203
|
|
|
202
|
-
// Copy all personality files
|
|
204
|
+
// Copy all personality files (excluding directories like 'backups')
|
|
203
205
|
const personalityFiles = await fs.readdir(srcPersonalitiesDir);
|
|
204
|
-
|
|
206
|
+
const personalityMdFiles = [];
|
|
207
|
+
|
|
205
208
|
for (const file of personalityFiles) {
|
|
209
|
+
const srcPath = path.join(srcPersonalitiesDir, file);
|
|
210
|
+
const stat = await fs.stat(srcPath);
|
|
211
|
+
|
|
212
|
+
// Only copy .md files, skip directories
|
|
213
|
+
if (stat.isFile() && file.endsWith('.md')) {
|
|
214
|
+
personalityMdFiles.push(file);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
console.log(chalk.cyan(`š Installing ${personalityMdFiles.length} personality templates:`));
|
|
219
|
+
for (const file of personalityMdFiles) {
|
|
206
220
|
const srcPath = path.join(srcPersonalitiesDir, file);
|
|
207
221
|
const destPath = path.join(destPersonalitiesDir, file);
|
|
208
222
|
await fs.copyFile(srcPath, destPath);
|