agentvibes 2.0.13 → 2.0.15

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.
@@ -1 +1 @@
1
- 20251009
1
+ 20251011
@@ -104,6 +104,69 @@ SENTIMENT=$CURRENT_SENTIMENT
104
104
  EOF
105
105
 
106
106
  touch "$ENABLED_FLAG"
107
+
108
+ # Create activation-instructions file for BMAD agents
109
+ ACTIVATION_FILE=".claude/activation-instructions"
110
+ if [[ ! -f "$ACTIVATION_FILE" ]]; then
111
+ cat > "$ACTIVATION_FILE" <<'ACTIVATION_EOF'
112
+ # BMAD Agent Activation Instructions
113
+
114
+ When a BMAD agent activates, follow these steps EXACTLY:
115
+
116
+ ## STEP 3.5a: Create BMAD Context File (CRITICAL)
117
+
118
+ **IMMEDIATELY after agent identification, create the context file:**
119
+
120
+ ```bash
121
+ echo "$AGENT_ID" > .bmad-agent-context
122
+ ```
123
+
124
+ Where `$AGENT_ID` is one of:
125
+ - `pm` (Product Manager)
126
+ - `dev` (Developer)
127
+ - `qa` (QA)
128
+ - `architect` (Architect)
129
+ - `po` (Product Owner)
130
+ - `analyst` (Analyst)
131
+ - `sm` (Scrum Master)
132
+ - `ux-expert` (UX Expert)
133
+ - `bmad-master` (BMAD Master)
134
+ - `bmad-orchestrator` (Orchestrator)
135
+
136
+ **Example:**
137
+ ```bash
138
+ # For Product Manager agent
139
+ echo "pm" > .bmad-agent-context
140
+ ```
141
+
142
+ This file allows AgentVibes to:
143
+ 1. Detect which BMAD agent is active
144
+ 2. Look up the correct voice mapping
145
+ 3. Automatically speak questions using the agent's assigned voice
146
+
147
+ ## STEP 10: Clean Up on Exit
148
+
149
+ **Before exiting the agent, remove the context file:**
150
+
151
+ ```bash
152
+ rm -f .bmad-agent-context
153
+ ```
154
+
155
+ This ensures voice switching only happens when an agent is active.
156
+
157
+ ## Why This Matters
158
+
159
+ Without the `.bmad-agent-context` file:
160
+ - AgentVibes cannot detect which agent is active
161
+ - Questions won't be spoken automatically
162
+ - Voice switching won't work
163
+ - The BMAD voice plugin becomes non-functional
164
+
165
+ **This is MANDATORY for BMAD voice integration to work!**
166
+ ACTIVATION_EOF
167
+ echo "📝 Created activation instructions: $ACTIVATION_FILE"
168
+ fi
169
+
107
170
  echo "✅ BMAD voice plugin enabled"
108
171
  echo "💾 Previous settings backed up:"
109
172
  echo " Voice: $CURRENT_VOICE"
