agentvibes 2.3.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/.claude/hooks/piper-installer.sh +118 -40
  2. package/README.md +8 -9
  3. package/RELEASE_NOTES.md +237 -2
  4. package/docs/providers.md +8 -6
  5. package/package.json +1 -1
  6. package/src/installer.js +49 -70
  7. package/.bmad-core/agent-teams/team-all.yaml +0 -15
  8. package/.bmad-core/agent-teams/team-fullstack.yaml +0 -19
  9. package/.bmad-core/agent-teams/team-ide-minimal.yaml +0 -11
  10. package/.bmad-core/agent-teams/team-no-ui.yaml +0 -14
  11. package/.bmad-core/agents/analyst.md +0 -84
  12. package/.bmad-core/agents/architect.md +0 -85
  13. package/.bmad-core/agents/bmad-master.md +0 -110
  14. package/.bmad-core/agents/bmad-orchestrator.md +0 -147
  15. package/.bmad-core/agents/dev.md +0 -81
  16. package/.bmad-core/agents/pm.md +0 -84
  17. package/.bmad-core/agents/po.md +0 -79
  18. package/.bmad-core/agents/qa.md +0 -87
  19. package/.bmad-core/agents/sm.md +0 -65
  20. package/.bmad-core/agents/ux-expert.md +0 -69
  21. package/.bmad-core/checklists/architect-checklist.md +0 -440
  22. package/.bmad-core/checklists/change-checklist.md +0 -184
  23. package/.bmad-core/checklists/pm-checklist.md +0 -372
  24. package/.bmad-core/checklists/po-master-checklist.md +0 -434
  25. package/.bmad-core/checklists/story-dod-checklist.md +0 -96
  26. package/.bmad-core/checklists/story-draft-checklist.md +0 -155
  27. package/.bmad-core/core-config.yaml +0 -22
  28. package/.bmad-core/data/bmad-kb.md +0 -809
  29. package/.bmad-core/data/brainstorming-techniques.md +0 -38
  30. package/.bmad-core/data/elicitation-methods.md +0 -156
  31. package/.bmad-core/data/technical-preferences.md +0 -5
  32. package/.bmad-core/data/test-levels-framework.md +0 -148
  33. package/.bmad-core/data/test-priorities-matrix.md +0 -174
  34. package/.bmad-core/enhanced-ide-development-workflow.md +0 -248
  35. package/.bmad-core/install-manifest.yaml +0 -230
  36. package/.bmad-core/tasks/advanced-elicitation.md +0 -119
  37. package/.bmad-core/tasks/apply-qa-fixes.md +0 -150
  38. package/.bmad-core/tasks/brownfield-create-epic.md +0 -162
  39. package/.bmad-core/tasks/brownfield-create-story.md +0 -149
  40. package/.bmad-core/tasks/correct-course.md +0 -72
  41. package/.bmad-core/tasks/create-brownfield-story.md +0 -314
  42. package/.bmad-core/tasks/create-deep-research-prompt.md +0 -280
  43. package/.bmad-core/tasks/create-doc.md +0 -103
  44. package/.bmad-core/tasks/create-next-story.md +0 -114
  45. package/.bmad-core/tasks/document-project.md +0 -345
  46. package/.bmad-core/tasks/execute-checklist.md +0 -88
  47. package/.bmad-core/tasks/facilitate-brainstorming-session.md +0 -138
  48. package/.bmad-core/tasks/generate-ai-frontend-prompt.md +0 -53
  49. package/.bmad-core/tasks/index-docs.md +0 -175
  50. package/.bmad-core/tasks/kb-mode-interaction.md +0 -77
  51. package/.bmad-core/tasks/nfr-assess.md +0 -345
  52. package/.bmad-core/tasks/qa-gate.md +0 -163
  53. package/.bmad-core/tasks/review-story.md +0 -316
  54. package/.bmad-core/tasks/risk-profile.md +0 -355
  55. package/.bmad-core/tasks/shard-doc.md +0 -187
  56. package/.bmad-core/tasks/test-design.md +0 -176
  57. package/.bmad-core/tasks/trace-requirements.md +0 -266
  58. package/.bmad-core/tasks/validate-next-story.md +0 -136
  59. package/.bmad-core/templates/architecture-tmpl.yaml +0 -651
  60. package/.bmad-core/templates/brainstorming-output-tmpl.yaml +0 -156
  61. package/.bmad-core/templates/brownfield-architecture-tmpl.yaml +0 -477
  62. package/.bmad-core/templates/brownfield-prd-tmpl.yaml +0 -281
  63. package/.bmad-core/templates/competitor-analysis-tmpl.yaml +0 -307
  64. package/.bmad-core/templates/front-end-architecture-tmpl.yaml +0 -219
  65. package/.bmad-core/templates/front-end-spec-tmpl.yaml +0 -350
  66. package/.bmad-core/templates/fullstack-architecture-tmpl.yaml +0 -824
  67. package/.bmad-core/templates/market-research-tmpl.yaml +0 -253
  68. package/.bmad-core/templates/prd-tmpl.yaml +0 -203
  69. package/.bmad-core/templates/project-brief-tmpl.yaml +0 -222
  70. package/.bmad-core/templates/qa-gate-tmpl.yaml +0 -103
  71. package/.bmad-core/templates/story-tmpl.yaml +0 -138
  72. package/.bmad-core/user-guide.md +0 -577
  73. package/.bmad-core/utils/bmad-doc-template.md +0 -327
  74. package/.bmad-core/utils/workflow-management.md +0 -71
  75. package/.bmad-core/workflows/brownfield-fullstack.yaml +0 -298
  76. package/.bmad-core/workflows/brownfield-service.yaml +0 -188
  77. package/.bmad-core/workflows/brownfield-ui.yaml +0 -198
  78. package/.bmad-core/workflows/greenfield-fullstack.yaml +0 -241
  79. package/.bmad-core/workflows/greenfield-service.yaml +0 -207
  80. package/.bmad-core/workflows/greenfield-ui.yaml +0 -236
  81. package/.bmad-core/working-in-the-brownfield.md +0 -606
  82. package/.claude/commands/BMad/analyst.md +0 -88
  83. package/.claude/commands/BMad/architect.md +0 -89
  84. package/.claude/commands/BMad/bmad-master.md +0 -114
  85. package/.claude/commands/BMad/bmad-orchestrator.md +0 -151
  86. package/.claude/commands/BMad/dev.md +0 -85
  87. package/.claude/commands/BMad/pm.md +0 -88
  88. package/.claude/commands/BMad/po.md +0 -83
  89. package/.claude/commands/BMad/qa.md +0 -91
  90. package/.claude/commands/BMad/sm.md +0 -69
  91. package/.claude/commands/BMad/tasks/advanced-elicitation.md +0 -123
  92. package/.claude/commands/BMad/tasks/apply-qa-fixes.md +0 -154
  93. package/.claude/commands/BMad/tasks/brownfield-create-epic.md +0 -166
  94. package/.claude/commands/BMad/tasks/brownfield-create-story.md +0 -153
  95. package/.claude/commands/BMad/tasks/correct-course.md +0 -76
  96. package/.claude/commands/BMad/tasks/create-brownfield-story.md +0 -318
  97. package/.claude/commands/BMad/tasks/create-deep-research-prompt.md +0 -284
  98. package/.claude/commands/BMad/tasks/create-doc.md +0 -107
  99. package/.claude/commands/BMad/tasks/create-next-story.md +0 -118
  100. package/.claude/commands/BMad/tasks/document-project.md +0 -349
  101. package/.claude/commands/BMad/tasks/execute-checklist.md +0 -92
  102. package/.claude/commands/BMad/tasks/facilitate-brainstorming-session.md +0 -142
  103. package/.claude/commands/BMad/tasks/generate-ai-frontend-prompt.md +0 -57
  104. package/.claude/commands/BMad/tasks/index-docs.md +0 -179
  105. package/.claude/commands/BMad/tasks/kb-mode-interaction.md +0 -81
  106. package/.claude/commands/BMad/tasks/nfr-assess.md +0 -349
  107. package/.claude/commands/BMad/tasks/qa-gate.md +0 -167
  108. package/.claude/commands/BMad/tasks/review-story.md +0 -320
  109. package/.claude/commands/BMad/tasks/risk-profile.md +0 -359
  110. package/.claude/commands/BMad/tasks/shard-doc.md +0 -191
  111. package/.claude/commands/BMad/tasks/test-design.md +0 -180
  112. package/.claude/commands/BMad/tasks/trace-requirements.md +0 -270
  113. package/.claude/commands/BMad/tasks/validate-next-story.md +0 -140
  114. package/.claude/commands/BMad/ux-expert.md +0 -73
  115. package/.claude/github-star-reminder.txt +0 -1
  116. package/.claude/piper-voices-dir.txt +0 -1
  117. package/.claude/plugins/bmad-voices-enabled.flag +0 -0
  118. package/linkedin/vibe-coding-and-pulseaudio.md +0 -121
  119. package/mcp-server/agentvibes.db +0 -0
  120. package/scripts/audio-tunnel.config +0 -17
