@claude-flow/cli 3.0.0-alpha.36 → 3.0.0-alpha.38

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 (36) hide show
  1. package/.claude/helpers/README.md +97 -0
  2. package/.claude/helpers/adr-compliance.sh +186 -0
  3. package/.claude/helpers/auto-commit.sh +178 -0
  4. package/.claude/helpers/checkpoint-manager.sh +251 -0
  5. package/.claude/helpers/daemon-manager.sh +252 -0
  6. package/.claude/helpers/ddd-tracker.sh +144 -0
  7. package/.claude/helpers/github-safe.js +106 -0
  8. package/.claude/helpers/github-setup.sh +28 -0
  9. package/.claude/helpers/guidance-hook.sh +13 -0
  10. package/.claude/helpers/guidance-hooks.sh +102 -0
  11. package/.claude/helpers/health-monitor.sh +108 -0
  12. package/.claude/helpers/learning-hooks.sh +329 -0
  13. package/.claude/helpers/learning-optimizer.sh +127 -0
  14. package/.claude/helpers/learning-service.mjs +1144 -0
  15. package/.claude/helpers/metrics-db.mjs +488 -0
  16. package/.claude/helpers/pattern-consolidator.sh +86 -0
  17. package/.claude/helpers/perf-worker.sh +160 -0
  18. package/.claude/helpers/quick-start.sh +19 -0
  19. package/.claude/helpers/security-scanner.sh +127 -0
  20. package/.claude/helpers/setup-mcp.sh +18 -0
  21. package/.claude/helpers/standard-checkpoint-hooks.sh +189 -0
  22. package/.claude/helpers/swarm-comms.sh +353 -0
  23. package/.claude/helpers/swarm-hooks.sh +761 -0
  24. package/.claude/helpers/swarm-monitor.sh +211 -0
  25. package/.claude/helpers/sync-v3-metrics.sh +245 -0
  26. package/.claude/helpers/update-v3-progress.sh +166 -0
  27. package/.claude/helpers/v3-quick-status.sh +58 -0
  28. package/.claude/helpers/v3.sh +111 -0
  29. package/.claude/helpers/validate-v3-config.sh +216 -0
  30. package/.claude/helpers/worker-manager.sh +170 -0
  31. package/dist/src/init/mcp-generator.js +2 -2
  32. package/dist/src/init/mcp-generator.js.map +1 -1
  33. package/dist/src/init/types.js +2 -2
  34. package/dist/src/init/types.js.map +1 -1
  35. package/dist/tsconfig.tsbuildinfo +1 -1
  36. package/package.json +1 -1