File without changes
package/README.md CHANGED
@@ -11,7 +11,7 @@
11
11
  [![Publish](https://github.com/paulpreibisch/AgentVibes/actions/workflows/publish.yml/badge.svg)](https://github.com/paulpreibisch/AgentVibes/actions/workflows/publish.yml)
12
12
  [![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
13
13
 
14
- **Author**: Paul Preibisch ([@997Fire](https://x.com/997Fire)) | **Version**: v2.0.13
14
+ **Author**: Paul Preibisch ([@997Fire](https://x.com/997Fire)) | **Version**: v2.0.15
15
15
 
16
16
  ---
17
17
 
@@ -45,8 +45,8 @@
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.13)** 🎉
49
-
48
+ **[v2.0.15 - Release Notes](https://github.com/paulpreibisch/AgentVibes/releases/tag/v2.0.15)** 🎉
49
+ This patch release fixes a critical bug where the BMAD voice plugin was not automatically enabled during installation, even when BMAD was detected. Users installing AgentVibes with BMAD present would find plugin files created but the plugin non-functional because the crucial `.claude/activation-instructions` file was missing and the plugin wasn't enabled. Now, when BMAD is detected, the installer automatically creates activation instructions, enables the plugin, and sets everything up to work out of the box.
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
 
52
52
  **Key highlights:**
package/RELEASE_NOTES.md CHANGED
@@ -1,5 +1,237 @@
1
1
  # 🎤 AgentVibes Release Notes
2
2
 
3
+ ## 📦 v2.0.15 - BMAD Plugin Auto-Enable Fix (2025-10-12)
4
+
5
+ ### 🤖 AI Summary
6
+
7
+ This patch release fixes a critical bug where the BMAD voice plugin was not automatically enabled during installation, even when BMAD was detected. Users installing AgentVibes with BMAD present would find plugin files created but the plugin non-functional because the crucial `.claude/activation-instructions` file was missing and the plugin wasn't enabled. Now, when BMAD is detected, the installer automatically creates activation instructions, enables the plugin, and sets everything up to work out of the box.
8
+
9
+ ### 🐛 Bug Fixes
10
+
11
+ #### BMAD Plugin Auto-Enable Not Working
12
+ - **Fixed**: Plugin not enabled when BMAD detected during installation
13
+ - **Fixed**: Missing `.claude/activation-instructions` file prevented BMAD agents from creating context
14
+ - **Root Cause**: Installer created plugin files but never enabled the plugin or created activation instructions
15
+ - **Impact**: BMAD voice integration was non-functional after fresh installs
16
+ - **Solution**: Auto-enable plugin and create activation-instructions when BMAD detected
17
+
18
+ **What Was Broken:**
19
+ ```bash
20
+ # Before: Plugin files created but not actually working
21
+ npx agentvibes install # (with BMAD present)
22
+ # ✓ Created .claude/plugins/bmad-voices.md
23
+ # ✗ No .claude/plugins/bmad-voices-enabled.flag (plugin disabled!)
24
+ # ✗ No .claude/activation-instructions (agents don't know what to do!)
25
+
26
+ # Result: BMAD agents don't speak, voice switching doesn't work
27
+ ```
28
+
29
+ **After Fix:**
30
+ ```bash
31
+ # After: Plugin fully configured and working
32
+ npx agentvibes install # (with BMAD present)
33
+ # ✓ Created .claude/plugins/bmad-voices.md
34
+ # ✓ Created .claude/plugins/bmad-voices-enabled.flag (auto-enabled!)
35
+ # ✓ Created .claude/activation-instructions (agents know what to do!)
36
+ # 🎤 Auto-enabled BMAD voice plugin
37
+
38
+ # Result: BMAD agents speak automatically with assigned voices!
39
+ ```
40
+
41
+ #### Missing Activation Instructions
42
+ - **Fixed**: `.claude/activation-instructions` not created by installer
43
+ - **Fixed**: Manual `/agent-vibes:bmad enable` also didn't create instructions
44
+ - **Impact**: BMAD agents couldn't create `.bmad-agent-context` file
45
+ - **Solution**: Both installer and manual enable now create comprehensive activation instructions
46
+
47
+ **Why This File Matters:**
48
+
49
+ The `.claude/activation-instructions` file tells BMAD agents to:
50
+ 1. Create `.bmad-agent-context` file with agent ID when activating
51
+ 2. Clean up the context file when exiting
52
+ 3. This allows AgentVibes to detect which agent is active and switch voices
53
+
54
+ Without this file, agents never create the context file, so AgentVibes can't detect them and voice switching fails silently.
55
+
56
+ ### 📝 Technical Changes
57
+
58
+ **Modified: `src/installer.js`** (Lines 668-743)
59
+ - Added auto-enable logic when BMAD detected
60
+ - Creates `.claude/plugins/bmad-voices-enabled.flag` automatically
61
+ - Creates `.claude/activation-instructions` with full BMAD agent instructions
62
+ - Updates success message to reflect auto-enable status
63
+ - Fixed command examples in BMAD detection box (was `/agent-vibes-bmad`, now `/agent-vibes:bmad`)
64
+
65
+ **Modified: `.claude/hooks/bmad-voice-manager.sh`** (Lines 106-168)
66
+ - Added automatic creation of `.claude/activation-instructions` when enabling
67
+ - Uses heredoc to embed full activation instructions
68
+ - Only creates file if it doesn't exist (preserves customizations)
69
+ - Shows confirmation message when file created
70
+
71
+ **Added: `templates/activation-instructions-bmad.md`**
72
+ - Template file documenting the activation instructions
73
+ - Reference for what gets created by the system
74
+ - Explains why the file is critical for BMAD integration
75
+
76
+ ### 🎯 User Impact
77
+
78
+ **Before v2.0.15:**
79
+ - Fresh AgentVibes install with BMAD: Voice integration didn't work
80
+ - Users had to manually debug why BMAD agents weren't speaking
81
+ - Required manual creation of activation-instructions file
82
+ - Plugin appeared "enabled" but wasn't actually functional
83
+
84
+ **After v2.0.15:**
85
+ - Fresh install with BMAD: Everything works immediately
86
+ - BMAD agents speak automatically with assigned voices
87
+ - Voice switching works out of the box
88
+ - No manual configuration needed
89
+
90
+ ### 🔄 Opt-Out Design
91
+
92
+ **Philosophy: Auto-enable with easy opt-out**
93
+ - If you have BMAD installed, you probably want voice integration
94
+ - Better to work by default than require manual setup
95
+ - Users can easily disable with `/agent-vibes:bmad disable` if unwanted
96
+
97
+ ### 📊 Files Changed
98
+
99
+ **Modified (2 files):**
100
+ - `src/installer.js` (87 lines added, 6 lines removed)
101
+ - `.claude/hooks/bmad-voice-manager.sh` (63 lines added)
102
+
103
+ **Added (1 file):**
104
+ - `templates/activation-instructions-bmad.md` (54 lines)
105
+
106
+ **Total Changes:** 204 insertions, 6 deletions across 3 files
107
+
108
+ ### 🔄 Migration Notes
109
+
110
+ **For New Users:**
111
+ - No action needed - BMAD plugin auto-enables and works immediately
112
+ - Just run `npx agentvibes install` in directory with BMAD
113
+
114
+ **For Existing Users (v2.0.14 and earlier):**
115
+
116
+ If you previously installed AgentVibes and found BMAD voice integration not working:
117
+
118
+ ```bash
119
+ # Update AgentVibes
120
+ /agent-vibes:update
121
+
122
+ # The plugin will auto-enable on next install if BMAD detected
123
+ # Or manually enable:
124
+ /agent-vibes:bmad enable
125
+ ```
126
+
127
+ **To Disable BMAD Plugin (if unwanted):**
128
+ ```bash
129
+ /agent-vibes:bmad disable
130
+ ```
131
+
132
+ ### 💡 What Gets Created
133
+
134
+ When BMAD is detected during installation, the system creates:
135
+
136
+ 1. **`.claude/plugins/bmad-voices.md`** - Voice-to-agent mappings
137
+ 2. **`.claude/plugins/bmad-voices-enabled.flag`** - Enables the plugin
138
+ 3. **`.claude/activation-instructions`** - Instructions for BMAD agents
139
+
140
+ **Sample Activation Instructions:**
141
+ ```markdown
142
+ ## STEP 3.5a: Create BMAD Context File (CRITICAL)
143
+
144
+ **IMMEDIATELY after agent identification, create the context file:**
145
+
146
+ ```bash
147
+ echo "$AGENT_ID" > .bmad-agent-context
148
+ ```
149
+
150
+ This allows AgentVibes to:
151
+ 1. Detect which BMAD agent is active
152
+ 2. Look up the correct voice mapping
153
+ 3. Automatically speak questions using the agent's assigned voice
154
+ ```
155
+
156
+ ### 🙏 Credits
157
+
158
+ Thanks to the user who reported this issue in the md-presentations directory! This led to discovering that the BMAD plugin setup was incomplete for all fresh installations.
159
+
160
+ ---
161
+
162
+ ## 📦 v2.0.14 - README Version Fix for npm (2025-10-11)
163
+
164
+ ### 🤖 AI Summary
165
+
166
+ This patch release updates the npm package's README to display the correct version numbers. Since v2.0.13 was published before the README was corrected, the npm website displayed outdated version information. This release ensures users see v2.0.14 everywhere.
167
+
168
+ ### 🐛 Bug Fixes
169
+
170
+ #### npm README Version Display
171
+ - **Fixed**: npm package page now shows correct version (v2.0.14)
172
+ - **Root Cause**: v2.0.13 was published with uncorrected README
173
+ - **Impact**: Users visiting npmjs.com/package/agentvibes now see accurate version info
174
+ - **Solution**: Republish with corrected README
175
+
176
+ ### 📝 What Changed
177
+
178
+ **Modified: `README.md`**
179
+ - Author line now shows v2.0.14
180
+ - Latest Release section shows v2.0.14
181
+
182
+ **Modified: `package.json`, `package-lock.json`**
183
+ - Bumped version from 2.0.13 to 2.0.14
184
+
185
+ ### 🔄 Migration Notes
186
+
187
+ **For All Users:**
188
+ - No functional changes - this is purely a documentation update
189
+ - Update via `/agent-vibes:update` to get latest version
190
+ - All features from v2.0.13 are identical
191
+
192
+ ---
193
+
194
+ ## 📦 v2.0.13 - Workflow Fix & Clean Release (2025-10-11)
195
+
196
+ ### 🤖 AI Summary
197
+
198
+ This patch release fixes the npm publish workflow's README update patterns and provides a clean version without the experimental remote-SSH features that were accidentally included in v2.0.11 and v2.0.12. The workflow now correctly updates the README version information during releases, and users get a stable version based on v2.0.10.
199
+
200
+ ### 🐛 Bug Fixes
201
+
202
+ #### Publish Workflow README Update Fix
203
+ - **Fixed sed patterns** - Workflow now correctly matches and updates README release section
204
+ - **Flexible pattern matching** - Handles different release title formats ("Multi-Provider Revolution" vs "Release Notes")
205
+ - **Correct version display** - README now shows v2.0.13 in both author line and latest release section
206
+
207
+ #### Clean Version Without Remote-SSH Features
208
+ - **Skipped v2.0.11/v2.0.12** - These versions included experimental remote TTS forwarding features
209
+ - **Based on v2.0.10** - This is a clean release from the stable master branch
210
+ - **No breaking changes** - All existing functionality from v2.0.10 is preserved
211
+
212
+ ### 📝 Technical Changes
213
+
214
+ **Modified: `.github/workflows/publish.yml`**
215
+ - Updated sed pattern from exact "Release Notes" match to flexible `[^\]]*` pattern
216
+ - Improved pattern to match any title format in release section header
217
+ - Added comment explaining the flexible matching approach
218
+
219
+ **Modified: `package.json`, `package-lock.json`**
220
+ - Bumped version from 2.0.10 to 2.0.13
221
+
222
+ ### 🔄 Migration Notes
223
+
224
+ **For All Users:**
225
+ - Update via `/agent-vibes:update` or `npx agentvibes@latest install`
226
+ - No breaking changes - all settings and configurations preserved
227
+ - If you were on v2.0.12, this removes the remote-SSH code
228
+
229
+ **Deprecation Notice:**
230
+ - v2.0.12 includes experimental features and should be avoided
231
+ - v2.0.13 is the recommended stable version
232
+
233
+ ---
234
+
3
235
  ## 📦 v2.0.10 - GitHub Star Reminder & Provider Fixes (2025-01-10)
4
236
 
5
237
  ### 🤖 AI Summary
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.13",
4
+ "version": "2.0.15",
5
5
  "description": "Now your AI Agents can finally talk back! Professional TTS voice for Claude Code with multi-provider support.",
6
6
  "homepage": "https://agentvibes.org",
7
7
  "keywords": [
package/src/installer.js CHANGED
@@ -665,16 +665,93 @@ async function install(options = {}) {
665
665
  bmadDetected = true;
666
666
  } catch {}
667
667
 
668
+ // Auto-enable BMAD plugin and create activation-instructions if BMAD detected
669
+ if (bmadDetected) {
670
+ const pluginsDir = path.join(claudeDir, 'plugins');
671
+ const enabledFlagPath = path.join(pluginsDir, 'bmad-voices-enabled.flag');
672
+ const activationInstructionsPath = path.join(claudeDir, 'activation-instructions');
673
+
674
+ // Auto-enable the plugin (create the flag file)
675
+ await fs.mkdir(pluginsDir, { recursive: true });
676
+ await fs.writeFile(enabledFlagPath, '');
677
+ console.log(chalk.green('🎤 Auto-enabled BMAD voice plugin'));
678
+
679
+ // Only create if doesn't exist (don't overwrite user customizations)
680
+ try {
681
+ await fs.access(activationInstructionsPath);
682
+ } catch {
683
+ // File doesn't exist - create it
684
+ const activationContent = `# BMAD Agent Activation Instructions
685
+
686
+ When a BMAD agent activates, follow these steps EXACTLY:
687
+
688
+ ## STEP 3.5a: Create BMAD Context File (CRITICAL)
689
+
690
+ **IMMEDIATELY after agent identification, create the context file:**
691
+
692
+ \`\`\`bash
693
+ echo "$AGENT_ID" > .bmad-agent-context
694
+ \`\`\`
695
+
696
+ Where \`$AGENT_ID\` is one of:
697
+ - \`pm\` (Product Manager)
698
+ - \`dev\` (Developer)
699
+ - \`qa\` (QA)
700
+ - \`architect\` (Architect)
701
+ - \`po\` (Product Owner)
702
+ - \`analyst\` (Analyst)
703
+ - \`sm\` (Scrum Master)
704
+ - \`ux-expert\` (UX Expert)
705
+ - \`bmad-master\` (BMAD Master)
706
+ - \`bmad-orchestrator\` (Orchestrator)
707
+
708
+ **Example:**
709
+ \`\`\`bash
710
+ # For Product Manager agent
711
+ echo "pm" > .bmad-agent-context
712
+ \`\`\`
713
+
714
+ This file allows AgentVibes to:
715
+ 1. Detect which BMAD agent is active
716
+ 2. Look up the correct voice mapping
717
+ 3. Automatically speak questions using the agent's assigned voice
718
+
719
+ ## STEP 10: Clean Up on Exit
720
+
721
+ **Before exiting the agent, remove the context file:**
722
+
723
+ \`\`\`bash
724
+ rm -f .bmad-agent-context
725
+ \`\`\`
726
+
727
+ This ensures voice switching only happens when an agent is active.
728
+
729
+ ## Why This Matters
730
+
731
+ Without the \`.bmad-agent-context\` file:
732
+ - AgentVibes cannot detect which agent is active
733
+ - Questions won't be spoken automatically
734
+ - Voice switching won't work
735
+ - The BMAD voice plugin becomes non-functional
736
+
737
+ **This is MANDATORY for BMAD voice integration to work!**
738
+ `;
739
+ await fs.writeFile(activationInstructionsPath, activationContent);
740
+ console.log(chalk.green('📝 Created BMAD activation instructions'));
741
+ }
742
+ }
743
+
668
744
  if (bmadDetected) {
669
745
  console.log(
670
746
  boxen(
671
747
  chalk.green.bold('🎉 BMAD Detected!\n\n') +
672
- chalk.white('AgentVibes BMAD Plugin is automatically enabled!\n') +
673
- chalk.gray('Each BMAD agent will now use its assigned voice.\n\n') +
748
+ chalk.white(' BMAD Voice Plugin: AUTO-ENABLED\n') +
749
+ chalk.gray('Each BMAD agent will automatically use its assigned voice\n') +
750
+ chalk.gray('and speak when activated!\n\n') +
674
751
  chalk.cyan('Commands:\n') +
675
- chalk.gray(' • /agent-vibes-bmad status - View agent voices\n') +
676
- chalk.gray(' • /agent-vibes-bmad set <agent> <voice> - Customize\n') +
677
- chalk.gray(' • /agent-vibes-bmad disable - Turn off plugin'),
752
+ chalk.gray(' • /agent-vibes:bmad status - View agent voices\n') +
753
+ chalk.gray(' • /agent-vibes:bmad set <agent> <voice> - Customize\n') +
754
+ chalk.gray(' • /agent-vibes:bmad disable - Turn off if unwanted'),
678
755
  {
679
756
  padding: 1,
680
757
  margin: 1,
@@ -0,0 +1,54 @@
1
+ # BMAD Agent Activation Instructions
2
+
3
+ When a BMAD agent activates, follow these steps EXACTLY:
4
+
5
+ ## STEP 3.5a: Create BMAD Context File (CRITICAL)
6
+
7
+ **IMMEDIATELY after agent identification, create the context file:**
8
+
9
+ ```bash
10
+ echo "$AGENT_ID" > .bmad-agent-context
11
+ ```
12
+
13
+ Where `$AGENT_ID` is one of:
14
+ - `pm` (Product Manager)
15
+ - `dev` (Developer)
16
+ - `qa` (QA)
17
+ - `architect` (Architect)
18
+ - `po` (Product Owner)
19
+ - `analyst` (Analyst)
20
+ - `sm` (Scrum Master)
21
+ - `ux-expert` (UX Expert)
22
+ - `bmad-master` (BMAD Master)
23
+ - `bmad-orchestrator` (Orchestrator)
24
+
25
+ **Example:**
26
+ ```bash
27
+ # For Product Manager agent
28
+ echo "pm" > .bmad-agent-context
29
+ ```
30
+
31
+ This file allows AgentVibes to:
32
+ 1. Detect which BMAD agent is active
33
+ 2. Look up the correct voice mapping
34
+ 3. Automatically speak questions using the agent's assigned voice
35
+
36
+ ## STEP 10: Clean Up on Exit
37
+
38
+ **Before exiting the agent, remove the context file:**
39
+
40
+ ```bash
41
+ rm -f .bmad-agent-context
42
+ ```
43
+
44
+ This ensures voice switching only happens when an agent is active.
45
+
46
+ ## Why This Matters
47
+
48
+ Without the `.bmad-agent-context` file:
49
+ - AgentVibes cannot detect which agent is active
50
+ - Questions won't be spoken automatically
51
+ - Voice switching won't work
52
+ - The BMAD voice plugin becomes non-functional
53
+
54
+ **This is MANDATORY for BMAD voice integration to work!**