@@ -46,12 +46,21 @@ echo "🎤 Piper TTS Installer"
46
46
  echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
47
47
  echo ""
48
48
 
49
- # Check if running on WSL or Linux
50
- if ! grep -qi microsoft /proc/version 2>/dev/null && [[ "$(uname -s)" != "Linux" ]]; then
51
- echo " Piper TTS is only supported on WSL and Linux"
52
- echo " Your platform: $(uname -s)"
49
+ # Detect platform
50
+ PLATFORM="$(uname -s)"
51
+ ARCH="$(uname -m)"
52
+
53
+ # Check if running on macOS, WSL, or Linux
54
+ if [[ "$PLATFORM" == "Darwin" ]]; then
55
+ IS_MACOS=true
56
+ echo "🍎 Detected macOS"
57
+ elif grep -qi microsoft /proc/version 2>/dev/null || [[ "$PLATFORM" == "Linux" ]]; then
58
+ IS_MACOS=false
59
+ echo "🐧 Detected Linux/WSL"
60
+ else
61
+ echo "❌ Unsupported platform: $PLATFORM"
53
62
  echo ""
54
- echo " For macOS/Windows, use ElevenLabs instead:"
63
+ echo " For Windows, use ElevenLabs instead:"
55
64
  echo " /agent-vibes:provider switch elevenlabs"
56
65
  exit 1
57
66
  fi
@@ -69,49 +78,118 @@ fi
69
78
  echo "📦 Installing Piper TTS..."
70
79
  echo ""
71
80
 
72
- # Check if pipx is installed
73
- if ! command -v pipx &> /dev/null; then
74
- echo "⚠️ pipx not found. Installing pipx first..."
81
+ # macOS: Use precompiled binaries
82
+ if [[ "$IS_MACOS" == true ]]; then
83
+ echo "🍎 Installing Piper TTS from precompiled binaries for macOS..."
75
84
  echo ""
