agentvibes 2.1.3 → 2.1.5

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
- 20251026
1
+ 20251031
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/bmad-tts-injector.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/bmad-voice-manager.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/check-output-style.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/download-extra-voices.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/github-star-reminder.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/language-manager.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/learn-manager.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/personality-manager.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/piper-download-voices.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/piper-installer.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/piper-multispeaker-registry.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/piper-voice-manager.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/play-tts-elevenlabs.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/play-tts-piper.sh
4
4
  #
@@ -65,11 +65,22 @@ if [[ -n "$VOICE_OVERRIDE" ]]; then
65
65
  VOICE_MODEL="$VOICE_OVERRIDE"
66
66
  echo "🎤 Using voice: $VOICE_OVERRIDE (session-specific)"
67
67
  else
68
- # Try to get voice from voice file (project-local first, then global)
68
+ # Try to get voice from voice file (check CLAUDE_PROJECT_DIR first for MCP context)
69
69
  VOICE_FILE=""
70
- if [[ -f "$SCRIPT_DIR/../tts-voice.txt" ]]; then
70
+
71
+ # Priority order:
72
+ # 1. CLAUDE_PROJECT_DIR env var (set by MCP for project-specific settings)
73
+ # 2. Script location (for direct slash command usage)
74
+ # 3. Global ~/.claude (fallback)
75
+
76
+ if [[ -n "$CLAUDE_PROJECT_DIR" ]] && [[ -f "$CLAUDE_PROJECT_DIR/.claude/tts-voice.txt" ]]; then
77
+ # MCP context: Use the project directory where MCP was invoked
78
+ VOICE_FILE="$CLAUDE_PROJECT_DIR/.claude/tts-voice.txt"
79
+ elif [[ -f "$SCRIPT_DIR/../tts-voice.txt" ]]; then
80
+ # Direct usage: Use script location
71
81
  VOICE_FILE="$SCRIPT_DIR/../tts-voice.txt"
72
82
  elif [[ -f "$HOME/.claude/tts-voice.txt" ]]; then
83
+ # Fallback: Use global
73
84
  VOICE_FILE="$HOME/.claude/tts-voice.txt"
74
85
  fi
75
86
 
@@ -77,8 +88,10 @@ else
77
88
  FILE_VOICE=$(cat "$VOICE_FILE" 2>/dev/null)
78
89
 
79
90
  # Check for multi-speaker voice (model + speaker ID stored separately)
80
- MODEL_FILE="$SCRIPT_DIR/../tts-piper-model.txt"
81
- SPEAKER_ID_FILE="$SCRIPT_DIR/../tts-piper-speaker-id.txt"
91
+ # Use same directory as VOICE_FILE for consistency
92
+ VOICE_DIR=$(dirname "$VOICE_FILE")
93
+ MODEL_FILE="$VOICE_DIR/tts-piper-model.txt"
94
+ SPEAKER_ID_FILE="$VOICE_DIR/tts-piper-speaker-id.txt"
82
95
 
83
96
  if [[ -f "$MODEL_FILE" ]] && [[ -f "$SPEAKER_ID_FILE" ]]; then
84
97
  # Multi-speaker voice
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/play-tts.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/provider-commands.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/provider-manager.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/replay-target-audio.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/sentiment-manager.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/speed-manager.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/voice-manager.sh
4
4
  #
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
  #
3
3
  # File: .claude/hooks/voices-config.sh
4
4
  #
