agentvibes 3.3.0-alpha.1 → 3.3.0-alpha.6
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/.claude/commands/agent-vibes/cleanup.md +18 -0
- package/.claude/commands/agent-vibes/commands.json +4 -0
- package/.claude/config/background-music-position.txt +26 -10
- package/.claude/config/background-music-volume.txt +1 -1
- package/.claude/github-star-reminder.txt +1 -1
- package/.claude/hooks/clawdbot-receiver.sh +68 -0
- package/.claude/hooks/cleanup-cache.sh +106 -0
- package/.claude/hooks/play-tts-ssh-remote.sh +15 -7
- package/.claude/hooks/termux-installer.sh +37 -0
- package/.claude/piper-voices-dir.txt +1 -1
- package/.mcp.json +28 -6
- package/README.md +224 -23
- package/package.json +11 -8
- package/src/installer.js +396 -75
- package/templates/agentvibes-receiver.sh +33 -1
- package/.claude/commands/prepare-release.md +0 -98
- package/.claude/commands/release.md +0 -341
- package/.claude/config/background-music-enabled.txt +0 -1
- package/README.md.backup +0 -567
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Clean up TTS cache files to free up disk space
|
|
3
|
+
scope: user
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Execute the AgentVibes cache cleanup script using the Bash tool:
|
|
7
|
+
|
|
8
|
+
```bash
|
|
9
|
+
.claude/hooks/cleanup-cache.sh
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
This will:
|
|
13
|
+
- Show current cache size
|
|
14
|
+
- Count all TTS cache files (tts-*.mp3, tts-*.wav, tts-padded-*.mp3, tts-padded-*.wav)
|
|
15
|
+
- Ask for confirmation before deleting
|
|
16
|
+
- Remove all cache files and show space freed
|
|
17
|
+
|
|
18
|
+
**Note:** The TTS cache can grow to 5GB+ over time. This command safely removes temporary audio files while preserving your background music tracks.
|
|
@@ -1,10 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
agent-vibes-dark-chill-step.mp3:49.006169
|
|
2
|
+
Agent Vibes Japanese City Pop v1.mp3:29.392744
|
|
3
|
+
Agent Vibes ChillWave v2.mp3:22.154467
|
|
4
|
+
Agent Vibes Bossa Nova v2.mp3:23.733424
|
|
5
|
+
Agent Vibes Tabla Dream Pop v1.mp3:19.101043
|
|
6
|
+
Agent Vibes Hawaiian slack key guitar v2.mp3:36.381950
|
|
7
|
+
AgentVibes Soft Flamenco.mp3:23.160000
|
|
8
|
+
Agent Vibes Arabic v2.mp3:21.922268
|
|
9
|
+
Agent Vibes Goa Trance v2.mp3:55.953741
|
|
10
|
+
Agent Vibes Ganawa Ambient v2.mp3:39.680205
|
|
11
|
+
Agent Vibes Celtic Harp v1.mp3:42.190476
|
|
12
|
+
Agent Vibes Harpsichord v2.mp3:21.739410
|
|
13
|
+
Agent Vibes Japanese City Pop v1-loop.mp3:13.917551
|
|
14
|
+
Agent Vibes Hawaiian slack key guitar v2-loop.mp3:12.977143
|
|
15
|
+
Agent Vibes Ganawa Ambient v2-loop.mp3:.00000000000000000002815996
|
|
16
|
+
Agent Vibes Tabla Dream Pop v1-loop.mp3:.00000000000000000009067943
|
|
17
|
+
Agent Vibes ChillWave v2-loop.mp3:.00000000000000000007080511
|
|
18
|
+
Agent Vibes Harpsichord v2-loop.mp3:.00000000000000000013140818
|
|
19
|
+
agent_vibes_japanese_city_pop_v1_loop.mp3:6.054512
|
|
20
|
+
agent_vibes_bossa_nova_v2_loop.mp3:5.369524
|
|
21
|
+
agent_vibes_salsa_v2_loop.mp3:9.972790
|
|
22
|
+
agent_vibes_cumbia_v1_loop.mp3:5.717823
|
|
23
|
+
agentvibes_soft_flamenco_loop.mp3:4.998005
|
|
24
|
+
agent_vibes_arabic_v2_loop.mp3:.00000000000000000006132724
|
|
25
|
+
agent_vibes_chillwave_v2_loop.mp3:14.628390
|
|
26
|
+
agent_vibes_bachata_v1_loop.mp3:.00000000000000000005344000
|
|
@@ -1 +1 @@
|
|
|
1
|
-
0.
|
|
1
|
+
0.30
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
20260201
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
#
|
|
3
|
+
# File: .claude/hooks/clawdbot-receiver.sh
|
|
4
|
+
#
|
|
5
|
+
# AgentVibes Clawdbot Receiver - SSH-Remote TTS with Agent Support
|
|
6
|
+
# Receives base64-encoded text, voice, and agent name from remote Clawdbot instances
|
|
7
|
+
# Calls AgentVibes play-tts-enhanced.sh to apply agent-specific audio effects
|
|
8
|
+
#
|
|
9
|
+
# Usage (called via SSH from remote):
|
|
10
|
+
# clawdbot-receiver.sh <base64_text> <voice> <base64_agent_name>
|
|
11
|
+
#
|
|
12
|
+
# Installed at: ~/.termux/agentvibes-play.sh or ~/.agentvibes/play-remote.sh
|
|
13
|
+
#
|
|
14
|
+
# Copyright (c) 2025 Paul Preibisch
|
|
15
|
+
# Licensed under the Apache License, Version 2.0
|
|
16
|
+
#
|
|
17
|
+
|
|
18
|
+
set -euo pipefail
|
|
19
|
+
|
|
20
|
+
ENCODED_TEXT="${1:-}"
|
|
21
|
+
VOICE="${2:-en_US-lessac-medium}"
|
|
22
|
+
ENCODED_AGENT="${3:-}"
|
|
23
|
+
|
|
24
|
+
# Validate inputs
|
|
25
|
+
if [[ -z "$ENCODED_TEXT" ]]; then
|
|
26
|
+
echo "❌ No encoded text provided" >&2
|
|
27
|
+
echo "Usage: $0 <base64_text> <voice> <base64_agent_name>" >&2
|
|
28
|
+
exit 1
|
|
29
|
+
fi
|
|
30
|
+
|
|
31
|
+
# SECURITY: Decode base64 safely
|
|
32
|
+
# This prevents command injection from malicious text
|
|
33
|
+
DECODED_TEXT=$(echo -n "$ENCODED_TEXT" | base64 -d 2>/dev/null) || {
|
|
34
|
+
echo "❌ Failed to decode text (invalid base64)" >&2
|
|
35
|
+
exit 1
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
DECODED_AGENT="default"
|
|
39
|
+
if [[ -n "$ENCODED_AGENT" ]]; then
|
|
40
|
+
DECODED_AGENT=$(echo -n "$ENCODED_AGENT" | base64 -d 2>/dev/null) || DECODED_AGENT="default"
|
|
41
|
+
fi
|
|
42
|
+
|
|
43
|
+
# Find AgentVibes installation
|
|
44
|
+
# Priority: 1. ~/agentvibes, 2. ~/AgentVibes-dev, 3. current directory
|
|
45
|
+
AGENTVIBES_ROOT=""
|
|
46
|
+
if [[ -f "$HOME/agentvibes/.claude/hooks/play-tts-enhanced.sh" ]]; then
|
|
47
|
+
AGENTVIBES_ROOT="$HOME/agentvibes"
|
|
48
|
+
elif [[ -f "$HOME/AgentVibes-dev/.claude/hooks/play-tts-enhanced.sh" ]]; then
|
|
49
|
+
AGENTVIBES_ROOT="$HOME/AgentVibes-dev"
|
|
50
|
+
elif [[ -f ".claude/hooks/play-tts-enhanced.sh" ]]; then
|
|
51
|
+
AGENTVIBES_ROOT="$(pwd)"
|
|
52
|
+
else
|
|
53
|
+
echo "❌ AgentVibes not found" >&2
|
|
54
|
+
echo "💡 Install AgentVibes at ~/agentvibes/ or ~/AgentVibes-dev/" >&2
|
|
55
|
+
exit 1
|
|
56
|
+
fi
|
|
57
|
+
|
|
58
|
+
echo "🎤 Agent: $DECODED_AGENT | Voice: $VOICE" >&2
|
|
59
|
+
|
|
60
|
+
# Call AgentVibes play-tts-enhanced.sh with agent name for audio-effects.cfg lookup
|
|
61
|
+
cd "$AGENTVIBES_ROOT" && \
|
|
62
|
+
bash .claude/hooks/play-tts-enhanced.sh "$DECODED_TEXT" "$DECODED_AGENT" "$VOICE" 2>&1 || {
|
|
63
|
+
# Fallback to standard play-tts if enhanced fails
|
|
64
|
+
echo "⚠️ Enhanced TTS failed, using standard TTS" >&2
|
|
65
|
+
bash .claude/hooks/play-tts.sh "$DECODED_TEXT" "$VOICE" 2>&1
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
exit 0
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# AgentVibes Cache Cleanup Script
|
|
3
|
+
# Removes TTS cache files to free up disk space
|
|
4
|
+
|
|
5
|
+
set -euo pipefail
|
|
6
|
+
|
|
7
|
+
# Get the project root directory
|
|
8
|
+
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
9
|
+
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
|
|
10
|
+
AUDIO_DIR="$PROJECT_ROOT/.claude/audio"
|
|
11
|
+
|
|
12
|
+
# Colors for output
|
|
13
|
+
RED='\033[0;31m'
|
|
14
|
+
GREEN='\033[0;32m'
|
|
15
|
+
YELLOW='\033[1;33m'
|
|
16
|
+
BLUE='\033[0;34m'
|
|
17
|
+
NC='\033[0m' # No Color
|
|
18
|
+
|
|
19
|
+
echo -e "${BLUE}🧹 AgentVibes Cache Cleanup${NC}"
|
|
20
|
+
echo ""
|
|
21
|
+
|
|
22
|
+
# Check if audio directory exists
|
|
23
|
+
if [[ ! -d "$AUDIO_DIR" ]]; then
|
|
24
|
+
echo -e "${YELLOW}No cache directory found at: $AUDIO_DIR${NC}"
|
|
25
|
+
exit 0
|
|
26
|
+
fi
|
|
27
|
+
|
|
28
|
+
# Calculate current cache size
|
|
29
|
+
echo "Calculating cache size..."
|
|
30
|
+
CACHE_SIZE=$(du -sh "$AUDIO_DIR" 2>/dev/null | cut -f1 || echo "unknown")
|
|
31
|
+
echo -e "${BLUE}Current cache size: ${YELLOW}$CACHE_SIZE${NC}"
|
|
32
|
+
echo ""
|
|
33
|
+
|
|
34
|
+
# Count files to be deleted
|
|
35
|
+
TTS_MP3_COUNT=$(find "$AUDIO_DIR" -maxdepth 1 -name "tts-*.mp3" -type f 2>/dev/null | wc -l)
|
|
36
|
+
TTS_WAV_COUNT=$(find "$AUDIO_DIR" -maxdepth 1 -name "tts-*.wav" -type f 2>/dev/null | wc -l)
|
|
37
|
+
TTS_PADDED_MP3_COUNT=$(find "$AUDIO_DIR" -maxdepth 1 -name "tts-padded-*.mp3" -type f 2>/dev/null | wc -l)
|
|
38
|
+
TTS_PADDED_WAV_COUNT=$(find "$AUDIO_DIR" -maxdepth 1 -name "tts-padded-*.wav" -type f 2>/dev/null | wc -l)
|
|
39
|
+
BMAD_RECORDINGS_COUNT=0
|
|
40
|
+
if [[ -d "$AUDIO_DIR/bmad-party-mode-recordings" ]]; then
|
|
41
|
+
BMAD_RECORDINGS_COUNT=$(find "$AUDIO_DIR/bmad-party-mode-recordings" -type f 2>/dev/null | wc -l)
|
|
42
|
+
fi
|
|
43
|
+
|
|
44
|
+
TOTAL_FILES=$((TTS_MP3_COUNT + TTS_WAV_COUNT + TTS_PADDED_MP3_COUNT + TTS_PADDED_WAV_COUNT + BMAD_RECORDINGS_COUNT))
|
|
45
|
+
|
|
46
|
+
if [[ $TOTAL_FILES -eq 0 ]]; then
|
|
47
|
+
echo -e "${GREEN}✓ Cache is already clean! No TTS cache files found.${NC}"
|
|
48
|
+
exit 0
|
|
49
|
+
fi
|
|
50
|
+
|
|
51
|
+
echo -e "Found ${YELLOW}$TOTAL_FILES${NC} cache files:"
|
|
52
|
+
echo -e " • TTS MP3 files: $TTS_MP3_COUNT"
|
|
53
|
+
echo -e " • TTS WAV files: $TTS_WAV_COUNT"
|
|
54
|
+
echo -e " • TTS padded MP3 files: $TTS_PADDED_MP3_COUNT"
|
|
55
|
+
echo -e " • TTS padded WAV files: $TTS_PADDED_WAV_COUNT"
|
|
56
|
+
echo -e " • BMAD party mode recordings: $BMAD_RECORDINGS_COUNT"
|
|
57
|
+
echo ""
|
|
58
|
+
|
|
59
|
+
# Ask for confirmation
|
|
60
|
+
read -p "Delete all cache files? (y/N): " -n 1 -r
|
|
61
|
+
echo
|
|
62
|
+
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
|
|
63
|
+
echo -e "${YELLOW}Cleanup cancelled.${NC}"
|
|
64
|
+
exit 0
|
|
65
|
+
fi
|
|
66
|
+
|
|
67
|
+
echo ""
|
|
68
|
+
echo "Deleting cache files..."
|
|
69
|
+
|
|
70
|
+
# Delete TTS cache files
|
|
71
|
+
DELETED=0
|
|
72
|
+
|
|
73
|
+
if [[ $TTS_MP3_COUNT -gt 0 ]]; then
|
|
74
|
+
find "$AUDIO_DIR" -maxdepth 1 -name "tts-*.mp3" -type f -delete
|
|
75
|
+
DELETED=$((DELETED + TTS_MP3_COUNT))
|
|
76
|
+
fi
|
|
77
|
+
|
|
78
|
+
if [[ $TTS_WAV_COUNT -gt 0 ]]; then
|
|
79
|
+
find "$AUDIO_DIR" -maxdepth 1 -name "tts-*.wav" -type f -delete
|
|
80
|
+
DELETED=$((DELETED + TTS_WAV_COUNT))
|
|
81
|
+
fi
|
|
82
|
+
|
|
83
|
+
if [[ $TTS_PADDED_MP3_COUNT -gt 0 ]]; then
|
|
84
|
+
find "$AUDIO_DIR" -maxdepth 1 -name "tts-padded-*.mp3" -type f -delete
|
|
85
|
+
DELETED=$((DELETED + TTS_PADDED_MP3_COUNT))
|
|
86
|
+
fi
|
|
87
|
+
|
|
88
|
+
if [[ $TTS_PADDED_WAV_COUNT -gt 0 ]]; then
|
|
89
|
+
find "$AUDIO_DIR" -maxdepth 1 -name "tts-padded-*.wav" -type f -delete
|
|
90
|
+
DELETED=$((DELETED + TTS_PADDED_WAV_COUNT))
|
|
91
|
+
fi
|
|
92
|
+
|
|
93
|
+
if [[ $BMAD_RECORDINGS_COUNT -gt 0 ]]; then
|
|
94
|
+
rm -rf "$AUDIO_DIR/bmad-party-mode-recordings"
|
|
95
|
+
DELETED=$((DELETED + BMAD_RECORDINGS_COUNT))
|
|
96
|
+
fi
|
|
97
|
+
|
|
98
|
+
# Calculate new size
|
|
99
|
+
NEW_SIZE=$(du -sh "$AUDIO_DIR" 2>/dev/null | cut -f1 || echo "unknown")
|
|
100
|
+
|
|
101
|
+
echo ""
|
|
102
|
+
echo -e "${GREEN}✓ Cleanup complete!${NC}"
|
|
103
|
+
echo -e " • Deleted: ${GREEN}$DELETED${NC} files"
|
|
104
|
+
echo -e " • Old size: ${YELLOW}$CACHE_SIZE${NC}"
|
|
105
|
+
echo -e " • New size: ${GREEN}$NEW_SIZE${NC}"
|
|
106
|
+
echo ""
|
|
@@ -13,11 +13,12 @@ set -euo pipefail
|
|
|
13
13
|
|
|
14
14
|
TEXT="${1:-}"
|
|
15
15
|
VOICE="${2:-en_US-lessac-medium}"
|
|
16
|
+
AGENT_NAME="${3:-default}"
|
|
16
17
|
|
|
17
18
|
# Validate required input
|
|
18
19
|
if [[ -z "$TEXT" ]]; then
|
|
19
20
|
echo "❌ No text provided" >&2
|
|
20
|
-
echo "Usage: $0 <text> [voice]" >&2
|
|
21
|
+
echo "Usage: $0 <text> [voice] [agent_name]" >&2
|
|
21
22
|
exit 1
|
|
22
23
|
fi
|
|
23
24
|
|
|
@@ -55,21 +56,28 @@ if [[ ! "$VOICE" =~ ^[a-zA-Z0-9_-]+$ ]]; then
|
|
|
55
56
|
exit 1
|
|
56
57
|
fi
|
|
57
58
|
|
|
58
|
-
# SECURITY:
|
|
59
|
-
|
|
59
|
+
# SECURITY: Validate AGENT_NAME to prevent injection (alphanumeric, hyphens, underscores, spaces only)
|
|
60
|
+
if [[ ! "$AGENT_NAME" =~ ^[a-zA-Z0-9_\ -]+$ ]]; then
|
|
61
|
+
echo "❌ Invalid agent name format: $AGENT_NAME" >&2
|
|
62
|
+
exit 1
|
|
63
|
+
fi
|
|
64
|
+
|
|
65
|
+
# SECURITY: Encode text and agent name as base64 to prevent command injection
|
|
66
|
+
# The receiver will decode these safely
|
|
60
67
|
ENCODED_TEXT=$(printf '%s' "$TEXT" | base64 -w 0)
|
|
68
|
+
ENCODED_AGENT=$(printf '%s' "$AGENT_NAME" | base64 -w 0)
|
|
61
69
|
|
|
62
70
|
# Send text to remote for local AgentVibes playback
|
|
63
71
|
echo "📱 Sending to $SSH_HOST for local playback..." >&2
|
|
64
72
|
|
|
65
|
-
# Determine which receiver script exists and send encoded text
|
|
66
|
-
# SECURITY: Base64-encoded
|
|
73
|
+
# Determine which receiver script exists and send encoded text, voice, and agent name
|
|
74
|
+
# SECURITY: Base64-encoded values are safe to pass as arguments (no shell metacharacters)
|
|
67
75
|
# The receiver auto-detects and decodes base64 input
|
|
68
76
|
if ssh "$SSH_HOST" "test -f ~/.termux/agentvibes-play.sh" 2>/dev/null; then
|
|
69
|
-
ssh "$SSH_HOST" "bash ~/.termux/agentvibes-play.sh '$ENCODED_TEXT' '$VOICE'" &
|
|
77
|
+
ssh "$SSH_HOST" "bash ~/.termux/agentvibes-play.sh '$ENCODED_TEXT' '$VOICE' '$ENCODED_AGENT'" &
|
|
70
78
|
SSH_PID=$!
|
|
71
79
|
elif ssh "$SSH_HOST" "test -f ~/.agentvibes/play-remote.sh" 2>/dev/null; then
|
|
72
|
-
ssh "$SSH_HOST" "bash ~/.agentvibes/play-remote.sh '$ENCODED_TEXT' '$VOICE'" &
|
|
80
|
+
ssh "$SSH_HOST" "bash ~/.agentvibes/play-remote.sh '$ENCODED_TEXT' '$VOICE' '$ENCODED_AGENT'" &
|
|
73
81
|
SSH_PID=$!
|
|
74
82
|
else
|
|
75
83
|
echo "⚠️ Receiver script not found on $SSH_HOST" >&2
|
|
@@ -205,6 +205,43 @@ if [[ ! -f "$CLAUDE_DIR/tts-provider.txt" ]]; then
|
|
|
205
205
|
echo -e " ${GREEN}✓${NC} TTS provider set to piper"
|
|
206
206
|
fi
|
|
207
207
|
|
|
208
|
+
echo ""
|
|
209
|
+
|
|
210
|
+
# Step 7: Install Clawdbot SSH receiver
|
|
211
|
+
echo -e "${BLUE}[7/7] Installing Clawdbot SSH receiver...${NC}"
|
|
212
|
+
|
|
213
|
+
TERMUX_DIR="$HOME/.termux"
|
|
214
|
+
mkdir -p "$TERMUX_DIR"
|
|
215
|
+
|
|
216
|
+
# Create wrapper script at ~/.termux/agentvibes-play.sh
|
|
217
|
+
# This calls the main receiver in AgentVibes hooks
|
|
218
|
+
cat > "$TERMUX_DIR/agentvibes-play.sh" << 'EOF'
|
|
219
|
+
#!/usr/bin/env bash
|
|
220
|
+
# AgentVibes Clawdbot Receiver Wrapper
|
|
221
|
+
# Installed by AgentVibes Termux installer
|
|
222
|
+
# Forwards to main receiver script in AgentVibes
|
|
223
|
+
|
|
224
|
+
# Find AgentVibes installation
|
|
225
|
+
if [[ -f "$HOME/agentvibes/.claude/hooks/clawdbot-receiver.sh" ]]; then
|
|
226
|
+
exec bash "$HOME/agentvibes/.claude/hooks/clawdbot-receiver.sh" "$@"
|
|
227
|
+
elif [[ -f "$HOME/AgentVibes-dev/.claude/hooks/clawdbot-receiver.sh" ]]; then
|
|
228
|
+
exec bash "$HOME/AgentVibes-dev/.claude/hooks/clawdbot-receiver.sh" "$@"
|
|
229
|
+
else
|
|
230
|
+
echo "❌ AgentVibes clawdbot-receiver.sh not found" >&2
|
|
231
|
+
exit 1
|
|
232
|
+
fi
|
|
233
|
+
EOF
|
|
234
|
+
|
|
235
|
+
chmod +x "$TERMUX_DIR/agentvibes-play.sh"
|
|
236
|
+
echo -e " ${GREEN}✓${NC} Clawdbot receiver installed at ~/.termux/agentvibes-play.sh"
|
|
237
|
+
|
|
238
|
+
# Also create fallback at ~/.agentvibes/play-remote.sh
|
|
239
|
+
AGENTVIBES_DIR="$HOME/.agentvibes"
|
|
240
|
+
mkdir -p "$AGENTVIBES_DIR"
|
|
241
|
+
ln -sf "$TERMUX_DIR/agentvibes-play.sh" "$AGENTVIBES_DIR/play-remote.sh" 2>/dev/null || \
|
|
242
|
+
cp "$TERMUX_DIR/agentvibes-play.sh" "$AGENTVIBES_DIR/play-remote.sh"
|
|
243
|
+
echo -e " ${GREEN}✓${NC} Fallback link created at ~/.agentvibes/play-remote.sh"
|
|
244
|
+
|
|
208
245
|
echo ""
|
|
209
246
|
echo -e "${GREEN}════════════════════════════════════════════════════════════${NC}"
|
|
210
247
|
echo -e "${GREEN} Installation Complete!${NC}"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
/home/
|
|
1
|
+
/home/fire/.claude/piper-voices
|
package/.mcp.json
CHANGED
|
@@ -1,12 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"mcpServers": {
|
|
3
|
-
"
|
|
4
|
-
"command": "
|
|
3
|
+
"sonarqube": {
|
|
4
|
+
"command": "docker",
|
|
5
5
|
"args": [
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
|
|
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"
|
|
10
32
|
}
|
|
11
33
|
}
|
|
12
34
|
}
|