76
85
 
77
- # Try to install pipx
78
- if command -v apt-get &> /dev/null; then
79
- # Debian/Ubuntu
80
- sudo apt-get update
81
- sudo apt-get install -y pipx
82
- elif command -v brew &> /dev/null; then
83
- # macOS (though Piper doesn't run on macOS)
84
- brew install pipx
85
- elif command -v dnf &> /dev/null; then
86
- # Fedora
87
- sudo dnf install -y pipx
88
- elif command -v pacman &> /dev/null; then
89
- # Arch Linux
90
- sudo pacman -S python-pipx
86
+ # Determine architecture
87
+ if [[ "$ARCH" == "arm64" ]]; then
88
+ echo "Detected Apple Silicon (M1/M2/M3)"
89
+ PIPER_URL="https://github.com/rhasspy/piper/releases/download/2023.11.14-2/piper_macos_aarch64.tar.gz"
90
+ elif [[ "$ARCH" == "x86_64" ]]; then
91
+ echo "Detected Intel Mac"
92
+ PIPER_URL="https://github.com/rhasspy/piper/releases/download/2023.11.14-2/piper_macos_x64.tar.gz"
91
93
  else
92
- echo "❌ Unable to install pipx automatically."
93
- echo ""
94
- echo " Please install pipx manually:"
95
- echo " https://pipx.pypa.io/stable/installation/"
94
+ echo "❌ Unsupported macOS architecture: $ARCH"
96
95
  exit 1
97
96
  fi
98
97
 
99
- # Ensure pipx is in PATH
100
- pipx ensurepath
101
- echo ""
102
- fi
98
+ # Create installation directory
99
+ INSTALL_DIR="$HOME/.local/bin"
100
+ mkdir -p "$INSTALL_DIR"
103
101
 
104
- # Install Piper TTS
105
- echo "📥 Installing Piper TTS via pipx..."
106
- pipx install piper-tts
102
+ # Download and extract
103
+ echo "📥 Downloading Piper from: $PIPER_URL"
104
+ TEMP_DIR=$(mktemp -d)
105
+ cd "$TEMP_DIR"
107
106
 
