agentvibes 3.5.9 → 4.0.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 (71) hide show
  1. package/.agentvibes/bmad/bmad-voices-enabled.flag +0 -0
  2. package/.agentvibes/bmad/bmad-voices.md +69 -0
  3. package/.claude/config/audio-effects.cfg +1 -1
  4. package/.claude/config/background-music-position.txt +1 -27
  5. package/.claude/github-star-reminder.txt +1 -1
  6. package/.claude/hooks/audio-processor.sh +32 -17
  7. package/.claude/hooks/bmad-speak-enhanced.sh +5 -5
  8. package/.claude/hooks/bmad-speak.sh +4 -4
  9. package/.claude/hooks/bmad-voice-manager.sh +8 -8
  10. package/.claude/hooks/clawdbot-receiver-SECURE.sh +23 -25
  11. package/.claude/hooks/clawdbot-receiver.sh +28 -4
  12. package/.claude/hooks/language-manager.sh +1 -1
  13. package/.claude/hooks/path-resolver.sh +60 -0
  14. package/.claude/hooks/play-tts-agentvibes-receiver-for-voiceless-connections.sh +90 -0
  15. package/.claude/hooks/play-tts-piper.sh +82 -24
  16. package/.claude/hooks/play-tts-ssh-remote.sh +13 -15
  17. package/.claude/hooks/play-tts.sh +16 -5
  18. package/.claude/hooks/session-start-tts.sh +26 -56
  19. package/.claude/hooks/soprano-gradio-synth.py +1 -1
  20. package/.claude/hooks/verbosity-manager.sh +10 -4
  21. package/.claude/settings.json +1 -1
  22. package/CLAUDE.md +129 -104
  23. package/README.md +418 -10
  24. package/RELEASE_NOTES.md +60 -1036
  25. package/bin/agentvibes-voice-browser.js +1827 -0
  26. package/bin/agentvibes.js +100 -0
  27. package/mcp-server/server.py +67 -3
  28. package/package.json +11 -2
  29. package/src/console/app.js +806 -0
  30. package/src/console/audio-env.js +123 -0
  31. package/src/console/brand-colors.js +13 -0
  32. package/src/console/footer-config.js +42 -0
  33. package/src/console/modals/.gitkeep +0 -0
  34. package/src/console/modals/modal-overlay.js +247 -0
  35. package/src/console/navigation.js +60 -0
  36. package/src/console/tabs/.gitkeep +0 -0
  37. package/src/console/tabs/agents-tab.js +369 -0
  38. package/src/console/tabs/help-tab.js +261 -0
  39. package/src/console/tabs/install-tab.js +990 -0
  40. package/src/console/tabs/music-tab.js +997 -0
  41. package/src/console/tabs/placeholder-tab.js +45 -0
  42. package/src/console/tabs/readme-tab.js +267 -0
  43. package/src/console/tabs/settings-tab.js +3949 -0
  44. package/src/console/tabs/voices-tab.js +1574 -0
  45. package/src/installer/music-file-input.js +304 -0
  46. package/src/installer.js +1353 -676
  47. package/src/services/.gitkeep +0 -0
  48. package/src/services/agent-voice-store.js +163 -0
  49. package/src/services/config-service.js +240 -0
  50. package/src/services/navigation-service.js +123 -0
  51. package/src/services/provider-service.js +132 -0
  52. package/src/services/verbosity-service.js +157 -0
  53. package/src/utils/audio-duration-validator.js +298 -0
  54. package/src/utils/audio-format-validator.js +277 -0
  55. package/src/utils/dependency-checker.js +3 -3
  56. package/src/utils/file-ownership-verifier.js +358 -0
  57. package/src/utils/music-file-validator.js +275 -0
  58. package/src/utils/preview-list-prompt.js +136 -0
  59. package/src/utils/provider-validator.js +144 -132
  60. package/src/utils/secure-music-storage.js +412 -0
  61. package/templates/agentvibes-receiver.sh +11 -7
  62. package/voice-assignments.json +8245 -0
  63. package/.claude/config/background-music-volume.txt +0 -1
  64. package/.claude/config/background-music.cfg +0 -1
  65. package/.claude/config/background-music.txt +0 -1
  66. package/.claude/config/tts-speech-rate.txt +0 -1
  67. package/.claude/config/tts-verbosity.txt +0 -1
  68. package/.claude/hooks/bmad-party-manager.sh +0 -225
  69. package/.claude/hooks/stop.sh +0 -38
  70. package/.claude/piper-voices-dir.txt +0 -1
  71. package/.mcp.json +0 -34
