@claude-flow/cli 3.5.63 β 3.5.65
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +58 -58
- package/bin/cli.js +9 -0
- package/bin/mcp-server.js +8 -0
- package/dist/src/mcp-tools/hooks-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/hooks-tools.js +2 -0
- package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
- package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/memory-tools.js +226 -0
- package/dist/src/mcp-tools/memory-tools.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +11 -2
package/README.md
CHANGED
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
[](https://www.linkedin.com/in/reuvencohen/)
|
|
21
21
|
[](https://www.youtube.com/@ReuvenCohen)
|
|
22
22
|
|
|
23
|
-
# **
|
|
24
|
-
*Deploy
|
|
23
|
+
# **Multi-agent AI orchestration for Claude Code**
|
|
24
|
+
*Deploy 16 specialized agent roles + custom types in coordinated swarms with self-learning capabilities, fault-tolerant consensus, and enterprise-grade security.*
|
|
25
25
|
|
|
26
26
|
</div>
|
|
27
27
|
|
|
@@ -62,7 +62,7 @@ flowchart TB
|
|
|
62
62
|
|
|
63
63
|
subgraph SWARM["π Swarm Coordination"]
|
|
64
64
|
TOPO[Topologies<br/>mesh/hier/ring/star]
|
|
65
|
-
CONS[Consensus<br/>Raft/BFT/Gossip
|
|
65
|
+
CONS[Consensus<br/>Raft/BFT/Gossip]
|
|
66
66
|
CLM[Claims<br/>Human-Agent Coord]
|
|
67
67
|
end
|
|
68
68
|
|
|
@@ -89,12 +89,12 @@ flowchart TB
|
|
|
89
89
|
FLASH[Flash Attention<br/>2.49-7.47x]
|
|
90
90
|
end
|
|
91
91
|
subgraph ROW2[" "]
|
|
92
|
-
HNSW[HNSW<br/>
|
|
92
|
+
HNSW[HNSW<br/>HNSW-indexed]
|
|
93
93
|
RB[ReasoningBank<br/>Pattern Store]
|
|
94
94
|
HYP[Hyperbolic<br/>PoincarΓ©]
|
|
95
95
|
end
|
|
96
96
|
subgraph ROW3[" "]
|
|
97
|
-
LORA[LoRA/Micro<br/>
|
|
97
|
+
LORA[LoRA/Micro<br/>low-rank adaptation]
|
|
98
98
|
QUANT[Int8 Quant<br/>3.92x memory]
|
|
99
99
|
RL[9 RL Algos<br/>Q/SARSA/PPO/DQN]
|
|
100
100
|
end
|
|
@@ -130,7 +130,7 @@ flowchart TB
|
|
|
130
130
|
|
|
131
131
|
| Component | Purpose | Performance |
|
|
132
132
|
|-----------|---------|-------------|
|
|
133
|
-
| **SONA** | Self-Optimizing
|
|
133
|
+
| **SONA** | Self-Optimizing Pattern Learning - learns optimal routing | Fast adaptation |
|
|
134
134
|
| **EWC++** | Elastic Weight Consolidation - prevents catastrophic forgetting | Preserves learned patterns |
|
|
135
135
|
| **Flash Attention** | Optimized attention computation | 2-7x speedup (benchmarked) |
|
|
136
136
|
| **HNSW** | Hierarchical Navigable Small World vector search | Sub-millisecond retrieval |
|
|
@@ -230,8 +230,8 @@ The system stores successful patterns in vector memory, builds a knowledge graph
|
|
|
230
230
|
| Knowledge Graph | MemoryGraph, PageRank, Communities | Identifies influential insights, detects clusters (ADR-049) |
|
|
231
231
|
| Self-Learning | LearningBridge, SONA, ReasoningBank | Triggers learning from insights, confidence lifecycle (ADR-049) |
|
|
232
232
|
| Agent Scopes | AgentMemoryScope, 3-scope dirs | Per-agent isolation + cross-agent knowledge transfer (ADR-049) |
|
|
233
|
-
| Embeddings | ONNX Runtime, MiniLM | Local vectors without API calls (
|
|
234
|
-
| Learning | SONA, MoE, ReasoningBank | Self-improves from results (
|
|
233
|
+
| Embeddings | ONNX Runtime, MiniLM | Local vectors without API calls (faster with ONNX runtime) |
|
|
234
|
+
| Learning | SONA, MoE, ReasoningBank | Self-improves from results (sub-millisecond pattern matching) |
|
|
235
235
|
| Fine-tuning | MicroLoRA, EWC++ | Lightweight adaptation without full retraining |
|
|
236
236
|
|
|
237
237
|
</details>
|
|
@@ -299,7 +299,7 @@ When you see these in hook output, the system is telling you how to optimize:
|
|
|
299
299
|
```bash
|
|
300
300
|
# Agent Booster available - skip LLM entirely
|
|
301
301
|
[AGENT_BOOSTER_AVAILABLE] Intent: var-to-const
|
|
302
|
-
β Use Edit tool directly,
|
|
302
|
+
β Use Edit tool directly, instant (regex-based, no LLM call) than LLM
|
|
303
303
|
|
|
304
304
|
# Model recommendation for Task tool
|
|
305
305
|
[TASK_MODEL_RECOMMENDATION] Use model="haiku"
|
|
@@ -312,12 +312,12 @@ When you see these in hook output, the system is telling you how to optimize:
|
|
|
312
312
|
|--------|---------------|----------|
|
|
313
313
|
| Latency | <1ms | 2-5s |
|
|
314
314
|
| Cost | $0 | $0.0002-$0.015 |
|
|
315
|
-
| Speedup | **
|
|
315
|
+
| Speedup | **instant (regex-based, no LLM call)** | baseline |
|
|
316
316
|
|
|
317
317
|
</details>
|
|
318
318
|
|
|
319
319
|
<details>
|
|
320
|
-
<summary>π° <strong>Token Optimizer</strong> β
|
|
320
|
+
<summary>π° <strong>Token Optimizer</strong> β reduces token usage via pattern caching and smart routing</summary>
|
|
321
321
|
|
|
322
322
|
The Token Optimizer integrates agentic-flow optimizations to reduce API costs by compressing context and caching results.
|
|
323
323
|
|
|
@@ -340,7 +340,7 @@ const optimizer = await getTokenOptimizer();
|
|
|
340
340
|
// Get compact context (32% fewer tokens)
|
|
341
341
|
const ctx = await optimizer.getCompactContext("auth patterns");
|
|
342
342
|
|
|
343
|
-
// Optimized edit (
|
|
343
|
+
// Optimized edit (instant (regex-based, no LLM call) for simple transforms)
|
|
344
344
|
await optimizer.optimizedEdit(file, oldStr, newStr, "typescript");
|
|
345
345
|
|
|
346
346
|
// Optimal config for swarm (100% success rate)
|
|
@@ -399,19 +399,19 @@ swarm_init({
|
|
|
399
399
|
| Capability | Claude Code Alone | Claude Code + Ruflo |
|
|
400
400
|
|------------|-------------------|---------------------------|
|
|
401
401
|
| **Agent Collaboration** | Agents work in isolation, no shared context | Agents collaborate via swarms with shared memory and consensus |
|
|
402
|
-
| **Coordination** | Manual orchestration between tasks | Queen-led hierarchy with
|
|
402
|
+
| **Coordination** | Manual orchestration between tasks | Queen-led hierarchy with 3 consensus algorithms (Raft, Byzantine, Gossip) |
|
|
403
403
|
| **Hive Mind** | β Not available | π Queen-led swarms with collective intelligence, 3 queen types, 8 worker types |
|
|
404
404
|
| **Consensus** | β No multi-agent decisions | Byzantine fault-tolerant voting (f < n/3), weighted, majority |
|
|
405
405
|
| **Memory** | Session-only, no persistence | HNSW vector memory with sub-ms retrieval + knowledge graph |
|
|
406
406
|
| **Vector Database** | β No native support | π RuVector PostgreSQL with 77+ SQL functions, ~61Β΅s search, 16,400 QPS |
|
|
407
407
|
| **Knowledge Graph** | β Flat insight lists | PageRank + community detection identifies influential insights (ADR-049) |
|
|
408
408
|
| **Collective Memory** | β No shared knowledge | Shared knowledge base with LRU cache, SQLite persistence, 8 memory types |
|
|
409
|
-
| **Learning** | Static behavior, no adaptation | SONA self-learning with
|
|
409
|
+
| **Learning** | Static behavior, no adaptation | SONA self-learning with sub-millisecond pattern matching, LearningBridge for insights |
|
|
410
410
|
| **Agent Scoping** | Single project scope | 3-scope agent memory (project/local/user) with cross-agent transfer |
|
|
411
411
|
| **Task Routing** | You decide which agent to use | Intelligent routing based on learned patterns (89% accuracy) |
|
|
412
412
|
| **Complex Tasks** | Manual breakdown required | Automatic decomposition across 5 domains (Security, Core, Integration, Support) |
|
|
413
413
|
| **Background Workers** | Nothing runs automatically | 12 context-triggered workers auto-dispatch on file changes, patterns, sessions |
|
|
414
|
-
| **LLM Provider** | Anthropic only |
|
|
414
|
+
| **LLM Provider** | Anthropic only | 5 providers (Anthropic, OpenAI, Google, Cohere, Ollama) with automatic failover and cost-based routing (cost-optimized routing) |
|
|
415
415
|
| **Security** | Standard protections | CVE-hardened with bcrypt, input validation, path traversal prevention |
|
|
416
416
|
| **Performance** | Baseline | Faster tasks via parallel swarm spawning and intelligent routing |
|
|
417
417
|
|
|
@@ -726,7 +726,7 @@ Ruflo v3 introduces **self-learning neural capabilities** that no other agent or
|
|
|
726
726
|
| **Pattern Learning** | β
From trajectories | β | β | β | β |
|
|
727
727
|
| **Expert Routing** | β
MoE (8 experts) | Manual | Graph edges | β | Fixed |
|
|
728
728
|
| **Attention Optimization** | β
Flash Attention | β | β | β | β |
|
|
729
|
-
| **Low-Rank Adaptation** | β
LoRA (
|
|
729
|
+
| **Low-Rank Adaptation** | β
LoRA (low-rank adaptation) | β | β | β | β |
|
|
730
730
|
|
|
731
731
|
#### πΎ Memory & Embeddings
|
|
732
732
|
|
|
@@ -783,7 +783,7 @@ What makes Ruflo different from other agent frameworks? These 10 capabilities wo
|
|
|
783
783
|
|
|
784
784
|
| | Feature | What It Does | Technical Details |
|
|
785
785
|
|---|---------|--------------|-------------------|
|
|
786
|
-
| π§ | **SONA** | Learns which agents perform best for each task type and routes work accordingly | Self-Optimizing
|
|
786
|
+
| π§ | **SONA** | Learns which agents perform best for each task type and routes work accordingly | Self-Optimizing Pattern Learning |
|
|
787
787
|
| π | **EWC++** | Preserves learned patterns when training on new ones β no forgetting | Elastic Weight Consolidation prevents catastrophic forgetting |
|
|
788
788
|
| π― | **MoE** | Routes tasks through 8 specialized expert networks based on task type | Mixture of 8 Experts with dynamic gating |
|
|
789
789
|
| β‘ | **Flash Attention** | Accelerates attention computation for faster agent responses | Optimized attention via @ruvector/attention |
|
|
@@ -797,7 +797,7 @@ What makes Ruflo different from other agent frameworks? These 10 capabilities wo
|
|
|
797
797
|
</details>
|
|
798
798
|
|
|
799
799
|
<details>
|
|
800
|
-
<summary>π° <strong>Intelligent 3-Tier Model Routing</strong> β
|
|
800
|
+
<summary>π° <strong>Intelligent 3-Tier Model Routing</strong> β Reduce API costs by routing simple tasks to cheaper models</summary>
|
|
801
801
|
|
|
802
802
|
Not every task needs the most powerful (and expensive) model. Ruflo analyzes each request and automatically routes it to the cheapest handler that can do the job well. Simple code transforms skip the LLM entirely using WebAssembly. Medium tasks use faster, cheaper models. Only complex architecture decisions use Opus.
|
|
803
803
|
|
|
@@ -806,7 +806,7 @@ Not every task needs the most powerful (and expensive) model. Ruflo analyzes eac
|
|
|
806
806
|
| Benefit | Impact |
|
|
807
807
|
|---------|--------|
|
|
808
808
|
| π΅ **API Cost Reduction** | 75% lower costs by using right-sized models |
|
|
809
|
-
| β±οΈ **Claude Max Extension** |
|
|
809
|
+
| β±οΈ **Claude Max Extension** | More tasks within quota via smart model selection |
|
|
810
810
|
| π **Faster Simple Tasks** | <1ms for transforms vs 2-5s with LLM |
|
|
811
811
|
| π― **Zero Wasted Tokens** | Simple edits use 0 tokens (WASM handles them) |
|
|
812
812
|
|
|
@@ -818,7 +818,7 @@ Not every task needs the most powerful (and expensive) model. Ruflo analyzes eac
|
|
|
818
818
|
| **2** | Haiku/Sonnet | 500ms-2s | $0.0002-$0.003 | Bug fixes, refactoring, feature implementation |
|
|
819
819
|
| **3** | Opus | 2-5s | $0.015 | Architecture, security design, distributed systems |
|
|
820
820
|
|
|
821
|
-
**
|
|
821
|
+
**Routing:** Q-learning with epsilon-greedy exploration, sub-millisecond decision latency
|
|
822
822
|
|
|
823
823
|
</details>
|
|
824
824
|
|
|
@@ -1563,7 +1563,7 @@ Comprehensive capabilities for enterprise-grade AI agent orchestration.
|
|
|
1563
1563
|
Comprehensive feature set for enterprise-grade AI agent orchestration.
|
|
1564
1564
|
|
|
1565
1565
|
<details open>
|
|
1566
|
-
<summary>π€ <strong>Agent Ecosystem</strong> β
|
|
1566
|
+
<summary>π€ <strong>Agent Ecosystem</strong> β 16 specialized agent roles + custom types across 8 categories</summary>
|
|
1567
1567
|
|
|
1568
1568
|
Pre-built agents for every development task, from coding to security audits.
|
|
1569
1569
|
|
|
@@ -1785,7 +1785,7 @@ Install these optional plugins to extend Ruflo capabilities:
|
|
|
1785
1785
|
|--------|---------|-------------|-----------------|
|
|
1786
1786
|
| **@claude-flow/plugin-agentic-qe** | 3.0.0-alpha.2 | Quality Engineering with 58 AI agents across 12 DDD contexts. TDD, coverage analysis, security scanning, chaos engineering, accessibility testing. | `npm install @claude-flow/plugin-agentic-qe` |
|
|
1787
1787
|
| **@claude-flow/plugin-prime-radiant** | 0.1.4 | Mathematical AI interpretability with 6 engines: sheaf cohomology, spectral analysis, causal inference, quantum topology, category theory, HoTT proofs. | `npm install @claude-flow/plugin-prime-radiant` |
|
|
1788
|
-
| **@claude-flow/plugin-gastown-bridge** | 0.1.0 | Gas Town orchestrator integration with WASM-accelerated formula parsing (
|
|
1788
|
+
| **@claude-flow/plugin-gastown-bridge** | 0.1.0 | Gas Town orchestrator integration with WASM-accelerated formula parsing (instant (regex-based, no LLM call)), Beads sync, convoy management, and graph analysis. 20 MCP tools. | `npx ruflo@latest plugins install -n @claude-flow/plugin-gastown-bridge` |
|
|
1789
1789
|
| **@claude-flow/teammate-plugin** | 1.0.0-alpha.1 | Native TeammateTool integration for Claude Code v2.1.19+. BMSSP WASM acceleration, rate limiting, circuit breaker, semantic routing. 21 MCP tools. | `npx ruflo@latest plugins install -n @claude-flow/teammate-plugin` |
|
|
1790
1790
|
|
|
1791
1791
|
#### π₯ Domain-Specific Plugins
|
|
@@ -1830,7 +1830,7 @@ Install these optional plugins to extend Ruflo capabilities:
|
|
|
1830
1830
|
**Teammate Plugin Features:**
|
|
1831
1831
|
- Native TeammateTool integration for Claude Code v2.1.19+
|
|
1832
1832
|
- 21 MCP tools: `teammate/spawn`, `teammate/coordinate`, `teammate/broadcast`, `teammate/discover-teams`, `teammate/route-task`, etc.
|
|
1833
|
-
- BMSSP WASM acceleration for topology optimization (
|
|
1833
|
+
- BMSSP WASM acceleration for topology optimization (instant (regex-based, no LLM call))
|
|
1834
1834
|
- Rate limiting with sliding window (configurable limits)
|
|
1835
1835
|
- Circuit breaker for fault tolerance (closed/open/half-open states)
|
|
1836
1836
|
- Semantic routing with skill-based teammate selection
|
|
@@ -2051,7 +2051,7 @@ npx ruflo@latest worker status
|
|
|
2051
2051
|
</details>
|
|
2052
2052
|
|
|
2053
2053
|
<details>
|
|
2054
|
-
<summary>βοΈ <strong>LLM Providers</strong> β
|
|
2054
|
+
<summary>βοΈ <strong>LLM Providers</strong> β 5 providers (Anthropic, OpenAI, Google, Cohere, Ollama) with automatic failover</summary>
|
|
2055
2055
|
|
|
2056
2056
|
| Provider | Models | Features | Cost |
|
|
2057
2057
|
|----------|--------|----------|------|
|
|
@@ -2105,7 +2105,7 @@ npx ruflo@latest worker status
|
|
|
2105
2105
|
| **Byzantine (PBFT)** | Practical Byzantine Fault Tolerance | f < n/3 faulty nodes | ~100ms | Adversarial environments |
|
|
2106
2106
|
| **Raft** | Leader-based log replication | f < n/2 failures | ~50ms | Strong consistency |
|
|
2107
2107
|
| **Gossip** | Epidemic protocol dissemination | High partition tolerance | ~200ms | Eventually consistent |
|
|
2108
|
-
| **CRDT** | Conflict-free Replicated Data Types | Strong eventual consistency | ~10ms | Concurrent updates |
|
|
2108
|
+
| **CRDT** | Conflict-free Replicated Data Types (planned) | Strong eventual consistency | ~10ms | Concurrent updates |
|
|
2109
2109
|
| **Quorum** | Configurable read/write quorums | Flexible | ~75ms | Tunable consistency |
|
|
2110
2110
|
|
|
2111
2111
|
</details>
|
|
@@ -2196,8 +2196,8 @@ npx ruflo@latest worker status
|
|
|
2196
2196
|
| Component | Description | Performance |
|
|
2197
2197
|
|-----------|-------------|-------------|
|
|
2198
2198
|
| **AgenticFlowBridge** | agentic-flow@alpha integration | ADR-001 compliant |
|
|
2199
|
-
| **SONA Adapter** | Learning system integration |
|
|
2200
|
-
| **Flash Attention** | Attention mechanism coordinator |
|
|
2199
|
+
| **SONA Adapter** | Learning system integration | sub-millisecond pattern matching |
|
|
2200
|
+
| **Flash Attention** | Attention mechanism coordinator | optimized attention (WASM-accelerated when available) |
|
|
2201
2201
|
| **SDK Bridge** | Version negotiation, API compatibility | Auto-detection |
|
|
2202
2202
|
| **Feature Flags** | Dynamic feature management | 9 configurable flags |
|
|
2203
2203
|
| **Runtime Detection** | NAPI, WASM, JS auto-selection | Optimal performance |
|
|
@@ -2244,7 +2244,7 @@ npx ruflo@latest worker status
|
|
|
2244
2244
|
|
|
2245
2245
|
| Feature | Description | Performance |
|
|
2246
2246
|
|---------|-------------|-------------|
|
|
2247
|
-
| **SONA Learning** | Self-Optimizing
|
|
2247
|
+
| **SONA Learning** | Self-Optimizing Pattern Learning | sub-millisecond pattern matching |
|
|
2248
2248
|
| **5 Learning Modes** | real-time, balanced, research, edge, batch | Mode-specific optimization |
|
|
2249
2249
|
| **9 RL Algorithms** | PPO, A2C, DQN, Q-Learning, SARSA, Decision Transformer, etc. | Comprehensive RL |
|
|
2250
2250
|
| **LoRA Integration** | Low-Rank Adaptation for efficient fine-tuning | Minimal memory overhead |
|
|
@@ -2256,7 +2256,7 @@ npx ruflo@latest worker status
|
|
|
2256
2256
|
|---------|-------------|-------------|
|
|
2257
2257
|
| **Scalar Quantization** | Reduce vector precision for memory savings | 4x memory reduction |
|
|
2258
2258
|
| **Product Quantization** | Compress vectors into codebooks | 8-32x memory reduction |
|
|
2259
|
-
| **HNSW Indexing** | Hierarchical Navigable Small World graphs |
|
|
2259
|
+
| **HNSW Indexing** | Hierarchical Navigable Small World graphs | HNSW-indexed search |
|
|
2260
2260
|
| **LRU Caching** | Intelligent embedding cache with TTL | <1ms cache hits |
|
|
2261
2261
|
| **Batch Processing** | Process multiple embeddings in single call | 10x throughput |
|
|
2262
2262
|
| **Memory Compression** | Pattern distillation and pruning | 50-75% reduction |
|
|
@@ -2388,9 +2388,9 @@ npx ruflo hive-mind status # Check status
|
|
|
2388
2388
|
|---------|-------------|---------|
|
|
2389
2389
|
| **ADR-001 Compliance** | Build on agentic-flow, don't duplicate | Eliminates 10,000+ duplicate lines |
|
|
2390
2390
|
| **Core Foundation** | Use agentic-flow as the base layer | Unified architecture |
|
|
2391
|
-
| **SONA Integration** | Seamless learning system connection |
|
|
2392
|
-
| **Flash Attention** | Optimized attention mechanisms |
|
|
2393
|
-
| **AgentDB Bridge** | Vector storage integration |
|
|
2391
|
+
| **SONA Integration** | Seamless learning system connection | sub-millisecond pattern matching |
|
|
2392
|
+
| **Flash Attention** | Optimized attention mechanisms | optimized attention (WASM-accelerated when available) |
|
|
2393
|
+
| **AgentDB Bridge** | Vector storage integration | HNSW-indexed search |
|
|
2394
2394
|
| **Feature Flags** | Dynamic capability management | 9 configurable features |
|
|
2395
2395
|
| **Runtime Detection** | NAPI/WASM/JS auto-selection | Optimal performance per platform |
|
|
2396
2396
|
| **Graceful Fallback** | Works with or without agentic-flow | Always functional |
|
|
@@ -2678,7 +2678,7 @@ Complete command-line interface for all Ruflo operations.
|
|
|
2678
2678
|
| `init` | 4 | Project initialization with wizard, presets, skills, hooks |
|
|
2679
2679
|
| `agent` | 8 | Agent lifecycle (spawn, list, status, stop, metrics, pool, health, logs) |
|
|
2680
2680
|
| `swarm` | 6 | Multi-agent swarm coordination and orchestration |
|
|
2681
|
-
| `memory` | 11 | AgentDB memory with vector search (
|
|
2681
|
+
| `memory` | 11 | AgentDB memory with vector search (HNSW-indexed) |
|
|
2682
2682
|
| `mcp` | 9 | MCP server management and tool execution |
|
|
2683
2683
|
| `task` | 6 | Task creation, assignment, and lifecycle |
|
|
2684
2684
|
| `session` | 7 | Session state management and persistence |
|
|
@@ -2700,7 +2700,7 @@ Complete command-line interface for all Ruflo operations.
|
|
|
2700
2700
|
| `providers` | 5 | AI providers (list, add, remove, test, configure) |
|
|
2701
2701
|
| `plugins` | 5 | Plugin management (list, install, uninstall, enable, disable) |
|
|
2702
2702
|
| `deployment` | 5 | Deployment management (deploy, rollback, status, environments, release) |
|
|
2703
|
-
| `embeddings` | 4 | Vector embeddings (embed, batch, search, init) -
|
|
2703
|
+
| `embeddings` | 4 | Vector embeddings (embed, batch, search, init) - faster with ONNX runtime with agentic-flow |
|
|
2704
2704
|
| `claims` | 4 | Claims-based authorization (check, grant, revoke, list) |
|
|
2705
2705
|
| `migrate` | 5 | V2 to V3 migration with rollback support |
|
|
2706
2706
|
| `process` | 4 | Background process management |
|
|
@@ -2803,7 +2803,7 @@ The embeddings package (v3.0.0-alpha.12) provides high-performance vector embedd
|
|
|
2803
2803
|
| **Document chunking** | Configurable overlap and size | Handles large documents |
|
|
2804
2804
|
| **Normalization** | L2, L1, min-max, z-score | 4 normalization methods |
|
|
2805
2805
|
| **Hyperbolic embeddings** | PoincarΓ© ball model | Better hierarchical representation |
|
|
2806
|
-
| **agentic-flow ONNX** | Integrated ONNX runtime |
|
|
2806
|
+
| **agentic-flow ONNX** | Integrated ONNX runtime | faster with ONNX runtime than API calls |
|
|
2807
2807
|
| **Neural substrate** | RuVector integration | Full learning pipeline |
|
|
2808
2808
|
|
|
2809
2809
|
**Models Available:**
|
|
@@ -2994,7 +2994,7 @@ The statusline shows live context metrics read from `autopilot-state.json`:
|
|
|
2994
2994
|
|------|---------|---------|----------|
|
|
2995
2995
|
| 1 | **SQLite** (default) | `.claude-flow/data/transcript-archive.db` | WAL mode, indexed queries, ACID, importance ranking |
|
|
2996
2996
|
| 2 | **RuVector PostgreSQL** | Configurable remote | TB-scale, pgvector embeddings, GNN search |
|
|
2997
|
-
| 3 | **AgentDB + HNSW** | In-memory + persist |
|
|
2997
|
+
| 3 | **AgentDB + HNSW** | In-memory + persist | HNSW-indexed semantic search |
|
|
2998
2998
|
| 4 | **JSON** (fallback) | `.claude-flow/data/transcript-archive.json` | Zero dependencies, always works |
|
|
2999
2999
|
|
|
3000
3000
|
### Configuration
|
|
@@ -3202,7 +3202,7 @@ When hooks run, they emit signals that guide routing decisions. Watch for these
|
|
|
3202
3202
|
|
|
3203
3203
|
| Signal | Meaning | Action |
|
|
3204
3204
|
|--------|---------|--------|
|
|
3205
|
-
| `[AGENT_BOOSTER_AVAILABLE]` | Simple transform detected, skip LLM | Use Edit tool directly (
|
|
3205
|
+
| `[AGENT_BOOSTER_AVAILABLE]` | Simple transform detected, skip LLM | Use Edit tool directly (instant (regex-based, no LLM call), $0) |
|
|
3206
3206
|
| `[TASK_MODEL_RECOMMENDATION] Use model="haiku"` | Low complexity task | Pass `model: "haiku"` to Task tool |
|
|
3207
3207
|
| `[TASK_MODEL_RECOMMENDATION] Use model="sonnet"` | Medium complexity task | Pass `model: "sonnet"` to Task tool |
|
|
3208
3208
|
| `[TASK_MODEL_RECOMMENDATION] Use model="opus"` | High complexity task | Pass `model: "opus"` to Task tool |
|
|
@@ -3221,7 +3221,7 @@ $ npx ruflo@latest hooks pre-task --description "convert var to const in utils.t
|
|
|
3221
3221
|
|
|
3222
3222
|
[AGENT_BOOSTER_AVAILABLE] Intent: var-to-const
|
|
3223
3223
|
Recommendation: Use Edit tool directly
|
|
3224
|
-
Performance: <1ms (
|
|
3224
|
+
Performance: <1ms (instant (regex-based, no LLM call) than LLM)
|
|
3225
3225
|
Cost: $0
|
|
3226
3226
|
```
|
|
3227
3227
|
|
|
@@ -3243,7 +3243,7 @@ UserPrompt:
|
|
|
3243
3243
|
β Inject top-5 patterns into Claude's context:
|
|
3244
3244
|
|
|
3245
3245
|
[INTELLIGENCE] Relevant patterns for this task:
|
|
3246
|
-
* (0.95) HNSW gives
|
|
3246
|
+
* (0.95) HNSW gives HNSW-indexed search [rank #1, 12x accessed]
|
|
3247
3247
|
* (0.88) London School TDD preferred [rank #3, 8x accessed]
|
|
3248
3248
|
|
|
3249
3249
|
PostEdit:
|
|
@@ -3305,7 +3305,7 @@ The stats command shows:
|
|
|
3305
3305
|
Never accessed: 3
|
|
3306
3306
|
|
|
3307
3307
|
Top Patterns (by composite score)
|
|
3308
|
-
#1 HNSW gives
|
|
3308
|
+
#1 HNSW gives HNSW-indexed search
|
|
3309
3309
|
conf=0.600 pr=0.2099 score=0.3659 accessed=2x
|
|
3310
3310
|
#2 London School TDD preferred
|
|
3311
3311
|
conf=0.600 pr=0.1995 score=0.3597 accessed=2x
|
|
@@ -3686,7 +3686,7 @@ curl "https://publish-registry-xxx.cloudfunctions.net?action=import-model&cid=Qm
|
|
|
3686
3686
|
|
|
3687
3687
|
### Pre-trained Model Registry
|
|
3688
3688
|
|
|
3689
|
-
Import pre-
|
|
3689
|
+
Import pre-defined rule-based patterns for common tasks. 40 patterns across 8 categories (trigger-action rules, not ML-trained models).
|
|
3690
3690
|
|
|
3691
3691
|
| Model | Category | Patterns | Accuracy | Use Case |
|
|
3692
3692
|
|-------|----------|----------|----------|----------|
|
|
@@ -3720,8 +3720,8 @@ npx ruflo@latest hooks route --task "review authentication code" --use-patterns
|
|
|
3720
3720
|
| Metric | Fresh Install | With Pre-trained |
|
|
3721
3721
|
|--------|---------------|------------------|
|
|
3722
3722
|
| Patterns Available | 0 | 40 |
|
|
3723
|
-
| Detection
|
|
3724
|
-
|
|
|
3723
|
+
| Detection Patterns | ~50-60% | 40 rule-based patterns |
|
|
3724
|
+
| Pattern Categories | 0 | 8 categories |
|
|
3725
3725
|
| Issue Detection Rate | ~60-70% | ~90-95% |
|
|
3726
3726
|
| Time to First Insight | Discovery needed | Immediate |
|
|
3727
3727
|
|
|
@@ -4050,8 +4050,8 @@ Skills are **reusable workflows** that combine agents, hooks, and patterns into
|
|
|
4050
4050
|
|-------|--------------|-------------|
|
|
4051
4051
|
| `v3-ddd-architecture` | Bounded contexts, modular design, clean architecture | Large-scale refactoring |
|
|
4052
4052
|
| `v3-security-overhaul` | CVE fixes, secure-by-default patterns | Security hardening |
|
|
4053
|
-
| `v3-memory-unification` | AgentDB unification,
|
|
4054
|
-
| `v3-performance-optimization` |
|
|
4053
|
+
| `v3-memory-unification` | AgentDB unification, HNSW search improvements | Memory optimization |
|
|
4054
|
+
| `v3-performance-optimization` | optimized attention (WASM-accelerated when available), memory reduction | Performance tuning |
|
|
4055
4055
|
| `v3-swarm-coordination` | 15-agent hierarchical mesh, 10 ADRs implementation | Swarm architecture |
|
|
4056
4056
|
| `v3-mcp-optimization` | Connection pooling, load balancing, <100ms response | MCP performance |
|
|
4057
4057
|
| `v3-core-implementation` | DDD domains, dependency injection, TypeScript | Core development |
|
|
@@ -4420,7 +4420,7 @@ npx ruflo@latest memory init --force
|
|
|
4420
4420
|
npx ruflo@latest memory store --key "pattern-auth" --value "JWT authentication with refresh tokens"
|
|
4421
4421
|
npx ruflo@latest memory store --key "pattern-cache" --value "Redis caching for API responses"
|
|
4422
4422
|
|
|
4423
|
-
# Build HNSW index for
|
|
4423
|
+
# Build HNSW index for HNSW-indexed search
|
|
4424
4424
|
npx ruflo@latest memory search --query "authentication" --build-hnsw
|
|
4425
4425
|
|
|
4426
4426
|
# Semantic search (uses HNSW if built)
|
|
@@ -4501,7 +4501,7 @@ await aidefence.learnFromDetection(userInput, analysis, {
|
|
|
4501
4501
|
|
|
4502
4502
|
| Provider | Latency | Quality | Cost | Offline | Best For |
|
|
4503
4503
|
|----------|---------|---------|------|---------|----------|
|
|
4504
|
-
| **Agentic-Flow (ONNX)** | ~3ms | Good | Free | β
| Production (
|
|
4504
|
+
| **Agentic-Flow (ONNX)** | ~3ms | Good | Free | β
| Production (faster with ONNX runtime) |
|
|
4505
4505
|
| **OpenAI** | ~50-100ms | Excellent | $0.02-0.13/1M | β | Highest quality |
|
|
4506
4506
|
| **Transformers.js** | ~230ms | Good | Free | β
| Local development |
|
|
4507
4507
|
| **Mock** | <1ms | N/A | Free | β
| Testing |
|
|
@@ -4766,7 +4766,7 @@ Core infrastructure packages powering Ruflo's intelligence layer.
|
|
|
4766
4766
|
[](https://www.npmjs.com/package/agentic-flow)
|
|
4767
4767
|
[](https://github.com/ruvnet/agentic-flow)
|
|
4768
4768
|
|
|
4769
|
-
Ruflo v3 is built on top of **[agentic-flow](https://github.com/ruvnet/agentic-flow)**, a production-ready AI agent orchestration platform. This deep integration provides
|
|
4769
|
+
Ruflo v3 is built on top of **[agentic-flow](https://github.com/ruvnet/agentic-flow)**, a production-ready AI agent orchestration platform. This deep integration provides instant (regex-based, no LLM call) code transformations, learning memory, and geometric intelligence.
|
|
4770
4770
|
|
|
4771
4771
|
### Quick Start
|
|
4772
4772
|
|
|
@@ -4788,9 +4788,9 @@ claude mcp add agentic-flow -- npx agentic-flow mcp start
|
|
|
4788
4788
|
|
|
4789
4789
|
| Component | Description | Performance |
|
|
4790
4790
|
|-----------|-------------|-------------|
|
|
4791
|
-
| **Agent Booster** | Rust/WASM code transformations |
|
|
4792
|
-
| **ReasoningBank** | Learning memory with HNSW |
|
|
4793
|
-
| **ONNX Embeddings** | Local vector generation |
|
|
4791
|
+
| **Agent Booster** | Rust/WASM code transformations | instant (regex-based, no LLM call), $0 cost |
|
|
4792
|
+
| **ReasoningBank** | Learning memory with HNSW | HNSW-indexed search |
|
|
4793
|
+
| **ONNX Embeddings** | Local vector generation | faster with ONNX runtime than Transformers.js |
|
|
4794
4794
|
| **Embedding Geometry** | Geometric intelligence layer | <3ms latency |
|
|
4795
4795
|
| **Multi-Model Router** | Intelligent model selection | 30-50% cost savings |
|
|
4796
4796
|
| **QUIC Transport** | High-performance transport | Ultra-low latency |
|
|
@@ -5025,7 +5025,7 @@ npx agentic-flow mcp stdio
|
|
|
5025
5025
|
<details>
|
|
5026
5026
|
<summary>π§ <strong>MCP Tools</strong> β 313 Integration Tools</summary>
|
|
5027
5027
|
|
|
5028
|
-
|
|
5028
|
+
The agentic-flow ecosystem exposes MCP tools across packages (ruflo CLI provides 314 tools):
|
|
5029
5029
|
|
|
5030
5030
|
| Category | Tools | Examples |
|
|
5031
5031
|
|----------|-------|----------|
|
|
@@ -5068,7 +5068,7 @@ const optimizer = await getTokenOptimizer();
|
|
|
5068
5068
|
// Uses ReasoningBank (32% fewer tokens)
|
|
5069
5069
|
const ctx = await optimizer.getCompactContext('auth patterns');
|
|
5070
5070
|
|
|
5071
|
-
// Uses Agent Booster (
|
|
5071
|
+
// Uses Agent Booster (instant (regex-based, no LLM call) edits)
|
|
5072
5072
|
await optimizer.optimizedEdit(file, old, new, 'typescript');
|
|
5073
5073
|
|
|
5074
5074
|
// Uses Model Router (optimal model selection)
|
|
@@ -5197,7 +5197,7 @@ console.log('All agents completed:', results);
|
|
|
5197
5197
|
|--------|-----|-----------------|
|
|
5198
5198
|
| Concurrent commits | 15 ops/s | **350 ops/s (23x)** |
|
|
5199
5199
|
| Context switching | 500-1000ms | **50-100ms (10x)** |
|
|
5200
|
-
| Conflict resolution | 30-40% auto | **
|
|
5200
|
+
| Conflict resolution | 30-40% auto | **AI-assisted (via agentic-jujutsu)** |
|
|
5201
5201
|
| Lock waiting | 50 min/day | **0 min (β)** |
|
|
5202
5202
|
| SHA3-512 fingerprints | N/A | **<1ms** |
|
|
5203
5203
|
|
|
@@ -5494,7 +5494,7 @@ console.log(`Memory reduction: ${bench.memoryReduction}x`);
|
|
|
5494
5494
|
</details>
|
|
5495
5495
|
|
|
5496
5496
|
<details>
|
|
5497
|
-
<summary>π§ <strong>@ruvector/sona</strong> β Self-Optimizing
|
|
5497
|
+
<summary>π§ <strong>@ruvector/sona</strong> β Self-Optimizing Pattern Learning</summary>
|
|
5498
5498
|
|
|
5499
5499
|
SONA provides runtime-adaptive learning with minimal overhead:
|
|
5500
5500
|
|
|
@@ -5531,7 +5531,7 @@ await sona.consolidate();
|
|
|
5531
5531
|
- **LoRA**: Low-rank adaptation for efficient fine-tuning
|
|
5532
5532
|
- **EWC++**: Prevents catastrophic forgetting
|
|
5533
5533
|
- **ReasoningBank**: Pattern storage with similarity search
|
|
5534
|
-
- **Sub-millisecond**:
|
|
5534
|
+
- **Sub-millisecond**: sub-millisecond pattern matching overhead
|
|
5535
5535
|
|
|
5536
5536
|
</details>
|
|
5537
5537
|
|
|
@@ -6403,7 +6403,7 @@ Statistical benchmarking, memory tracking, regression detection, and V3 performa
|
|
|
6403
6403
|
| **Auto-Calibration** | Adjusts iterations for statistical significance | Automatic |
|
|
6404
6404
|
| **Regression Detection** | Compare against baselines with significance testing | <10ms |
|
|
6405
6405
|
| **V3 Targets** | Built-in targets for all performance metrics | Preconfigured |
|
|
6406
|
-
| **Flash Attention** | Validate
|
|
6406
|
+
| **Flash Attention** | Validate optimized attention (WASM-accelerated when available) targets | Integrated |
|
|
6407
6407
|
|
|
6408
6408
|
### Quick Start
|
|
6409
6409
|
|
|
@@ -7349,7 +7349,7 @@ export CLAUDE_FLOW_HNSW_EF=100
|
|
|
7349
7349
|
β Pattern Matching β Self-learning (ReasoningBank) β
|
|
7350
7350
|
β Security β CVE remediation + strict validation β
|
|
7351
7351
|
β Modular Architecture β 18 @claude-flow/* packages β
|
|
7352
|
-
β Agent Coordination β
|
|
7352
|
+
β Agent Coordination β 16 specialized agent roles + custom types β
|
|
7353
7353
|
β Token Efficiency β 32% reduction with optimization β
|
|
7354
7354
|
βββββββββββββββββββββββββ΄ββββββββββββββββββββββββββββββββββββββ
|
|
7355
7355
|
```
|
package/bin/cli.js
CHANGED
|
@@ -10,6 +10,15 @@
|
|
|
10
10
|
|
|
11
11
|
import { randomUUID } from 'crypto';
|
|
12
12
|
|
|
13
|
+
// Suppress noisy [AgentDB Patch] warnings from agentic-flow's runtime patch
|
|
14
|
+
// These are cosmetic β the patch tries to fix agentdb v1.x imports but we use v3
|
|
15
|
+
const _origWarn = console.warn;
|
|
16
|
+
console.warn = (...args) => {
|
|
17
|
+
const msg = String(args[0] ?? '');
|
|
18
|
+
if (msg.includes('[AgentDB Patch]')) return;
|
|
19
|
+
_origWarn.apply(console, args);
|
|
20
|
+
};
|
|
21
|
+
|
|
13
22
|
// Check if we should run in MCP server mode
|
|
14
23
|
// Conditions:
|
|
15
24
|
// 1. stdin is being piped AND no CLI arguments provided (auto-detect)
|
package/bin/mcp-server.js
CHANGED
|
@@ -8,6 +8,14 @@
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
import { randomUUID } from 'crypto';
|
|
11
|
+
|
|
12
|
+
// Suppress [AgentDB Patch] warnings (cosmetic, from agentic-flow v1.x compat patch)
|
|
13
|
+
const _origWarn = console.warn;
|
|
14
|
+
console.warn = (...args) => {
|
|
15
|
+
if (String(args[0] ?? '').includes('[AgentDB Patch]')) return;
|
|
16
|
+
_origWarn.apply(console, args);
|
|
17
|
+
};
|
|
18
|
+
|
|
11
19
|
import { listMCPTools, callMCPTool, hasTool } from '../dist/src/mcp-client.js';
|
|
12
20
|
|
|
13
21
|
const VERSION = '3.0.0';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp-tools/hooks-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,KAAK,OAAO,EAAiB,MAAM,YAAY,CAAC;AAgrBzD,eAAO,MAAM,YAAY,EAAE,OAsC1B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,OA4C3B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,OAkC7B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,OAiD9B,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,OA6KxB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,OAyD1B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,OA8CvB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,OAoF1B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,OA+I3B,CAAC;AAGF,eAAO,MAAM,YAAY,EAAE,OAyE1B,CAAC;AAGF,eAAO,MAAM,aAAa,EAAE,OA2F3B,CAAC;AAGF,eAAO,MAAM,gBAAgB,EAAE,OAoE9B,CAAC;AAGF,eAAO,MAAM,aAAa,EAAE,OA4E3B,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OAqI/B,CAAC;AAGF,eAAO,MAAM,eAAe,EAAE,OAuF7B,CAAC;AAGF,eAAO,MAAM,mBAAmB,EAAE,OAuCjC,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,OA4BzB,CAAC;AAGF,eAAO,MAAM,SAAS,EAAE,OAsCvB,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OAsG/B,CAAC;AAGF,eAAO,MAAM,sBAAsB,EAAE,OAmEpC,CAAC;AAGF,eAAO,MAAM,oBAAoB,EAAE,OAsClC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,OA4CjC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,OA4IhC,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OAoE/B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,OAqGhC,CAAC;AAGF,eAAO,MAAM,sBAAsB,EAAE,OA8KpC,CAAC;AAGF,eAAO,MAAM,sBAAsB,EAAE,OAwEpC,CAAC;AAGF,eAAO,MAAM,0BAA0B,EAAE,OAkHxC,CAAC;
|
|
1
|
+
{"version":3,"file":"hooks-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp-tools/hooks-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,KAAK,OAAO,EAAiB,MAAM,YAAY,CAAC;AAgrBzD,eAAO,MAAM,YAAY,EAAE,OAsC1B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,OA4C3B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,OAkC7B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,OAiD9B,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,OA6KxB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,OAyD1B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,OA8CvB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,OAoF1B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,OA+I3B,CAAC;AAGF,eAAO,MAAM,YAAY,EAAE,OAyE1B,CAAC;AAGF,eAAO,MAAM,aAAa,EAAE,OA2F3B,CAAC;AAGF,eAAO,MAAM,gBAAgB,EAAE,OAoE9B,CAAC;AAGF,eAAO,MAAM,aAAa,EAAE,OA4E3B,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OAqI/B,CAAC;AAGF,eAAO,MAAM,eAAe,EAAE,OAuF7B,CAAC;AAGF,eAAO,MAAM,mBAAmB,EAAE,OAuCjC,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,OA4BzB,CAAC;AAGF,eAAO,MAAM,SAAS,EAAE,OAsCvB,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OAsG/B,CAAC;AAGF,eAAO,MAAM,sBAAsB,EAAE,OAmEpC,CAAC;AAGF,eAAO,MAAM,oBAAoB,EAAE,OAsClC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,OA4CjC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,OA4IhC,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OAoE/B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,OAqGhC,CAAC;AAGF,eAAO,MAAM,sBAAsB,EAAE,OA8KpC,CAAC;AAGF,eAAO,MAAM,sBAAsB,EAAE,OAwEpC,CAAC;AAGF,eAAO,MAAM,0BAA0B,EAAE,OAkHxC,CAAC;AAgQF,eAAO,MAAM,eAAe,EAAE,OA8C7B,CAAC;AAGF,eAAO,MAAM,mBAAmB,EAAE,OAiGjC,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OAqD/B,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OAgE/B,CAAC;AAiBF,eAAO,MAAM,eAAe,EAAE,OAyC7B,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OA8B/B,CAAC;AAGF,eAAO,MAAM,eAAe,EAAE,OAuB7B,CAAC;AAqBF,eAAO,MAAM,iBAAiB,EAAE,OAuC/B,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,OAAO,EAwC/B,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -2927,6 +2927,8 @@ let workerIdCounter = 0;
|
|
|
2927
2927
|
* Detect triggers from prompt text
|
|
2928
2928
|
*/
|
|
2929
2929
|
function detectWorkerTriggers(text) {
|
|
2930
|
+
if (!text)
|
|
2931
|
+
return { detected: false, triggers: [], confidence: 0, context: '' };
|
|
2930
2932
|
const detectedTriggers = [];
|
|
2931
2933
|
let totalMatches = 0;
|
|
2932
2934
|
for (const [trigger, patterns] of Object.entries(WORKER_TRIGGER_PATTERNS)) {
|