108
- if ! command -v piper &> /dev/null; then
109
- echo ""
110
- echo "❌ Installation completed but piper command not found in PATH"
111
- echo ""
112
- echo " Try running: pipx ensurepath"
113
- echo " Then restart your terminal"
114
- exit 1
107
+ if curl -L "$PIPER_URL" | tar -xz; then
108
+ echo "✅ Downloaded and extracted successfully"
109
+
110
+ # Copy binaries to ~/.local/bin
111
+ if [[ -d "piper" ]]; then
112
+ cp -r piper/* "$INSTALL_DIR/"
113
+ chmod +x "$INSTALL_DIR/piper"
114
+ chmod +x "$INSTALL_DIR/piper_phonemize"
115
+
116
+ echo "✅ Installed Piper to: $INSTALL_DIR/piper"
117
+
118
+ # Add to PATH if not already there
119
+ if [[ ":$PATH:" != *":$INSTALL_DIR:"* ]]; then
120
+ echo ""
121
+ echo "⚠️ Add $INSTALL_DIR to your PATH:"
122
+ echo ""
123
+ if [[ "$SHELL" == *"zsh"* ]]; then
124
+ echo " echo 'export PATH=\"\$HOME/.local/bin:\$PATH\"' >> ~/.zshrc"
125
+ echo " source ~/.zshrc"
126
+ else
127
+ echo " echo 'export PATH=\"\$HOME/.local/bin:\$PATH\"' >> ~/.bash_profile"
128
+ echo " source ~/.bash_profile"
129
+ fi
130
+ fi
131
+ else
132
+ echo "❌ Failed to extract Piper binaries"
133
+ cd -
134
+ rm -rf "$TEMP_DIR"
135
+ exit 1
136
+ fi
137
+ else
138
+ echo "❌ Failed to download Piper"
139
+ cd -
140
+ rm -rf "$TEMP_DIR"
141
+ exit 1
142
+ fi
143
+
144
+ cd -
145
+ rm -rf "$TEMP_DIR"
146
+
147
+ # Linux/WSL: Use pipx
148
+ else
149
+ # Check if pipx is installed
150
+ if ! command -v pipx &> /dev/null; then
151
+ echo "⚠️ pipx not found. Installing pipx first..."
152
+ echo ""
153
+
154
+ # Try to install pipx
155
+ if command -v apt-get &> /dev/null; then
156
+ # Debian/Ubuntu
157
+ sudo apt-get update
158
+ sudo apt-get install -y pipx
159
+ elif command -v brew &> /dev/null; then
160
+ # Linux with Homebrew
161
+ brew install pipx
162
+ elif command -v dnf &> /dev/null; then
163
+ # Fedora
164
+ sudo dnf install -y pipx
165
+ elif command -v pacman &> /dev/null; then
166
+ # Arch Linux
167
+ sudo pacman -S python-pipx
168
+ else
169
+ echo "❌ Unable to install pipx automatically."
170
+ echo ""
171
+ echo " Please install pipx manually:"
172
+ echo " https://pipx.pypa.io/stable/installation/"
173
+ exit 1
174
+ fi
175
+
176
+ # Ensure pipx is in PATH
177
+ pipx ensurepath
178
+ echo ""
179
+ fi
180
+
181
+ # Install Piper TTS
182
+ echo "📥 Installing Piper TTS via pipx..."
183
+ pipx install piper-tts
184
+
185
+ if ! command -v piper &> /dev/null; then
186
+ echo ""
187
+ echo "❌ Installation completed but piper command not found in PATH"
188
+ echo ""
189
+ echo " Try running: pipx ensurepath"
190
+ echo " Then restart your terminal"
191
+ exit 1
192
+ fi
115
193
  fi
116
194
 
117
195
  echo ""
package/README.md CHANGED
@@ -6,12 +6,12 @@
6
6
  >
7
7
  > Professional text-to-speech for **Claude Code**, **Claude Desktop**, and **Warp Terminal** - **ElevenLabs AI** or **Piper TTS (Free!)**
8
8
 
9
- [![npm version](https://img.shields.io/npm/v/agentvibes?color=blue)](https://www.npmjs.com/package/agentvibes)
9
+ [![npm version](https://img.shields.io/npm/v/agentvibes)](https://www.npmjs.com/package/agentvibes)
10
10
  [![Test Suite](https://github.com/paulpreibisch/AgentVibes/actions/workflows/test.yml/badge.svg)](https://github.com/paulpreibisch/AgentVibes/actions/workflows/test.yml)
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.2.3
14
+ **Author**: Paul Preibisch ([@997Fire](https://x.com/997Fire)) | **Version**: v2.4.0
15
15
 
16
16
  ---
17
17
 
@@ -92,16 +92,15 @@ Whether you're coding in Claude Code, chatting in Claude Desktop, or using Warp
92
92
 
93
93
  ## 📰 Latest Release
94
94
 
95
- **[v2.2.0 - Provider-Aware Features, BMAD v6 Support & MCP Improvements](https://github.com/paulpreibisch/AgentVibes/releases/tag/v2.2.3)** 🎉
95
+ **[v2.4.0 - macOS Piper TTS Support](https://github.com/paulpreibisch/AgentVibes/releases/tag/v2.4.0)** 🎉
96
96
 
97
- Major enhancements to multi-provider support, BMAD integration, and MCP server configuration! This release makes AgentVibes smarter about which TTS provider you're using and adds full support for BMAD-METHOD v6-alpha.
97
+ This release brings **full Piper TTS support to macOS** via precompiled binaries! Mac users can now enjoy completely free offline TTS with zero Python dependencies. The installer automatically detects your Mac architecture (Intel or Apple Silicon) and downloads the appropriate binary.
98
98
 
99
99
  **Key highlights:**
100
- - 🎯 **Provider-Aware Voice Switching** - Automatically detects and uses the correct provider (ElevenLabs or Piper)
101
- - 🤖 **BMAD v6 Support** - Full backward compatibility with v4, with improved agent voice mappings
102
- - 🔧 **MCP NPX Fix** - Corrected NPX configuration for seamless MCP server setup
103
- - **Improved Installer UX** - Cleaner prompts and better visual formatting
104
- - 🎭 **Better Voice Mappings** - Provider-aware BMAD agent voices (PM: Ryan, Analyst: Kristin)
100
+ - 🍎 **macOS Piper TTS Support** - Install via precompiled binaries (no Python/pipx needed!)
101
+ - 🏗️ **Architecture Auto-Detection** - Supports both Apple Silicon (M1/M2/M3) and Intel Macs
102
+ - 🐛 **Fixed Installation Issues** - Resolved pipx dependency conflicts on macOS
103
+ - **Comprehensive CI Testing** - Validated across 9 macOS configurations (macOS 13/14/15)
105
104
 
106
105
  [→ View All Releases](https://github.com/paulpreibisch/AgentVibes/releases)
107
106
 
package/RELEASE_NOTES.md CHANGED
@@ -1,4 +1,121 @@
1
- # AgentVibes Release Notes
1
+ # Release v2.4.0 - macOS Piper TTS Support (2025-01-15)
2
+
3
+ ## 🤖 AI Summary
4
+
5
+ This minor release brings **full Piper TTS support to macOS** via precompiled binaries, eliminating the Python dependency conflicts that previously prevented macOS users from using free offline TTS. Mac users can now install Piper TTS with zero Python dependencies - just download and run! The installer automatically detects your Mac architecture (Intel or Apple Silicon) and downloads the appropriate binary. This release also includes comprehensive GitHub Actions CI testing to validate Piper installation across all macOS versions (13, 14, 15) and both architectures.
6
+
7
+ ## 📋 Changes
8
+
9
+ ### ✨ New Features
10
+ - **macOS Piper TTS Support via Precompiled Binaries**
11
+ - Downloads official Piper binaries from rhasspy/piper releases
12
+ - Automatic architecture detection (Apple Silicon M1/M2/M3 vs Intel)
13
+ - Installs to `~/.local/bin/piper` with no Python dependencies
14
+ - Zero pipx or pip conflicts - pure binary installation
15
+ - Supports both `arm64` (Apple Silicon) and `x86_64` (Intel) architectures
16
+
17
+ - **Comprehensive macOS CI Testing**
18
+ - Tests Piper binary installation on macOS 13, 14, and 15
19
+ - Tests user-reported `--no-deps` pip workaround method
20
+ - Validates both Intel and Apple Silicon architectures
21
+ - Confirms standard pipx failure and binary success
22
+ - Runs across 9 macOS configurations (3 OS × 3 Node versions)
23
+
24
+ ### 🐛 Bug Fixes
25
+ - **Fixed macOS Piper Installation Failures**
26
+ - Resolved pipx dependency conflict issues reported by users
27
+ - Removed incorrect platform restriction blocking macOS
28
+ - Fixed "Piper TTS is only supported on WSL and Linux" error
29
+
30
+ ### 📚 Documentation
31
+ - **Updated Provider Documentation**
32
+ - Corrected platform support matrix to include macOS
33
+ - Added macOS-specific installation requirements
34
+ - Clarified binary vs pipx installation methods
35
+ - Updated "Choose Piper TTS if" section with macOS callout
36
+
37
+ - **Installer Script Documentation**
38
+ - Added platform detection logic documentation
39
+ - Documented binary download and extraction process
40
+ - Added PATH setup instructions for macOS users
41
+
42
+ ### 🔧 Maintenance
43
+ - **Refactored Release Process**
44
+ - Extracted `showReleaseInfo()` function for code reuse
45
+ - Added critical ordering warning to `/release` command
46
+ - Documented README update before npm publish requirement
47
+
48
+ ## 🎯 User Impact
49
+
50
+ **For macOS Users**: You can now use **completely free offline Piper TTS** on your Mac! No more ElevenLabs API key required. No more Python/pipx dependency hell. Just run `.claude/hooks/piper-installer.sh` and you're done. Works on both Intel Macs and Apple Silicon (M1/M2/M3).
51
+
52
+ **For All Users**: The updated documentation now correctly reflects that Piper TTS works on **ALL platforms**: Windows, macOS, Linux, and WSL.
53
+
54
+ **Installation is Simple**:
55
+ ```bash
56
+ # Run AgentVibes installer
57
+ npx agentvibes install --yes
58
+
59
+ # Or directly run Piper installer
60
+ .claude/hooks/piper-installer.sh
61
+
62
+ # Add to PATH (if needed)
63
+ echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
64
+ source ~/.zshrc
65
+ ```
66
+
67
+ **Architecture Support**:
68
+ - ✅ Apple Silicon (M1/M2/M3): Downloads `piper_macos_aarch64.tar.gz`
69
+ - ✅ Intel Mac (x86_64): Downloads `piper_macos_x64.tar.gz`
70
+
71
+ ## 📦 Files Changed
72
+
73
+ ### Modified
74
+ - `.claude/hooks/piper-installer.sh` - Added macOS binary installation support
75
+ - `.github/workflows/test-macos.yml` - Added comprehensive Piper installation tests
76
+ - `docs/providers.md` - Updated macOS support documentation
77
+ - `.claude/commands/release.md` - Added README update ordering warning
78
+ - `src/installer.js` - Refactored release info display
79
+
80
+ ### Statistics
81
+ - 5 files changed
82
+ - 241 insertions(+)
83
+ - 130 deletions(-)
84
+
85
+ ## 🔄 Breaking Changes
86
+
87
+ None. This release is fully backward compatible. Linux/WSL users continue using pipx installation, macOS users now get binary installation.
88
+
89
+ ## 🚀 Upgrade Notes
90
+
91
+ Simply run:
92
+ ```bash
93
+ npx agentvibes@latest install --yes
94
+ ```
95
+
96
+ Existing configurations are preserved. If you're on macOS and previously couldn't install Piper, it will work now!
97
+
98
+ ## 🙏 Credits
99
+
100
+ Special thanks to:
101
+ - **BMadCode** for reporting the macOS installation issue
102
+ - **rhasspy/piper** project for providing macOS binaries
103
+ - Community members who suggested the `--no-deps` workaround
104
+
105
+ ## 📊 Testing
106
+
107
+ This release includes extensive CI testing:
108
+ - ✅ 9 macOS configurations (macOS 13/14/15 × Node 18/20/22)
109
+ - ✅ Both architecture types (Intel and Apple Silicon)
110
+ - ✅ Binary download and extraction validation
111
+ - ✅ Piper execution tests
112
+ - ✅ Fallback to pipx testing (confirms original issue)
113
+
114
+ ---
115
+
116
+ **Full Changelog**: https://github.com/paulpreibisch/AgentVibes/compare/v2.3.1...v2.4.0
117
+
118
+ ---
2
119
 
3
120
  ## v2.3.0 - Command Visibility Management & Maintenance (2025-11-06)
4
121
 
@@ -103,4 +220,122 @@ This patch release improves the user experience during installation and updates
103
220
 
104
221
  ### 🤖 AI Summary
105
222
 
106
- Major enhancements to multi-provider support, BMAD integration, and MCP server configuration! This release makes AgentVibes smarter about which TTS provider you're using and adds full support for BMAD-METHOD v6-alpha with complete backward compatibility to v4.
223
+ Major enhancements to multi-provider support, BMAD integration, and MCP server configuration! This release makes AgentVibes smarter about which TTS provider you're using and adds full support for BMAD-METHOD v6-alpha with complete backward compatibility to v4.# Release v2.4.0 - macOS Piper TTS Support (2025-01-15)
224
+
225
+ ## 🤖 AI Summary
226
+
227
+ This minor release brings **full Piper TTS support to macOS** via precompiled binaries, eliminating the Python dependency conflicts that previously prevented macOS users from using free offline TTS. Mac users can now install Piper TTS with zero Python dependencies - just download and run! The installer automatically detects your Mac architecture (Intel or Apple Silicon) and downloads the appropriate binary. This release also includes comprehensive GitHub Actions CI testing to validate Piper installation across all macOS versions (13, 14, 15) and both architectures.
228
+
229
+ ## 📋 Changes
230
+
231
+ ### ✨ New Features
232
+ - **macOS Piper TTS Support via Precompiled Binaries**
233
+ - Downloads official Piper binaries from rhasspy/piper releases
234
+ - Automatic architecture detection (Apple Silicon M1/M2/M3 vs Intel)
235
+ - Installs to `~/.local/bin/piper` with no Python dependencies
236
+ - Zero pipx or pip conflicts - pure binary installation
237
+ - Supports both `arm64` (Apple Silicon) and `x86_64` (Intel) architectures
238
+
239
+ - **Comprehensive macOS CI Testing**
240
+ - Tests Piper binary installation on macOS 13, 14, and 15
241
+ - Tests user-reported `--no-deps` pip workaround method
242
+ - Validates both Intel and Apple Silicon architectures
243
+ - Confirms standard pipx failure and binary success
244
+ - Runs across 9 macOS configurations (3 OS × 3 Node versions)
245
+
246
+ ### 🐛 Bug Fixes
247
+ - **Fixed macOS Piper Installation Failures**
248
+ - Resolved pipx dependency conflict issues reported by users
249
+ - Removed incorrect platform restriction blocking macOS
250
+ - Fixed "Piper TTS is only supported on WSL and Linux" error
251
+
252
+ ### 📚 Documentation
253
+ - **Updated Provider Documentation**
254
+ - Corrected platform support matrix to include macOS
255
+ - Added macOS-specific installation requirements
256
+ - Clarified binary vs pipx installation methods
257
+ - Updated "Choose Piper TTS if" section with macOS callout
258
+
259
+ - **Installer Script Documentation**
260
+ - Added platform detection logic documentation
261
+ - Documented binary download and extraction process
262
+ - Added PATH setup instructions for macOS users
263
+
264
+ ### 🔧 Maintenance
265
+ - **Refactored Release Process**
266
+ - Extracted `showReleaseInfo()` function for code reuse
267
+ - Added critical ordering warning to `/release` command
268
+ - Documented README update before npm publish requirement
269
+
270
+ ## 🎯 User Impact
271
+
272
+ **For macOS Users**: You can now use **completely free offline Piper TTS** on your Mac! No more ElevenLabs API key required. No more Python/pipx dependency hell. Just run `.claude/hooks/piper-installer.sh` and you're done. Works on both Intel Macs and Apple Silicon (M1/M2/M3).
273
+
274
+ **For All Users**: The updated documentation now correctly reflects that Piper TTS works on **ALL platforms**: Windows, macOS, Linux, and WSL.
275
+
276
+ **Installation is Simple**:
277
+ ```bash
278
+ # Run AgentVibes installer
279
+ npx agentvibes install --yes
280
+
281
+ # Or directly run Piper installer
282
+ .claude/hooks/piper-installer.sh
283
+
284
+ # Add to PATH (if needed)
285
+ echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
286
+ source ~/.zshrc
287
+ ```
288
+
289
+ **Architecture Support**:
290
+ - ✅ Apple Silicon (M1/M2/M3): Downloads `piper_macos_aarch64.tar.gz`
291
+ - ✅ Intel Mac (x86_64): Downloads `piper_macos_x64.tar.gz`
292
+
293
+ ## 📦 Files Changed
294
+
295
+ ### Modified
296
+ - `.claude/hooks/piper-installer.sh` - Added macOS binary installation support
297
+ - `.github/workflows/test-macos.yml` - Added comprehensive Piper installation tests
298
+ - `docs/providers.md` - Updated macOS support documentation
299
+ - `.claude/commands/release.md` - Added README update ordering warning
300
+ - `src/installer.js` - Refactored release info display
301
+
302
+ ### Statistics
303
+ - 5 files changed
304
+ - 241 insertions(+)
305
+ - 130 deletions(-)
306
+
307
+ ## 🔄 Breaking Changes
308
+
309
+ None. This release is fully backward compatible. Linux/WSL users continue using pipx installation, macOS users now get binary installation.
310
+
311
+ ## 🚀 Upgrade Notes
312
+
313
+ Simply run:
314
+ ```bash
315
+ npx agentvibes@latest install --yes
316
+ ```
317
+
318
+ Existing configurations are preserved. If you're on macOS and previously couldn't install Piper, it will work now!
319
+
320
+ ## 🙏 Credits
321
+
322
+ Special thanks to:
323
+ - **BMadCode** for reporting the macOS installation issue
324
+ - **rhasspy/piper** project for providing macOS binaries
325
+ - Community members who suggested the `--no-deps` workaround
326
+
327
+ ## 📊 Testing
328
+
329
+ This release includes extensive CI testing:
330
+ - ✅ 9 macOS configurations (macOS 13/14/15 × Node 18/20/22)
331
+ - ✅ Both architecture types (Intel and Apple Silicon)
332
+ - ✅ Binary download and extraction validation
333
+ - ✅ Piper execution tests
334
+ - ✅ Fallback to pipx testing (confirms original issue)
335
+
336
+ ---
337
+
338
+ **Full Changelog**: https://github.com/paulpreibisch/AgentVibes/compare/v2.3.1...v2.4.0
339
+
340
+ ---
341
+
package/docs/providers.md CHANGED
@@ -27,14 +27,15 @@ AgentVibes v2.0 introduces **multi-provider TTS support** - choose between premi
27
27
  - 50+ neural voices, completely free
28
28
  - 18 languages supported
29
29
  - No API key required
30
- - Works offline (perfect for Windows, WSL, and Linux)
30
+ - Works offline (perfect for all platforms!)
31
31
  - Privacy-focused local processing
32
- - Cross-platform support (Windows, macOS, Linux)
32
+ - Cross-platform support (Windows, macOS, Linux, WSL)
33
33
 
34
34
  **Requirements:**
35
- - None! Works out of the box
35
+ - **macOS**: Precompiled binaries (no Python dependencies!)
36
+ - **Linux/WSL**: Python pipx (auto-installed)
37
+ - **Windows**: Native support - no additional setup
36
38
  - Automatic voice download on first use
37
- - Native Windows support - no additional setup needed
38
39
 
39
40
  ## Provider Commands
40
41
 
@@ -100,12 +101,13 @@ If ElevenLabs API key is missing, AgentVibes automatically falls back to Piper T
100
101
  - You have a budget for API costs
101
102
 
102
103
  **Choose Piper TTS if:**
103
- - You want completely free TTS (especially great for Windows!)
104
+ - You want completely free TTS (works on ALL platforms!)
104
105
  - You prefer offline/local processing
105
- - You're on Windows, WSL, or Linux
106
+ - You're on macOS, Windows, WSL, or Linux
106
107
  - You value privacy and data control
107
108
  - You're in development/testing phase
108
109
  - You don't want to manage API keys or billing
110
+ - **macOS users**: Piper now works via precompiled binaries!
109
111
 
110
112
  **Pro Tip:** Use Piper for development and ElevenLabs for production/demos!
111
113
 
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.3.0",
4
+ "version": "2.4.0",
5
5
  "description": "Now your AI Agents can finally talk back! Professional TTS voice for Claude Code and Claude Desktop (via MCP) with multi-provider support.",
6
6
  "homepage": "https://agentvibes.org",
7
7
  "keywords": [
package/src/installer.js CHANGED
@@ -104,6 +104,53 @@ function showWelcome() {
104
104
  );
105
105
  }
106
106
 
107
+ /**
108
+ * Display latest release information box
109
+ * Shown during install and update commands
110
+ */
111
+ function showReleaseInfo() {
112
+ console.log(
113
+ boxen(
114
+ chalk.white.bold('═══════════════════════════════════════════════════════════════\n') +
115
+ chalk.cyan.bold(' 📦 AgentVibes v2.4.0 - macOS Piper TTS Support\n') +
116
+ chalk.white.bold('═══════════════════════════════════════════════════════════════\n\n') +
117
+ chalk.green.bold('✨ WHAT\'S NEW:\n\n') +
118
+ chalk.cyan('🍎 macOS Piper TTS Support\n') +
119
+ chalk.gray(' • Install via precompiled binaries (no Python/pipx needed!)\n') +
120
+ chalk.gray(' • Architecture auto-detection (Apple Silicon M1/M2/M3 & Intel)\n') +
121
+ chalk.gray(' • Completely free offline TTS for Mac users\n') +
122
+ chalk.gray(' • Zero dependency conflicts - just download and run\n\n') +
123
+ chalk.cyan('🐛 Bug Fixes\n') +
124
+ chalk.gray(' • Fixed macOS Piper installation failures\n') +
125
+ chalk.gray(' • Resolved pipx dependency conflicts on macOS\n') +
126
+ chalk.gray(' • Removed incorrect platform restrictions\n\n') +
127
+ chalk.cyan('✅ Comprehensive Testing\n') +
128
+ chalk.gray(' • CI tests across 9 macOS configurations\n') +
129
+ chalk.gray(' • Validated on macOS 13, 14, and 15\n') +
130
+ chalk.gray(' • Tested on both Intel and Apple Silicon\n\n') +
131
+ chalk.white.bold('═══════════════════════════════════════════════════════════════\n\n') +
132
+ chalk.green.bold('🚀 TRY LANGUAGE LEARNING MODE:\n\n') +
133
+ chalk.cyan(' /agent-vibes:language english\n') +
134
+ chalk.cyan(' /agent-vibes:target spanish\n') +
135
+ chalk.cyan(' /agent-vibes:learn\n\n') +
136
+ chalk.white(' Now while coding, you can also learn a second language\n') +
137
+ chalk.white(' such as Spanish, Italian, French, Mandarin, you name it! 🌍\n\n') +
138
+ chalk.white.bold('═══════════════════════════════════════════════════════════════\n\n') +
139
+ chalk.gray('📖 Full Release Notes: RELEASE_NOTES.md\n') +
140
+ chalk.gray('🌐 Website: https://agentvibes.org\n') +
141
+ chalk.gray('📦 Repository: https://github.com/paulpreibisch/AgentVibes\n\n') +
142
+ chalk.gray('Co-created by Paul Preibisch with Claude AI\n') +
143
+ chalk.gray('Copyright © 2025 Paul Preibisch | Apache-2.0 License'),
144
+ {
145
+ padding: 1,
146
+ margin: 1,
147
+ borderStyle: 'round',
148
+ borderColor: 'cyan',
149
+ }
150
+ )
151
+ );
152
+ }
153
+
107
154
  /**
108
155
  * Generate BMAD activation instructions based on version
109
156
  * @param {number} version - BMAD version (4 or 6)
@@ -186,41 +233,7 @@ async function install(options = {}) {
186
233
  console.log(chalk.gray(` Package version: ${VERSION}`));
187
234
 
188
235
  // Show AI summary of latest release
189
- console.log(
190
- boxen(
191
- chalk.white.bold('═══════════════════════════════════════════════════════════════\n') +
192
- chalk.cyan.bold(' 📦 AgentVibes v2.3.0 - Command Visibility Management\n') +
193
- chalk.white.bold('═══════════════════════════════════════════════════════════════\n\n') +
194
- chalk.green.bold('✨ WHAT\'S NEW:\n\n') +
195
- chalk.cyan('👁️ Command Visibility Management\n') +
196
- chalk.gray(' • Use /agent-vibes:hide to hide all slash commands from palette\n') +
197
- chalk.gray(' • MCP functionality remains fully operational when hidden\n') +
198
- chalk.gray(' • Perfect for users who prefer MCP tools over slash commands\n') +
199
- chalk.gray(' • Use /agent-vibes:show to restore commands anytime\n\n') +
200
- chalk.cyan('🔧 Maintenance Improvements\n') +
201
- chalk.gray(' • Enhanced .gitignore for runtime/user-generated files\n') +
202
- chalk.gray(' • Cleaner version control and repository management\n\n') +
203
- chalk.white.bold('═══════════════════════════════════════════════════════════════\n\n') +
204
- chalk.green.bold('🚀 TRY LANGUAGE LEARNING MODE:\n\n') +
205
- chalk.cyan(' /agent-vibes:language english\n') +
206
- chalk.cyan(' /agent-vibes:target spanish\n') +
207
- chalk.cyan(' /agent-vibes:learn\n\n') +
208
- chalk.white(' Now while coding, you can also learn a second language\n') +
209
- chalk.white(' such as Spanish, Italian, French, Mandarin, you name it! 🌍\n\n') +
210
- chalk.white.bold('═══════════════════════════════════════════════════════════════\n\n') +
211
- chalk.gray('📖 Full Release Notes: RELEASE_NOTES.md\n') +
212
- chalk.gray('🌐 Website: https://agentvibes.org\n') +
213
- chalk.gray('📦 Repository: https://github.com/paulpreibisch/AgentVibes\n\n') +
214
- chalk.gray('Co-created by Paul Preibisch with Claude AI\n') +
215
- chalk.gray('Copyright © 2025 Paul Preibisch | Apache-2.0 License'),
216
- {
217
- padding: 1,
218
- margin: 1,
219
- borderStyle: 'round',
220
- borderColor: 'cyan',
221
- }
222
- )
223
- );
236
+ showReleaseInfo();
224
237
 
225
238
  // Provider selection prompt
226
239
  let selectedProvider = 'piper';
@@ -1115,41 +1128,7 @@ program
1115
1128
  console.log(chalk.gray(` Package version: ${version}`));
1116
1129
 
1117
1130
  // Show AI summary of latest release
1118
- console.log(
1119
- boxen(
1120
- chalk.white.bold('═══════════════════════════════════════════════════════════════\n') +
1121
- chalk.cyan.bold(' 📦 AgentVibes v2.3.0 - Command Visibility Management\n') +
1122
- chalk.white.bold('═══════════════════════════════════════════════════════════════\n\n') +
1123
- chalk.green.bold('✨ WHAT\'S NEW:\n\n') +
1124
- chalk.cyan('👁️ Command Visibility Management\n') +
1125
- chalk.gray(' • Use /agent-vibes:hide to hide all slash commands from palette\n') +
1126
- chalk.gray(' • MCP functionality remains fully operational when hidden\n') +
1127
- chalk.gray(' • Perfect for users who prefer MCP tools over slash commands\n') +
1128
- chalk.gray(' • Use /agent-vibes:show to restore commands anytime\n\n') +
1129
- chalk.cyan('🔧 Maintenance Improvements\n') +
1130
- chalk.gray(' • Enhanced .gitignore for runtime/user-generated files\n') +
1131
- chalk.gray(' • Cleaner version control and repository management\n\n') +
1132
- chalk.white.bold('═══════════════════════════════════════════════════════════════\n\n') +
1133
- chalk.green.bold('🚀 TRY LANGUAGE LEARNING MODE:\n\n') +
1134
- chalk.cyan(' /agent-vibes:language english\n') +
1135
- chalk.cyan(' /agent-vibes:target spanish\n') +
1136
- chalk.cyan(' /agent-vibes:learn\n\n') +
1137
- chalk.white(' Now while coding, you can also learn a second language\n') +
1138
- chalk.white(' such as Spanish, Italian, French, Mandarin, you name it! 🌍\n\n') +
1139
- chalk.white.bold('═══════════════════════════════════════════════════════════════\n\n') +
1140
- chalk.gray('📖 Full Release Notes: RELEASE_NOTES.md\n') +
1141
- chalk.gray('🌐 Website: https://agentvibes.org\n') +
1142
- chalk.gray('📦 Repository: https://github.com/paulpreibisch/AgentVibes\n\n') +
1143
- chalk.gray('Co-created by Paul Preibisch with Claude AI\n') +
1144
- chalk.gray('Copyright © 2025 Paul Preibisch | Apache-2.0 License'),
1145
- {
1146
- padding: 1,
1147
- margin: 1,
1148
- borderStyle: 'round',
1149
- borderColor: 'cyan',
1150
- }
1151
- )
1152
- );
1131
+ showReleaseInfo();
1153
1132
 
1154
1133
  // Check if already installed
1155
1134
  const commandsDir = path.join(targetDir, '.claude', 'commands', 'agent-vibes');