@@ -1 +0,0 @@
1
- 0.30
@@ -1 +0,0 @@
1
- enabled
@@ -1 +0,0 @@
1
- enabled
@@ -1 +0,0 @@
1
- 1.3
@@ -1 +0,0 @@
1
- high
@@ -1,225 +0,0 @@
1
- #!/usr/bin/env bash
2
- #
3
- # File: .claude/hooks/bmad-party-manager.sh
4
- #
5
- # AgentVibes - Finally, your AI Agents can Talk Back! Text-to-Speech WITH personality for AI Assistants!
6
- # Website: https://agentvibes.org
7
- # Repository: https://github.com/paulpreibisch/AgentVibes
8
- #
9
- # Co-created by Paul Preibisch with Claude AI
10
- # Copyright (c) 2025 Paul Preibisch
11
- #
12
- # Licensed under the Apache License, Version 2.0 (the "License");
13
- # you may not use this file except in compliance with the License.
14
- # You may obtain a copy of the License at
15
- #
16
- # http://www.apache.org/licenses/LICENSE-2.0
17
- #
18
- # Unless required by applicable law or agreed to in writing, software
19
- # distributed under the License is distributed on an "AS IS" BASIS,
20
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21
- # See the License for the specific language governing permissions and
22
- # limitations under the License.
23
- #
24
- # DISCLAIMER: This software is provided "AS IS", WITHOUT WARRANTY OF ANY KIND,
25
- # express or implied, including but not limited to the warranties of
26
- # merchantability, fitness for a particular purpose and noninfringement.
27
- # In no event shall the authors or copyright holders be liable for any claim,
28
- # damages or other liability, whether in an action of contract, tort or
29
- # otherwise, arising from, out of or in connection with the software or the
30
- # use or other dealings in the software.
31
- #
32
- # ---
33
- #
34
- # @fileoverview BMAD Party Mode Voice Integration Manager
35
- # @context Controls auto-enable/disable of multi-agent voice switching during BMAD party mode
36
- # @architecture Opt-out flag management, auto-detection, status reporting
37
- # @dependencies .bmad/_cfg/agent-manifest.csv, bmad-voices-enabled.flag, user-prompt-output.sh
38
- # @entrypoints /agent-vibes:bmad-party slash command
39
- # @patterns Auto-enable with opt-out, graceful degradation, feature detection
40
- # @related user-prompt-output.sh, bmad-voice-manager.sh, Issue #33
41
-
42
- # Fix locale warnings
43
- export LC_ALL=C
44
-
45
- PLUGIN_DIR=".claude/plugins"
46
- DISABLE_FLAG="$PLUGIN_DIR/bmad-party-mode-disabled.flag"
47
- BMAD_VOICES_FLAG="$PLUGIN_DIR/bmad-voices-enabled.flag"
48
- BMAD_MANIFEST=".bmad/_cfg/agent-manifest.csv"
49
-
50
- # Colors
51
- GREEN='\033[0;32m'
52
- YELLOW='\033[1;33m'
53
- RED='\033[0;31m'
54
- CYAN='\033[0;36m'
55
- GRAY='\033[0;90m'
56
- NC='\033[0m' # No Color
57
-
58
- #
59
- # @function is_bmad_installed
60
- # @context Check if BMAD v6 is installed
61
- # @returns 0=installed, 1=not installed
62
- #
63
- is_bmad_installed() {
64
- [[ -f "$BMAD_MANIFEST" ]]
65
- }
66
-
67
- #
68
- # @function is_bmad_voices_enabled
69
- # @context Check if BMAD voice plugin is enabled
70
- # @returns 0=enabled, 1=disabled
71
- #
72
- is_bmad_voices_enabled() {
73
- [[ -f "$BMAD_VOICES_FLAG" ]]
74
- }
75
-
76
- #
77
- # @function is_party_mode_enabled
78
- # @context Check if party mode voice integration is enabled
79
- # @returns 0=enabled, 1=disabled
80
- #
81
- is_party_mode_enabled() {
82
- # Disabled if opt-out flag exists
83
- [[ -f "$DISABLE_FLAG" ]] && return 1
84
-
85
- # Enabled if BMAD + voice plugin active
86
- is_bmad_installed && is_bmad_voices_enabled
87
- }
88
-
89
- #
90
- # @function show_status
91
- # @context Display current party mode voice integration status
92
- #
93
- show_status() {
94
- echo -e "${CYAN}🎭 BMAD Party Mode Voice Integration${NC}"
95
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
96
- echo ""
97
-
98
- # Check BMAD installation
99
- if ! is_bmad_installed; then
100
- echo -e "${RED}❌ BMAD not installed${NC}"
101
- echo -e "${GRAY} Party mode voice integration requires BMAD v6${NC}"
102
- echo -e "${GRAY} Install: https://github.com/bmad-method/bmad${NC}"
103
- echo ""
104
- return 1
105
- fi
106
-
107
- echo -e "${GREEN}✅ BMAD v6 detected${NC}"
108
-
109
- # Check voice plugin
110
- if ! is_bmad_voices_enabled; then
111
- echo -e "${RED}❌ BMAD voice plugin disabled${NC}"
112
- echo -e "${GRAY} Enable: /agent-vibes:bmad enable${NC}"
113
- echo ""
114
- return 1
115
- fi
116
-
117
- echo -e "${GREEN}✅ BMAD voice plugin enabled${NC}"
118
-
119
- # Check party mode status
120
- if is_party_mode_enabled; then
121
- echo -e "${GREEN}✅ Party mode voices: ENABLED${NC}"
122
- echo ""
123
- echo -e "${CYAN}How it works:${NC}"
124
- echo " When you run /bmad:core:workflows:party-mode,"
125
- echo " each agent speaks with their unique voice:"
126
- echo ""
127
- echo " 🏗️ Winston (Architect) → Michael"
128
- echo " 📋 John (PM) → Jessica Anne Bogart"
129
- echo " 💻 Amelia (Dev) → Matthew Schmitz"
130
- echo " 📊 Mary (Analyst) → kristin"
131
- echo " ... and more!"
132
- echo ""
133
- echo -e "${GRAY}Disable with: /agent-vibes:bmad-party disable${NC}"
134
- else
135
- echo -e "${YELLOW}⚠️ Party mode voices: DISABLED (opt-out active)${NC}"
136
- echo ""
137
- echo -e "${GRAY}Enable with: /agent-vibes:bmad-party enable${NC}"
138
- fi
139
-
140
- echo ""
141
- }
142
-
143
- #
144
- # @function enable_party_mode
145
- # @context Enable party mode voice integration (remove opt-out flag)
146
- #
147
- enable_party_mode() {
148
- # Verify prerequisites
149
- if ! is_bmad_installed; then
150
- echo -e "${RED}❌ Cannot enable: BMAD not installed${NC}"
151
- echo -e "${GRAY} Install BMAD v6 first${NC}"
152
- return 1
153
- fi
154
-
155
- if ! is_bmad_voices_enabled; then
156
- echo -e "${RED}❌ Cannot enable: BMAD voice plugin disabled${NC}"
157
- echo -e "${GRAY} Enable with: /agent-vibes:bmad enable${NC}"
158
- return 1
159
- fi
160
-
161
- # Remove opt-out flag if it exists
162
- if [[ -f "$DISABLE_FLAG" ]]; then
163
- rm -f "$DISABLE_FLAG"
164
- echo -e "${GREEN}✅ Party mode voices enabled${NC}"
165
- echo ""
166
- echo -e "${CYAN}🎭 Multi-agent voice switching activated!${NC}"
167
- echo " Run /bmad:core:workflows:party-mode to hear agents speak"
168
- else
169
- echo -e "${GREEN}✅ Party mode voices already enabled${NC}"
170
- echo ""
171
- echo -e "${GRAY}(Auto-enabled when BMAD detected)${NC}"
172
- fi
173
-
174
- echo ""
175
- }
176
-
177
- #
178
- # @function disable_party_mode
179
- # @context Disable party mode voice integration (create opt-out flag)
180
- #
181
- disable_party_mode() {
182
- mkdir -p "$PLUGIN_DIR"
183
-
184
- if [[ -f "$DISABLE_FLAG" ]]; then
185
- echo -e "${YELLOW}⚠️ Party mode voices already disabled${NC}"
186
- return 0
187
- fi
188
-
189
- # Create opt-out flag
190
- touch "$DISABLE_FLAG"
191
-
192
- echo -e "${GREEN}✅ Party mode voices disabled${NC}"
193
- echo ""
194
- echo -e "${GRAY}Party mode will continue to work, but agents won't speak${NC}"
195
- echo -e "${GRAY}Enable again with: /agent-vibes:bmad-party enable${NC}"
196
- echo ""
197
- }
198
-
199
- # Main command dispatcher
200
- case "${1:-status}" in
201
- enable)
202
- enable_party_mode
203
- ;;
204
- disable)
205
- disable_party_mode
206
- ;;
207
- status)
208
- show_status
209
- ;;
210
- *)
211
- echo -e "${CYAN}AgentVibes BMAD Party Mode Manager${NC}"
212
- echo ""
213
- echo "Usage: bmad-party-manager.sh {enable|disable|status}"
214
- echo ""
215
- echo "Commands:"
216
- echo " enable Enable party mode voice integration"
217
- echo " disable Disable party mode voice integration (opt-out)"
218
- echo " status Show current status and configuration"
219
- echo ""
220
- echo "Party Mode Voice Integration:"
221
- echo " • Auto-enabled when BMAD v6 detected"
222
- echo " • Each agent speaks with unique voice during party mode"
223
- echo " • Opt-out available via disable command"
224
- ;;
225
- esac
@@ -1,38 +0,0 @@
1
- #!/usr/bin/env bash
2
- #
3
- # File: .claude/hooks/stop.sh
4
- #
5
- # AgentVibes Stop Hook - Wrapper that delegates to .agentvibes/
6
- # This hook runs in LITE mode to extract and speak "Audio Summary:" markers
7
- #
8
-
9
- # Fix locale warnings
10
- export LC_ALL=C
11
-
12
- # Get script directory
13
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
14
- PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
15
-
16
- # Path to mode configuration
17
- MODE_FILE="$PROJECT_ROOT/.agentvibes/config/mode.txt"
18
-
19
- # Check if AgentVibes is installed
20
- AGENTVIBES_HOOKS="$PROJECT_ROOT/.agentvibes/hooks"
21
- if [[ ! -d "$AGENTVIBES_HOOKS" ]]; then
22
- # AgentVibes not installed, exit silently
23
- exit 0
24
- fi
25
-
26
- # Read current mode (default to full if not set)
27
- CURRENT_MODE="full"
28
- if [[ -f "$MODE_FILE" ]]; then
29
- CURRENT_MODE=$(cat "$MODE_FILE" 2>/dev/null | tr -d '[:space:]')
30
- fi
31
-
32
- # Only run stop hook in LITE mode
33
- # (Full mode uses tool calls for TTS, not stop hooks)
34
- if [[ "$CURRENT_MODE" == "lite" ]]; then
35
- if [[ -f "$AGENTVIBES_HOOKS/stop-lite.sh" ]]; then
36
- bash "$AGENTVIBES_HOOKS/stop-lite.sh" "$@"
37
- fi
38
- fi
@@ -1 +0,0 @@
1
- /home/fire/.claude/piper-voices
package/.mcp.json DELETED
@@ -1,34 +0,0 @@
1
- {
2
- "mcpServers": {
3
- "sonarqube": {
4
- "command": "docker",
5
- "args": [
6
- "run",
7
- "-i",
8
- "--name",
9
- "sonarqube-mcp-server-agentvibes",
10
- "--rm",
11
- "--dns",
12
- "8.8.8.8",
13
- "--dns",
14
- "8.8.4.4",
15
- "-e",
16
- "SONARQUBE_TOKEN",
17
- "-e",
18
- "SONARQUBE_ORG",
19
- "-e",
20
- "STORAGE_PATH",
21
- "mcp/sonarqube"
22
- ],
23
- "env": {
24
- "SONARQUBE_TOKEN": "${SONARQUBE_TOKEN}",
25
- "SONARQUBE_ORG": "${SONARQUBE_ORG}",
26
- "STORAGE_PATH": "${STORAGE_PATH}"
27
- }
28
- },
29
- "pieces": {
30
- "type": "sse",
31
- "url": "http://localhost:39300/model_context_protocol/2024-11-05/sse"
32
- }
33
- }
34
- }