@@ -0,0 +1,211 @@
1
+ #!/bin/bash
2
+ # Claude Flow V3 - Real-time Swarm Activity Monitor
3
+ # Continuously monitors and updates metrics based on running processes
4
+
5
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
6
+ PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
7
+ METRICS_DIR="$PROJECT_ROOT/.claude-flow/metrics"
8
+ UPDATE_SCRIPT="$SCRIPT_DIR/update-v3-progress.sh"
9
+
10
+ # Ensure metrics directory exists
11
+ mkdir -p "$METRICS_DIR"
12
+
13
+ # Colors for logging
14
+ GREEN='\033[0;32m'
15
+ YELLOW='\033[1;33m'
16
+ CYAN='\033[0;36m'
17
+ RED='\033[0;31m'
18
+ RESET='\033[0m'
19
+
20
+ log() {
21
+ echo -e "${CYAN}[$(date '+%H:%M:%S')] ${1}${RESET}"
22
+ }
23
+
24
+ warn() {
25
+ echo -e "${YELLOW}[$(date '+%H:%M:%S')] WARNING: ${1}${RESET}"
26
+ }
27
+
28
+ error() {
29
+ echo -e "${RED}[$(date '+%H:%M:%S')] ERROR: ${1}${RESET}"
30
+ }
31
+
32
+ success() {
33
+ echo -e "${GREEN}[$(date '+%H:%M:%S')] ${1}${RESET}"
34
+ }
35
+
36
+ # Function to count active processes
37
+ count_active_processes() {
38
+ local agentic_flow_count=0
39
+ local mcp_count=0
40
+ local agent_count=0
41
+
42
+ # Count agentic-flow processes
43
+ agentic_flow_count=$(ps aux 2>/dev/null | grep -E "agentic-flow" | grep -v grep | grep -v "swarm-monitor" | wc -l)
44
+
45
+ # Count MCP server processes
46
+ mcp_count=$(ps aux 2>/dev/null | grep -E "mcp.*start" | grep -v grep | wc -l)
47
+
48
+ # Count specific agent processes
49
+ agent_count=$(ps aux 2>/dev/null | grep -E "(agent|swarm|coordinator)" | grep -v grep | grep -v "swarm-monitor" | wc -l)
50
+
51
+ # Calculate total active "agents" using heuristic
52
+ local total_agents=0
53
+ if [ "$agentic_flow_count" -gt 0 ]; then
54
+ # Use agent count if available, otherwise estimate from processes
55
+ if [ "$agent_count" -gt 0 ]; then
56
+ total_agents="$agent_count"
57
+ else
58
+ # Heuristic: some processes are management, some are agents
59
+ total_agents=$((agentic_flow_count / 2))
60
+ if [ "$total_agents" -eq 0 ] && [ "$agentic_flow_count" -gt 0 ]; then
61
+ total_agents=1
62
+ fi
63
+ fi
64
+ fi
65
+
66
+ echo "agentic:$agentic_flow_count mcp:$mcp_count agents:$total_agents"
67
+ }
68
+
69
+ # Function to update metrics based on detected activity
70
+ update_activity_metrics() {
71
+ local process_info="$1"
72
+ local agentic_count=$(echo "$process_info" | cut -d' ' -f1 | cut -d':' -f2)
73
+ local mcp_count=$(echo "$process_info" | cut -d' ' -f2 | cut -d':' -f2)
74
+ local agent_count=$(echo "$process_info" | cut -d' ' -f3 | cut -d':' -f2)
75
+
76
+ # Update active agents in metrics
77
+ if [ -f "$UPDATE_SCRIPT" ]; then
78
+ "$UPDATE_SCRIPT" agent "$agent_count" >/dev/null 2>&1
79
+ fi
80
+
81
+ # Update integration status based on activity
82
+ local integration_status="false"
83
+ if [ "$agentic_count" -gt 0 ] || [ "$mcp_count" -gt 0 ]; then
84
+ integration_status="true"
85
+ fi
86
+
87
+ # Create/update activity metrics file
88
+ local activity_file="$METRICS_DIR/swarm-activity.json"
89
+ cat > "$activity_file" << EOF
90
+ {
91
+ "timestamp": "$(date -Iseconds)",
92
+ "processes": {
93
+ "agentic_flow": $agentic_count,
94
+ "mcp_server": $mcp_count,
95
+ "estimated_agents": $agent_count
96
+ },
97
+ "swarm": {
98
+ "active": $([ "$agent_count" -gt 0 ] && echo "true" || echo "false"),
99
+ "agent_count": $agent_count,
100
+ "coordination_active": $([ "$agentic_count" -gt 0 ] && echo "true" || echo "false")
101
+ },
102
+ "integration": {
103
+ "agentic_flow_active": $integration_status,
104
+ "mcp_active": $([ "$mcp_count" -gt 0 ] && echo "true" || echo "false")
105
+ }
106
+ }
107
+ EOF
108
+
109
+ return 0
110
+ }
111
+
112
+ # Function to monitor continuously
113
+ monitor_continuous() {
114
+ local monitor_interval="${1:-5}" # Default 5 seconds
115
+ local last_state=""
116
+ local current_state=""
117
+
118
+ log "Starting continuous swarm monitoring (interval: ${monitor_interval}s)"
119
+ log "Press Ctrl+C to stop monitoring"
120
+
121
+ while true; do
122
+ current_state=$(count_active_processes)
123
+
124
+ # Only update if state changed
125
+ if [ "$current_state" != "$last_state" ]; then
126
+ update_activity_metrics "$current_state"
127
+
128
+ local agent_count=$(echo "$current_state" | cut -d' ' -f3 | cut -d':' -f2)
129
+ local agentic_count=$(echo "$current_state" | cut -d' ' -f1 | cut -d':' -f2)
130
+
131
+ if [ "$agent_count" -gt 0 ] || [ "$agentic_count" -gt 0 ]; then
132
+ success "Swarm activity detected: $current_state"
133
+ else
134
+ warn "No swarm activity detected"
135
+ fi
136
+
137
+ last_state="$current_state"
138
+ fi
139
+
140
+ sleep "$monitor_interval"
141
+ done
142
+ }
143
+
144
+ # Function to run a single check
145
+ check_once() {
146
+ log "Running single swarm activity check..."
147
+
148
+ local process_info=$(count_active_processes)
149
+ update_activity_metrics "$process_info"
150
+
151
+ local agent_count=$(echo "$process_info" | cut -d' ' -f3 | cut -d':' -f2)
152
+ local agentic_count=$(echo "$process_info" | cut -d' ' -f1 | cut -d':' -f2)
153
+ local mcp_count=$(echo "$process_info" | cut -d' ' -f2 | cut -d':' -f2)
154
+
155
+ log "Process Detection Results:"
156
+ log " Agentic Flow processes: $agentic_count"
157
+ log " MCP Server processes: $mcp_count"
158
+ log " Estimated agents: $agent_count"
159
+
160
+ if [ "$agent_count" -gt 0 ] || [ "$agentic_count" -gt 0 ]; then
161
+ success "✓ Swarm activity detected and metrics updated"
162
+ else
163
+ warn "⚠ No swarm activity detected"
164
+ fi
165
+
166
+ # Run performance benchmarks (throttled to every 5 min)
167
+ if [ -x "$SCRIPT_DIR/perf-worker.sh" ]; then
168
+ "$SCRIPT_DIR/perf-worker.sh" check 2>/dev/null &
169
+ fi
170
+
171
+ return 0
172
+ }
173
+
174
+ # Main command handling
175
+ case "${1:-check}" in
176
+ "monitor"|"continuous")
177
+ monitor_continuous "${2:-5}"
178
+ ;;
179
+ "check"|"once")
180
+ check_once
181
+ ;;
182
+ "status")
183
+ if [ -f "$METRICS_DIR/swarm-activity.json" ]; then
184
+ log "Current swarm activity status:"
185
+ cat "$METRICS_DIR/swarm-activity.json" | jq . 2>/dev/null || cat "$METRICS_DIR/swarm-activity.json"
186
+ else
187
+ warn "No activity data available. Run 'check' first."
188
+ fi
189
+ ;;
190
+ "help"|"-h"|"--help")
191
+ echo "Claude Flow V3 Swarm Monitor"
192
+ echo ""
193
+ echo "Usage: $0 [command] [options]"
194
+ echo ""
195
+ echo "Commands:"
196
+ echo " check, once Run a single activity check and update metrics"
197
+ echo " monitor [N] Monitor continuously every N seconds (default: 5)"
198
+ echo " status Show current activity status"
199
+ echo " help Show this help message"
200
+ echo ""
201
+ echo "Examples:"
202
+ echo " $0 check # Single check"
203
+ echo " $0 monitor 3 # Monitor every 3 seconds"
204
+ echo " $0 status # Show current status"
205
+ ;;
206
+ *)
207
+ error "Unknown command: $1"
208
+ echo "Use '$0 help' for usage information"
209
+ exit 1
210
+ ;;
211
+ esac
@@ -0,0 +1,245 @@
1
+ #!/bin/bash
2
+ # Claude Flow V3 - Auto-sync Metrics from Actual Implementation
3
+ # Scans the V3 codebase and updates metrics to reflect reality
4
+
5
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
6
+ PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
7
+ V3_DIR="$PROJECT_ROOT/v3"
8
+ METRICS_DIR="$PROJECT_ROOT/.claude-flow/metrics"
9
+ SECURITY_DIR="$PROJECT_ROOT/.claude-flow/security"
10
+
11
+ # Ensure directories exist
12
+ mkdir -p "$METRICS_DIR" "$SECURITY_DIR"
13
+
14
+ # Colors
15
+ GREEN='\033[0;32m'
16
+ YELLOW='\033[1;33m'
17
+ CYAN='\033[0;36m'
18
+ RESET='\033[0m'
19
+
20
+ log() {
21
+ echo -e "${CYAN}[sync] $1${RESET}"
22
+ }
23
+
24
+ # Count V3 modules
25
+ count_modules() {
26
+ local count=0
27
+ local modules=()
28
+
29
+ if [ -d "$V3_DIR/@claude-flow" ]; then
30
+ for dir in "$V3_DIR/@claude-flow"/*/; do
31
+ if [ -d "$dir" ]; then
32
+ name=$(basename "$dir")
33
+ modules+=("$name")
34
+ ((count++))
35
+ fi
36
+ done
37
+ fi
38
+
39
+ echo "$count"
40
+ }
41
+
42
+ # Calculate module completion percentage
43
+ calculate_module_progress() {
44
+ local module="$1"
45
+ local module_dir="$V3_DIR/@claude-flow/$module"
46
+
47
+ if [ ! -d "$module_dir" ]; then
48
+ echo "0"
49
+ return
50
+ fi
51
+
52
+ local has_src=$([ -d "$module_dir/src" ] && echo 1 || echo 0)
53
+ local has_index=$([ -f "$module_dir/src/index.ts" ] || [ -f "$module_dir/index.ts" ] && echo 1 || echo 0)
54
+ local has_tests=$([ -d "$module_dir/__tests__" ] || [ -d "$module_dir/tests" ] && echo 1 || echo 0)
55
+ local has_package=$([ -f "$module_dir/package.json" ] && echo 1 || echo 0)
56
+ local file_count=$(find "$module_dir" -name "*.ts" -type f 2>/dev/null | wc -l)
57
+
58
+ # Calculate progress based on structure and content
59
+ local progress=0
60
+ [ "$has_src" -eq 1 ] && ((progress += 20))
61
+ [ "$has_index" -eq 1 ] && ((progress += 20))
62
+ [ "$has_tests" -eq 1 ] && ((progress += 20))
63
+ [ "$has_package" -eq 1 ] && ((progress += 10))
64
+ [ "$file_count" -gt 5 ] && ((progress += 15))
65
+ [ "$file_count" -gt 10 ] && ((progress += 15))
66
+
67
+ # Cap at 100
68
+ [ "$progress" -gt 100 ] && progress=100
69
+
70
+ echo "$progress"
71
+ }
72
+
73
+ # Check security CVE status
74
+ check_security_status() {
75
+ local cves_fixed=0
76
+ local security_dir="$V3_DIR/@claude-flow/security/src"
77
+
78
+ # CVE-1: Input validation - check for input-validator.ts
79
+ if [ -f "$security_dir/input-validator.ts" ]; then
80
+ lines=$(wc -l < "$security_dir/input-validator.ts" 2>/dev/null || echo 0)
81
+ [ "$lines" -gt 100 ] && ((cves_fixed++))
82
+ fi
83
+
84
+ # CVE-2: Path traversal - check for path-validator.ts
85
+ if [ -f "$security_dir/path-validator.ts" ]; then
86
+ lines=$(wc -l < "$security_dir/path-validator.ts" 2>/dev/null || echo 0)
87
+ [ "$lines" -gt 100 ] && ((cves_fixed++))
88
+ fi
89
+
90
+ # CVE-3: Command injection - check for safe-executor.ts
91
+ if [ -f "$security_dir/safe-executor.ts" ]; then
92
+ lines=$(wc -l < "$security_dir/safe-executor.ts" 2>/dev/null || echo 0)
93
+ [ "$lines" -gt 100 ] && ((cves_fixed++))
94
+ fi
95
+
96
+ echo "$cves_fixed"
97
+ }
98
+
99
+ # Calculate overall DDD progress
100
+ calculate_ddd_progress() {
101
+ local total_progress=0
102
+ local module_count=0
103
+
104
+ for dir in "$V3_DIR/@claude-flow"/*/; do
105
+ if [ -d "$dir" ]; then
106
+ name=$(basename "$dir")
107
+ progress=$(calculate_module_progress "$name")
108
+ ((total_progress += progress))
109
+ ((module_count++))
110
+ fi
111
+ done
112
+
113
+ if [ "$module_count" -gt 0 ]; then
114
+ echo $((total_progress / module_count))
115
+ else
116
+ echo 0
117
+ fi
118
+ }
119
+
120
+ # Count total lines of code
121
+ count_total_lines() {
122
+ find "$V3_DIR" -name "*.ts" -type f -exec cat {} \; 2>/dev/null | wc -l
123
+ }
124
+
125
+ # Count total files
126
+ count_total_files() {
127
+ find "$V3_DIR" -name "*.ts" -type f 2>/dev/null | wc -l
128
+ }
129
+
130
+ # Check domains (map modules to domains)
131
+ count_domains() {
132
+ local domains=0
133
+
134
+ # Map @claude-flow modules to DDD domains
135
+ [ -d "$V3_DIR/@claude-flow/swarm" ] && ((domains++)) # task-management
136
+ [ -d "$V3_DIR/@claude-flow/memory" ] && ((domains++)) # session-management
137
+ [ -d "$V3_DIR/@claude-flow/performance" ] && ((domains++)) # health-monitoring
138
+ [ -d "$V3_DIR/@claude-flow/cli" ] && ((domains++)) # lifecycle-management
139
+ [ -d "$V3_DIR/@claude-flow/integration" ] && ((domains++)) # event-coordination
140
+
141
+ echo "$domains"
142
+ }
143
+
144
+ # Main sync function
145
+ sync_metrics() {
146
+ log "Scanning V3 implementation..."
147
+
148
+ local modules=$(count_modules)
149
+ local domains=$(count_domains)
150
+ local ddd_progress=$(calculate_ddd_progress)
151
+ local cves_fixed=$(check_security_status)
152
+ local total_files=$(count_total_files)
153
+ local total_lines=$(count_total_lines)
154
+ local timestamp=$(date -Iseconds)
155
+
156
+ # Determine security status
157
+ local security_status="PENDING"
158
+ if [ "$cves_fixed" -eq 3 ]; then
159
+ security_status="CLEAN"
160
+ elif [ "$cves_fixed" -gt 0 ]; then
161
+ security_status="IN_PROGRESS"
162
+ fi
163
+
164
+ log "Found: $modules modules, $domains domains, $total_files files, $total_lines lines"
165
+ log "DDD Progress: ${ddd_progress}%, Security: $cves_fixed/3 CVEs fixed"
166
+
167
+ # Update v3-progress.json
168
+ cat > "$METRICS_DIR/v3-progress.json" << EOF
169
+ {
170
+ "domains": {
171
+ "completed": $domains,
172
+ "total": 5,
173
+ "list": [
174
+ {"name": "task-management", "status": "$([ -d "$V3_DIR/@claude-flow/swarm" ] && echo "complete" || echo "pending")", "module": "swarm"},
175
+ {"name": "session-management", "status": "$([ -d "$V3_DIR/@claude-flow/memory" ] && echo "complete" || echo "pending")", "module": "memory"},
176
+ {"name": "health-monitoring", "status": "$([ -d "$V3_DIR/@claude-flow/performance" ] && echo "complete" || echo "pending")", "module": "performance"},
177
+ {"name": "lifecycle-management", "status": "$([ -d "$V3_DIR/@claude-flow/cli" ] && echo "complete" || echo "pending")", "module": "cli"},
178
+ {"name": "event-coordination", "status": "$([ -d "$V3_DIR/@claude-flow/integration" ] && echo "complete" || echo "pending")", "module": "integration"}
179
+ ]
180
+ },
181
+ "ddd": {
182
+ "progress": $ddd_progress,
183
+ "modules": $modules,
184
+ "totalFiles": $total_files,
185
+ "totalLines": $total_lines
186
+ },
187
+ "swarm": {
188
+ "activeAgents": 0,
189
+ "totalAgents": 15,
190
+ "topology": "hierarchical-mesh",
191
+ "coordination": "$([ -d "$V3_DIR/@claude-flow/swarm" ] && echo "ready" || echo "pending")"
192
+ },
193
+ "lastUpdated": "$timestamp",
194
+ "autoSynced": true
195
+ }
196
+ EOF
197
+
198
+ # Update security audit status
199
+ cat > "$SECURITY_DIR/audit-status.json" << EOF
200
+ {
201
+ "status": "$security_status",
202
+ "cvesFixed": $cves_fixed,
203
+ "totalCves": 3,
204
+ "criticalVulnerabilities": [
205
+ {
206
+ "id": "CVE-1",
207
+ "description": "Input validation bypass",
208
+ "severity": "critical",
209
+ "status": "$([ -f "$V3_DIR/@claude-flow/security/src/input-validator.ts" ] && echo "fixed" || echo "pending")",
210
+ "fixedBy": "input-validator.ts"
211
+ },
212
+ {
213
+ "id": "CVE-2",
214
+ "description": "Path traversal vulnerability",
215
+ "severity": "critical",
216
+ "status": "$([ -f "$V3_DIR/@claude-flow/security/src/path-validator.ts" ] && echo "fixed" || echo "pending")",
217
+ "fixedBy": "path-validator.ts"
218
+ },
219
+ {
220
+ "id": "CVE-3",
221
+ "description": "Command injection vulnerability",
222
+ "severity": "critical",
223
+ "status": "$([ -f "$V3_DIR/@claude-flow/security/src/safe-executor.ts" ] && echo "fixed" || echo "pending")",
224
+ "fixedBy": "safe-executor.ts"
225
+ }
226
+ ],
227
+ "lastAudit": "$timestamp",
228
+ "autoSynced": true
229
+ }
230
+ EOF
231
+
232
+ log "Metrics synced successfully!"
233
+
234
+ # Output summary for statusline
235
+ echo ""
236
+ echo -e "${GREEN}V3 Implementation Status:${RESET}"
237
+ echo " Modules: $modules"
238
+ echo " Domains: $domains/5"
239
+ echo " DDD Progress: ${ddd_progress}%"
240
+ echo " Security: $cves_fixed/3 CVEs fixed ($security_status)"
241
+ echo " Codebase: $total_files files, $total_lines lines"
242
+ }
243
+
244
+ # Run sync
245
+ sync_metrics
@@ -0,0 +1,166 @@
1
+ #!/bin/bash
2
+ # V3 Progress Update Script
3
+ # Usage: ./update-v3-progress.sh [domain|agent|security|performance] [value]
4
+
5
+ set -e
6
+
7
+ METRICS_DIR=".claude-flow/metrics"
8
+ SECURITY_DIR=".claude-flow/security"
9
+
10
+ # Ensure directories exist
11
+ mkdir -p "$METRICS_DIR" "$SECURITY_DIR"
12
+
13
+ case "$1" in
14
+ "domain")
15
+ if [ -z "$2" ]; then
16
+ echo "Usage: $0 domain <count>"
17
+ echo "Example: $0 domain 3"
18
+ exit 1
19
+ fi
20
+
21
+ # Update domain completion count
22
+ jq --argjson count "$2" '.domains.completed = $count' \
23
+ "$METRICS_DIR/v3-progress.json" > tmp.json && \
24
+ mv tmp.json "$METRICS_DIR/v3-progress.json"
25
+
26
+ echo "✅ Updated domain count to $2/5"
27
+ ;;
28
+
29
+ "agent")
30
+ if [ -z "$2" ]; then
31
+ echo "Usage: $0 agent <count>"
32
+ echo "Example: $0 agent 8"
33
+ exit 1
34
+ fi
35
+
36
+ # Update active agent count
37
+ jq --argjson count "$2" '.swarm.activeAgents = $count' \
38
+ "$METRICS_DIR/v3-progress.json" > tmp.json && \
39
+ mv tmp.json "$METRICS_DIR/v3-progress.json"
40
+
41
+ echo "✅ Updated active agents to $2/15"
42
+ ;;
43
+
44
+ "security")
45
+ if [ -z "$2" ]; then
46
+ echo "Usage: $0 security <fixed_count>"
47
+ echo "Example: $0 security 2"
48
+ exit 1
49
+ fi
50
+
51
+ # Update CVE fixes
52
+ jq --argjson count "$2" '.cvesFixed = $count' \
53
+ "$SECURITY_DIR/audit-status.json" > tmp.json && \
54
+ mv tmp.json "$SECURITY_DIR/audit-status.json"
55
+
56
+ if [ "$2" -eq 3 ]; then
57
+ jq '.status = "CLEAN"' \
58
+ "$SECURITY_DIR/audit-status.json" > tmp.json && \
59
+ mv tmp.json "$SECURITY_DIR/audit-status.json"
60
+ fi
61
+
62
+ echo "✅ Updated security: $2/3 CVEs fixed"
63
+ ;;
64
+
65
+ "performance")
66
+ if [ -z "$2" ]; then
67
+ echo "Usage: $0 performance <speedup>"
68
+ echo "Example: $0 performance 2.1x"
69
+ exit 1
70
+ fi
71
+
72
+ # Update performance metrics
73
+ jq --arg speedup "$2" '.flashAttention.speedup = $speedup' \
74
+ "$METRICS_DIR/performance.json" > tmp.json && \
75
+ mv tmp.json "$METRICS_DIR/performance.json"
76
+
77
+ echo "✅ Updated Flash Attention speedup to $2"
78
+ ;;
79
+
80
+ "memory")
81
+ if [ -z "$2" ]; then
82
+ echo "Usage: $0 memory <percentage>"
83
+ echo "Example: $0 memory 45%"
84
+ exit 1
85
+ fi
86
+
87
+ # Update memory reduction
88
+ jq --arg reduction "$2" '.memory.reduction = $reduction' \
89
+ "$METRICS_DIR/performance.json" > tmp.json && \
90
+ mv tmp.json "$METRICS_DIR/performance.json"
91
+
92
+ echo "✅ Updated memory reduction to $2"
93
+ ;;
94
+
95
+ "ddd")
96
+ if [ -z "$2" ]; then
97
+ echo "Usage: $0 ddd <percentage>"
98
+ echo "Example: $0 ddd 65"
99
+ exit 1
100
+ fi
101
+
102
+ # Update DDD progress percentage
103
+ jq --argjson progress "$2" '.ddd.progress = $progress' \
104
+ "$METRICS_DIR/v3-progress.json" > tmp.json && \
105
+ mv tmp.json "$METRICS_DIR/v3-progress.json"
106
+
107
+ echo "✅ Updated DDD progress to $2%"
108
+ ;;
109
+
110
+ "status")
111
+ # Show current status
112
+ echo "📊 V3 Development Status:"
113
+ echo "========================"
114
+
115
+ if [ -f "$METRICS_DIR/v3-progress.json" ]; then
116
+ domains=$(jq -r '.domains.completed // 0' "$METRICS_DIR/v3-progress.json")
117
+ agents=$(jq -r '.swarm.activeAgents // 0' "$METRICS_DIR/v3-progress.json")
118
+ ddd=$(jq -r '.ddd.progress // 0' "$METRICS_DIR/v3-progress.json")
119
+ echo "🏗️ Domains: $domains/5"
120
+ echo "🤖 Agents: $agents/15"
121
+ echo "📐 DDD: $ddd%"
122
+ fi
123
+
124
+ if [ -f "$SECURITY_DIR/audit-status.json" ]; then
125
+ cves=$(jq -r '.cvesFixed // 0' "$SECURITY_DIR/audit-status.json")
126
+ echo "🛡️ Security: $cves/3 CVEs fixed"
127
+ fi
128
+
129
+ if [ -f "$METRICS_DIR/performance.json" ]; then
130
+ speedup=$(jq -r '.flashAttention.speedup // "1.0x"' "$METRICS_DIR/performance.json")
131
+ memory=$(jq -r '.memory.reduction // "0%"' "$METRICS_DIR/performance.json")
132
+ echo "⚡ Performance: $speedup speedup, $memory memory saved"
133
+ fi
134
+ ;;
135
+
136
+ *)
137
+ echo "V3 Progress Update Tool"
138
+ echo "======================"
139
+ echo ""
140
+ echo "Usage: $0 <command> [value]"
141
+ echo ""
142
+ echo "Commands:"
143
+ echo " domain <0-5> Update completed domain count"
144
+ echo " agent <0-15> Update active agent count"
145
+ echo " security <0-3> Update fixed CVE count"
146
+ echo " performance <x.x> Update Flash Attention speedup"
147
+ echo " memory <xx%> Update memory reduction percentage"
148
+ echo " ddd <0-100> Update DDD progress percentage"
149
+ echo " status Show current status"
150
+ echo ""
151
+ echo "Examples:"
152
+ echo " $0 domain 3 # Mark 3 domains as complete"
153
+ echo " $0 agent 8 # Set 8 agents as active"
154
+ echo " $0 security 2 # Mark 2 CVEs as fixed"
155
+ echo " $0 performance 2.5x # Set speedup to 2.5x"
156
+ echo " $0 memory 35% # Set memory reduction to 35%"
157
+ echo " $0 ddd 75 # Set DDD progress to 75%"
158
+ ;;
159
+ esac
160
+
161
+ # Show updated statusline if not just showing help
162
+ if [ "$1" != "" ] && [ "$1" != "status" ]; then
163
+ echo ""
164
+ echo "📺 Updated Statusline:"
165
+ bash .claude/statusline.sh
166
+ fi
@@ -0,0 +1,58 @@
1
+ #!/bin/bash
2
+ # V3 Quick Status - Compact development status overview
3
+
4
+ set -e
5
+
6
+ # Color codes
7
+ GREEN='\033[0;32m'
8
+ YELLOW='\033[0;33m'
9
+ RED='\033[0;31m'
10
+ BLUE='\033[0;34m'
11
+ PURPLE='\033[0;35m'
12
+ CYAN='\033[0;36m'
13
+ RESET='\033[0m'
14
+
15
+ echo -e "${PURPLE}⚡ Claude Flow V3 Quick Status${RESET}"
16
+
17
+ # Get metrics
18
+ DOMAINS=0
19
+ AGENTS=0
20
+ DDD_PROGRESS=0
21
+ CVES_FIXED=0
22
+ SPEEDUP="1.0x"
23
+ MEMORY="0%"
24
+
25
+ if [ -f ".claude-flow/metrics/v3-progress.json" ]; then
26
+ DOMAINS=$(jq -r '.domains.completed // 0' ".claude-flow/metrics/v3-progress.json" 2>/dev/null || echo "0")
27
+ AGENTS=$(jq -r '.swarm.activeAgents // 0' ".claude-flow/metrics/v3-progress.json" 2>/dev/null || echo "0")
28
+ DDD_PROGRESS=$(jq -r '.ddd.progress // 0' ".claude-flow/metrics/v3-progress.json" 2>/dev/null || echo "0")
29
+ fi
30
+
31
+ if [ -f ".claude-flow/security/audit-status.json" ]; then
32
+ CVES_FIXED=$(jq -r '.cvesFixed // 0' ".claude-flow/security/audit-status.json" 2>/dev/null || echo "0")
33
+ fi
34
+
35
+ if [ -f ".claude-flow/metrics/performance.json" ]; then
36
+ SPEEDUP=$(jq -r '.flashAttention.speedup // "1.0x"' ".claude-flow/metrics/performance.json" 2>/dev/null || echo "1.0x")
37
+ MEMORY=$(jq -r '.memory.reduction // "0%"' ".claude-flow/metrics/performance.json" 2>/dev/null || echo "0%")
38
+ fi
39
+
40
+ # Calculate progress percentages
41
+ DOMAIN_PERCENT=$((DOMAINS * 20))
42
+ AGENT_PERCENT=$((AGENTS * 100 / 15))
43
+ SECURITY_PERCENT=$((CVES_FIXED * 33))
44
+
45
+ # Color coding
46
+ if [ $DOMAINS -eq 5 ]; then DOMAIN_COLOR=$GREEN; elif [ $DOMAINS -ge 3 ]; then DOMAIN_COLOR=$YELLOW; else DOMAIN_COLOR=$RED; fi
47
+ if [ $AGENTS -ge 10 ]; then AGENT_COLOR=$GREEN; elif [ $AGENTS -ge 5 ]; then AGENT_COLOR=$YELLOW; else AGENT_COLOR=$RED; fi
48
+ if [ $DDD_PROGRESS -ge 75 ]; then DDD_COLOR=$GREEN; elif [ $DDD_PROGRESS -ge 50 ]; then DDD_COLOR=$YELLOW; else DDD_COLOR=$RED; fi
49
+ if [ $CVES_FIXED -eq 3 ]; then SEC_COLOR=$GREEN; elif [ $CVES_FIXED -ge 1 ]; then SEC_COLOR=$YELLOW; else SEC_COLOR=$RED; fi
50
+
51
+ echo -e "${BLUE}Domains:${RESET} ${DOMAIN_COLOR}${DOMAINS}/5${RESET} (${DOMAIN_PERCENT}%) | ${BLUE}Agents:${RESET} ${AGENT_COLOR}${AGENTS}/15${RESET} (${AGENT_PERCENT}%) | ${BLUE}DDD:${RESET} ${DDD_COLOR}${DDD_PROGRESS}%${RESET}"
52
+ echo -e "${BLUE}Security:${RESET} ${SEC_COLOR}${CVES_FIXED}/3${RESET} CVEs | ${BLUE}Perf:${RESET} ${CYAN}${SPEEDUP}${RESET} | ${BLUE}Memory:${RESET} ${CYAN}${MEMORY}${RESET}"
53
+
54
+ # Branch info
55
+ if git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
56
+ BRANCH=$(git branch --show-current 2>/dev/null || echo "unknown")
57
+ echo -e "${BLUE}Branch:${RESET} ${CYAN}${BRANCH}${RESET}"
58
+ fi