23f7624596
ADR-166 MCP Bridge Security Lock / Static-source security lock (push) Failing after 0s
ADR-166 MCP Bridge Security Lock / Compose default binds loopback + Mongo has auth (push) Failing after 2s
CodeQL Advanced / Analyze (rust) (push) Failing after 0s
ADR-166 MCP Bridge Security Lock / plugin-agent-federation bindHost default (push) Failing after 1s
ADR-166 MCP Bridge Security Lock / Runtime behavior — 401 + terminal gate + fail-closed (push) Failing after 4s
business-pods-smoke / smoke (push) Failing after 1s
all-plugins-smoke / smoke-all (push) Failing after 2s
CI/CD Pipeline / Security & Code Quality (push) Failing after 1s
CI/CD Pipeline / Test Suite (ubuntu-latest) (push) Failing after 1s
CI/CD Pipeline / Build & Package (macos-latest) (push) Has been skipped
CI/CD Pipeline / Build & Package (ubuntu-latest) (push) Has been skipped
CI/CD Pipeline / Build & Package (windows-latest) (push) Has been skipped
CI/CD Pipeline / Documentation & Examples (push) Failing after 1s
Clone Tracker (14-day rolling) / Snapshot clones for ruflo ecosystem (push) Failing after 1s
CodeQL Advanced / Analyze (actions) (push) Failing after 1s
CodeQL Advanced / Analyze (javascript-typescript) (push) Failing after 1s
federation-peer-rust / stable-noop (push) Failing after 1s
metaharness-ci / score (push) Failing after 1s
metaharness-ci / router-compat (push) Failing after 0s
metaharness-ci / similarity-tests (push) Failing after 0s
no-agentbbs-smoke / smoke-without-agentbbs (push) Failing after 1s
V3 CI/CD Pipeline / Build V3 (windows-latest) (push) Has been skipped
codex-integration-audit / Codex integration audit (push) Failing after 1s
helpers-manifest-guard / guard (push) Failing after 1s
🔗 Cross-Agent Integration Tests / 🤝 Agent Coordination Tests (push) Has been skipped
🔗 Cross-Agent Integration Tests / 🧠 Memory Sharing Integration (push) Has been skipped
🔗 Cross-Agent Integration Tests / 🛡️ Fault Tolerance Tests (push) Has been skipped
🔗 Cross-Agent Integration Tests / ⚡ Performance Integration Tests (push) Has been skipped
metaharness-ci / mcp-scan (push) Failing after 1s
metaharness-ci / eject-dryrun (push) Failing after 1s
metaharness-ci / metaharness-real-data (push) Failing after 0s
no-cli-optdep-bloat-2561 / guard (push) Failing after 1s
no-metaharness-smoke / smoke-without-metaharness (push) Failing after 1s
no-phantom-agentic-flow-subpath / guard (push) Failing after 1s
🔄 Automated Rollback Manager / 🚨 Failure Detection (push) Failing after 1s
V3 CI/CD Pipeline / Plugin hooks smoke / ubuntu-latest / Node 22 (push) Failing after 1s
V3 CI/CD Pipeline / ruflo-graph-intelligence build + test smoke (#2044, ADR-123) (push) Failing after 1s
CVE Audit Gate / Audit root (critical-blocking) (push) Failing after 2s
cost-tracker-smoke / smoke (push) Failing after 3s
oia-audit-weekly / audit (push) Failing after 2s
ruflo-agent-smoke / ruflo-agent structural smoke (push) Failing after 1s
📊 Status Badges Update / 📊 Update Status Badges (push) Failing after 1s
V3 CI/CD Pipeline / Static regression guards (#2267 YAML + (push) Failing after 1s
V3 CI/CD Pipeline / Test V3 Packages (push) Failing after 0s
V3 CI/CD Pipeline / agent_execute provider routing smoke (#2042) (push) Failing after 0s
CVE Audit Gate / Audit v3 (critical-blocking) (push) Failing after 1s
federation-peer-rust / stable-native (push) Failing after 2s
🔗 Cross-Agent Integration Tests / 🚀 Integration Test Setup (push) Failing after 2s
neural-trader-smoke / runtime-smoke (push) Failing after 1s
V3 CI/CD Pipeline / Build V3 (macos-latest) (push) Has been skipped
V3 CI/CD Pipeline / Build V3 (ubuntu-latest) (push) Has been skipped
V3 CI/CD Pipeline / Type Check V3 (push) Failing after 1s
V3 CI/CD Pipeline / Smoke (no better-sqlite3) / ubuntu-latest / Node 24 (push) Failing after 1s
V3 CI/CD Pipeline / Smoke (no better-sqlite3) / ubuntu-latest / Node 22 (push) Failing after 2s
V3 CI/CD Pipeline / browser rvf create flag smoke (#2015) (push) Failing after 0s
V3 CI/CD Pipeline / Dependency review (#2046) (push) Has been skipped
V3 CI/CD Pipeline / Supply-chain audit (#2046) (push) Failing after 0s
V3 CI/CD Pipeline / witness marker drift smoke (#2021) (push) Failing after 1s
V3 CI/CD Pipeline / neural-trader portfolio CG smoke (#2068, ADR-126 Phase 3) (push) Failing after 1s
V3 CI/CD Pipeline / neural-trader backtest signing smoke (#2068, ADR-126 Phase 4) (push) Failing after 1s
V3 CI/CD Pipeline / kg-extract type-import classification smoke (#2049) (push) Failing after 0s
V3 CI/CD Pipeline / witness verify precondition smoke (#1880) (push) Failing after 2s
V3 CI/CD Pipeline / neural-trader pipeline risk-gate smoke (#2068, ADR-126 Phase 5) (push) Failing after 0s
V3 CI/CD Pipeline / neural-trader feature attribution smoke (#2068, ADR-126 Phase 6) (push) Failing after 0s
V3 CI/CD Pipeline / plugin-registry signature verification smoke (#1922, CWE-347) (push) Failing after 4s
V3 CI/CD Pipeline / memory stats legacy-DB smoke (#2120) (push) Failing after 4s
V3 CI/CD Pipeline / github deprecated actions smoke (#2089, ADR-127 Phase 3) (push) Failing after 1s
V3 CI/CD Pipeline / graph query + pathfinder smoke (ADR-130 P2+P5) (push) Has been skipped
V3 CI/CD Pipeline / graph trajectory hooks smoke (ADR-130 P3) (push) Has been skipped
V3 CI/CD Pipeline / graph plugin adapter smoke (ADR-130 P4) (push) Has been skipped
V3 CI/CD Pipeline / graph benchmark (ADR-130 P6) (push) Has been skipped
V3 CI/CD Pipeline / statusline generator delegation smoke (#2195) (push) Failing after 1s
V3 CI/CD Pipeline / wizard init regression guard (#2206 (push) Failing after 1s
V3 CI/CD Pipeline / memory no-stray-db smoke (ADR-125 P7) (push) Failing after 1s
V3 CI/CD Pipeline / github-safe injection smoke (#2089, ADR-127 Phase 1) (push) Failing after 1s
V3 CI/CD Pipeline / github actions pin smoke (#2089, ADR-127 Phase 1) (push) Failing after 1s
V3 CI/CD Pipeline / github attribution opt-in smoke (#2089, ADR-127 Phase 4) (push) Failing after 1s
V3 CI/CD Pipeline / pre-bash hook safety smoke (#2017) (push) Failing after 1s
V3 CI/CD Pipeline / Memory import smoke / ubuntu-latest (push) Failing after 0s
V3 CI/CD Pipeline / MCP protocol smoke / ubuntu-latest (push) Failing after 2s
V3 CI/CD Pipeline / ruvllm WASM auto-init smoke (#2086) (push) Failing after 4s
V3 CI/CD Pipeline / MCP paired-tool round-trip smoke (#1889) (push) Failing after 1s
V3 CI/CD Pipeline / Plugin package install-safety (#1902/#1903/#1904) (push) Failing after 1s
V3 CI/CD Pipeline / Tool description discoverability (ADR-112) (push) Failing after 3s
V3 CI/CD Pipeline / CLI npx-install smoke (#1147 / (22) (push) Failing after 1s
V3 CI/CD Pipeline / CLI npx-install smoke (#1147 / (24) (push) Failing after 1s
V3 CI/CD Pipeline / Windows hook shim smoke (#2132) / ubuntu-latest (push) Failing after 2s
V3 CI/CD Pipeline / Windows hook execution smoke (#2132) / ubuntu-latest (push) Failing after 1s
V3 CI/CD Pipeline / Windows init hooks smoke (#2132) / ubuntu-latest (push) Failing after 1s
V3 CI/CD Pipeline / Vector-index dimension audit (#1947) (push) Failing after 0s
V3 CI/CD Pipeline / Hook-command install safety (#1921) (push) Failing after 1s
V3 CI/CD Pipeline / ToolOutputGuardrail smoke (ADR-131, (push) Failing after 1s
V3 CI/CD Pipeline / init-bundle invariants smoke (#2095, ADR-128 Phase 5) (push) Failing after 1s
V3 CI/CD Pipeline / wasm provider bridge smoke (ADR-129 P1) (push) Failing after 2s
V3 CI/CD Pipeline / wasm gallery CRUD smoke (ADR-129 P3) (push) Failing after 1s
V3 CI/CD Pipeline / wasm plugin bridge smoke (ADR-129 P4) (push) Failing after 0s
V3 CI/CD Pipeline / wasm compose smoke (ADR-129 P2) (push) Failing after 4s
V3 CI/CD Pipeline / graph schema smoke (ADR-130 P1) (push) Failing after 0s
Validate Marketplace / validate (push) Failing after 1s
🔍 Verification Pipeline / 🚀 Setup Verification (push) Failing after 1s
🔍 Verification Pipeline / 🛡️ Security Verification (push) Has been skipped
🔍 Verification Pipeline / 📝 Code Quality (push) Has been skipped
🔍 Verification Pipeline / 🧪 Test Verification (${{ matrix.os }}, Node ${{ matrix.node }}) (push) Has been skipped
🔍 Verification Pipeline / 🏗️ Build Verification (push) Has been skipped
🔍 Verification Pipeline / 📚 Documentation Verification (push) Has been skipped
CVE Audit Gate / High-severity report (warn only) (push) Has been cancelled
🔄 Automated Rollback Manager / 🔄 Execute Rollback (push) Has been cancelled
🔄 Automated Rollback Manager / ✅ Post-Rollback Verification (push) Has been cancelled
🔄 Automated Rollback Manager / 📊 Rollback Monitoring (push) Has been cancelled
V3 CI/CD Pipeline / Windows init hooks smoke (#2132) / windows-latest (push) Has been cancelled
V3 CI/CD Pipeline / Windows hook execution smoke (#2132) / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Windows hook execution smoke (#2132) / windows-latest (push) Has been cancelled
🔄 Automated Rollback Manager / ⏳ Manual Rollback Approval (push) Has been cancelled
V3 CI/CD Pipeline / MCP protocol smoke / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Memory import smoke / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Windows hook shim smoke (#2132) / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Windows hook shim smoke (#2132) / windows-latest (push) Has been cancelled
V3 CI/CD Pipeline / Windows init hooks smoke (#2132) / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Witness verify (signed manifest) / macos-latest (push) Has been cancelled
V3 CI/CD Pipeline / Witness verify (signed manifest) / ubuntu-latest (push) Has been cancelled
V3 CI/CD Pipeline / Witness verify (signed manifest) / windows-latest (push) Has been cancelled
V3 CI/CD Pipeline / Publish to npm (alpha) (push) Has been cancelled
V3 CI/CD Pipeline / Smoke (no better-sqlite3) / macos-latest / Node 22 (push) Has been cancelled
V3 CI/CD Pipeline / Plugin hooks smoke / macos-latest / Node 22 (push) Has been cancelled
CI/CD Pipeline / Deploy & Release (push) Has been cancelled
CI/CD Pipeline / CI Status (push) Has been cancelled
🔗 Cross-Agent Integration Tests / 📊 Integration Test Report (push) Has been cancelled
🔄 Automated Rollback Manager / 🔍 Pre-Rollback Validation (push) Has been cancelled
🔍 Verification Pipeline / ⚡ Performance Verification (push) Has been cancelled
🔍 Verification Pipeline / 📊 Verification Report (push) Has been cancelled
526 lines
16 KiB
Markdown
526 lines
16 KiB
Markdown
# V3 Statusline & Daemon Integration
|
|
|
|
## Overview
|
|
|
|
The V3 hooks system integrates with background daemons and statusline displays to provide real-time monitoring of swarm activity, implementation progress, and security status. This document covers the integration between hooks and the daemon infrastructure.
|
|
|
|
## Architecture
|
|
|
|
```
|
|
┌─────────────────────────────────────────────────────────────────────────┐
|
|
│ Claude Code Session │
|
|
├─────────────────────────────────────────────────────────────────────────┤
|
|
│ SessionStart Hook │
|
|
│ └─> .claude/helpers/daemon-manager.sh start │
|
|
│ ├─> swarm-monitor.sh (process detection, 3s interval) │
|
|
│ ├─> metrics-db.mjs (SQLite sync, 30s interval) │
|
|
│ └─> hooks-daemon.mjs (learning sync, 60s interval) │
|
|
├─────────────────────────────────────────────────────────────────────────┤
|
|
│ Hooks System Integration │
|
|
│ ├─> PreToolUse Hook → Activity detection → Metrics update │
|
|
│ ├─> PostToolUse Hook → Outcome recording → Pattern learning │
|
|
│ ├─> PreCommand Hook → Risk assessment → Security tracking │
|
|
│ └─> PostTask Hook → Progress update → Statusline refresh │
|
|
├─────────────────────────────────────────────────────────────────────────┤
|
|
│ statusline.sh (on-demand, <200ms) │
|
|
│ └─> Reads from: │
|
|
│ ├─ .claude-flow/metrics.db (SQLite, primary) │
|
|
│ ├─ .claude-flow/hooks.db (ReasoningBank patterns) │
|
|
│ └─ .claude-flow/metrics/*.json (exported, legacy compat) │
|
|
├─────────────────────────────────────────────────────────────────────────┤
|
|
│ SessionEnd Hook │
|
|
│ └─> .claude/helpers/daemon-manager.sh stop │
|
|
│ └─> Final metrics export, pattern consolidation │
|
|
└─────────────────────────────────────────────────────────────────────────┘
|
|
```
|
|
|
|
## Daemons
|
|
|
|
### 1. Daemon Manager (`daemon-manager.sh`)
|
|
|
|
Central control for all background processes with hooks integration.
|
|
|
|
```bash
|
|
# Start all daemons (called by SessionStart hook)
|
|
.claude/helpers/daemon-manager.sh start [swarm_interval] [metrics_interval] [hooks_interval]
|
|
|
|
# Default intervals: swarm=3s, metrics=30s, hooks=60s
|
|
.claude/helpers/daemon-manager.sh start 3 30 60
|
|
|
|
# Stop all daemons (called by SessionEnd hook)
|
|
.claude/helpers/daemon-manager.sh stop
|
|
|
|
# Restart with new configuration
|
|
.claude/helpers/daemon-manager.sh restart
|
|
|
|
# Check daemon status
|
|
.claude/helpers/daemon-manager.sh status
|
|
```
|
|
|
|
**PID Management:**
|
|
```
|
|
.claude-flow/pids/
|
|
├── swarm-monitor.pid # Swarm monitoring daemon
|
|
├── metrics-daemon.pid # Metrics collection daemon
|
|
└── hooks-daemon.pid # Hooks learning daemon
|
|
```
|
|
|
|
**Log Files:**
|
|
```
|
|
.claude-flow/logs/
|
|
├── daemon.log # Daemon manager operations
|
|
├── swarm-monitor.log # Process detection logs
|
|
├── metrics-daemon.log # Metrics sync logs
|
|
└── hooks-daemon.log # Learning operation logs
|
|
```
|
|
|
|
### 2. Metrics Database Daemon (`metrics-db.mjs`)
|
|
|
|
SQLite-based metrics storage with hooks integration.
|
|
|
|
```bash
|
|
# Sync metrics from implementation
|
|
node .claude/helpers/metrics-db.mjs sync
|
|
|
|
# Export to JSON (statusline compatibility)
|
|
node .claude/helpers/metrics-db.mjs export
|
|
|
|
# Run as daemon
|
|
node .claude/helpers/metrics-db.mjs daemon [interval_seconds]
|
|
|
|
# Query specific metrics
|
|
node .claude/helpers/metrics-db.mjs query "SELECT * FROM hooks_metrics"
|
|
```
|
|
|
|
**Extended Schema for Hooks:**
|
|
```sql
|
|
-- Hooks Activity Metrics
|
|
CREATE TABLE hooks_metrics (
|
|
id INTEGER PRIMARY KEY,
|
|
total_executions INTEGER,
|
|
total_failures INTEGER,
|
|
avg_execution_time REAL,
|
|
patterns_learned INTEGER,
|
|
routing_confidence REAL,
|
|
last_updated TEXT
|
|
);
|
|
|
|
-- Per-Hook Statistics
|
|
CREATE TABLE hook_stats (
|
|
hook_name TEXT PRIMARY KEY,
|
|
category TEXT,
|
|
execution_count INTEGER,
|
|
success_rate REAL,
|
|
avg_time_ms REAL,
|
|
last_executed TEXT
|
|
);
|
|
|
|
-- Routing History
|
|
CREATE TABLE routing_history (
|
|
id INTEGER PRIMARY KEY,
|
|
task_hash TEXT,
|
|
recommended_agent TEXT,
|
|
confidence REAL,
|
|
was_successful INTEGER,
|
|
timestamp TEXT
|
|
);
|
|
|
|
-- Learning Patterns
|
|
CREATE TABLE learning_patterns (
|
|
pattern_id TEXT PRIMARY KEY,
|
|
category TEXT,
|
|
quality_score REAL,
|
|
usage_count INTEGER,
|
|
created_at TEXT,
|
|
last_used TEXT
|
|
);
|
|
```
|
|
|
|
### 3. Swarm Monitor Daemon (`swarm-monitor.sh`)
|
|
|
|
Real-time process detection with hooks event emission.
|
|
|
|
```bash
|
|
# Single check (returns JSON)
|
|
.claude/helpers/swarm-monitor.sh check
|
|
|
|
# Continuous monitoring with hooks notification
|
|
.claude/helpers/swarm-monitor.sh monitor [interval]
|
|
|
|
# Status with hooks metrics
|
|
.claude/helpers/swarm-monitor.sh status --include-hooks
|
|
```
|
|
|
|
**Output:**
|
|
```json
|
|
{
|
|
"timestamp": "2025-01-05T12:00:00Z",
|
|
"swarm": {
|
|
"agentic_flow_processes": 3,
|
|
"mcp_server_processes": 2,
|
|
"estimated_agents": 5,
|
|
"active": true,
|
|
"coordination_active": true
|
|
},
|
|
"hooks": {
|
|
"daemon_running": true,
|
|
"patterns_loaded": 156,
|
|
"routing_enabled": true
|
|
}
|
|
}
|
|
```
|
|
|
|
### 4. Hooks Learning Daemon (`hooks-daemon.mjs`)
|
|
|
|
Background process for ReasoningBank consolidation.
|
|
|
|
```bash
|
|
# Run consolidation cycle
|
|
node .claude/helpers/hooks-daemon.mjs consolidate
|
|
|
|
# Run as daemon
|
|
node .claude/helpers/hooks-daemon.mjs daemon [interval_seconds]
|
|
|
|
# Export patterns
|
|
node .claude/helpers/hooks-daemon.mjs export --format json
|
|
```
|
|
|
|
**Operations:**
|
|
- **Trajectory pruning**: Remove low-quality trajectories
|
|
- **Pattern consolidation**: Merge similar patterns
|
|
- **Memory optimization**: Compress old patterns
|
|
- **Index rebuilding**: Optimize HNSW index
|
|
|
|
## Statusline Integration
|
|
|
|
### Format
|
|
|
|
```
|
|
▊ Claude Flow V3 ● agentic-flow@alpha │ ⎇ v3
|
|
─────────────────────────────────────────────────────
|
|
🏗️ DDD Domains [●●●●●] 5/5 ⚡ 1.0x → 2.49x-7.47x
|
|
🤖 Swarm Agents ◉ [ 5/15] 🟢 CVE 3/3 💾 156 patterns
|
|
🔧 Architecture DDD ●93% │ Security ●CLEAN │ Hooks ●ACTIVE
|
|
📊 Routing 89% accuracy │ Avg 4.2ms │ 1547 operations
|
|
─────────────────────────────────────────────────────
|
|
```
|
|
|
|
### Statusline Script
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
# .claude/statusline.sh - V3 with Hooks Integration
|
|
|
|
# Read from SQLite if available
|
|
if [ -f ".claude-flow/metrics.db" ]; then
|
|
METRICS=$(node -e "
|
|
const db = require('.claude/helpers/metrics-db.mjs');
|
|
console.log(JSON.stringify(db.getStatuslineData()));
|
|
" 2>/dev/null)
|
|
|
|
# Extract values
|
|
DDD_PROGRESS=$(echo "$METRICS" | jq -r '.ddd_progress // 0')
|
|
ACTIVE_AGENTS=$(echo "$METRICS" | jq -r '.active_agents // 0')
|
|
CVE_STATUS=$(echo "$METRICS" | jq -r '.cve_status // "PENDING"')
|
|
PATTERNS=$(echo "$METRICS" | jq -r '.patterns_learned // 0')
|
|
ROUTING_ACC=$(echo "$METRICS" | jq -r '.routing_accuracy // 0')
|
|
HOOK_STATUS=$(echo "$METRICS" | jq -r '.hooks_status // "INACTIVE"')
|
|
fi
|
|
|
|
# Format output
|
|
printf "▊ Claude Flow V3 ● agentic-flow@alpha │ ⎇ v3\n"
|
|
printf "─────────────────────────────────────────────────────\n"
|
|
printf "🏗️ DDD Domains %s │ ⚡ Performance targets active\n" "$DDD_PROGRESS"
|
|
printf "🤖 Swarm Agents ◉ [%2d/15] 🟢 CVE %s 💾 %d patterns\n" "$ACTIVE_AGENTS" "$CVE_STATUS" "$PATTERNS"
|
|
printf "🔧 Hooks %s │ Routing %d%% │ Learning %s\n" "$HOOK_STATUS" "$ROUTING_ACC" "ACTIVE"
|
|
printf "─────────────────────────────────────────────────────\n"
|
|
```
|
|
|
|
### Performance
|
|
|
|
| Component | Target | Typical |
|
|
|-----------|--------|---------|
|
|
| statusline.sh total | <200ms | 138ms |
|
|
| SQLite query | <50ms | 12ms |
|
|
| JSON export | <100ms | 45ms |
|
|
| Hooks metrics | <20ms | 8ms |
|
|
|
|
## Hook Configuration
|
|
|
|
### Claude Settings (`~/.claude/settings.json`)
|
|
|
|
```json
|
|
{
|
|
"hooks": {
|
|
"SessionStart": [
|
|
{
|
|
"hooks": [
|
|
{
|
|
"type": "command",
|
|
"timeout": 5000,
|
|
"command": "/workspaces/claude-flow/.claude/helpers/daemon-manager.sh start 3 30 60"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"SessionEnd": [
|
|
{
|
|
"hooks": [
|
|
{
|
|
"type": "command",
|
|
"timeout": 3000,
|
|
"command": "/workspaces/claude-flow/.claude/helpers/daemon-manager.sh stop"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"PreToolUse": [
|
|
{
|
|
"hooks": [
|
|
{
|
|
"type": "command",
|
|
"timeout": 100,
|
|
"command": "node .claude/helpers/hooks-daemon.mjs notify-activity"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"statusLine": {
|
|
"type": "command",
|
|
"command": "/workspaces/claude-flow/.claude/statusline.sh"
|
|
}
|
|
}
|
|
```
|
|
|
|
### V3 Project Settings (`.claude-flow/config.json`)
|
|
|
|
```json
|
|
{
|
|
"daemons": {
|
|
"enabled": true,
|
|
"swarmMonitor": {
|
|
"enabled": true,
|
|
"interval": 3000
|
|
},
|
|
"metricsSync": {
|
|
"enabled": true,
|
|
"interval": 30000,
|
|
"database": ".claude-flow/metrics.db"
|
|
},
|
|
"hooksLearning": {
|
|
"enabled": true,
|
|
"interval": 60000,
|
|
"database": ".claude-flow/hooks.db"
|
|
}
|
|
},
|
|
"statusline": {
|
|
"enabled": true,
|
|
"refreshOnHook": true,
|
|
"showHooksMetrics": true,
|
|
"showSwarmActivity": true
|
|
}
|
|
}
|
|
```
|
|
|
|
## Event Flow
|
|
|
|
### 1. Session Start
|
|
|
|
```
|
|
SessionStart Hook Triggered
|
|
│
|
|
├─> daemon-manager.sh start
|
|
│ ├─> Start swarm-monitor.sh (every 3s)
|
|
│ ├─> Start metrics-db.mjs daemon (every 30s)
|
|
│ └─> Start hooks-daemon.mjs (every 60s)
|
|
│
|
|
├─> Initialize ReasoningBank
|
|
│ ├─> Load patterns from .claude-flow/hooks.db
|
|
│ └─> Warm HNSW index for retrieval
|
|
│
|
|
└─> First statusline render
|
|
```
|
|
|
|
### 2. During Session
|
|
|
|
```
|
|
Tool Use (e.g., Edit)
|
|
│
|
|
├─> PreToolUse Hook
|
|
│ ├─> hooks-daemon.mjs notify-activity
|
|
│ └─> Increment metrics counter
|
|
│
|
|
├─> Tool Execution
|
|
│
|
|
└─> PostToolUse Hook
|
|
├─> Record outcome to ReasoningBank
|
|
├─> Update hooks_metrics table
|
|
└─> (If successful) Queue pattern distillation
|
|
```
|
|
|
|
### 3. Background Sync
|
|
|
|
```
|
|
Every 30 seconds (metrics-db.mjs daemon):
|
|
│
|
|
├─> Scan V3 implementation files
|
|
│ ├─> Count files per module
|
|
│ └─> Calculate DDD progress
|
|
│
|
|
├─> Check security status
|
|
│ └─> CVE remediation count
|
|
│
|
|
├─> Export JSON for statusline
|
|
│
|
|
└─> Log sync completion
|
|
|
|
Every 60 seconds (hooks-daemon.mjs):
|
|
│
|
|
├─> Consolidate ReasoningBank patterns
|
|
│ ├─> Prune low-quality trajectories
|
|
│ └─> Merge duplicate patterns
|
|
│
|
|
├─> Update hook_stats table
|
|
│
|
|
└─> Optimize HNSW index if needed
|
|
```
|
|
|
|
### 4. Session End
|
|
|
|
```
|
|
SessionEnd Hook Triggered
|
|
│
|
|
├─> daemon-manager.sh stop
|
|
│ ├─> SIGTERM to all daemons
|
|
│ └─> Wait for graceful shutdown
|
|
│
|
|
├─> Final ReasoningBank consolidation
|
|
│ └─> Export learned patterns
|
|
│
|
|
├─> Final metrics sync
|
|
│ └─> Export to JSON
|
|
│
|
|
└─> Log session summary
|
|
```
|
|
|
|
## Metrics Tracked
|
|
|
|
### Hooks Performance
|
|
|
|
| Metric | Description | Update Frequency |
|
|
|--------|-------------|------------------|
|
|
| `total_executions` | Total hook invocations | Real-time |
|
|
| `total_failures` | Failed hook executions | Real-time |
|
|
| `avg_execution_time` | Average hook time (ms) | Every 30s |
|
|
| `patterns_learned` | ReasoningBank patterns | Every 60s |
|
|
| `routing_accuracy` | Task routing success rate | Every 60s |
|
|
| `routing_confidence` | Average routing confidence | Every 60s |
|
|
|
|
### Per-Hook Statistics
|
|
|
|
| Metric | Description |
|
|
|--------|-------------|
|
|
| `hook_name` | Hook identifier |
|
|
| `category` | pre-edit, post-edit, routing, etc. |
|
|
| `execution_count` | Times executed |
|
|
| `success_rate` | Success percentage |
|
|
| `avg_time_ms` | Average execution time |
|
|
| `last_executed` | Timestamp of last execution |
|
|
|
|
### Learning Metrics
|
|
|
|
| Metric | Description |
|
|
|--------|-------------|
|
|
| `trajectories_stored` | Total trajectories in ReasoningBank |
|
|
| `patterns_distilled` | Memories extracted from trajectories |
|
|
| `consolidation_runs` | Pattern consolidation cycles |
|
|
| `index_size` | HNSW index entry count |
|
|
| `avg_retrieval_time` | Pattern retrieval latency |
|
|
|
|
## Troubleshooting
|
|
|
|
### Daemons Not Starting
|
|
|
|
```bash
|
|
# Check daemon status
|
|
.claude/helpers/daemon-manager.sh status
|
|
|
|
# View logs
|
|
tail -f .claude-flow/logs/daemon.log
|
|
|
|
# Check for stale PID files
|
|
ls -la .claude-flow/pids/
|
|
|
|
# Manual cleanup and restart
|
|
rm .claude-flow/pids/*.pid
|
|
.claude/helpers/daemon-manager.sh start
|
|
```
|
|
|
|
### Statusline Not Updating
|
|
|
|
```bash
|
|
# Force metrics sync
|
|
node .claude/helpers/metrics-db.mjs sync
|
|
|
|
# Check SQLite database
|
|
sqlite3 .claude-flow/metrics.db "SELECT * FROM hooks_metrics"
|
|
|
|
# Verify statusline script
|
|
bash -x .claude/statusline.sh
|
|
```
|
|
|
|
### ReasoningBank Issues
|
|
|
|
```bash
|
|
# Check hooks database
|
|
node .claude/helpers/hooks-daemon.mjs status
|
|
|
|
# Force consolidation
|
|
node .claude/helpers/hooks-daemon.mjs consolidate --force
|
|
|
|
# Rebuild patterns
|
|
node .claude/helpers/hooks-daemon.mjs rebuild-index
|
|
```
|
|
|
|
### High CPU from Daemons
|
|
|
|
```bash
|
|
# Increase daemon intervals
|
|
.claude/helpers/daemon-manager.sh restart 10 60 120
|
|
|
|
# Disable non-essential daemons
|
|
.claude/helpers/daemon-manager.sh start --no-hooks-daemon
|
|
```
|
|
|
|
## Files Reference
|
|
|
|
```
|
|
.claude/
|
|
├── statusline.sh # Main statusline script
|
|
├── settings.json # Claude settings with hooks
|
|
└── helpers/
|
|
├── daemon-manager.sh # Daemon lifecycle
|
|
├── metrics-db.mjs # Metrics SQLite engine
|
|
├── swarm-monitor.sh # Process detection
|
|
└── hooks-daemon.mjs # Learning background process
|
|
|
|
.claude-flow/
|
|
├── metrics.db # Main metrics database
|
|
├── hooks.db # ReasoningBank storage
|
|
├── config.json # V3 configuration
|
|
├── pids/
|
|
│ ├── swarm-monitor.pid
|
|
│ ├── metrics-daemon.pid
|
|
│ └── hooks-daemon.pid
|
|
├── logs/
|
|
│ ├── daemon.log
|
|
│ ├── swarm-monitor.log
|
|
│ ├── metrics-daemon.log
|
|
│ └── hooks-daemon.log
|
|
└── metrics/
|
|
├── v3-progress.json # Exported V3 metrics
|
|
├── swarm-activity.json # Exported swarm status
|
|
└── hooks-metrics.json # Exported hooks metrics
|
|
```
|