claude-flow 3.7.0-alpha.21 → 3.7.0-alpha.22

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 (34) hide show
  1. package/.claude/scheduled_tasks.lock +1 -1
  2. package/README.md +2 -0
  3. package/package.json +1 -1
  4. package/v3/@claude-flow/cli/README.md +2 -0
  5. package/v3/@claude-flow/cli/dist/src/mcp-tools/agent-tools.js +7 -7
  6. package/v3/@claude-flow/cli/dist/src/mcp-tools/agentdb-tools.js +101 -24
  7. package/v3/@claude-flow/cli/dist/src/mcp-tools/analyze-tools.js +6 -6
  8. package/v3/@claude-flow/cli/dist/src/mcp-tools/autopilot-tools.js +10 -10
  9. package/v3/@claude-flow/cli/dist/src/mcp-tools/browser-session-tools.js +5 -5
  10. package/v3/@claude-flow/cli/dist/src/mcp-tools/browser-tools.js +23 -23
  11. package/v3/@claude-flow/cli/dist/src/mcp-tools/claims-tools.js +12 -12
  12. package/v3/@claude-flow/cli/dist/src/mcp-tools/config-tools.js +6 -6
  13. package/v3/@claude-flow/cli/dist/src/mcp-tools/coordination-tools.js +7 -7
  14. package/v3/@claude-flow/cli/dist/src/mcp-tools/daa-tools.js +8 -8
  15. package/v3/@claude-flow/cli/dist/src/mcp-tools/embeddings-tools.js +10 -10
  16. package/v3/@claude-flow/cli/dist/src/mcp-tools/github-tools.js +5 -5
  17. package/v3/@claude-flow/cli/dist/src/mcp-tools/guidance-tools.js +21 -21
  18. package/v3/@claude-flow/cli/dist/src/mcp-tools/hive-mind-tools.js +9 -9
  19. package/v3/@claude-flow/cli/dist/src/mcp-tools/hooks-tools.js +36 -36
  20. package/v3/@claude-flow/cli/dist/src/mcp-tools/memory-tools.js +5 -5
  21. package/v3/@claude-flow/cli/dist/src/mcp-tools/neural-tools.js +6 -6
  22. package/v3/@claude-flow/cli/dist/src/mcp-tools/performance-tools.js +6 -6
  23. package/v3/@claude-flow/cli/dist/src/mcp-tools/progress-tools.js +4 -4
  24. package/v3/@claude-flow/cli/dist/src/mcp-tools/ruvllm-tools.js +10 -10
  25. package/v3/@claude-flow/cli/dist/src/mcp-tools/security-tools.js +6 -6
  26. package/v3/@claude-flow/cli/dist/src/mcp-tools/session-tools.js +5 -5
  27. package/v3/@claude-flow/cli/dist/src/mcp-tools/swarm-tools.js +4 -4
  28. package/v3/@claude-flow/cli/dist/src/mcp-tools/system-tools.js +7 -7
  29. package/v3/@claude-flow/cli/dist/src/mcp-tools/task-tools.js +7 -7
  30. package/v3/@claude-flow/cli/dist/src/mcp-tools/terminal-tools.js +5 -5
  31. package/v3/@claude-flow/cli/dist/src/mcp-tools/transfer-tools.js +11 -11
  32. package/v3/@claude-flow/cli/dist/src/mcp-tools/wasm-agent-tools.js +10 -10
  33. package/v3/@claude-flow/cli/dist/src/mcp-tools/workflow-tools.js +10 -10
  34. package/v3/@claude-flow/cli/package.json +1 -1