@@ -0,0 +1,216 @@
1
+ # 🍎 macOS Testing Setup Complete!
2
+
3
+ ## ✅ What's Been Added
4
+
5
+ ### 1. **Dual Workflow Setup**
6
+ - **Main Test Workflow** (`.github/workflows/test.yml`)
7
+ - Fast testing on Ubuntu + macOS
8
+ - Node 18, 20
9
+ - Runs on every push/PR
10
+
11
+ - **Dedicated macOS Workflow** (`.github/workflows/test-macos.yml`)
12
+ - Comprehensive macOS testing
13
+ - macOS 13 (Intel), 14 (M1), 15 (Latest)
14
+ - Node 18, 20, 22
15
+ - Manual trigger available
16
+
17
+ ### 2. **Test Coverage**
18
+ - ✅ Unit tests (BATS)
19
+ - ✅ System compatibility checks
20
+ - ✅ Audio stack validation (afplay, ffmpeg, mpv)
21
+ - ✅ Piper TTS architecture detection
22
+ - ✅ ElevenLabs API mock testing
23
+ - ✅ Python MCP dependencies
24
+ - ✅ Audio file generation
25
+ - ✅ Installation process
26
+
27
+ ### 3. **Documentation**
28
+ - 📖 [docs/macos-testing.md](docs/macos-testing.md) - Complete guide
29
+ - 📄 [.github/MACOS_TESTING_QUICKSTART.md](.github/MACOS_TESTING_QUICKSTART.md) - Quick reference
30
+ - 📋 Updated README with macOS testing link
31
+
32
+ ## 🎯 How to Use
33
+
34
+ ### Automatic Testing (Recommended)
35
+ ```bash
36
+ # Just push your code - tests run automatically!
37
+ git push origin master
38
+ ```
39
+
40
+ Tests will run on:
41
+ - 2 OS (Ubuntu + macOS) × 2 Node versions = **4 test jobs** (main workflow)
42
+ - 3 macOS versions × 3 Node versions = **9 test jobs** (macOS workflow)
43
+
44
+ ### Manual Testing
45
+ 1. Go to GitHub → **Actions** tab
46
+ 2. Select **macOS Test Suite**
47
+ 3. Click **Run workflow**
48
+
49
+ ### Local Testing (If You Have a Mac)
50
+ ```bash
51
+ brew install bats-core
52
+ npm install
53
+ npm test
54
+ ```
55
+
56
+ ## 💰 Cost Comparison
57
+
58
+ | Option | Cost | Coverage |
59
+ |--------|------|----------|
60
+ | **GitHub Actions** | **$0** | Intel + M1 + Latest macOS |
61
+ | Mac VPS (UltaHost) | $4.80-22.50/mo | Limited, no GUI, audio issues |
62
+ | MacStadium | $79+/mo | Full Mac in cloud |
63
+ | Buy a Mac | $599+ | One-time, real hardware |
64
+
65
+ **Winner: GitHub Actions** - FREE + automatic + real hardware! 🏆
66
+
67
+ ## 🚀 What Happens Next
68
+
69
+ ### On Every Push:
70
+ 1. Tests trigger automatically
71
+ 2. Run on Ubuntu + macOS in parallel
72
+ 3. Results show in PR checks
73
+ 4. Badge updates in README
74
+
75
+ ### On Test Failure:
76
+ 1. Review logs in Actions tab
77
+ 2. Download artifacts if needed
78
+ 3. Fix locally or in GitHub
79
+ 4. Push again - retests automatically
80
+
81
+ ## 📊 Matrix Testing
82
+
83
+ ### Main Workflow (Fast)
84
+ ```yaml
85
+ Ubuntu + Node 18 ✓
86
+ Ubuntu + Node 20 ✓
87
+ macOS + Node 18 ✓
88
+ macOS + Node 20 ✓
89
+ ```
90
+
91
+ ### macOS Workflow (Comprehensive)
92
+ ```yaml
93
+ macOS 13 (Intel) + Node 18 ✓
94
+ macOS 13 (Intel) + Node 20 ✓
95
+ macOS 13 (Intel) + Node 22 ✓
96
+ macOS 14 (M1) + Node 18 ✓
97
+ macOS 14 (M1) + Node 20 ✓
98
+ macOS 14 (M1) + Node 22 ✓
99
+ macOS 15 + Node 18 ✓
100
+ macOS 15 + Node 20 ✓
101
+ macOS 15 + Node 22 ✓
102
+ ```
103
+
104
+ ## 🎉 Benefits
105
+
106
+ ### No Mac VPS Needed!
107
+ - ❌ No monthly fees
108
+ - ❌ No SSH audio forwarding headaches
109
+ - ❌ No VNC/GUI setup complexity
110
+ - ❌ No limited server resources
111
+
112
+ ### GitHub Actions Gives You:
113
+ - ✅ Real macOS hardware
114
+ - ✅ Both Intel and Apple Silicon
115
+ - ✅ Actual audio tools installed
116
+ - ✅ Free on public repos
117
+ - ✅ Automatic on every commit
118
+ - ✅ Parallel test execution
119
+ - ✅ Artifact storage for debugging
120
+
121
+ ## 🔍 Viewing Results
122
+
123
+ ### In Pull Requests
124
+ Check the bottom of any PR:
125
+ ```
126
+ ✓ Test Suite / Test on ubuntu-latest (Node 18)
127
+ ✓ Test Suite / Test on ubuntu-latest (Node 20)
128
+ ✓ Test Suite / Test on macos-latest (Node 18)
129
+ ✓ Test Suite / Test on macos-latest (Node 20)
130
+ ```
131
+
132
+ ### In Actions Tab
133
+ 1. Click **Actions** at top of repo
134
+ 2. See all test runs
135
+ 3. Click any run for details
136
+ 4. Expand steps for full output
137
+
138
+ ### Status Badge
139
+ README shows current status:
140
+ ```markdown
141
+ [![Test Suite](https://github.com/paulpreibisch/AgentVibes/actions/workflows/test.yml/badge.svg)](...)
142
+ ```
143
+
144
+ ## 🐛 Troubleshooting
145
+
146
+ ### Tests Failing?
147
+ 1. Click **Details** in PR check
148
+ 2. Review failed step output
149
+ 3. Check system info section
150
+ 4. Download artifacts if available
151
+
152
+ ### Want More Details?
153
+ See [docs/macos-testing.md](docs/macos-testing.md) for:
154
+ - Running tests locally
155
+ - Debugging tips
156
+ - Adding new tests
157
+ - Architecture-specific testing
158
+
159
+ ## 📝 Next Steps
160
+
161
+ ### Immediate:
162
+ 1. ✅ Push this commit
163
+ 2. ✅ Watch tests run
164
+ 3. ✅ Verify all pass
165
+
166
+ ### Future Enhancements:
167
+ - [ ] Test real ElevenLabs API (with secrets)
168
+ - [ ] Test Piper TTS full installation
169
+ - [ ] Test Claude Desktop integration
170
+ - [ ] Performance benchmarks
171
+ - [ ] Audio quality validation
172
+
173
+ ## 🤝 Contributing
174
+
175
+ Mac users can help by:
176
+ - Running tests locally
177
+ - Reporting macOS-specific issues
178
+ - Testing on different macOS versions
179
+ - Suggesting new test cases
180
+
181
+ ## 📚 Documentation Files
182
+
183
+ 1. **[docs/macos-testing.md](docs/macos-testing.md)**
184
+ - Complete testing guide
185
+ - Local testing instructions
186
+ - Debugging help
187
+ - Contributing guidelines
188
+
189
+ 2. **[.github/MACOS_TESTING_QUICKSTART.md](.github/MACOS_TESTING_QUICKSTART.md)**
190
+ - Quick reference
191
+ - TL;DR guide
192
+ - Common tasks
193
+
194
+ 3. **[.github/workflows/test.yml](.github/workflows/test.yml)**
195
+ - Main test workflow
196
+ - Ubuntu + macOS
197
+ - Fast execution
198
+
199
+ 4. **[.github/workflows/test-macos.yml](.github/workflows/test-macos.yml)**
200
+ - Dedicated macOS tests
201
+ - Comprehensive coverage
202
+ - Manual trigger
203
+
204
+ ---
205
+
206
+ ## 🎊 Conclusion
207
+
208
+ **You don't need to rent a Mac VPS!**
209
+
210
+ GitHub Actions provides FREE, automatic, comprehensive macOS testing on real hardware with both Intel and Apple Silicon support.
211
+
212
+ Just push your code and let GitHub Actions handle the rest! 🚀
213
+
214
+ ---
215
+
216
+ **Questions?** See [docs/macos-testing.md](docs/macos-testing.md) or open an issue.
package/README.md CHANGED
@@ -84,6 +84,7 @@ Whether you're coding in Claude Code, chatting in Claude Desktop, or using Warp
84
84
  ### Additional Resources
85
85
  - [🔗 Useful Links](#-useful-links) - Voice typing & AI tools
86
86
  - [🔄 Updating](#-updating) - Keep AgentVibes current
87
+ - [🍎 macOS Testing](docs/macos-testing.md) - Automated testing on macOS with GitHub Actions
87
88
  - [🙏 Credits](#-credits) - Acknowledgments
88
89
  - [🤝 Contributing](#-contributing) - Show support
89
90