agentic-flow 2.0.1-alpha.11 → 2.0.1-alpha.13

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.
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/hooks.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoCpC,wBAAgB,kBAAkB,IAAI,OAAO,CA40B5C;AAED,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/hooks.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoCpC,wBAAgB,kBAAkB,IAAI,OAAO,CAi1B5C;AAED,eAAe,kBAAkB,CAAC"}
@@ -675,8 +675,13 @@ export function createHooksCommand() {
675
675
  console.log(` Enabled: ${result.features?.hnsw?.enabled ?? true}`);
676
676
  console.log(` Speedup: ${result.features?.hnsw?.speedup || '150x vs brute-force'}`);
677
677
  console.log(`\nšŸ“ˆ Learning:`);
678
- console.log(` Trajectories: ${result.stats?.trajectoryCount || 0}`);
678
+ console.log(` Trajectories: ${result.persistence?.trajectories ?? result.stats?.trajectoryCount ?? 0}`);
679
679
  console.log(` Active: ${result.stats?.activeTrajectories || 0}`);
680
+ console.log(`\nšŸ’¾ Persistence (SQLite):`);
681
+ console.log(` Backend: ${result.persistence?.backend || 'sqlite'}`);
682
+ console.log(` Routings: ${result.persistence?.routings ?? 0}`);
683
+ console.log(` Patterns: ${result.persistence?.patterns ?? 0}`);
684
+ console.log(` Operations: ${result.persistence?.operations ?? 0}`);
680
685
  }
681
686
  }