@@ -46,7 +46,7 @@ const PROJECT_ROOT = findProjectRoot();
46
46
  const CAPABILITY_CATALOG = {
47
47
  'agent-management': {
48
48
  name: 'Agent Management',
49
- description: 'Spawn, manage, and monitor individual AI agents with lifecycle control.',
49
+ description: 'Spawn, manage, and monitor individual AI agents with lifecycle control. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
50
50
  tools: ['agent_spawn', 'agent_list', 'agent_status', 'agent_stop', 'agent_metrics', 'agent_pool', 'agent_health', 'agent_logs'],
51
51
  commands: ['agent spawn', 'agent list', 'agent status', 'agent stop', 'agent metrics', 'agent pool', 'agent health', 'agent logs'],
52
52
  agents: ['coder', 'tester', 'reviewer', 'researcher', 'planner'],
@@ -55,7 +55,7 @@ const CAPABILITY_CATALOG = {
55
55
  },
56
56
  'swarm-orchestration': {
57
57
  name: 'Swarm Orchestration',
58
- description: 'Multi-agent coordination with topology-aware communication and consensus.',
58
+ description: 'Multi-agent coordination with topology-aware communication and consensus. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
59
59
  tools: ['swarm_init', 'swarm_status', 'swarm_spawn', 'swarm_terminate', 'swarm_topology', 'swarm_metrics'],
60
60
  commands: ['swarm init', 'swarm status', 'swarm spawn', 'swarm terminate'],
61
61
  agents: ['hierarchical-coordinator', 'mesh-coordinator', 'adaptive-coordinator', 'queen-coordinator', 'collective-intelligence-coordinator'],
@@ -64,7 +64,7 @@ const CAPABILITY_CATALOG = {
64
64
  },
65
65
  'memory-knowledge': {
66
66
  name: 'Memory & Knowledge',
67
- description: 'Persistent memory with HNSW vector search, AgentDB storage, and embeddings.',
67
+ description: 'Persistent memory with HNSW vector search, AgentDB storage, and embeddings. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
68
68
  tools: ['memory_store', 'memory_retrieve', 'memory_search', 'memory_list', 'memory_delete', 'memory_init', 'memory_export', 'memory_import_claude', 'memory_stats', 'memory_compact', 'memory_namespace'],
69
69
  commands: ['memory store', 'memory retrieve', 'memory search', 'memory list', 'memory delete', 'memory init'],
70
70
  agents: ['swarm-memory-manager', 'v3-memory-specialist'],
@@ -73,7 +73,7 @@ const CAPABILITY_CATALOG = {
73
73
  },
74
74
  'intelligence-learning': {
75
75
  name: 'Intelligence & Learning',
76
- description: 'Neural pattern training (SONA), RL loops, Flash Attention, EWC++ consolidation.',
76
+ description: 'Neural pattern training (SONA), RL loops, Flash Attention, EWC++ consolidation. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
77
77
  tools: ['neural_train', 'neural_predict', 'neural_status', 'neural_patterns', 'neural_optimize'],
78
78
  commands: ['neural train', 'neural predict', 'neural status', 'neural patterns', 'neural optimize'],
79
79
  agents: ['sona-learning-optimizer', 'safla-neural'],
@@ -82,7 +82,7 @@ const CAPABILITY_CATALOG = {
82
82
  },
83
83
  'hooks-automation': {
84
84
  name: 'Hooks & Automation',
85
- description: '17 lifecycle hooks + 12 background workers for automated learning and coordination.',
85
+ description: '17 lifecycle hooks + 12 background workers for automated learning and coordination. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
86
86
  tools: ['hooks_pre_task', 'hooks_post_task', 'hooks_pre_edit', 'hooks_post_edit', 'hooks_route', 'hooks_explain'],
87
87
  commands: [
88
88
  'hooks pre-task', 'hooks post-task', 'hooks pre-edit', 'hooks post-edit',
@@ -97,7 +97,7 @@ const CAPABILITY_CATALOG = {
97
97
  },
98
98
  'hive-mind': {
99
99
  name: 'Hive Mind Consensus',
100
- description: 'Queen-led Byzantine fault-tolerant distributed consensus with multiple strategies.',
100
+ description: 'Queen-led Byzantine fault-tolerant distributed consensus with multiple strategies. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
101
101
  tools: ['hive_mind_init', 'hive_mind_status', 'hive_mind_propose', 'hive_mind_vote', 'hive_mind_consensus', 'hive_mind_metrics'],
102
102
  commands: ['hive-mind init', 'hive-mind status', 'hive-mind consensus', 'hive-mind sessions', 'hive-mind spawn', 'hive-mind stop'],
103
103
  agents: ['byzantine-coordinator', 'raft-manager', 'gossip-coordinator', 'crdt-synchronizer', 'quorum-manager'],
@@ -106,7 +106,7 @@ const CAPABILITY_CATALOG = {
106
106
  },
107
107
  'security': {
108
108
  name: 'Security & Compliance',
109
- description: 'Security scanning, CVE remediation, input validation, claims-based authorization.',
109
+ description: 'Security scanning, CVE remediation, input validation, claims-based authorization. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
110
110
  tools: ['security_scan', 'security_audit', 'security_cve', 'security_threats', 'security_validate', 'security_report', 'claims_check', 'claims_grant', 'claims_revoke', 'claims_list'],
111
111
  commands: ['security scan', 'security audit', 'security cve', 'security threats', 'claims check', 'claims grant'],
112
112
  agents: ['v3-security-architect'],
@@ -115,7 +115,7 @@ const CAPABILITY_CATALOG = {
115
115
  },
116
116
  'performance': {
117
117
  name: 'Performance & Profiling',
118
- description: 'Benchmarking, profiling, metrics collection, and optimization recommendations.',
118
+ description: 'Benchmarking, profiling, metrics collection, and optimization recommendations. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
119
119
  tools: ['performance_benchmark', 'performance_profile', 'performance_metrics', 'performance_optimize', 'performance_report'],
120
120
  commands: ['performance benchmark', 'performance profile', 'performance metrics', 'performance optimize', 'performance report'],
121
121
  agents: ['v3-performance-engineer'],
@@ -124,7 +124,7 @@ const CAPABILITY_CATALOG = {
124
124
  },
125
125
  'github-integration': {
126
126
  name: 'GitHub Integration',
127
- description: 'PR management, code review, issue tracking, release automation, multi-repo coordination.',
127
+ description: 'PR management, code review, issue tracking, release automation, multi-repo coordination. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
128
128
  tools: ['github_pr_manage', 'github_code_review', 'github_issue_track', 'github_repo_analyze', 'github_sync_coord', 'github_metrics'],
129
129
  commands: [],
130
130
  agents: ['pr-manager', 'code-review-swarm', 'issue-tracker', 'release-manager', 'repo-architect', 'workflow-automation', 'multi-repo-swarm', 'project-board-sync', 'swarm-pr', 'swarm-issue', 'sync-coordinator', 'github-modes', 'release-swarm'],
@@ -133,7 +133,7 @@ const CAPABILITY_CATALOG = {
133
133
  },
134
134
  'session-workflow': {
135
135
  name: 'Session & Workflow',
136
- description: 'Session state management, workflow execution, task lifecycle, and daemon scheduling.',
136
+ description: 'Session state management, workflow execution, task lifecycle, and daemon scheduling. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
137
137
  tools: ['session_start', 'session_end', 'session_restore', 'session_list', 'workflow_execute', 'workflow_create', 'task_create', 'task_assign', 'task_status'],
138
138
  commands: ['session start', 'session end', 'session restore', 'workflow execute', 'workflow create', 'task create', 'daemon start', 'daemon stop'],
139
139
  agents: [],
@@ -142,7 +142,7 @@ const CAPABILITY_CATALOG = {
142
142
  },
143
143
  'embeddings-vectors': {
144
144
  name: 'Embeddings & Vector Search',
145
- description: 'Vector embeddings with sql.js, HNSW indexing, hyperbolic embeddings, ONNX integration.',
145
+ description: 'Vector embeddings with sql.js, HNSW indexing, hyperbolic embeddings, ONNX integration. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
146
146
  tools: ['embeddings_embed', 'embeddings_batch', 'embeddings_search', 'embeddings_init'],
147
147
  commands: ['embeddings embed', 'embeddings batch', 'embeddings search', 'embeddings init'],
148
148
  agents: [],
@@ -151,7 +151,7 @@ const CAPABILITY_CATALOG = {
151
151
  },
152
152
  'wasm-agents': {
153
153
  name: 'WASM Sandboxed Agents',
154
- description: 'Sandboxed AI agents running in WebAssembly with virtual filesystem, no OS access.',
154
+ description: 'Sandboxed AI agents running in WebAssembly with virtual filesystem, no OS access. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
155
155
  tools: ['wasm_agent_create', 'wasm_agent_prompt', 'wasm_agent_tool', 'wasm_agent_list', 'wasm_agent_terminate', 'wasm_agent_files', 'wasm_agent_export', 'wasm_gallery_list', 'wasm_gallery_search', 'wasm_gallery_create'],
156
156
  commands: [],
157
157
  agents: [],
@@ -160,7 +160,7 @@ const CAPABILITY_CATALOG = {
160
160
  },
161
161
  'ruvllm-inference': {
162
162
  name: 'RuVLLM Inference',
163
- description: 'WASM-based HNSW routing, SONA instant adaptation, MicroLoRA, chat formatting.',
163
+ description: 'WASM-based HNSW routing, SONA instant adaptation, MicroLoRA, chat formatting. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
164
164
  tools: ['ruvllm_status', 'ruvllm_hnsw_create', 'ruvllm_sona_create', 'ruvllm_microlora_create', 'ruvllm_chat_format', 'ruvllm_kvcache_create'],
165
165
  commands: [],
166
166
  agents: [],
@@ -169,7 +169,7 @@ const CAPABILITY_CATALOG = {
169
169
  },
170
170
  'code-analysis': {
171
171
  name: 'Code Analysis & Diff',
172
- description: 'AST analysis, diff classification, coverage routing, dependency graph analysis.',
172
+ description: 'AST analysis, diff classification, coverage routing, dependency graph analysis. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
173
173
  tools: ['analyze_diff', 'analyze_coverage', 'analyze_graph'],
174
174
  commands: [],
175
175
  agents: ['code-analyzer'],
@@ -178,7 +178,7 @@ const CAPABILITY_CATALOG = {
178
178
  },
179
179
  'sparc-methodology': {
180
180
  name: 'SPARC Methodology',
181
- description: 'Specification, Pseudocode, Architecture, Refinement, Completion — structured development.',
181
+ description: 'Specification, Pseudocode, Architecture, Refinement, Completion — structured development. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
182
182
  tools: [],
183
183
  commands: [],
184
184
  agents: ['specification', 'pseudocode', 'architecture', 'refinement'],
@@ -187,7 +187,7 @@ const CAPABILITY_CATALOG = {
187
187
  },
188
188
  'config-system': {
189
189
  name: 'Configuration & System',
190
- description: 'Configuration management, provider setup, system diagnostics, shell completions.',
190
+ description: 'Configuration management, provider setup, system diagnostics, shell completions. Use when native Bash / file tools are wrong because this MCP tool exposes Ruflo-specific state or controllers that have no shell equivalent. For tasks that fit a one-line native command, prefer that.',
191
191
  tools: ['config_get', 'config_set', 'config_list', 'config_provider'],
192
192
  commands: ['config get', 'config set', 'config list', 'config provider', 'doctor', 'status', 'providers list', 'completions'],
193
193
  agents: [],
@@ -331,7 +331,7 @@ function discoverSkills() {
331
331
  // ── MCP Tool Definitions ────────────────────────────────────
332
332
  const guidanceCapabilities = {
333
333
  name: 'guidance_capabilities',
334
- description: 'List all capability areas with their tools, commands, agents, and skills. Use this to discover what Ruflo can do.',
334
+ description: 'List all capability areas with their tools, commands, agents, and skills. Use this to discover what Ruflo can do. Use when generic "what tool should I use?" guessing is wrong — Ruflo\'s guidance system uses the live tool index + your workflow context to recommend. Pair with hooks_route at task start. For trivial native-only tasks, no guidance call is needed.',
335
335
  inputSchema: {
336
336
  type: 'object',
337
337
  properties: {
@@ -379,7 +379,7 @@ const guidanceCapabilities = {
379
379
  };
380
380
  const guidanceRecommend = {
381
381
  name: 'guidance_recommend',
382
- description: 'Given a task description, recommend which capability areas, tools, agents, and workflow to use.',
382
+ description: 'Given a task description, recommend which capability areas, tools, agents, and workflow to use. Use when generic "what tool should I use?" guessing is wrong — Ruflo\'s guidance system uses the live tool index + your workflow context to recommend. Pair with hooks_route at task start. For trivial native-only tasks, no guidance call is needed.',
383
383
  inputSchema: {
384
384
  type: 'object',
385
385
  properties: {
@@ -462,7 +462,7 @@ const guidanceRecommend = {
462
462
  };
463
463
  const guidanceDiscover = {
464
464
  name: 'guidance_discover',
465
- description: 'Discover all available agents and skills from the .claude/ directory. Returns live filesystem data.',
465
+ description: 'Discover all available agents and skills from the .claude/ directory. Returns live filesystem data. Use when generic "what tool should I use?" guessing is wrong — Ruflo\'s guidance system uses the live tool index + your workflow context to recommend. Pair with hooks_route at task start. For trivial native-only tasks, no guidance call is needed.',
466
466
  inputSchema: {
467
467
  type: 'object',
468
468
  properties: {
@@ -489,7 +489,7 @@ const guidanceDiscover = {
489
489
  };
490
490
  const guidanceWorkflow = {
491
491
  name: 'guidance_workflow',
492
- description: 'Get a recommended workflow template for a task type. Includes steps, agents, and topology.',
492
+ description: 'Get a recommended workflow template for a task type. Includes steps, agents, and topology. Use when generic "what tool should I use?" guessing is wrong — Ruflo\'s guidance system uses the live tool index + your workflow context to recommend. Pair with hooks_route at task start. For trivial native-only tasks, no guidance call is needed.',
493
493
  inputSchema: {
494
494
  type: 'object',
495
495
  properties: {
@@ -540,7 +540,7 @@ const guidanceWorkflow = {
540
540
  };
541
541
  const guidanceQuickRef = {
542
542
  name: 'guidance_quickref',
543
- description: 'Quick reference card for common operations. Returns the most useful commands for a given domain.',
543
+ description: 'Quick reference card for common operations. Returns the most useful commands for a given domain. Use when generic "what tool should I use?" guessing is wrong — Ruflo\'s guidance system uses the live tool index + your workflow context to recommend. Pair with hooks_route at task start. For trivial native-only tasks, no guidance call is needed.',
544
544
  inputSchema: {
545
545
  type: 'object',
546
546
  properties: {
@@ -143,7 +143,7 @@ function saveAgentStore(store) {
143
143
  export const hiveMindTools = [
144
144
  {
145
145
  name: 'hive-mind_spawn',
146
- description: 'Spawn workers and automatically join them to the hive-mind (combines agent/spawn + hive-mind/join)',
146
+ description: 'Spawn workers and automatically join them to the hive-mind (combines agent/spawn + hive-mind/join) Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.',
147
147
  category: 'hive-mind',
148
148
  inputSchema: {
149
149
  type: 'object',
@@ -212,7 +212,7 @@ export const hiveMindTools = [
212
212
  },
213
213
  {
214
214
  name: 'hive-mind_init',
215
- description: 'Initialize the hive-mind collective',
215
+ description: 'Initialize the hive-mind collective Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.',
216
216
  category: 'hive-mind',
217
217
  inputSchema: {
218
218
  type: 'object',
@@ -269,7 +269,7 @@ export const hiveMindTools = [
269
269
  },
270
270
  {
271
271
  name: 'hive-mind_status',
272
- description: 'Get hive-mind status',
272
+ description: 'Get hive-mind status Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.',
273
273
  category: 'hive-mind',
274
274
  inputSchema: {
275
275
  type: 'object',
@@ -368,7 +368,7 @@ export const hiveMindTools = [
368
368
  },
369
369
  {
370
370
  name: 'hive-mind_join',
371
- description: 'Join an agent to the hive-mind',
371
+ description: 'Join an agent to the hive-mind Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.',
372
372
  category: 'hive-mind',
373
373
  inputSchema: {
374
374
  type: 'object',
@@ -404,7 +404,7 @@ export const hiveMindTools = [
404
404
  },
405
405
  {
406
406
  name: 'hive-mind_leave',
407
- description: 'Remove an agent from the hive-mind',
407
+ description: 'Remove an agent from the hive-mind Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.',
408
408
  category: 'hive-mind',
409
409
  inputSchema: {
410
410
  type: 'object',
@@ -437,7 +437,7 @@ export const hiveMindTools = [
437
437
  },
438
438
  {
439
439
  name: 'hive-mind_consensus',
440
- description: 'Propose or vote on consensus with BFT, Raft, or Quorum strategies',
440
+ description: 'Propose or vote on consensus with BFT, Raft, or Quorum strategies Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.',
441
441
  category: 'hive-mind',
442
442
  inputSchema: {
443
443
  type: 'object',
@@ -723,7 +723,7 @@ export const hiveMindTools = [
723
723
  },
724
724
  {
725
725
  name: 'hive-mind_broadcast',
726
- description: 'Broadcast message to all workers',
726
+ description: 'Broadcast message to all workers Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.',
727
727
  category: 'hive-mind',
728
728
  inputSchema: {
729
729
  type: 'object',
@@ -773,7 +773,7 @@ export const hiveMindTools = [
773
773
  },
774
774
  {
775
775
  name: 'hive-mind_shutdown',
776
- description: 'Shutdown the hive-mind and terminate all workers',
776
+ description: 'Shutdown the hive-mind and terminate all workers Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.',
777
777
  category: 'hive-mind',
778
778
  inputSchema: {
779
779
  type: 'object',
@@ -831,7 +831,7 @@ export const hiveMindTools = [
831
831
  },
832
832
  {
833
833
  name: 'hive-mind_memory',
834
- description: 'Access hive shared memory',
834
+ description: 'Access hive shared memory Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.',
835
835
  category: 'hive-mind',
836
836
  inputSchema: {
837
837
  type: 'object',
@@ -571,7 +571,7 @@ function assessCommandRisk(command) {
571
571
  // MCP Tool implementations - return raw data for direct CLI use
572
572
  export const hooksPreEdit = {
573
573
  name: 'hooks_pre-edit',
574
- description: 'Get context and agent suggestions before editing a file',
574
+ description: 'Get context and agent suggestions before editing a file Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
575
575
  inputSchema: {
576
576
  type: 'object',
577
577
  properties: {
@@ -613,7 +613,7 @@ export const hooksPreEdit = {
613
613
  };
614
614
  export const hooksPostEdit = {
615
615
  name: 'hooks_post-edit',
616
- description: 'Record editing outcome for learning',
616
+ description: 'Record editing outcome for learning Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
617
617
  inputSchema: {
618
618
  type: 'object',
619
619
  properties: {
@@ -667,7 +667,7 @@ export const hooksPostEdit = {
667
667
  };
668
668
  export const hooksPreCommand = {
669
669
  name: 'hooks_pre-command',
670
- description: 'Assess risk before executing a command',
670
+ description: 'Assess risk before executing a command Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
671
671
  inputSchema: {
672
672
  type: 'object',
673
673
  properties: {
@@ -705,7 +705,7 @@ export const hooksPreCommand = {
705
705
  };
706
706
  export const hooksPostCommand = {
707
707
  name: 'hooks_post-command',
708
- description: 'Record command execution outcome',
708
+ description: 'Record command execution outcome Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
709
709
  inputSchema: {
710
710
  type: 'object',
711
711
  properties: {
@@ -761,7 +761,7 @@ export const hooksPostCommand = {
761
761
  };
762
762
  export const hooksRoute = {
763
763
  name: 'hooks_route',
764
- description: 'Get a 3-tier routing recommendation for a task: Tier 1 (Agent Booster, 0ms / $0 — for var-to-const, add-types, etc.), Tier 2 (Haiku — simple), Tier 3 (Sonnet/Opus — complex). Use this BEFORE spawning an agent to avoid sending simple transforms to Sonnet. Native tools have no equivalent — Claude Code does not introspect its own model-selection cost. Returns the recommended model + a `[AGENT_BOOSTER_AVAILABLE]` literal when the WASM bypass applies.',
764
+ description: 'Get a 3-tier routing recommendation for a task: Tier 1 (Agent Booster, 0ms / $0 — for var-to-const, add-types, etc.), Tier 2 (Haiku — simple), Tier 3 (Sonnet/Opus — complex). Use this BEFORE spawning an agent to avoid sending simple transforms to Sonnet. Native tools have no equivalent — Claude Code does not introspect its own model-selection cost. Returns the recommended model + a `[AGENT_BOOSTER_AVAILABLE]` literal when the WASM bypass applies. Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
765
765
  inputSchema: {
766
766
  type: 'object',
767
767
  properties: {
@@ -937,7 +937,7 @@ export const hooksRoute = {
937
937
  };
938
938
  export const hooksMetrics = {
939
939
  name: 'hooks_metrics',
940
- description: 'View learning metrics dashboard',
940
+ description: 'View learning metrics dashboard Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
941
941
  inputSchema: {
942
942
  type: 'object',
943
943
  properties: {
@@ -1002,7 +1002,7 @@ export const hooksMetrics = {
1002
1002
  };
1003
1003
  export const hooksList = {
1004
1004
  name: 'hooks_list',
1005
- description: 'List all registered hooks',
1005
+ description: 'List all registered hooks Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1006
1006
  inputSchema: {
1007
1007
  type: 'object',
1008
1008
  properties: {},
@@ -1049,7 +1049,7 @@ export const hooksList = {
1049
1049
  };
1050
1050
  export const hooksPreTask = {
1051
1051
  name: 'hooks_pre-task',
1052
- description: 'Record task start and get agent suggestions with intelligent model routing (ADR-026)',
1052
+ description: 'Record task start and get agent suggestions with intelligent model routing (ADR-026) Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1053
1053
  inputSchema: {
1054
1054
  type: 'object',
1055
1055
  properties: {
@@ -1147,7 +1147,7 @@ export const hooksPreTask = {
1147
1147
  };
1148
1148
  export const hooksPostTask = {
1149
1149
  name: 'hooks_post-task',
1150
- description: 'Record task completion for learning',
1150
+ description: 'Record task completion for learning Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1151
1151
  inputSchema: {
1152
1152
  type: 'object',
1153
1153
  properties: {
@@ -1299,7 +1299,7 @@ export const hooksPostTask = {
1299
1299
  // Explain hook - transparent routing explanation
1300
1300
  export const hooksExplain = {
1301
1301
  name: 'hooks_explain',
1302
- description: 'Explain routing decision with full transparency',
1302
+ description: 'Explain routing decision with full transparency Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1303
1303
  inputSchema: {
1304
1304
  type: 'object',
1305
1305
  properties: {
@@ -1377,7 +1377,7 @@ export const hooksExplain = {
1377
1377
  // Pretrain hook - repository analysis for intelligence bootstrap
1378
1378
  export const hooksPretrain = {
1379
1379
  name: 'hooks_pretrain',
1380
- description: 'Analyze repository to bootstrap intelligence (4-step pipeline)',
1380
+ description: 'Analyze repository to bootstrap intelligence (4-step pipeline) Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1381
1381
  inputSchema: {
1382
1382
  type: 'object',
1383
1383
  properties: {
@@ -1492,7 +1492,7 @@ export const hooksPretrain = {
1492
1492
  // Build agents hook - generate optimized agent configs
1493
1493
  export const hooksBuildAgents = {
1494
1494
  name: 'hooks_build-agents',
1495
- description: 'Generate optimized agent configurations from pretrain data',
1495
+ description: 'Generate optimized agent configurations from pretrain data Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1496
1496
  inputSchema: {
1497
1497
  type: 'object',
1498
1498
  properties: {
@@ -1555,7 +1555,7 @@ export const hooksBuildAgents = {
1555
1555
  // Transfer hook - transfer patterns from another project
1556
1556
  export const hooksTransfer = {
1557
1557
  name: 'hooks_transfer',
1558
- description: 'Transfer learned patterns from another project',
1558
+ description: 'Transfer learned patterns from another project Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1559
1559
  inputSchema: {
1560
1560
  type: 'object',
1561
1561
  properties: {
@@ -1637,7 +1637,7 @@ export const hooksTransfer = {
1637
1637
  // Session start hook - auto-starts daemon
1638
1638
  export const hooksSessionStart = {
1639
1639
  name: 'hooks_session-start',
1640
- description: 'Initialize a new session and auto-start daemon',
1640
+ description: 'Initialize a new session and auto-start daemon Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1641
1641
  inputSchema: {
1642
1642
  type: 'object',
1643
1643
  properties: {
@@ -1780,7 +1780,7 @@ export const hooksSessionStart = {
1780
1780
  // Session end hook - stops daemon
1781
1781
  export const hooksSessionEnd = {
1782
1782
  name: 'hooks_session-end',
1783
- description: 'End current session, stop daemon, and persist state',
1783
+ description: 'End current session, stop daemon, and persist state Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1784
1784
  inputSchema: {
1785
1785
  type: 'object',
1786
1786
  properties: {
@@ -1867,7 +1867,7 @@ export const hooksSessionEnd = {
1867
1867
  // Session restore hook
1868
1868
  export const hooksSessionRestore = {
1869
1869
  name: 'hooks_session-restore',
1870
- description: 'Restore a previous session',
1870
+ description: 'Restore a previous session Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1871
1871
  inputSchema: {
1872
1872
  type: 'object',
1873
1873
  properties: {
@@ -1909,7 +1909,7 @@ export const hooksSessionRestore = {
1909
1909
  // Notify hook - cross-agent notifications
1910
1910
  export const hooksNotify = {
1911
1911
  name: 'hooks_notify',
1912
- description: 'Send cross-agent notification',
1912
+ description: 'Send cross-agent notification Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1913
1913
  inputSchema: {
1914
1914
  type: 'object',
1915
1915
  properties: {
@@ -1948,7 +1948,7 @@ export const hooksNotify = {
1948
1948
  // Init hook - initialize hooks in project
1949
1949
  export const hooksInit = {
1950
1950
  name: 'hooks_init',
1951
- description: 'Initialize hooks in project with .claude/settings.json',
1951
+ description: 'Initialize hooks in project with .claude/settings.json Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1952
1952
  inputSchema: {
1953
1953
  type: 'object',
1954
1954
  properties: {
@@ -1986,7 +1986,7 @@ export const hooksInit = {
1986
1986
  // Intelligence hook - RuVector intelligence system
1987
1987
  export const hooksIntelligence = {
1988
1988
  name: 'hooks_intelligence',
1989
- description: 'RuVector intelligence system status (shows REAL metrics from memory store)',
1989
+ description: 'RuVector intelligence system status (shows REAL metrics from memory store) Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
1990
1990
  inputSchema: {
1991
1991
  type: 'object',
1992
1992
  properties: {
@@ -2127,7 +2127,7 @@ export const hooksIntelligence = {
2127
2127
  // Intelligence reset hook
2128
2128
  export const hooksIntelligenceReset = {
2129
2129
  name: 'hooks_intelligence-reset',
2130
- description: 'Reset intelligence learning state',
2130
+ description: 'Reset intelligence learning state Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
2131
2131
  inputSchema: {
2132
2132
  type: 'object',
2133
2133
  properties: {},
@@ -2194,7 +2194,7 @@ export const hooksIntelligenceReset = {
2194
2194
  // Intelligence trajectory hooks - REAL implementation using activeTrajectories
2195
2195
  export const hooksTrajectoryStart = {
2196
2196
  name: 'hooks_intelligence_trajectory-start',
2197
- description: 'Begin SONA trajectory for reinforcement learning',
2197
+ description: 'Begin SONA trajectory for reinforcement learning Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
2198
2198
  inputSchema: {
2199
2199
  type: 'object',
2200
2200
  properties: {
@@ -2255,7 +2255,7 @@ export const hooksTrajectoryStart = {
2255
2255
  };
2256
2256
  export const hooksTrajectoryStep = {
2257
2257
  name: 'hooks_intelligence_trajectory-step',
2258
- description: 'Record step in trajectory for reinforcement learning',
2258
+ description: 'Record step in trajectory for reinforcement learning Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
2259
2259
  inputSchema: {
2260
2260
  type: 'object',
2261
2261
  properties: {
@@ -2308,7 +2308,7 @@ export const hooksTrajectoryStep = {
2308
2308
  };
2309
2309
  export const hooksTrajectoryEnd = {
2310
2310
  name: 'hooks_intelligence_trajectory-end',
2311
- description: 'End trajectory and trigger SONA learning with EWC++',
2311
+ description: 'End trajectory and trigger SONA learning with EWC++ Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
2312
2312
  inputSchema: {
2313
2313
  type: 'object',
2314
2314
  properties: {
@@ -2452,7 +2452,7 @@ export const hooksTrajectoryEnd = {
2452
2452
  // Pattern store/search hooks - REAL implementation using storeEntry
2453
2453
  export const hooksPatternStore = {
2454
2454
  name: 'hooks_intelligence_pattern-store',
2455
- description: 'Store pattern in ReasoningBank (HNSW-indexed)',
2455
+ description: 'Store pattern in ReasoningBank (HNSW-indexed) Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
2456
2456
  inputSchema: {
2457
2457
  type: 'object',
2458
2458
  properties: {
@@ -2534,7 +2534,7 @@ export const hooksPatternStore = {
2534
2534
  };
2535
2535
  export const hooksPatternSearch = {
2536
2536
  name: 'hooks_intelligence_pattern-search',
2537
- description: 'Search patterns using REAL vector search (HNSW when available, brute-force fallback)',
2537
+ description: 'Search patterns using REAL vector search (HNSW when available, brute-force fallback) Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
2538
2538
  inputSchema: {
2539
2539
  type: 'object',
2540
2540
  properties: {
@@ -2643,7 +2643,7 @@ export const hooksPatternSearch = {
2643
2643
  // Intelligence stats hook
2644
2644
  export const hooksIntelligenceStats = {
2645
2645
  name: 'hooks_intelligence_stats',
2646
- description: 'Get RuVector intelligence layer statistics',
2646
+ description: 'Get RuVector intelligence layer statistics Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
2647
2647
  inputSchema: {
2648
2648
  type: 'object',
2649
2649
  properties: {
@@ -2846,7 +2846,7 @@ export const hooksIntelligenceStats = {
2846
2846
  // Intelligence learn hook
2847
2847
  export const hooksIntelligenceLearn = {
2848
2848
  name: 'hooks_intelligence_learn',
2849
- description: 'Force immediate SONA learning cycle with EWC++ consolidation',
2849
+ description: 'Force immediate SONA learning cycle with EWC++ consolidation Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
2850
2850
  inputSchema: {
2851
2851
  type: 'object',
2852
2852
  properties: {
@@ -2917,7 +2917,7 @@ export const hooksIntelligenceLearn = {
2917
2917
  // Intelligence attention hook
2918
2918
  export const hooksIntelligenceAttention = {
2919
2919
  name: 'hooks_intelligence_attention',
2920
- description: 'Compute attention-weighted similarity using MoE/Flash/Hyperbolic',
2920
+ description: 'Compute attention-weighted similarity using MoE/Flash/Hyperbolic Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
2921
2921
  inputSchema: {
2922
2922
  type: 'object',
2923
2923
  properties: {
@@ -3329,7 +3329,7 @@ function detectWorkerTriggers(text) {
3329
3329
  // Worker list tool
3330
3330
  export const hooksWorkerList = {
3331
3331
  name: 'hooks_worker-list',
3332
- description: 'List all 12 background workers with status and capabilities',
3332
+ description: 'List all 12 background workers with status and capabilities Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
3333
3333
  inputSchema: {
3334
3334
  type: 'object',
3335
3335
  properties: {
@@ -3372,7 +3372,7 @@ export const hooksWorkerList = {
3372
3372
  // Worker dispatch tool
3373
3373
  export const hooksWorkerDispatch = {
3374
3374
  name: 'hooks_worker-dispatch',
3375
- description: 'Dispatch a background worker for analysis/optimization tasks',
3375
+ description: 'Dispatch a background worker for analysis/optimization tasks Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
3376
3376
  inputSchema: {
3377
3377
  type: 'object',
3378
3378
  properties: {
@@ -3506,7 +3506,7 @@ export const hooksWorkerDispatch = {
3506
3506
  // Worker status tool
3507
3507
  export const hooksWorkerStatus = {
3508
3508
  name: 'hooks_worker-status',
3509
- description: 'Get status of a specific worker or all active workers',
3509
+ description: 'Get status of a specific worker or all active workers Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
3510
3510
  inputSchema: {
3511
3511
  type: 'object',
3512
3512
  properties: {
@@ -3563,7 +3563,7 @@ export const hooksWorkerStatus = {
3563
3563
  // Worker detect tool - detect triggers from prompt
3564
3564
  export const hooksWorkerDetect = {
3565
3565
  name: 'hooks_worker-detect',
3566
- description: 'Detect worker triggers from user prompt (for UserPromptSubmit hook)',
3566
+ description: 'Detect worker triggers from user prompt (for UserPromptSubmit hook) Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
3567
3567
  inputSchema: {
3568
3568
  type: 'object',
3569
3569
  properties: {
@@ -3642,7 +3642,7 @@ async function getModelRouterInstance() {
3642
3642
  // Model route tool - intelligent model selection
3643
3643
  export const hooksModelRoute = {
3644
3644
  name: 'hooks_model-route',
3645
- description: 'Route task to optimal Claude model (haiku/sonnet/opus) based on complexity',
3645
+ description: 'Route task to optimal Claude model (haiku/sonnet/opus) based on complexity Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
3646
3646
  inputSchema: {
3647
3647
  type: 'object',
3648
3648
  properties: {
@@ -3688,7 +3688,7 @@ export const hooksModelRoute = {
3688
3688
  // Model route outcome - record outcome for learning
3689
3689
  export const hooksModelOutcome = {
3690
3690
  name: 'hooks_model-outcome',
3691
- description: 'Record model routing outcome for learning',
3691
+ description: 'Record model routing outcome for learning Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
3692
3692
  inputSchema: {
3693
3693
  type: 'object',
3694
3694
  properties: {
@@ -3723,7 +3723,7 @@ export const hooksModelOutcome = {
3723
3723
  // Model router stats
3724
3724
  export const hooksModelStats = {
3725
3725
  name: 'hooks_model-stats',
3726
- description: 'Get model routing statistics',
3726
+ description: 'Get model routing statistics Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
3727
3727
  inputSchema: {
3728
3728
  type: 'object',
3729
3729
  properties: {},
@@ -3760,7 +3760,7 @@ function analyzeComplexityFallback(task) {
3760
3760
  // Worker cancel tool
3761
3761
  export const hooksWorkerCancel = {
3762
3762
  name: 'hooks_worker-cancel',
3763
- description: 'Cancel a running worker',
3763
+ description: 'Cancel a running worker Use when native Bash hooks (via Claude Code\'s settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.',
3764
3764
  inputSchema: {
3765
3765
  type: 'object',
3766
3766
  properties: {