682
687
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/cli/commands/hooks.ts"],"names":[],"mappings":"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","sourcesContent":["#!/usr/bin/env node\n/**\n * CLI Hooks Commands\n * Provides CLI interface for agentic-flow hook tools\n *\n * NOW WITH FULL RUVECTOR INTELLIGENCE:\n * - @ruvector/sona: Micro-LoRA (~0.05ms), EWC++, Trajectory tracking\n * - @ruvector/attention: MoE, Flash, Hyperbolic, Graph attention\n * - ruvector core: HNSW indexing (150x faster)\n *\n * Available as BOTH:\n * 1. CLI Commands (agentic-flow hooks ...)\n * 2. MCP Tools (via hooks-server.ts)\n */\n\nimport { Command } from 'commander';\nimport * as path from 'path';\n\n// Import hook tools\nimport { hookPreEditTool } from '../../mcp/fastmcp/tools/hooks/pre-edit.js';\nimport { hookPostEditTool } from '../../mcp/fastmcp/tools/hooks/post-edit.js';\nimport { hookPreCommandTool } from '../../mcp/fastmcp/tools/hooks/pre-command.js';\nimport { hookPostCommandTool } from '../../mcp/fastmcp/tools/hooks/post-command.js';\nimport { hookRouteTool } from '../../mcp/fastmcp/tools/hooks/route.js';\nimport { hookExplainTool } from '../../mcp/fastmcp/tools/hooks/explain.js';\nimport { hookPretrainTool } from '../../mcp/fastmcp/tools/hooks/pretrain.js';\nimport { hookBuildAgentsTool } from '../../mcp/fastmcp/tools/hooks/build-agents.js';\nimport { hookMetricsTool } from '../../mcp/fastmcp/tools/hooks/metrics.js';\nimport { hookTransferTool } from '../../mcp/fastmcp/tools/hooks/transfer.js';\n\n// Import intelligence tools (RuVector SONA + Attention + HNSW)\nimport {\n intelligenceRouteTool,\n intelligenceTrajectoryStartTool,\n intelligenceTrajectoryStepTool,\n intelligenceTrajectoryEndTool,\n intelligencePatternStoreTool,\n intelligencePatternSearchTool,\n intelligenceStatsTool,\n intelligenceLearnTool,\n intelligenceAttentionTool\n} from '../../mcp/fastmcp/tools/hooks/intelligence-tools.js';\n\nconst mockContext = {\n onProgress: (update: { progress: number; message: string }) => {\n if (process.env.VERBOSE) {\n console.log(`[${Math.round(update.progress * 100)}%] ${update.message}`);\n }\n }\n};\n\nexport function createHooksCommand(): Command {\n const hooks = new Command('hooks')\n .description('Self-learning intelligence hooks for agent routing and optimization');\n\n // Pre-edit hook\n hooks\n .command('pre-edit <filePath>')\n .description('Get context and agent suggestion before editing a file')\n .option('-t, --task <task>', 'Task description')\n .option('-j, --json', 'Output as JSON')\n .action(async (filePath: string, options: { task?: string; json?: boolean }) => {\n try {\n const result = await hookPreEditTool.execute(\n { filePath, task: options.task },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸŽÆ Suggested Agent: ${result.suggestedAgent}`);\n console.log(`šŸ“Š Confidence: ${(result.confidence * 100).toFixed(1)}%`);\n if (result.relatedFiles?.length > 0) {\n console.log(`šŸ“ Related Files:`);\n result.relatedFiles.forEach((f: string) => console.log(` - ${f}`));\n }\n console.log(`ā±ļø Latency: ${result.latencyMs}ms`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Post-edit hook\n hooks\n .command('post-edit <filePath>')\n .description('Record edit outcome for learning')\n .option('-s, --success', 'Mark as successful edit')\n .option('-f, --fail', 'Mark as failed edit')\n .option('-a, --agent <agent>', 'Agent that performed the edit')\n .option('-d, --duration <ms>', 'Edit duration in milliseconds', parseInt)\n .option('-e, --error <message>', 'Error message if failed')\n .option('-j, --json', 'Output as JSON')\n .action(async (filePath: string, options: {\n success?: boolean;\n fail?: boolean;\n agent?: string;\n duration?: number;\n error?: string;\n json?: boolean;\n }) => {\n try {\n const success = options.success || !options.fail;\n const result = await hookPostEditTool.execute(\n {\n filePath,\n success,\n agent: options.agent,\n duration: options.duration,\n errorMessage: options.error\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\n${success ? 'āœ…' : 'āŒ'} Edit recorded: ${filePath}`);\n console.log(`šŸ“ˆ Pattern updated: ${result.newPatternValue?.toFixed(2) || 'N/A'}`);\n console.log(`šŸ“Š Routing accuracy: ${(result.routingAccuracy * 100).toFixed(1)}%`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Pre-command hook\n hooks\n .command('pre-command <command>')\n .description('Assess command risk before execution')\n .option('-j, --json', 'Output as JSON')\n .action(async (command: string, options: { json?: boolean }) => {\n try {\n const result = await hookPreCommandTool.execute({ command }, mockContext);\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n const riskIcon = result.blocked ? '🚫' :\n result.riskCategory === 'safe' ? 'āœ…' :\n result.riskCategory === 'caution' ? 'āš ļø' : 'āŒ';\n console.log(`\\n${riskIcon} Risk Level: ${result.riskCategory.toUpperCase()} (${(result.riskLevel * 100).toFixed(0)}%)`);\n if (result.blocked) {\n console.log(`🚫 Command BLOCKED - dangerous operation detected`);\n } else if (result.approved) {\n console.log(`āœ… Command APPROVED`);\n }\n if (result.suggestions?.length > 0) {\n console.log(`šŸ’” Suggestions:`);\n result.suggestions.forEach((s: string) => console.log(` - ${s}`));\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Post-command hook\n hooks\n .command('post-command <command>')\n .description('Record command outcome for learning')\n .option('-c, --exit-code <code>', 'Exit code', parseInt, 0)\n .option('-o, --stdout <output>', 'Command stdout')\n .option('-e, --stderr <error>', 'Command stderr')\n .option('-j, --json', 'Output as JSON')\n .action(async (command: string, options: {\n exitCode?: number;\n stdout?: string;\n stderr?: string;\n json?: boolean;\n }) => {\n try {\n const result = await hookPostCommandTool.execute(\n {\n command,\n exitCode: options.exitCode ?? 0,\n stdout: options.stdout,\n stderr: options.stderr\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\n${result.commandSuccess ? 'āœ…' : 'āŒ'} Command outcome recorded`);\n console.log(`šŸ“š Learned: ${result.learned ? 'Yes' : 'No'}`);\n if (result.errorType) {\n console.log(`šŸ” Error type: ${result.errorType}`);\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Route hook\n hooks\n .command('route <task>')\n .description('Route task to optimal agent using learned patterns')\n .option('-f, --file <filePath>', 'Context file path')\n .option('-e, --explore', 'Enable exploration mode')\n .option('-j, --json', 'Output as JSON')\n .action(async (task: string, options: {\n file?: string;\n explore?: boolean;\n json?: boolean;\n }) => {\n try {\n const result = await hookRouteTool.execute(\n {\n task,\n context: options.file ? { file: options.file } : undefined,\n explore: options.explore\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸŽÆ Recommended Agent: ${result.agent}`);\n console.log(`šŸ“Š Confidence: ${(result.confidence * 100).toFixed(1)}%`);\n if (result.explored) {\n console.log(`šŸ” Exploration mode: Active`);\n }\n console.log(`\\nšŸ“‹ Routing Factors:`);\n result.factors.forEach((f: { name: string; score: number }) => {\n console.log(` • ${f.name}: ${(f.score * 100).toFixed(0)}%`);\n });\n if (result.alternatives?.length > 0) {\n console.log(`\\nšŸ”„ Alternatives:`);\n result.alternatives.forEach((a: { agent: string; score: number }) => {\n console.log(` - ${a.agent} (${(a.score * 100).toFixed(0)}%)`);\n });\n }\n console.log(`\\nā±ļø Latency: ${result.latencyMs}ms`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Explain hook\n hooks\n .command('explain <task>')\n .description('Explain routing decision with full transparency')\n .option('-f, --file <filePath>', 'Context file path')\n .option('-j, --json', 'Output as JSON')\n .action(async (task: string, options: {\n file?: string;\n json?: boolean;\n }) => {\n try {\n const result = await hookExplainTool.execute(\n { task, file: options.file },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ“ Summary: ${result.summary}`);\n console.log(`\\nšŸŽÆ Recommended: ${result.recommendedAgent}`);\n console.log(`\\nšŸ’” Reasons:`);\n result.reasons.forEach((r: string) => console.log(` • ${r}`));\n console.log(`\\nšŸ† Agent Ranking:`);\n result.ranking.forEach((r: { rank: number; agent: string; score: number }) => {\n console.log(` ${r.rank}. ${r.agent} - ${(r.score * 100).toFixed(1)}%`);\n });\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Pretrain hook\n hooks\n .command('pretrain')\n .description('Analyze repository to bootstrap intelligence')\n .option('-d, --depth <n>', 'Git history depth', parseInt, 50)\n .option('--skip-git', 'Skip git history analysis')\n .option('--skip-files', 'Skip file structure analysis')\n .option('-j, --json', 'Output as JSON')\n .action(async (options: {\n depth?: number;\n skipGit?: boolean;\n skipFiles?: boolean;\n json?: boolean;\n }) => {\n try {\n console.log('🧠 Analyzing repository...\\n');\n const result = await hookPretrainTool.execute(\n {\n depth: options.depth ?? 50,\n skipGit: options.skipGit ?? false,\n skipFiles: options.skipFiles ?? false\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ“Š Pretrain Complete!`);\n console.log(` šŸ“ Files analyzed: ${result.filesAnalyzed}`);\n console.log(` 🧩 Patterns created: ${result.patternsCreated}`);\n console.log(` šŸ’¾ Memories stored: ${result.memoriesStored}`);\n console.log(` šŸ”— Co-edits found: ${result.coEditsFound || 0}`);\n if (result.languages?.length > 0) {\n console.log(` 🌐 Languages: ${result.languages.join(', ')}`);\n }\n console.log(` ā±ļø Duration: ${result.durationMs}ms`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Build-agents hook\n hooks\n .command('build-agents')\n .description('Generate optimized agent configurations from pretrain data')\n .option('-f, --focus <mode>', 'Focus mode: quality|speed|security|testing|fullstack', 'quality')\n .option('-o, --output <dir>', 'Output directory', '.claude/agents')\n .option('--format <fmt>', 'Output format: yaml|json', 'yaml')\n .option('--no-prompts', 'Exclude system prompts')\n .option('-j, --json', 'Output as JSON')\n .action(async (options: {\n focus?: string;\n output?: string;\n format?: string;\n prompts?: boolean;\n json?: boolean;\n }) => {\n try {\n console.log(`šŸ—ļø Building agents with focus: ${options.focus}...\\n`);\n const result = await hookBuildAgentsTool.execute(\n {\n focus: options.focus as 'quality' | 'speed' | 'security' | 'testing' | 'fullstack',\n output: options.output,\n format: options.format as 'yaml' | 'json',\n includePrompts: options.prompts !== false\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nāœ… Agents Generated!`);\n console.log(` šŸ“¦ Total: ${result.agentsGenerated}`);\n console.log(` šŸ“‚ Output: ${result.outputDir}`);\n console.log(` šŸŽÆ Focus: ${result.focus}`);\n console.log(`\\n Agents created:`);\n result.agents.forEach((a: string) => console.log(` • ${a}`));\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Metrics hook\n hooks\n .command('metrics')\n .alias('stats')\n .description('View learning metrics and performance dashboard')\n .option('-t, --timeframe <period>', 'Timeframe: 1h|24h|7d|30d', '24h')\n .option('-d, --detailed', 'Show detailed metrics')\n .option('-j, --json', 'Output as JSON')\n .action(async (options: {\n timeframe?: string;\n detailed?: boolean;\n json?: boolean;\n }) => {\n try {\n const result = await hookMetricsTool.execute(\n {\n timeframe: options.timeframe as '1h' | '24h' | '7d' | '30d',\n detailed: options.detailed\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ“Š Learning Metrics (${options.timeframe || '24h'})\\n`);\n console.log(`šŸŽÆ Routing:`);\n console.log(` Total routes: ${result.routing.total}`);\n console.log(` Successful: ${result.routing.successful}`);\n console.log(` Accuracy: ${(result.routing.accuracy * 100).toFixed(1)}%`);\n\n console.log(`\\nšŸ“š Learning:`);\n console.log(` Patterns: ${result.learning.patterns}`);\n console.log(` Memories: ${result.learning.memories}`);\n console.log(` Error patterns: ${result.learning.errorPatterns}`);\n\n console.log(`\\nšŸ’š Health: ${result.health.status.toUpperCase()}`);\n if (result.health.issues?.length > 0) {\n console.log(` Issues:`);\n result.health.issues.forEach((i: string) => console.log(` āš ļø ${i}`));\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Transfer hook\n hooks\n .command('transfer <sourceProject>')\n .description('Transfer learned patterns from another project')\n .option('-c, --min-confidence <n>', 'Minimum confidence threshold', parseFloat, 0.7)\n .option('-m, --max-patterns <n>', 'Maximum patterns to transfer', parseInt, 50)\n .option('--mode <mode>', 'Transfer mode: merge|replace|additive', 'merge')\n .option('-j, --json', 'Output as JSON')\n .action(async (sourceProject: string, options: {\n minConfidence?: number;\n maxPatterns?: number;\n mode?: string;\n json?: boolean;\n }) => {\n try {\n console.log(`šŸ“¤ Transferring patterns from: ${sourceProject}...\\n`);\n const result = await hookTransferTool.execute(\n {\n sourceProject,\n minConfidence: options.minConfidence,\n maxPatterns: options.maxPatterns,\n mode: options.mode as 'merge' | 'replace' | 'additive'\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nāœ… Transfer Complete!`);\n console.log(` šŸ“„ Patterns transferred: ${result.transferred}`);\n console.log(` šŸ”„ Patterns adapted: ${result.adapted}`);\n console.log(` šŸŽÆ Mode: ${result.mode}`);\n if (result.targetStack?.length > 0) {\n console.log(` šŸ› ļø Target stack: ${result.targetStack.join(', ')}`);\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Init command (creates .claude/settings.json with hooks)\n hooks\n .command('init')\n .description('Initialize hooks in project with .claude/settings.json')\n .option('--minimal', 'Minimal configuration')\n .option('--force', 'Overwrite existing configuration')\n .action(async (options: { minimal?: boolean; force?: boolean }) => {\n try {\n const fs = await import('fs');\n const settingsPath = path.join(process.cwd(), '.claude', 'settings.json');\n const claudeDir = path.dirname(settingsPath);\n\n // Check if exists\n if (fs.existsSync(settingsPath) && !options.force) {\n console.log('āš ļø Settings file already exists. Use --force to overwrite.');\n return;\n }\n\n // Create .claude directory\n if (!fs.existsSync(claudeDir)) {\n fs.mkdirSync(claudeDir, { recursive: true });\n }\n\n // Create settings\n const settings = {\n hooks: {\n PreToolUse: [\n {\n matcher: 'Edit|Write',\n hooks: [\n {\n type: 'command',\n command: 'agentic-flow hooks pre-edit \"$TOOL_INPUT_file_path\"'\n }\n ]\n },\n {\n matcher: 'Bash',\n hooks: [\n {\n type: 'command',\n command: 'agentic-flow hooks pre-command \"$TOOL_INPUT_command\"'\n }\n ]\n }\n ],\n PostToolUse: [\n {\n matcher: 'Edit|Write',\n hooks: [\n {\n type: 'command',\n command: 'agentic-flow hooks post-edit \"$TOOL_INPUT_file_path\" --success'\n }\n ]\n }\n ],\n SessionStart: [\n {\n type: 'command',\n command: 'agentic-flow hooks metrics --json'\n }\n ]\n },\n permissions: {\n allow: [\n 'Bash(agentic-flow:*)',\n 'mcp__agentic-flow'\n ]\n }\n };\n\n fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2));\n console.log('āœ… Hooks initialized!');\n console.log(` šŸ“ Created: ${settingsPath}`);\n console.log('\\nšŸ’” Next steps:');\n console.log(' 1. Run: agentic-flow hooks pretrain');\n console.log(' 2. Run: agentic-flow hooks build-agents');\n console.log(' 3. Start using Claude Code with intelligent routing!');\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // ============================================\n // RUVECTOR INTELLIGENCE COMMANDS\n // SONA Micro-LoRA + MoE Attention + HNSW\n // ============================================\n\n // Create intelligence subcommand group\n const intelligence = new Command('intelligence')\n .alias('intel')\n .description('RuVector intelligence: SONA Micro-LoRA (~0.05ms) + MoE attention + HNSW (150x faster)');\n\n // Intelligence route command\n intelligence\n .command('route <task>')\n .description('Route task using SONA + MoE + HNSW (150x faster than brute force)')\n .option('-f, --file <path>', 'File context')\n .option('-e, --error <context>', 'Error context for debugging')\n .option('-k, --top-k <n>', 'Number of candidates', parseInt, 5)\n .option('-j, --json', 'Output as JSON')\n .action(async (task: string, options: {\n file?: string;\n error?: string;\n topK?: number;\n json?: boolean;\n }) => {\n try {\n const result = await intelligenceRouteTool.execute(\n { task, file: options.file, errorContext: options.error, topK: options.topK },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\n⚔ RuVector Intelligence Route`);\n console.log(`šŸŽÆ Agent: ${result.agent}`);\n console.log(`šŸ“Š Confidence: ${((result.confidence || 0) * 100).toFixed(1)}%`);\n console.log(`šŸ”§ Engine: ${result.engine}`);\n console.log(`ā±ļø Latency: ${result.latencyMs?.toFixed(2)}ms`);\n if (result.features?.length > 0) {\n console.log(`🧠 Features: ${result.features.join(', ')}`);\n }\n if (result.alternatives?.length > 0) {\n console.log(`\\nšŸ”„ Alternatives:`);\n result.alternatives.forEach((a: any) => {\n console.log(` - ${a.agent} (${((a.confidence || 0) * 100).toFixed(1)}%)`);\n });\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Trajectory start command\n intelligence\n .command('trajectory-start <task>')\n .description('Begin SONA trajectory for reinforcement learning')\n .requiredOption('-a, --agent <name>', 'Agent executing the task')\n .option('-c, --context <text>', 'Additional context')\n .option('-j, --json', 'Output as JSON')\n .action(async (task: string, options: {\n agent: string;\n context?: string;\n json?: boolean;\n }) => {\n try {\n const result = await intelligenceTrajectoryStartTool.execute(\n { task, agent: options.agent, context: options.context },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸŽ¬ Trajectory Started`);\n console.log(`šŸ“ ID: ${result.trajectoryId}`);\n console.log(`šŸ¤– Agent: ${options.agent}`);\n console.log(`🧠 Features: ${result.features?.join(', ')}`);\n console.log(`\\nšŸ’” Use this ID with trajectory-step and trajectory-end commands`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Trajectory step command\n intelligence\n .command('trajectory-step <trajectoryId>')\n .description('Record step in trajectory for reinforcement learning')\n .requiredOption('-a, --action <action>', 'Action taken')\n .requiredOption('-r, --reward <n>', 'Reward signal (-1 to 1)', parseFloat)\n .option('-f, --file <path>', 'File involved')\n .option('--error-fixed', 'Mark as error fix')\n .option('--test-passed', 'Mark as test passed')\n .option('-j, --json', 'Output as JSON')\n .action(async (trajectoryId: string, options: {\n action: string;\n reward: number;\n file?: string;\n errorFixed?: boolean;\n testPassed?: boolean;\n json?: boolean;\n }) => {\n try {\n const result = await intelligenceTrajectoryStepTool.execute(\n {\n trajectoryId: parseInt(trajectoryId),\n action: options.action,\n reward: options.reward,\n file: options.file,\n errorFixed: options.errorFixed,\n testPassed: options.testPassed\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ“ Step Recorded`);\n console.log(` Action: ${options.action}`);\n console.log(` Reward: ${options.reward}`);\n console.log(` Trajectory: ${trajectoryId}`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Trajectory end command\n intelligence\n .command('trajectory-end <trajectoryId>')\n .description('End trajectory and trigger SONA learning with EWC++')\n .option('-s, --success', 'Mark as successful')\n .option('-f, --fail', 'Mark as failed')\n .option('-q, --quality <n>', 'Quality score (0-1)', parseFloat, 0.8)\n .option('-j, --json', 'Output as JSON')\n .action(async (trajectoryId: string, options: {\n success?: boolean;\n fail?: boolean;\n quality?: number;\n json?: boolean;\n }) => {\n try {\n const success = options.success || !options.fail;\n const result = await intelligenceTrajectoryEndTool.execute(\n { trajectoryId: parseInt(trajectoryId), success, quality: options.quality },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ Trajectory Completed`);\n console.log(` ${success ? 'āœ… Success' : 'āŒ Failed'}`);\n console.log(` Quality: ${(options.quality || 0.8) * 100}%`);\n console.log(` Learning: EWC++ consolidation applied`);\n if (result.learningOutcome) {\n console.log(` Outcome: ${JSON.stringify(result.learningOutcome)}`);\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Pattern store command\n intelligence\n .command('pattern-store')\n .description('Store pattern in ReasoningBank (HNSW-indexed)')\n .requiredOption('-t, --task <task>', 'Task description')\n .requiredOption('-r, --resolution <text>', 'How it was resolved')\n .option('-s, --score <n>', 'Success score (0-1)', parseFloat, 0.9)\n .option('-j, --json', 'Output as JSON')\n .action(async (options: {\n task: string;\n resolution: string;\n score?: number;\n json?: boolean;\n }) => {\n try {\n const result = await intelligencePatternStoreTool.execute(\n { task: options.task, resolution: options.resolution, reward: options.score || 0.9 },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ’¾ Pattern Stored`);\n console.log(` Task: ${options.task.slice(0, 50)}...`);\n console.log(` Score: ${((options.score || 0.9) * 100).toFixed(0)}%`);\n console.log(` Index: HNSW (150x faster retrieval)`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Pattern search command\n intelligence\n .command('pattern-search <query>')\n .description('Search ReasoningBank using HNSW (150x faster)')\n .option('-k, --top-k <n>', 'Number of results', parseInt, 5)\n .option('-m, --min-reward <n>', 'Minimum reward filter', parseFloat)\n .option('-j, --json', 'Output as JSON')\n .action(async (query: string, options: {\n topK?: number;\n minReward?: number;\n json?: boolean;\n }) => {\n try {\n const result = await intelligencePatternSearchTool.execute(\n { query, topK: options.topK, minReward: options.minReward },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ” Pattern Search Results`);\n console.log(` Query: \"${query.slice(0, 50)}\"`);\n console.log(` Engine: ${result.searchEngine}`);\n console.log(` Found: ${result.count} patterns`);\n if (result.patterns?.length > 0) {\n console.log(`\\n šŸ“‹ Results:`);\n result.patterns.forEach((p: any, i: number) => {\n console.log(` ${i + 1}. [${((p.similarity || 0) * 100).toFixed(0)}%] ${p.resolution?.slice(0, 40)}...`);\n });\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Intelligence stats command\n intelligence\n .command('stats')\n .description('Get RuVector intelligence layer statistics')\n .option('-j, --json', 'Output as JSON')\n .action(async (options: { json?: boolean }) => {\n try {\n const result = await intelligenceStatsTool.execute({}, mockContext);\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ“Š RuVector Intelligence Stats`);\n console.log(`\\n🧠 SONA Engine:`);\n console.log(` Micro-LoRA: ${result.features?.sona?.microLora || 'rank-1 (~0.05ms)'}`);\n console.log(` Base-LoRA: ${result.features?.sona?.baseLora || 'rank-8'}`);\n console.log(` EWC Lambda: ${result.features?.sona?.ewcLambda || 1000.0}`);\n console.log(`\\n⚔ Attention:`);\n console.log(` Type: ${result.features?.attention?.type || 'moe'}`);\n console.log(` Experts: ${result.features?.attention?.experts || 4}`);\n console.log(` Top-K: ${result.features?.attention?.topK || 2}`);\n console.log(`\\nšŸ” HNSW:`);\n console.log(` Enabled: ${result.features?.hnsw?.enabled ?? true}`);\n console.log(` Speedup: ${result.features?.hnsw?.speedup || '150x vs brute-force'}`);\n console.log(`\\nšŸ“ˆ Learning:`);\n console.log(` Trajectories: ${result.stats?.trajectoryCount || 0}`);\n console.log(` Active: ${result.stats?.activeTrajectories || 0}`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Force learning command\n intelligence\n .command('learn')\n .description('Force immediate SONA learning cycle with EWC++ consolidation')\n .option('-r, --reason <text>', 'Reason for forcing learning')\n .option('-j, --json', 'Output as JSON')\n .action(async (options: { reason?: string; json?: boolean }) => {\n try {\n const result = await intelligenceLearnTool.execute(\n { reason: options.reason },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸŽ“ Learning Cycle Complete`);\n console.log(` ${result.success ? 'āœ…' : 'āŒ'} ${result.message}`);\n console.log(` Reason: ${result.reason || 'manual trigger'}`);\n console.log(` Features: ${result.features?.join(', ')}`);\n console.log(` Latency: ${result.latencyMs?.toFixed(2)}ms`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Attention compute command\n intelligence\n .command('attention <query>')\n .description('Compute attention-weighted similarity using MoE/Flash/Hyperbolic')\n .requiredOption('-c, --candidates <texts...>', 'Candidate texts to score')\n .option('-t, --type <type>', 'Attention type: moe|flash|hyperbolic|graph|dual', 'moe')\n .option('-j, --json', 'Output as JSON')\n .action(async (query: string, options: {\n candidates: string[];\n type?: string;\n json?: boolean;\n }) => {\n try {\n const result = await intelligenceAttentionTool.execute(\n {\n query,\n candidates: options.candidates,\n attentionType: options.type as 'moe' | 'flash' | 'hyperbolic' | 'graph' | 'dual'\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\n🧠 Attention Scores (${options.type || 'moe'})`);\n console.log(` Query: \"${query.slice(0, 40)}...\"`);\n console.log(`\\n šŸ“Š Results:`);\n result.results?.forEach((r: any, i: number) => {\n const bar = 'ā–ˆ'.repeat(Math.round(r.score * 20));\n console.log(` ${i + 1}. ${bar} ${(r.score * 100).toFixed(1)}% \"${r.text}\"`);\n });\n console.log(`\\n ā±ļø Latency: ${result.latencyMs?.toFixed(2)}ms`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Add intelligence subcommand to hooks\n hooks.addCommand(intelligence);\n\n return hooks;\n}\n\nexport default createHooksCommand;\n"]}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/cli/commands/hooks.ts"],"names":[],"mappings":"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","sourcesContent":["#!/usr/bin/env node\n/**\n * CLI Hooks Commands\n * Provides CLI interface for agentic-flow hook tools\n *\n * NOW WITH FULL RUVECTOR INTELLIGENCE:\n * - @ruvector/sona: Micro-LoRA (~0.05ms), EWC++, Trajectory tracking\n * - @ruvector/attention: MoE, Flash, Hyperbolic, Graph attention\n * - ruvector core: HNSW indexing (150x faster)\n *\n * Available as BOTH:\n * 1. CLI Commands (agentic-flow hooks ...)\n * 2. MCP Tools (via hooks-server.ts)\n */\n\nimport { Command } from 'commander';\nimport * as path from 'path';\n\n// Import hook tools\nimport { hookPreEditTool } from '../../mcp/fastmcp/tools/hooks/pre-edit.js';\nimport { hookPostEditTool } from '../../mcp/fastmcp/tools/hooks/post-edit.js';\nimport { hookPreCommandTool } from '../../mcp/fastmcp/tools/hooks/pre-command.js';\nimport { hookPostCommandTool } from '../../mcp/fastmcp/tools/hooks/post-command.js';\nimport { hookRouteTool } from '../../mcp/fastmcp/tools/hooks/route.js';\nimport { hookExplainTool } from '../../mcp/fastmcp/tools/hooks/explain.js';\nimport { hookPretrainTool } from '../../mcp/fastmcp/tools/hooks/pretrain.js';\nimport { hookBuildAgentsTool } from '../../mcp/fastmcp/tools/hooks/build-agents.js';\nimport { hookMetricsTool } from '../../mcp/fastmcp/tools/hooks/metrics.js';\nimport { hookTransferTool } from '../../mcp/fastmcp/tools/hooks/transfer.js';\n\n// Import intelligence tools (RuVector SONA + Attention + HNSW)\nimport {\n intelligenceRouteTool,\n intelligenceTrajectoryStartTool,\n intelligenceTrajectoryStepTool,\n intelligenceTrajectoryEndTool,\n intelligencePatternStoreTool,\n intelligencePatternSearchTool,\n intelligenceStatsTool,\n intelligenceLearnTool,\n intelligenceAttentionTool\n} from '../../mcp/fastmcp/tools/hooks/intelligence-tools.js';\n\nconst mockContext = {\n onProgress: (update: { progress: number; message: string }) => {\n if (process.env.VERBOSE) {\n console.log(`[${Math.round(update.progress * 100)}%] ${update.message}`);\n }\n }\n};\n\nexport function createHooksCommand(): Command {\n const hooks = new Command('hooks')\n .description('Self-learning intelligence hooks for agent routing and optimization');\n\n // Pre-edit hook\n hooks\n .command('pre-edit <filePath>')\n .description('Get context and agent suggestion before editing a file')\n .option('-t, --task <task>', 'Task description')\n .option('-j, --json', 'Output as JSON')\n .action(async (filePath: string, options: { task?: string; json?: boolean }) => {\n try {\n const result = await hookPreEditTool.execute(\n { filePath, task: options.task },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸŽÆ Suggested Agent: ${result.suggestedAgent}`);\n console.log(`šŸ“Š Confidence: ${(result.confidence * 100).toFixed(1)}%`);\n if (result.relatedFiles?.length > 0) {\n console.log(`šŸ“ Related Files:`);\n result.relatedFiles.forEach((f: string) => console.log(` - ${f}`));\n }\n console.log(`ā±ļø Latency: ${result.latencyMs}ms`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Post-edit hook\n hooks\n .command('post-edit <filePath>')\n .description('Record edit outcome for learning')\n .option('-s, --success', 'Mark as successful edit')\n .option('-f, --fail', 'Mark as failed edit')\n .option('-a, --agent <agent>', 'Agent that performed the edit')\n .option('-d, --duration <ms>', 'Edit duration in milliseconds', parseInt)\n .option('-e, --error <message>', 'Error message if failed')\n .option('-j, --json', 'Output as JSON')\n .action(async (filePath: string, options: {\n success?: boolean;\n fail?: boolean;\n agent?: string;\n duration?: number;\n error?: string;\n json?: boolean;\n }) => {\n try {\n const success = options.success || !options.fail;\n const result = await hookPostEditTool.execute(\n {\n filePath,\n success,\n agent: options.agent,\n duration: options.duration,\n errorMessage: options.error\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\n${success ? 'āœ…' : 'āŒ'} Edit recorded: ${filePath}`);\n console.log(`šŸ“ˆ Pattern updated: ${result.newPatternValue?.toFixed(2) || 'N/A'}`);\n console.log(`šŸ“Š Routing accuracy: ${(result.routingAccuracy * 100).toFixed(1)}%`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Pre-command hook\n hooks\n .command('pre-command <command>')\n .description('Assess command risk before execution')\n .option('-j, --json', 'Output as JSON')\n .action(async (command: string, options: { json?: boolean }) => {\n try {\n const result = await hookPreCommandTool.execute({ command }, mockContext);\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n const riskIcon = result.blocked ? '🚫' :\n result.riskCategory === 'safe' ? 'āœ…' :\n result.riskCategory === 'caution' ? 'āš ļø' : 'āŒ';\n console.log(`\\n${riskIcon} Risk Level: ${result.riskCategory.toUpperCase()} (${(result.riskLevel * 100).toFixed(0)}%)`);\n if (result.blocked) {\n console.log(`🚫 Command BLOCKED - dangerous operation detected`);\n } else if (result.approved) {\n console.log(`āœ… Command APPROVED`);\n }\n if (result.suggestions?.length > 0) {\n console.log(`šŸ’” Suggestions:`);\n result.suggestions.forEach((s: string) => console.log(` - ${s}`));\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Post-command hook\n hooks\n .command('post-command <command>')\n .description('Record command outcome for learning')\n .option('-c, --exit-code <code>', 'Exit code', parseInt, 0)\n .option('-o, --stdout <output>', 'Command stdout')\n .option('-e, --stderr <error>', 'Command stderr')\n .option('-j, --json', 'Output as JSON')\n .action(async (command: string, options: {\n exitCode?: number;\n stdout?: string;\n stderr?: string;\n json?: boolean;\n }) => {\n try {\n const result = await hookPostCommandTool.execute(\n {\n command,\n exitCode: options.exitCode ?? 0,\n stdout: options.stdout,\n stderr: options.stderr\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\n${result.commandSuccess ? 'āœ…' : 'āŒ'} Command outcome recorded`);\n console.log(`šŸ“š Learned: ${result.learned ? 'Yes' : 'No'}`);\n if (result.errorType) {\n console.log(`šŸ” Error type: ${result.errorType}`);\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Route hook\n hooks\n .command('route <task>')\n .description('Route task to optimal agent using learned patterns')\n .option('-f, --file <filePath>', 'Context file path')\n .option('-e, --explore', 'Enable exploration mode')\n .option('-j, --json', 'Output as JSON')\n .action(async (task: string, options: {\n file?: string;\n explore?: boolean;\n json?: boolean;\n }) => {\n try {\n const result = await hookRouteTool.execute(\n {\n task,\n context: options.file ? { file: options.file } : undefined,\n explore: options.explore\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸŽÆ Recommended Agent: ${result.agent}`);\n console.log(`šŸ“Š Confidence: ${(result.confidence * 100).toFixed(1)}%`);\n if (result.explored) {\n console.log(`šŸ” Exploration mode: Active`);\n }\n console.log(`\\nšŸ“‹ Routing Factors:`);\n result.factors.forEach((f: { name: string; score: number }) => {\n console.log(` • ${f.name}: ${(f.score * 100).toFixed(0)}%`);\n });\n if (result.alternatives?.length > 0) {\n console.log(`\\nšŸ”„ Alternatives:`);\n result.alternatives.forEach((a: { agent: string; score: number }) => {\n console.log(` - ${a.agent} (${(a.score * 100).toFixed(0)}%)`);\n });\n }\n console.log(`\\nā±ļø Latency: ${result.latencyMs}ms`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Explain hook\n hooks\n .command('explain <task>')\n .description('Explain routing decision with full transparency')\n .option('-f, --file <filePath>', 'Context file path')\n .option('-j, --json', 'Output as JSON')\n .action(async (task: string, options: {\n file?: string;\n json?: boolean;\n }) => {\n try {\n const result = await hookExplainTool.execute(\n { task, file: options.file },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ“ Summary: ${result.summary}`);\n console.log(`\\nšŸŽÆ Recommended: ${result.recommendedAgent}`);\n console.log(`\\nšŸ’” Reasons:`);\n result.reasons.forEach((r: string) => console.log(` • ${r}`));\n console.log(`\\nšŸ† Agent Ranking:`);\n result.ranking.forEach((r: { rank: number; agent: string; score: number }) => {\n console.log(` ${r.rank}. ${r.agent} - ${(r.score * 100).toFixed(1)}%`);\n });\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Pretrain hook\n hooks\n .command('pretrain')\n .description('Analyze repository to bootstrap intelligence')\n .option('-d, --depth <n>', 'Git history depth', parseInt, 50)\n .option('--skip-git', 'Skip git history analysis')\n .option('--skip-files', 'Skip file structure analysis')\n .option('-j, --json', 'Output as JSON')\n .action(async (options: {\n depth?: number;\n skipGit?: boolean;\n skipFiles?: boolean;\n json?: boolean;\n }) => {\n try {\n console.log('🧠 Analyzing repository...\\n');\n const result = await hookPretrainTool.execute(\n {\n depth: options.depth ?? 50,\n skipGit: options.skipGit ?? false,\n skipFiles: options.skipFiles ?? false\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ“Š Pretrain Complete!`);\n console.log(` šŸ“ Files analyzed: ${result.filesAnalyzed}`);\n console.log(` 🧩 Patterns created: ${result.patternsCreated}`);\n console.log(` šŸ’¾ Memories stored: ${result.memoriesStored}`);\n console.log(` šŸ”— Co-edits found: ${result.coEditsFound || 0}`);\n if (result.languages?.length > 0) {\n console.log(` 🌐 Languages: ${result.languages.join(', ')}`);\n }\n console.log(` ā±ļø Duration: ${result.durationMs}ms`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Build-agents hook\n hooks\n .command('build-agents')\n .description('Generate optimized agent configurations from pretrain data')\n .option('-f, --focus <mode>', 'Focus mode: quality|speed|security|testing|fullstack', 'quality')\n .option('-o, --output <dir>', 'Output directory', '.claude/agents')\n .option('--format <fmt>', 'Output format: yaml|json', 'yaml')\n .option('--no-prompts', 'Exclude system prompts')\n .option('-j, --json', 'Output as JSON')\n .action(async (options: {\n focus?: string;\n output?: string;\n format?: string;\n prompts?: boolean;\n json?: boolean;\n }) => {\n try {\n console.log(`šŸ—ļø Building agents with focus: ${options.focus}...\\n`);\n const result = await hookBuildAgentsTool.execute(\n {\n focus: options.focus as 'quality' | 'speed' | 'security' | 'testing' | 'fullstack',\n output: options.output,\n format: options.format as 'yaml' | 'json',\n includePrompts: options.prompts !== false\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nāœ… Agents Generated!`);\n console.log(` šŸ“¦ Total: ${result.agentsGenerated}`);\n console.log(` šŸ“‚ Output: ${result.outputDir}`);\n console.log(` šŸŽÆ Focus: ${result.focus}`);\n console.log(`\\n Agents created:`);\n result.agents.forEach((a: string) => console.log(` • ${a}`));\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Metrics hook\n hooks\n .command('metrics')\n .alias('stats')\n .description('View learning metrics and performance dashboard')\n .option('-t, --timeframe <period>', 'Timeframe: 1h|24h|7d|30d', '24h')\n .option('-d, --detailed', 'Show detailed metrics')\n .option('-j, --json', 'Output as JSON')\n .action(async (options: {\n timeframe?: string;\n detailed?: boolean;\n json?: boolean;\n }) => {\n try {\n const result = await hookMetricsTool.execute(\n {\n timeframe: options.timeframe as '1h' | '24h' | '7d' | '30d',\n detailed: options.detailed\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ“Š Learning Metrics (${options.timeframe || '24h'})\\n`);\n console.log(`šŸŽÆ Routing:`);\n console.log(` Total routes: ${result.routing.total}`);\n console.log(` Successful: ${result.routing.successful}`);\n console.log(` Accuracy: ${(result.routing.accuracy * 100).toFixed(1)}%`);\n\n console.log(`\\nšŸ“š Learning:`);\n console.log(` Patterns: ${result.learning.patterns}`);\n console.log(` Memories: ${result.learning.memories}`);\n console.log(` Error patterns: ${result.learning.errorPatterns}`);\n\n console.log(`\\nšŸ’š Health: ${result.health.status.toUpperCase()}`);\n if (result.health.issues?.length > 0) {\n console.log(` Issues:`);\n result.health.issues.forEach((i: string) => console.log(` āš ļø ${i}`));\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Transfer hook\n hooks\n .command('transfer <sourceProject>')\n .description('Transfer learned patterns from another project')\n .option('-c, --min-confidence <n>', 'Minimum confidence threshold', parseFloat, 0.7)\n .option('-m, --max-patterns <n>', 'Maximum patterns to transfer', parseInt, 50)\n .option('--mode <mode>', 'Transfer mode: merge|replace|additive', 'merge')\n .option('-j, --json', 'Output as JSON')\n .action(async (sourceProject: string, options: {\n minConfidence?: number;\n maxPatterns?: number;\n mode?: string;\n json?: boolean;\n }) => {\n try {\n console.log(`šŸ“¤ Transferring patterns from: ${sourceProject}...\\n`);\n const result = await hookTransferTool.execute(\n {\n sourceProject,\n minConfidence: options.minConfidence,\n maxPatterns: options.maxPatterns,\n mode: options.mode as 'merge' | 'replace' | 'additive'\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nāœ… Transfer Complete!`);\n console.log(` šŸ“„ Patterns transferred: ${result.transferred}`);\n console.log(` šŸ”„ Patterns adapted: ${result.adapted}`);\n console.log(` šŸŽÆ Mode: ${result.mode}`);\n if (result.targetStack?.length > 0) {\n console.log(` šŸ› ļø Target stack: ${result.targetStack.join(', ')}`);\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Init command (creates .claude/settings.json with hooks)\n hooks\n .command('init')\n .description('Initialize hooks in project with .claude/settings.json')\n .option('--minimal', 'Minimal configuration')\n .option('--force', 'Overwrite existing configuration')\n .action(async (options: { minimal?: boolean; force?: boolean }) => {\n try {\n const fs = await import('fs');\n const settingsPath = path.join(process.cwd(), '.claude', 'settings.json');\n const claudeDir = path.dirname(settingsPath);\n\n // Check if exists\n if (fs.existsSync(settingsPath) && !options.force) {\n console.log('āš ļø Settings file already exists. Use --force to overwrite.');\n return;\n }\n\n // Create .claude directory\n if (!fs.existsSync(claudeDir)) {\n fs.mkdirSync(claudeDir, { recursive: true });\n }\n\n // Create settings\n const settings = {\n hooks: {\n PreToolUse: [\n {\n matcher: 'Edit|Write',\n hooks: [\n {\n type: 'command',\n command: 'agentic-flow hooks pre-edit \"$TOOL_INPUT_file_path\"'\n }\n ]\n },\n {\n matcher: 'Bash',\n hooks: [\n {\n type: 'command',\n command: 'agentic-flow hooks pre-command \"$TOOL_INPUT_command\"'\n }\n ]\n }\n ],\n PostToolUse: [\n {\n matcher: 'Edit|Write',\n hooks: [\n {\n type: 'command',\n command: 'agentic-flow hooks post-edit \"$TOOL_INPUT_file_path\" --success'\n }\n ]\n }\n ],\n SessionStart: [\n {\n type: 'command',\n command: 'agentic-flow hooks metrics --json'\n }\n ]\n },\n permissions: {\n allow: [\n 'Bash(agentic-flow:*)',\n 'mcp__agentic-flow'\n ]\n }\n };\n\n fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2));\n console.log('āœ… Hooks initialized!');\n console.log(` šŸ“ Created: ${settingsPath}`);\n console.log('\\nšŸ’” Next steps:');\n console.log(' 1. Run: agentic-flow hooks pretrain');\n console.log(' 2. Run: agentic-flow hooks build-agents');\n console.log(' 3. Start using Claude Code with intelligent routing!');\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // ============================================\n // RUVECTOR INTELLIGENCE COMMANDS\n // SONA Micro-LoRA + MoE Attention + HNSW\n // ============================================\n\n // Create intelligence subcommand group\n const intelligence = new Command('intelligence')\n .alias('intel')\n .description('RuVector intelligence: SONA Micro-LoRA (~0.05ms) + MoE attention + HNSW (150x faster)');\n\n // Intelligence route command\n intelligence\n .command('route <task>')\n .description('Route task using SONA + MoE + HNSW (150x faster than brute force)')\n .option('-f, --file <path>', 'File context')\n .option('-e, --error <context>', 'Error context for debugging')\n .option('-k, --top-k <n>', 'Number of candidates', parseInt, 5)\n .option('-j, --json', 'Output as JSON')\n .action(async (task: string, options: {\n file?: string;\n error?: string;\n topK?: number;\n json?: boolean;\n }) => {\n try {\n const result = await intelligenceRouteTool.execute(\n { task, file: options.file, errorContext: options.error, topK: options.topK },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\n⚔ RuVector Intelligence Route`);\n console.log(`šŸŽÆ Agent: ${result.agent}`);\n console.log(`šŸ“Š Confidence: ${((result.confidence || 0) * 100).toFixed(1)}%`);\n console.log(`šŸ”§ Engine: ${result.engine}`);\n console.log(`ā±ļø Latency: ${result.latencyMs?.toFixed(2)}ms`);\n if (result.features?.length > 0) {\n console.log(`🧠 Features: ${result.features.join(', ')}`);\n }\n if (result.alternatives?.length > 0) {\n console.log(`\\nšŸ”„ Alternatives:`);\n result.alternatives.forEach((a: any) => {\n console.log(` - ${a.agent} (${((a.confidence || 0) * 100).toFixed(1)}%)`);\n });\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Trajectory start command\n intelligence\n .command('trajectory-start <task>')\n .description('Begin SONA trajectory for reinforcement learning')\n .requiredOption('-a, --agent <name>', 'Agent executing the task')\n .option('-c, --context <text>', 'Additional context')\n .option('-j, --json', 'Output as JSON')\n .action(async (task: string, options: {\n agent: string;\n context?: string;\n json?: boolean;\n }) => {\n try {\n const result = await intelligenceTrajectoryStartTool.execute(\n { task, agent: options.agent, context: options.context },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸŽ¬ Trajectory Started`);\n console.log(`šŸ“ ID: ${result.trajectoryId}`);\n console.log(`šŸ¤– Agent: ${options.agent}`);\n console.log(`🧠 Features: ${result.features?.join(', ')}`);\n console.log(`\\nšŸ’” Use this ID with trajectory-step and trajectory-end commands`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Trajectory step command\n intelligence\n .command('trajectory-step <trajectoryId>')\n .description('Record step in trajectory for reinforcement learning')\n .requiredOption('-a, --action <action>', 'Action taken')\n .requiredOption('-r, --reward <n>', 'Reward signal (-1 to 1)', parseFloat)\n .option('-f, --file <path>', 'File involved')\n .option('--error-fixed', 'Mark as error fix')\n .option('--test-passed', 'Mark as test passed')\n .option('-j, --json', 'Output as JSON')\n .action(async (trajectoryId: string, options: {\n action: string;\n reward: number;\n file?: string;\n errorFixed?: boolean;\n testPassed?: boolean;\n json?: boolean;\n }) => {\n try {\n const result = await intelligenceTrajectoryStepTool.execute(\n {\n trajectoryId: parseInt(trajectoryId),\n action: options.action,\n reward: options.reward,\n file: options.file,\n errorFixed: options.errorFixed,\n testPassed: options.testPassed\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ“ Step Recorded`);\n console.log(` Action: ${options.action}`);\n console.log(` Reward: ${options.reward}`);\n console.log(` Trajectory: ${trajectoryId}`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Trajectory end command\n intelligence\n .command('trajectory-end <trajectoryId>')\n .description('End trajectory and trigger SONA learning with EWC++')\n .option('-s, --success', 'Mark as successful')\n .option('-f, --fail', 'Mark as failed')\n .option('-q, --quality <n>', 'Quality score (0-1)', parseFloat, 0.8)\n .option('-j, --json', 'Output as JSON')\n .action(async (trajectoryId: string, options: {\n success?: boolean;\n fail?: boolean;\n quality?: number;\n json?: boolean;\n }) => {\n try {\n const success = options.success || !options.fail;\n const result = await intelligenceTrajectoryEndTool.execute(\n { trajectoryId: parseInt(trajectoryId), success, quality: options.quality },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ Trajectory Completed`);\n console.log(` ${success ? 'āœ… Success' : 'āŒ Failed'}`);\n console.log(` Quality: ${(options.quality || 0.8) * 100}%`);\n console.log(` Learning: EWC++ consolidation applied`);\n if (result.learningOutcome) {\n console.log(` Outcome: ${JSON.stringify(result.learningOutcome)}`);\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Pattern store command\n intelligence\n .command('pattern-store')\n .description('Store pattern in ReasoningBank (HNSW-indexed)')\n .requiredOption('-t, --task <task>', 'Task description')\n .requiredOption('-r, --resolution <text>', 'How it was resolved')\n .option('-s, --score <n>', 'Success score (0-1)', parseFloat, 0.9)\n .option('-j, --json', 'Output as JSON')\n .action(async (options: {\n task: string;\n resolution: string;\n score?: number;\n json?: boolean;\n }) => {\n try {\n const result = await intelligencePatternStoreTool.execute(\n { task: options.task, resolution: options.resolution, reward: options.score || 0.9 },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ’¾ Pattern Stored`);\n console.log(` Task: ${options.task.slice(0, 50)}...`);\n console.log(` Score: ${((options.score || 0.9) * 100).toFixed(0)}%`);\n console.log(` Index: HNSW (150x faster retrieval)`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Pattern search command\n intelligence\n .command('pattern-search <query>')\n .description('Search ReasoningBank using HNSW (150x faster)')\n .option('-k, --top-k <n>', 'Number of results', parseInt, 5)\n .option('-m, --min-reward <n>', 'Minimum reward filter', parseFloat)\n .option('-j, --json', 'Output as JSON')\n .action(async (query: string, options: {\n topK?: number;\n minReward?: number;\n json?: boolean;\n }) => {\n try {\n const result = await intelligencePatternSearchTool.execute(\n { query, topK: options.topK, minReward: options.minReward },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ” Pattern Search Results`);\n console.log(` Query: \"${query.slice(0, 50)}\"`);\n console.log(` Engine: ${result.searchEngine}`);\n console.log(` Found: ${result.count} patterns`);\n if (result.patterns?.length > 0) {\n console.log(`\\n šŸ“‹ Results:`);\n result.patterns.forEach((p: any, i: number) => {\n console.log(` ${i + 1}. [${((p.similarity || 0) * 100).toFixed(0)}%] ${p.resolution?.slice(0, 40)}...`);\n });\n }\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Intelligence stats command\n intelligence\n .command('stats')\n .description('Get RuVector intelligence layer statistics')\n .option('-j, --json', 'Output as JSON')\n .action(async (options: { json?: boolean }) => {\n try {\n const result = await intelligenceStatsTool.execute({}, mockContext);\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸ“Š RuVector Intelligence Stats`);\n console.log(`\\n🧠 SONA Engine:`);\n console.log(` Micro-LoRA: ${result.features?.sona?.microLora || 'rank-1 (~0.05ms)'}`);\n console.log(` Base-LoRA: ${result.features?.sona?.baseLora || 'rank-8'}`);\n console.log(` EWC Lambda: ${result.features?.sona?.ewcLambda || 1000.0}`);\n console.log(`\\n⚔ Attention:`);\n console.log(` Type: ${result.features?.attention?.type || 'moe'}`);\n console.log(` Experts: ${result.features?.attention?.experts || 4}`);\n console.log(` Top-K: ${result.features?.attention?.topK || 2}`);\n console.log(`\\nšŸ” HNSW:`);\n console.log(` Enabled: ${result.features?.hnsw?.enabled ?? true}`);\n console.log(` Speedup: ${result.features?.hnsw?.speedup || '150x vs brute-force'}`);\n console.log(`\\nšŸ“ˆ Learning:`);\n console.log(` Trajectories: ${result.persistence?.trajectories ?? result.stats?.trajectoryCount ?? 0}`);\n console.log(` Active: ${result.stats?.activeTrajectories || 0}`);\n console.log(`\\nšŸ’¾ Persistence (SQLite):`);\n console.log(` Backend: ${result.persistence?.backend || 'sqlite'}`);\n console.log(` Routings: ${result.persistence?.routings ?? 0}`);\n console.log(` Patterns: ${result.persistence?.patterns ?? 0}`);\n console.log(` Operations: ${result.persistence?.operations ?? 0}`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Force learning command\n intelligence\n .command('learn')\n .description('Force immediate SONA learning cycle with EWC++ consolidation')\n .option('-r, --reason <text>', 'Reason for forcing learning')\n .option('-j, --json', 'Output as JSON')\n .action(async (options: { reason?: string; json?: boolean }) => {\n try {\n const result = await intelligenceLearnTool.execute(\n { reason: options.reason },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\nšŸŽ“ Learning Cycle Complete`);\n console.log(` ${result.success ? 'āœ…' : 'āŒ'} ${result.message}`);\n console.log(` Reason: ${result.reason || 'manual trigger'}`);\n console.log(` Features: ${result.features?.join(', ')}`);\n console.log(` Latency: ${result.latencyMs?.toFixed(2)}ms`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Attention compute command\n intelligence\n .command('attention <query>')\n .description('Compute attention-weighted similarity using MoE/Flash/Hyperbolic')\n .requiredOption('-c, --candidates <texts...>', 'Candidate texts to score')\n .option('-t, --type <type>', 'Attention type: moe|flash|hyperbolic|graph|dual', 'moe')\n .option('-j, --json', 'Output as JSON')\n .action(async (query: string, options: {\n candidates: string[];\n type?: string;\n json?: boolean;\n }) => {\n try {\n const result = await intelligenceAttentionTool.execute(\n {\n query,\n candidates: options.candidates,\n attentionType: options.type as 'moe' | 'flash' | 'hyperbolic' | 'graph' | 'dual'\n },\n mockContext\n );\n\n if (options.json) {\n console.log(JSON.stringify(result, null, 2));\n } else {\n console.log(`\\n🧠 Attention Scores (${options.type || 'moe'})`);\n console.log(` Query: \"${query.slice(0, 40)}...\"`);\n console.log(`\\n šŸ“Š Results:`);\n result.results?.forEach((r: any, i: number) => {\n const bar = 'ā–ˆ'.repeat(Math.round(r.score * 20));\n console.log(` ${i + 1}. ${bar} ${(r.score * 100).toFixed(1)}% \"${r.text}\"`);\n });\n console.log(`\\n ā±ļø Latency: ${result.latencyMs?.toFixed(2)}ms`);\n }\n } catch (error) {\n console.error('Error:', error instanceof Error ? error.message : error);\n process.exit(1);\n }\n });\n\n // Add intelligence subcommand to hooks\n hooks.addCommand(intelligence);\n\n return hooks;\n}\n\nexport default createHooksCommand;\n"]}
@@ -0,0 +1,168 @@
1
+ /**
2
+ * IntelligenceStore - SQLite persistence for RuVector intelligence layer
3
+ *
4
+ * Cross-platform (Linux, macOS, Windows) persistent storage for:
5
+ * - Learning trajectories
6
+ * - Routing patterns
7
+ * - SONA adaptations
8
+ * - HNSW vectors
9
+ */
10
+ export interface StoredTrajectory {
11
+ id: number;
12
+ taskDescription: string;
13
+ agent: string;
14
+ steps: number;
15
+ outcome: 'success' | 'failure' | 'partial';
16
+ startTime: number;
17
+ endTime: number;
18
+ metadata?: string;
19
+ }
20
+ export interface StoredPattern {
21
+ id: number;
22
+ taskType: string;
23
+ approach: string;
24
+ embedding: Buffer;
25
+ similarity: number;
26
+ usageCount: number;
27
+ successRate: number;
28
+ createdAt: number;
29
+ updatedAt: number;
30
+ }
31
+ export interface StoredRouting {
32
+ id: number;
33
+ task: string;
34
+ recommendedAgent: string;
35
+ confidence: number;
36
+ latencyMs: number;
37
+ wasSuccessful: boolean;
38
+ timestamp: number;
39
+ }
40
+ export interface LearningStats {
41
+ totalTrajectories: number;
42
+ successfulTrajectories: number;
43
+ totalRoutings: number;
44
+ successfulRoutings: number;
45
+ totalPatterns: number;
46
+ sonaAdaptations: number;
47
+ hnswQueries: number;
48
+ lastUpdated: number;
49
+ }
50
+ export declare class IntelligenceStore {
51
+ private db;
52
+ private static instance;
53
+ private constructor();
54
+ /**
55
+ * Get singleton instance
56
+ */
57
+ static getInstance(dbPath?: string): IntelligenceStore;
58
+ /**
59
+ * Get default database path (cross-platform)
60
+ */
61
+ static getDefaultPath(): string;
62
+ /**
63
+ * Initialize database schema
64
+ */
65
+ private initSchema;
66
+ /**
67
+ * Start a new trajectory
68
+ */
69
+ startTrajectory(taskDescription: string, agent: string): number;
70
+ /**
71
+ * Add step to trajectory
72
+ */
73
+ addTrajectoryStep(trajectoryId: number): void;
74
+ /**
75
+ * End trajectory with outcome
76
+ */
77
+ endTrajectory(trajectoryId: number, outcome: 'success' | 'failure' | 'partial', metadata?: Record<string, any>): void;
78
+ /**
79
+ * Get active trajectories (no end_time)
80
+ */
81
+ getActiveTrajectories(): StoredTrajectory[];
82
+ /**
83
+ * Get recent trajectories
84
+ */
85
+ getRecentTrajectories(limit?: number): StoredTrajectory[];
86
+ /**
87
+ * Store a pattern
88
+ */
89
+ storePattern(taskType: string, approach: string, embedding?: Float32Array): number;
90
+ /**
91
+ * Update pattern usage
92
+ */
93
+ updatePatternUsage(patternId: number, wasSuccessful: boolean): void;
94
+ /**
95
+ * Find patterns by task type
96
+ */
97
+ findPatterns(taskType: string, limit?: number): StoredPattern[];
98
+ /**
99
+ * Record a routing decision
100
+ */
101
+ recordRouting(task: string, recommendedAgent: string, confidence: number, latencyMs: number): number;
102
+ /**
103
+ * Update routing outcome
104
+ */
105
+ updateRoutingOutcome(routingId: number, wasSuccessful: boolean): void;
106
+ /**
107
+ * Get routing accuracy for an agent
108
+ */
109
+ getAgentAccuracy(agent: string): {
110
+ total: number;
111
+ successful: number;
112
+ accuracy: number;
113
+ };
114
+ /**
115
+ * Get all stats
116
+ */
117
+ getStats(): LearningStats;
118
+ /**
119
+ * Increment a stat counter
120
+ */
121
+ incrementStat(statName: string, amount?: number): void;
122
+ /**
123
+ * Record SONA adaptation
124
+ */
125
+ recordSonaAdaptation(): void;
126
+ /**
127
+ * Record HNSW query
128
+ */
129
+ recordHnswQuery(): void;
130
+ /**
131
+ * Get summary for display (simplified for UI)
132
+ */
133
+ getSummary(): {
134
+ trajectories: number;
135
+ routings: number;
136
+ patterns: number;
137
+ operations: number;
138
+ };
139
+ /**
140
+ * Get detailed summary for reports
141
+ */
142
+ getDetailedSummary(): {
143
+ trajectories: {
144
+ total: number;
145
+ active: number;
146
+ successful: number;
147
+ };
148
+ routings: {
149
+ total: number;
150
+ accuracy: number;
151
+ };
152
+ patterns: number;
153
+ operations: {
154
+ sona: number;
155
+ hnsw: number;
156
+ };
157
+ };
158
+ /**
159
+ * Close database connection
160
+ */
161
+ close(): void;
162
+ /**
163
+ * Reset all data (for testing)
164
+ */
165
+ reset(): void;
166
+ }
167
+ export declare function getIntelligenceStore(dbPath?: string): IntelligenceStore;
168
+ //# sourceMappingURL=IntelligenceStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntelligenceStore.d.ts","sourceRoot":"","sources":["../../src/intelligence/IntelligenceStore.ts"],"names":[],"mappings":"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"}