kynjal-cli 4.0.0 → 4.0.1
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/dist/src/appliance/gguf-engine.d.ts +91 -0
- package/dist/src/appliance/gguf-engine.d.ts.map +1 -0
- package/dist/src/appliance/gguf-engine.js +286 -525
- package/dist/src/appliance/gguf-engine.js.map +1 -1
- package/dist/src/appliance/ruvllm-bridge.d.ts +102 -0
- package/dist/src/appliance/ruvllm-bridge.d.ts.map +1 -0
- package/dist/src/appliance/ruvllm-bridge.js +203 -403
- package/dist/src/appliance/ruvllm-bridge.js.map +1 -1
- package/dist/src/appliance/rvfa-builder.d.ts +44 -0
- package/dist/src/appliance/rvfa-builder.d.ts.map +1 -0
- package/dist/src/appliance/rvfa-builder.js +154 -208
- package/dist/src/appliance/rvfa-builder.js.map +1 -1
- package/dist/src/appliance/rvfa-distribution.d.ts +97 -0
- package/dist/src/appliance/rvfa-distribution.d.ts.map +1 -0
- package/dist/src/appliance/rvfa-distribution.js +260 -423
- package/dist/src/appliance/rvfa-distribution.js.map +1 -1
- package/dist/src/appliance/rvfa-format.d.ts +111 -0
- package/dist/src/appliance/rvfa-format.d.ts.map +1 -0
- package/dist/src/appliance/rvfa-format.js +128 -200
- package/dist/src/appliance/rvfa-format.js.map +1 -1
- package/dist/src/appliance/rvfa-runner.d.ts +69 -0
- package/dist/src/appliance/rvfa-runner.d.ts.map +1 -0
- package/dist/src/appliance/rvfa-runner.js +168 -304
- package/dist/src/appliance/rvfa-runner.js.map +1 -1
- package/dist/src/appliance/rvfa-signing.d.ts +123 -0
- package/dist/src/appliance/rvfa-signing.d.ts.map +1 -0
- package/dist/src/appliance/rvfa-signing.js +173 -295
- package/dist/src/appliance/rvfa-signing.js.map +1 -1
- package/dist/src/benchmarks/pretrain/index.d.ts +58 -0
- package/dist/src/benchmarks/pretrain/index.d.ts.map +1 -0
- package/dist/src/benchmarks/pretrain/index.js +331 -542
- package/dist/src/benchmarks/pretrain/index.js.map +1 -1
- package/dist/src/commands/agent.js +574 -697
- package/dist/src/commands/agent.js.map +1 -1
- package/dist/src/commands/analyze.js +1218 -1548
- package/dist/src/commands/analyze.js.map +1 -1
- package/dist/src/commands/appliance-advanced.js +158 -267
- package/dist/src/commands/appliance-advanced.js.map +1 -1
- package/dist/src/commands/appliance.js +318 -493
- package/dist/src/commands/appliance.js.map +1 -1
- package/dist/src/commands/benchmark.js +372 -523
- package/dist/src/commands/benchmark.js.map +1 -1
- package/dist/src/commands/claims.js +274 -364
- package/dist/src/commands/claims.js.map +1 -1
- package/dist/src/commands/cleanup.js +113 -157
- package/dist/src/commands/cleanup.js.map +1 -1
- package/dist/src/commands/completions.js +477 -118
- package/dist/src/commands/completions.js.map +1 -1
- package/dist/src/commands/config.js +237 -303
- package/dist/src/commands/config.js.map +1 -1
- package/dist/src/commands/daemon.js +487 -596
- package/dist/src/commands/daemon.js.map +1 -1
- package/dist/src/commands/deployment.js +194 -275
- package/dist/src/commands/deployment.js.map +1 -1
- package/dist/src/commands/doctor.js +504 -686
- package/dist/src/commands/doctor.js.map +1 -1
- package/dist/src/commands/embeddings.js +1293 -1543
- package/dist/src/commands/embeddings.js.map +1 -1
- package/dist/src/commands/guidance.js +449 -596
- package/dist/src/commands/guidance.js.map +1 -1
- package/dist/src/commands/hive-mind.js +854 -938
- package/dist/src/commands/hive-mind.js.map +1 -1
- package/dist/src/commands/hooks.js +3112 -3519
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/index.d.ts +115 -0
- package/dist/src/commands/index.d.ts.map +1 -0
- package/dist/src/commands/index.js +126 -308
- package/dist/src/commands/index.js.map +1 -1
- package/dist/src/commands/init.js +788 -940
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/issues.js +383 -558
- package/dist/src/commands/issues.js.map +1 -1
- package/dist/src/commands/mcp.js +493 -605
- package/dist/src/commands/mcp.js.map +1 -1
- package/dist/src/commands/memory.js +833 -1026
- package/dist/src/commands/memory.js.map +1 -1
- package/dist/src/commands/migrate.js +282 -347
- package/dist/src/commands/migrate.js.map +1 -1
- package/dist/src/commands/neural.js +1289 -1563
- package/dist/src/commands/neural.js.map +1 -1
- package/dist/src/commands/performance.js +497 -643
- package/dist/src/commands/performance.js.map +1 -1
- package/dist/src/commands/plugins.js +668 -841
- package/dist/src/commands/plugins.js.map +1 -1
- package/dist/src/commands/process.js +392 -447
- package/dist/src/commands/process.js.map +1 -1
- package/dist/src/commands/progress.js +162 -256
- package/dist/src/commands/progress.js.map +1 -1
- package/dist/src/commands/providers.js +150 -220
- package/dist/src/commands/providers.js.map +1 -1
- package/dist/src/commands/route.js +520 -665
- package/dist/src/commands/route.js.map +1 -1
- package/dist/src/commands/ruvector/backup.js +505 -651
- package/dist/src/commands/ruvector/backup.js.map +1 -1
- package/dist/src/commands/ruvector/benchmark.js +349 -401
- package/dist/src/commands/ruvector/benchmark.js.map +1 -1
- package/dist/src/commands/ruvector/import.js +224 -266
- package/dist/src/commands/ruvector/import.js.map +1 -1
- package/dist/src/commands/ruvector/index.js +37 -75
- package/dist/src/commands/ruvector/index.js.map +1 -1
- package/dist/src/commands/ruvector/init.js +336 -359
- package/dist/src/commands/ruvector/init.js.map +1 -1
- package/dist/src/commands/ruvector/migrate.js +335 -322
- package/dist/src/commands/ruvector/migrate.js.map +1 -1
- package/dist/src/commands/ruvector/optimize.js +375 -431
- package/dist/src/commands/ruvector/optimize.js.map +1 -1
- package/dist/src/commands/ruvector/setup.js +703 -117
- package/dist/src/commands/ruvector/setup.js.map +1 -1
- package/dist/src/commands/ruvector/status.js +364 -419
- package/dist/src/commands/ruvector/status.js.map +1 -1
- package/dist/src/commands/security.js +485 -608
- package/dist/src/commands/security.js.map +1 -1
- package/dist/src/commands/session.js +504 -626
- package/dist/src/commands/session.js.map +1 -1
- package/dist/src/commands/start.js +267 -364
- package/dist/src/commands/start.js.map +1 -1
- package/dist/src/commands/status.js +380 -486
- package/dist/src/commands/status.js.map +1 -1
- package/dist/src/commands/swarm.js +408 -488
- package/dist/src/commands/swarm.js.map +1 -1
- package/dist/src/commands/task.js +423 -538
- package/dist/src/commands/task.js.map +1 -1
- package/dist/src/commands/transfer-store.js +322 -412
- package/dist/src/commands/transfer-store.js.map +1 -1
- package/dist/src/commands/update.js +196 -291
- package/dist/src/commands/update.js.map +1 -1
- package/dist/src/commands/workflow.js +386 -486
- package/dist/src/commands/workflow.js.map +1 -1
- package/dist/src/config-adapter.d.ts +15 -0
- package/dist/src/config-adapter.d.ts.map +1 -0
- package/dist/src/config-adapter.js +38 -39
- package/dist/src/config-adapter.js.map +1 -1
- package/dist/src/index.d.ts +77 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +309 -411
- package/dist/src/index.js.map +1 -1
- package/dist/src/infrastructure/in-memory-repositories.d.ts +68 -0
- package/dist/src/infrastructure/in-memory-repositories.d.ts.map +1 -0
- package/dist/src/infrastructure/in-memory-repositories.js +246 -507
- package/dist/src/infrastructure/in-memory-repositories.js.map +1 -1
- package/dist/src/init/claudemd-generator.d.ts +25 -0
- package/dist/src/init/claudemd-generator.d.ts.map +1 -0
- package/dist/src/init/claudemd-generator.js +368 -78
- package/dist/src/init/claudemd-generator.js.map +1 -1
- package/dist/src/init/executor.d.ts +41 -0
- package/dist/src/init/executor.d.ts.map +1 -0
- package/dist/src/init/executor.js +1307 -996
- package/dist/src/init/executor.js.map +1 -1
- package/dist/src/init/helpers-generator.d.ts +60 -0
- package/dist/src/init/helpers-generator.d.ts.map +1 -0
- package/dist/src/init/helpers-generator.js +657 -12
- package/dist/src/init/helpers-generator.js.map +1 -1
- package/dist/src/init/index.d.ts +1 -1
- package/dist/src/init/index.d.ts.map +1 -1
- package/dist/src/init/index.js +1 -1
- package/dist/src/init/index.js.map +1 -1
- package/dist/src/init/mcp-generator.js +33 -37
- package/dist/src/init/mcp-generator.js.map +1 -1
- package/dist/src/init/settings-generator.js +76 -77
- package/dist/src/init/settings-generator.js.map +1 -1
- package/dist/src/init/statusline-generator.js +801 -3
- package/dist/src/init/statusline-generator.js.map +1 -1
- package/dist/src/init/types.d.ts +1 -1
- package/dist/src/init/types.d.ts.map +1 -1
- package/dist/src/init/types.js +76 -59
- package/dist/src/init/types.js.map +1 -1
- package/dist/src/mcp-client.d.ts +92 -0
- package/dist/src/mcp-client.d.ts.map +1 -0
- package/dist/src/mcp-client.js +81 -125
- package/dist/src/mcp-client.js.map +1 -1
- package/dist/src/mcp-server.d.ts +161 -0
- package/dist/src/mcp-server.d.ts.map +1 -0
- package/dist/src/mcp-server.js +470 -757
- package/dist/src/mcp-server.js.map +1 -1
- package/dist/src/mcp-tools/agent-tools.js +391 -492
- package/dist/src/mcp-tools/agent-tools.js.map +1 -1
- package/dist/src/mcp-tools/agentdb-tools.js +332 -533
- package/dist/src/mcp-tools/agentdb-tools.js.map +1 -1
- package/dist/src/mcp-tools/analyze-tools.js +172 -236
- package/dist/src/mcp-tools/analyze-tools.js.map +1 -1
- package/dist/src/mcp-tools/auto-install.d.ts +83 -0
- package/dist/src/mcp-tools/auto-install.d.ts.map +1 -0
- package/dist/src/mcp-tools/auto-install.js +80 -142
- package/dist/src/mcp-tools/auto-install.js.map +1 -1
- package/dist/src/mcp-tools/browser-tools.js +252 -375
- package/dist/src/mcp-tools/browser-tools.js.map +1 -1
- package/dist/src/mcp-tools/claims-tools.js +473 -565
- package/dist/src/mcp-tools/claims-tools.js.map +1 -1
- package/dist/src/mcp-tools/config-tools.js +197 -272
- package/dist/src/mcp-tools/config-tools.js.map +1 -1
- package/dist/src/mcp-tools/coordination-tools.js +500 -572
- package/dist/src/mcp-tools/coordination-tools.js.map +1 -1
- package/dist/src/mcp-tools/daa-tools.js +286 -364
- package/dist/src/mcp-tools/daa-tools.js.map +1 -1
- package/dist/src/mcp-tools/embeddings-tools.js +582 -693
- package/dist/src/mcp-tools/embeddings-tools.js.map +1 -1
- package/dist/src/mcp-tools/github-tools.js +260 -311
- package/dist/src/mcp-tools/github-tools.js.map +1 -1
- package/dist/src/mcp-tools/hive-mind-tools.js +573 -640
- package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -1
- package/dist/src/mcp-tools/hooks-tools.js +2215 -2648
- package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
- package/dist/src/mcp-tools/memory-tools.js +350 -505
- package/dist/src/mcp-tools/memory-tools.js.map +1 -1
- package/dist/src/mcp-tools/neural-tools.js +315 -412
- package/dist/src/mcp-tools/neural-tools.js.map +1 -1
- package/dist/src/mcp-tools/performance-tools.js +420 -480
- package/dist/src/mcp-tools/performance-tools.js.map +1 -1
- package/dist/src/mcp-tools/progress-tools.js +204 -278
- package/dist/src/mcp-tools/progress-tools.js.map +1 -1
- package/dist/src/mcp-tools/ruvllm-tools.js +163 -279
- package/dist/src/mcp-tools/ruvllm-tools.js.map +1 -1
- package/dist/src/mcp-tools/security-tools.js +297 -429
- package/dist/src/mcp-tools/security-tools.js.map +1 -1
- package/dist/src/mcp-tools/session-tools.js +185 -234
- package/dist/src/mcp-tools/session-tools.js.map +1 -1
- package/dist/src/mcp-tools/swarm-tools.js +207 -260
- package/dist/src/mcp-tools/swarm-tools.js.map +1 -1
- package/dist/src/mcp-tools/system-tools.js +276 -325
- package/dist/src/mcp-tools/system-tools.js.map +1 -1
- package/dist/src/mcp-tools/task-tools.js +270 -336
- package/dist/src/mcp-tools/task-tools.js.map +1 -1
- package/dist/src/mcp-tools/terminal-tools.js +148 -196
- package/dist/src/mcp-tools/terminal-tools.js.map +1 -1
- package/dist/src/mcp-tools/transfer-tools.js +186 -333
- package/dist/src/mcp-tools/transfer-tools.js.map +1 -1
- package/dist/src/mcp-tools/types.d.ts +31 -0
- package/dist/src/mcp-tools/types.d.ts.map +1 -0
- package/dist/src/mcp-tools/wasm-agent-tools.js +133 -280
- package/dist/src/mcp-tools/wasm-agent-tools.js.map +1 -1
- package/dist/src/mcp-tools/workflow-tools.js +405 -450
- package/dist/src/mcp-tools/workflow-tools.js.map +1 -1
- package/dist/src/memory/ewc-consolidation.d.ts +295 -0
- package/dist/src/memory/ewc-consolidation.d.ts.map +1 -0
- package/dist/src/memory/ewc-consolidation.js +190 -303
- package/dist/src/memory/ewc-consolidation.js.map +1 -1
- package/dist/src/memory/intelligence.d.ts +338 -0
- package/dist/src/memory/intelligence.d.ts.map +1 -0
- package/dist/src/memory/intelligence.js +569 -794
- package/dist/src/memory/intelligence.js.map +1 -1
- package/dist/src/memory/memory-bridge.d.ts +407 -0
- package/dist/src/memory/memory-bridge.d.ts.map +1 -0
- package/dist/src/memory/memory-bridge.js +1170 -1640
- package/dist/src/memory/memory-bridge.js.map +1 -1
- package/dist/src/memory/memory-initializer.d.ts +412 -0
- package/dist/src/memory/memory-initializer.d.ts.map +1 -0
- package/dist/src/memory/memory-initializer.js +1836 -1851
- package/dist/src/memory/memory-initializer.js.map +1 -1
- package/dist/src/memory/sona-optimizer.d.ts +227 -0
- package/dist/src/memory/sona-optimizer.d.ts.map +1 -0
- package/dist/src/memory/sona-optimizer.js +199 -329
- package/dist/src/memory/sona-optimizer.js.map +1 -1
- package/dist/src/output.d.ts +2 -2
- package/dist/src/output.d.ts.map +1 -1
- package/dist/src/output.js +242 -272
- package/dist/src/output.js.map +1 -1
- package/dist/src/parser.d.ts +51 -0
- package/dist/src/parser.d.ts.map +1 -0
- package/dist/src/parser.js +140 -187
- package/dist/src/parser.js.map +1 -1
- package/dist/src/plugins/manager.d.ts +133 -0
- package/dist/src/plugins/manager.d.ts.map +1 -0
- package/dist/src/plugins/manager.js +285 -521
- package/dist/src/plugins/manager.js.map +1 -1
- package/dist/src/plugins/store/discovery.d.ts +88 -0
- package/dist/src/plugins/store/discovery.d.ts.map +1 -0
- package/dist/src/plugins/store/discovery.js +271 -358
- package/dist/src/plugins/store/discovery.js.map +1 -1
- package/dist/src/plugins/store/index.d.ts +76 -0
- package/dist/src/plugins/store/index.d.ts.map +1 -0
- package/dist/src/plugins/store/index.js +48 -105
- package/dist/src/plugins/store/index.js.map +1 -1
- package/dist/src/plugins/store/search.d.ts +46 -0
- package/dist/src/plugins/store/search.d.ts.map +1 -0
- package/dist/src/plugins/store/search.js +69 -107
- package/dist/src/plugins/store/search.js.map +1 -1
- package/dist/src/plugins/store/types.d.ts +274 -0
- package/dist/src/plugins/store/types.d.ts.map +1 -0
- package/dist/src/plugins/tests/demo-plugin-store.js +113 -160
- package/dist/src/plugins/tests/demo-plugin-store.js.map +1 -1
- package/dist/src/plugins/tests/standalone-test.js +172 -223
- package/dist/src/plugins/tests/standalone-test.js.map +1 -1
- package/dist/src/plugins/tests/test-plugin-store.js +190 -228
- package/dist/src/plugins/tests/test-plugin-store.js.map +1 -1
- package/dist/src/production/circuit-breaker.d.ts +101 -0
- package/dist/src/production/circuit-breaker.d.ts.map +1 -0
- package/dist/src/production/circuit-breaker.js +62 -126
- package/dist/src/production/circuit-breaker.js.map +1 -1
- package/dist/src/production/error-handler.d.ts +92 -0
- package/dist/src/production/error-handler.d.ts.map +1 -0
- package/dist/src/production/error-handler.js +86 -156
- package/dist/src/production/error-handler.js.map +1 -1
- package/dist/src/production/monitoring.d.ts +161 -0
- package/dist/src/production/monitoring.d.ts.map +1 -0
- package/dist/src/production/monitoring.js +139 -220
- package/dist/src/production/monitoring.js.map +1 -1
- package/dist/src/production/rate-limiter.d.ts +80 -0
- package/dist/src/production/rate-limiter.d.ts.map +1 -0
- package/dist/src/production/rate-limiter.js +74 -93
- package/dist/src/production/rate-limiter.js.map +1 -1
- package/dist/src/production/retry.d.ts +48 -0
- package/dist/src/production/retry.d.ts.map +1 -0
- package/dist/src/production/retry.js +75 -167
- package/dist/src/production/retry.js.map +1 -1
- package/dist/src/prompt.d.ts +44 -0
- package/dist/src/prompt.d.ts.map +1 -0
- package/dist/src/prompt.js +436 -560
- package/dist/src/prompt.js.map +1 -1
- package/dist/src/runtime/headless.d.ts +60 -0
- package/dist/src/runtime/headless.d.ts.map +1 -0
- package/dist/src/runtime/headless.js +197 -286
- package/dist/src/runtime/headless.js.map +1 -1
- package/dist/src/ruvector/agent-wasm.d.ts +182 -0
- package/dist/src/ruvector/agent-wasm.d.ts.map +1 -0
- package/dist/src/ruvector/agent-wasm.js +156 -351
- package/dist/src/ruvector/agent-wasm.js.map +1 -1
- package/dist/src/ruvector/ast-analyzer.d.ts +67 -0
- package/dist/src/ruvector/ast-analyzer.d.ts.map +1 -0
- package/dist/src/ruvector/ast-analyzer.js +145 -232
- package/dist/src/ruvector/ast-analyzer.js.map +1 -1
- package/dist/src/ruvector/coverage-router.d.ts +160 -0
- package/dist/src/ruvector/coverage-router.d.ts.map +1 -0
- package/dist/src/ruvector/coverage-router.js +287 -419
- package/dist/src/ruvector/coverage-router.js.map +1 -1
- package/dist/src/ruvector/coverage-tools.js +56 -101
- package/dist/src/ruvector/coverage-tools.js.map +1 -1
- package/dist/src/ruvector/diff-classifier.d.ts +175 -0
- package/dist/src/ruvector/diff-classifier.d.ts.map +1 -0
- package/dist/src/ruvector/diff-classifier.js +324 -451
- package/dist/src/ruvector/diff-classifier.js.map +1 -1
- package/dist/src/ruvector/enhanced-model-router.d.ts +146 -0
- package/dist/src/ruvector/enhanced-model-router.d.ts.map +1 -0
- package/dist/src/ruvector/enhanced-model-router.js +260 -336
- package/dist/src/ruvector/enhanced-model-router.js.map +1 -1
- package/dist/src/ruvector/flash-attention.d.ts +195 -0
- package/dist/src/ruvector/flash-attention.d.ts.map +1 -0
- package/dist/src/ruvector/flash-attention.js +223 -254
- package/dist/src/ruvector/flash-attention.js.map +1 -1
- package/dist/src/ruvector/graph-analyzer.d.ts +187 -0
- package/dist/src/ruvector/graph-analyzer.d.ts.map +1 -0
- package/dist/src/ruvector/graph-analyzer.js +486 -680
- package/dist/src/ruvector/graph-analyzer.js.map +1 -1
- package/dist/src/ruvector/index.d.ts +40 -0
- package/dist/src/ruvector/index.d.ts.map +1 -0
- package/dist/src/ruvector/index.js +36 -106
- package/dist/src/ruvector/index.js.map +1 -1
- package/dist/src/ruvector/lora-adapter.d.ts +218 -0
- package/dist/src/ruvector/lora-adapter.d.ts.map +1 -0
- package/dist/src/ruvector/lora-adapter.js +155 -248
- package/dist/src/ruvector/lora-adapter.js.map +1 -1
- package/dist/src/ruvector/model-router.d.ts +220 -0
- package/dist/src/ruvector/model-router.d.ts.map +1 -0
- package/dist/src/ruvector/model-router.js +175 -248
- package/dist/src/ruvector/model-router.js.map +1 -1
- package/dist/src/ruvector/moe-router.d.ts +206 -0
- package/dist/src/ruvector/moe-router.d.ts.map +1 -0
- package/dist/src/ruvector/moe-router.js +228 -286
- package/dist/src/ruvector/moe-router.js.map +1 -1
- package/dist/src/ruvector/q-learning-router.d.ts +211 -0
- package/dist/src/ruvector/q-learning-router.d.ts.map +1 -0
- package/dist/src/ruvector/q-learning-router.js +257 -338
- package/dist/src/ruvector/q-learning-router.js.map +1 -1
- package/dist/src/ruvector/ruvllm-wasm.d.ts +179 -0
- package/dist/src/ruvector/ruvllm-wasm.d.ts.map +1 -0
- package/dist/src/ruvector/ruvllm-wasm.js +270 -434
- package/dist/src/ruvector/ruvllm-wasm.js.map +1 -1
- package/dist/src/ruvector/semantic-router.d.ts +77 -0
- package/dist/src/ruvector/semantic-router.d.ts.map +1 -0
- package/dist/src/ruvector/semantic-router.js +60 -67
- package/dist/src/ruvector/semantic-router.js.map +1 -1
- package/dist/src/ruvector/vector-db.d.ts +69 -0
- package/dist/src/ruvector/vector-db.d.ts.map +1 -0
- package/dist/src/ruvector/vector-db.js +119 -205
- package/dist/src/ruvector/vector-db.js.map +1 -1
- package/dist/src/services/agentic-flow-bridge.d.ts +50 -0
- package/dist/src/services/agentic-flow-bridge.d.ts.map +1 -0
- package/dist/src/services/agentic-flow-bridge.js +32 -105
- package/dist/src/services/agentic-flow-bridge.js.map +1 -1
- package/dist/src/services/claim-service.d.ts +204 -0
- package/dist/src/services/claim-service.d.ts.map +1 -0
- package/dist/src/services/claim-service.js +615 -940
- package/dist/src/services/claim-service.js.map +1 -1
- package/dist/src/services/container-worker-pool.d.ts +197 -0
- package/dist/src/services/container-worker-pool.d.ts.map +1 -0
- package/dist/src/services/container-worker-pool.js +398 -666
- package/dist/src/services/container-worker-pool.js.map +1 -1
- package/dist/src/services/headless-worker-executor.d.ts +304 -0
- package/dist/src/services/headless-worker-executor.d.ts.map +1 -0
- package/dist/src/services/headless-worker-executor.js +441 -467
- package/dist/src/services/headless-worker-executor.js.map +1 -1
- package/dist/src/services/index.d.ts +4 -4
- package/dist/src/services/index.d.ts.map +1 -1
- package/dist/src/services/index.js +4 -4
- package/dist/src/services/index.js.map +1 -1
- package/dist/src/services/registry-api.d.ts +58 -0
- package/dist/src/services/registry-api.d.ts.map +1 -0
- package/dist/src/services/registry-api.js +92 -200
- package/dist/src/services/registry-api.js.map +1 -1
- package/dist/src/services/ruvector-training.d.ts +222 -0
- package/dist/src/services/ruvector-training.d.ts.map +1 -0
- package/dist/src/services/ruvector-training.js +257 -337
- package/dist/src/services/ruvector-training.js.map +1 -1
- package/dist/src/services/worker-daemon.d.ts +228 -0
- package/dist/src/services/worker-daemon.d.ts.map +1 -0
- package/dist/src/services/worker-daemon.js +591 -849
- package/dist/src/services/worker-daemon.js.map +1 -1
- package/dist/src/services/worker-queue.d.ts +194 -0
- package/dist/src/services/worker-queue.d.ts.map +1 -0
- package/dist/src/services/worker-queue.js +331 -548
- package/dist/src/services/worker-queue.js.map +1 -1
- package/dist/src/suggest.d.ts +53 -0
- package/dist/src/suggest.d.ts.map +1 -0
- package/dist/src/suggest.js +45 -55
- package/dist/src/suggest.js.map +1 -1
- package/dist/src/transfer/anonymization/index.js +29 -37
- package/dist/src/transfer/anonymization/index.js.map +1 -1
- package/dist/src/transfer/deploy-seraphine.js +128 -155
- package/dist/src/transfer/deploy-seraphine.js.map +1 -1
- package/dist/src/transfer/export.d.ts +25 -0
- package/dist/src/transfer/export.d.ts.map +1 -0
- package/dist/src/transfer/export.js +84 -142
- package/dist/src/transfer/export.js.map +1 -1
- package/dist/src/transfer/index.d.ts +1 -1
- package/dist/src/transfer/index.d.ts.map +1 -1
- package/dist/src/transfer/index.js +0 -2
- package/dist/src/transfer/index.js.map +1 -1
- package/dist/src/transfer/ipfs/client.d.ts +109 -0
- package/dist/src/transfer/ipfs/client.d.ts.map +1 -0
- package/dist/src/transfer/ipfs/client.js +187 -337
- package/dist/src/transfer/ipfs/client.js.map +1 -1
- package/dist/src/transfer/ipfs/upload.d.ts +95 -0
- package/dist/src/transfer/ipfs/upload.d.ts.map +1 -0
- package/dist/src/transfer/ipfs/upload.js +288 -434
- package/dist/src/transfer/ipfs/upload.js.map +1 -1
- package/dist/src/transfer/models/seraphine.d.ts +72 -0
- package/dist/src/transfer/models/seraphine.d.ts.map +1 -0
- package/dist/src/transfer/models/seraphine.js +55 -55
- package/dist/src/transfer/models/seraphine.js.map +1 -1
- package/dist/src/transfer/serialization/cfp.d.ts +49 -0
- package/dist/src/transfer/serialization/cfp.d.ts.map +1 -0
- package/dist/src/transfer/serialization/cfp.js +30 -31
- package/dist/src/transfer/serialization/cfp.js.map +1 -1
- package/dist/src/transfer/storage/gcs.d.ts +82 -0
- package/dist/src/transfer/storage/gcs.d.ts.map +1 -0
- package/dist/src/transfer/storage/gcs.js +165 -232
- package/dist/src/transfer/storage/gcs.js.map +1 -1
- package/dist/src/transfer/store/discovery.d.ts +84 -0
- package/dist/src/transfer/store/discovery.d.ts.map +1 -0
- package/dist/src/transfer/store/discovery.js +239 -349
- package/dist/src/transfer/store/discovery.js.map +1 -1
- package/dist/src/transfer/store/download.d.ts +70 -0
- package/dist/src/transfer/store/download.d.ts.map +1 -0
- package/dist/src/transfer/store/download.js +243 -365
- package/dist/src/transfer/store/download.js.map +1 -1
- package/dist/src/transfer/store/index.d.ts +84 -0
- package/dist/src/transfer/store/index.d.ts.map +1 -0
- package/dist/src/transfer/store/index.js +63 -130
- package/dist/src/transfer/store/index.js.map +1 -1
- package/dist/src/transfer/store/publish.d.ts +76 -0
- package/dist/src/transfer/store/publish.d.ts.map +1 -0
- package/dist/src/transfer/store/publish.js +184 -258
- package/dist/src/transfer/store/publish.js.map +1 -1
- package/dist/src/transfer/store/registry.js +50 -72
- package/dist/src/transfer/store/registry.js.map +1 -1
- package/dist/src/transfer/store/search.d.ts +54 -0
- package/dist/src/transfer/store/search.d.ts.map +1 -0
- package/dist/src/transfer/store/search.js +64 -96
- package/dist/src/transfer/store/search.js.map +1 -1
- package/dist/src/transfer/store/tests/standalone-test.js +174 -231
- package/dist/src/transfer/store/tests/standalone-test.js.map +1 -1
- package/dist/src/transfer/test-seraphine.js +95 -130
- package/dist/src/transfer/test-seraphine.js.map +1 -1
- package/dist/src/transfer/tests/test-store.js +194 -239
- package/dist/src/transfer/tests/test-store.js.map +1 -1
- package/dist/src/transfer/types.d.ts +245 -0
- package/dist/src/transfer/types.d.ts.map +1 -0
- package/dist/src/types.d.ts +198 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +26 -55
- package/dist/src/types.js.map +1 -1
- package/dist/src/update/checker.d.ts +34 -0
- package/dist/src/update/checker.d.ts.map +1 -0
- package/dist/src/update/checker.js +106 -183
- package/dist/src/update/checker.js.map +1 -1
- package/dist/src/update/executor.d.ts +32 -0
- package/dist/src/update/executor.d.ts.map +1 -0
- package/dist/src/update/executor.js +135 -198
- package/dist/src/update/executor.js.map +1 -1
- package/dist/src/update/index.d.ts +33 -0
- package/dist/src/update/index.d.ts.map +1 -0
- package/dist/src/update/index.js +38 -85
- package/dist/src/update/index.js.map +1 -1
- package/dist/src/update/rate-limiter.d.ts +20 -0
- package/dist/src/update/rate-limiter.d.ts.map +1 -0
- package/dist/src/update/rate-limiter.js +19 -31
- package/dist/src/update/rate-limiter.js.map +1 -1
- package/dist/src/update/validator.d.ts +17 -0
- package/dist/src/update/validator.d.ts.map +1 -0
- package/dist/src/update/validator.js +38 -64
- package/dist/src/update/validator.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -8,53 +8,6 @@
|
|
|
8
8
|
*
|
|
9
9
|
* @module enhanced-model-router
|
|
10
10
|
*/
|
|
11
|
-
var __assign = (this && this.__assign) || function () {
|
|
12
|
-
__assign = Object.assign || function(t) {
|
|
13
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
14
|
-
s = arguments[i];
|
|
15
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
16
|
-
t[p] = s[p];
|
|
17
|
-
}
|
|
18
|
-
return t;
|
|
19
|
-
};
|
|
20
|
-
return __assign.apply(this, arguments);
|
|
21
|
-
};
|
|
22
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
23
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
24
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
25
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
26
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
27
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
28
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
29
|
-
});
|
|
30
|
-
};
|
|
31
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
32
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
33
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
34
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
35
|
-
function step(op) {
|
|
36
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
37
|
-
while (_) try {
|
|
38
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
39
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
40
|
-
switch (op[0]) {
|
|
41
|
-
case 0: case 1: t = op; break;
|
|
42
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
43
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
44
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
45
|
-
default:
|
|
46
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
47
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
48
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
49
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
50
|
-
if (t[2]) _.ops.pop();
|
|
51
|
-
_.trys.pop(); continue;
|
|
52
|
-
}
|
|
53
|
-
op = body.call(thisArg, _);
|
|
54
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
55
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
11
|
import { existsSync, readFileSync } from 'fs';
|
|
59
12
|
import { extname } from 'path';
|
|
60
13
|
import { getModelRouter } from './model-router.js';
|
|
@@ -64,7 +17,7 @@ import { getModelRouter } from './model-router.js';
|
|
|
64
17
|
/**
|
|
65
18
|
* Pattern definitions for Agent Booster intent detection
|
|
66
19
|
*/
|
|
67
|
-
|
|
20
|
+
const INTENT_PATTERNS = {
|
|
68
21
|
'var-to-const': {
|
|
69
22
|
patterns: [
|
|
70
23
|
/convert\s+var\s+to\s+const/i,
|
|
@@ -75,7 +28,7 @@ var INTENT_PATTERNS = {
|
|
|
75
28
|
/use\s+const\s+instead\s+of\s+var/i,
|
|
76
29
|
],
|
|
77
30
|
weight: 1.0,
|
|
78
|
-
description: 'Convert var declarations to const/let'
|
|
31
|
+
description: 'Convert var declarations to const/let',
|
|
79
32
|
},
|
|
80
33
|
'add-types': {
|
|
81
34
|
patterns: [
|
|
@@ -86,7 +39,7 @@ var INTENT_PATTERNS = {
|
|
|
86
39
|
/annotate\s+with\s+types?/i,
|
|
87
40
|
],
|
|
88
41
|
weight: 0.9,
|
|
89
|
-
description: 'Add TypeScript type annotations'
|
|
42
|
+
description: 'Add TypeScript type annotations',
|
|
90
43
|
},
|
|
91
44
|
'add-error-handling': {
|
|
92
45
|
patterns: [
|
|
@@ -96,8 +49,8 @@ var INTENT_PATTERNS = {
|
|
|
96
49
|
/handle\s+errors?/i,
|
|
97
50
|
/add\s+exception\s+handling/i,
|
|
98
51
|
],
|
|
99
|
-
weight: 0.7,
|
|
100
|
-
description: 'Wrap code in try/catch blocks'
|
|
52
|
+
weight: 0.7, // Lower weight - often needs more context
|
|
53
|
+
description: 'Wrap code in try/catch blocks',
|
|
101
54
|
},
|
|
102
55
|
'async-await': {
|
|
103
56
|
patterns: [
|
|
@@ -111,7 +64,7 @@ var INTENT_PATTERNS = {
|
|
|
111
64
|
/callbacks?\s+to\s+async/i,
|
|
112
65
|
],
|
|
113
66
|
weight: 0.8,
|
|
114
|
-
description: 'Convert callbacks/promises to async/await'
|
|
67
|
+
description: 'Convert callbacks/promises to async/await',
|
|
115
68
|
},
|
|
116
69
|
'add-logging': {
|
|
117
70
|
patterns: [
|
|
@@ -122,7 +75,7 @@ var INTENT_PATTERNS = {
|
|
|
122
75
|
/add\s+trace\s+logging/i,
|
|
123
76
|
],
|
|
124
77
|
weight: 0.85,
|
|
125
|
-
description: 'Add console.log or logging statements'
|
|
78
|
+
description: 'Add console.log or logging statements',
|
|
126
79
|
},
|
|
127
80
|
'remove-console': {
|
|
128
81
|
patterns: [
|
|
@@ -136,13 +89,13 @@ var INTENT_PATTERNS = {
|
|
|
136
89
|
/delete\s+(?:all\s+)?console\.log/i,
|
|
137
90
|
],
|
|
138
91
|
weight: 0.95,
|
|
139
|
-
description: 'Remove console.* calls'
|
|
140
|
-
}
|
|
92
|
+
description: 'Remove console.* calls',
|
|
93
|
+
},
|
|
141
94
|
};
|
|
142
95
|
/**
|
|
143
96
|
* File path extraction patterns
|
|
144
97
|
*/
|
|
145
|
-
|
|
98
|
+
const FILE_PATH_PATTERNS = [
|
|
146
99
|
/(?:in|from|to|file|path)\s+[`"']?([a-zA-Z0-9_./\\-]+\.[a-zA-Z]+)[`"']?/i,
|
|
147
100
|
/[`"']([a-zA-Z0-9_./\\-]+\.[a-zA-Z]+)[`"']/,
|
|
148
101
|
/(\S+\.[tj]sx?)\b/i,
|
|
@@ -155,7 +108,7 @@ var FILE_PATH_PATTERNS = [
|
|
|
155
108
|
* High-complexity keywords that indicate Tier 3 (Opus) routing
|
|
156
109
|
* These tasks require deep reasoning and architectural understanding
|
|
157
110
|
*/
|
|
158
|
-
|
|
111
|
+
const TIER3_KEYWORDS = [
|
|
159
112
|
// Architecture & Design
|
|
160
113
|
/\b(microservices?|architecture|system\s+design|distributed)\b/i,
|
|
161
114
|
/\b(design|architect|plan)\s+(a|an|the|complex)\b/i,
|
|
@@ -181,7 +134,7 @@ var TIER3_KEYWORDS = [
|
|
|
181
134
|
/\b(performance\s+critical|low\s+latency|high\s+throughput)\b/i,
|
|
182
135
|
/\b(memory\s+optimi|cache\s+strateg|concurrent)\b/i,
|
|
183
136
|
];
|
|
184
|
-
|
|
137
|
+
const LANGUAGE_MAP = {
|
|
185
138
|
'.js': 'javascript',
|
|
186
139
|
'.jsx': 'javascript',
|
|
187
140
|
'.ts': 'typescript',
|
|
@@ -195,7 +148,7 @@ var LANGUAGE_MAP = {
|
|
|
195
148
|
'.swift': 'swift',
|
|
196
149
|
'.c': 'c',
|
|
197
150
|
'.cpp': 'cpp',
|
|
198
|
-
'.h': 'c'
|
|
151
|
+
'.h': 'c',
|
|
199
152
|
};
|
|
200
153
|
// ============================================================================
|
|
201
154
|
// Enhanced Model Router Implementation
|
|
@@ -208,44 +161,52 @@ var LANGUAGE_MAP = {
|
|
|
208
161
|
* - Tier 2: Haiku for low complexity tasks
|
|
209
162
|
* - Tier 3: Sonnet/Opus for complex reasoning tasks
|
|
210
163
|
*/
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
164
|
+
export class EnhancedModelRouter {
|
|
165
|
+
config;
|
|
166
|
+
tinyDancerRouter;
|
|
167
|
+
constructor(config) {
|
|
168
|
+
this.config = {
|
|
169
|
+
agentBoosterEnabled: true,
|
|
170
|
+
agentBoosterConfidenceThreshold: 0.7,
|
|
171
|
+
enabledIntents: [
|
|
214
172
|
'var-to-const',
|
|
215
173
|
'add-types',
|
|
216
174
|
'add-error-handling',
|
|
217
175
|
'async-await',
|
|
218
176
|
'add-logging',
|
|
219
177
|
'remove-console',
|
|
220
|
-
],
|
|
178
|
+
],
|
|
179
|
+
complexityThresholds: {
|
|
221
180
|
haiku: 0.3,
|
|
222
181
|
sonnet: 0.6,
|
|
223
|
-
opus: 1.0
|
|
224
|
-
},
|
|
182
|
+
opus: 1.0,
|
|
183
|
+
},
|
|
184
|
+
preferCost: false,
|
|
185
|
+
preferQuality: false,
|
|
186
|
+
...config,
|
|
187
|
+
};
|
|
225
188
|
this.tinyDancerRouter = getModelRouter();
|
|
226
189
|
}
|
|
227
190
|
/**
|
|
228
191
|
* Detect code editing intent from task description
|
|
229
192
|
*/
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
for (
|
|
235
|
-
var _b = _a[_i], intentType = _b[0], config = _b[1];
|
|
193
|
+
detectIntent(task) {
|
|
194
|
+
const taskLower = task.toLowerCase();
|
|
195
|
+
let bestIntent = null;
|
|
196
|
+
let bestScore = 0;
|
|
197
|
+
for (const [intentType, config] of Object.entries(INTENT_PATTERNS)) {
|
|
236
198
|
if (!this.config.enabledIntents.includes(intentType)) {
|
|
237
199
|
continue;
|
|
238
200
|
}
|
|
239
|
-
for (
|
|
240
|
-
var pattern = _d[_c];
|
|
201
|
+
for (const pattern of config.patterns) {
|
|
241
202
|
if (pattern.test(taskLower)) {
|
|
242
|
-
|
|
203
|
+
const score = config.weight;
|
|
243
204
|
if (score > bestScore) {
|
|
244
205
|
bestScore = score;
|
|
245
206
|
bestIntent = {
|
|
246
207
|
type: intentType,
|
|
247
208
|
confidence: score,
|
|
248
|
-
description: config.description
|
|
209
|
+
description: config.description,
|
|
249
210
|
};
|
|
250
211
|
}
|
|
251
212
|
}
|
|
@@ -253,7 +214,7 @@ var EnhancedModelRouter = /** @class */ (function () {
|
|
|
253
214
|
}
|
|
254
215
|
// Extract file path if intent found
|
|
255
216
|
if (bestIntent) {
|
|
256
|
-
|
|
217
|
+
const filePath = this.extractFilePath(task);
|
|
257
218
|
if (filePath) {
|
|
258
219
|
bestIntent.filePath = filePath;
|
|
259
220
|
bestIntent.language = this.detectLanguage(filePath);
|
|
@@ -264,297 +225,265 @@ var EnhancedModelRouter = /** @class */ (function () {
|
|
|
264
225
|
}
|
|
265
226
|
}
|
|
266
227
|
return bestIntent;
|
|
267
|
-
}
|
|
228
|
+
}
|
|
268
229
|
/**
|
|
269
230
|
* Extract file path from task description
|
|
270
231
|
*/
|
|
271
|
-
|
|
272
|
-
for (
|
|
273
|
-
|
|
274
|
-
var match = task.match(pattern);
|
|
232
|
+
extractFilePath(task) {
|
|
233
|
+
for (const pattern of FILE_PATH_PATTERNS) {
|
|
234
|
+
const match = task.match(pattern);
|
|
275
235
|
if (match && match[1]) {
|
|
276
236
|
return match[1];
|
|
277
237
|
}
|
|
278
238
|
}
|
|
279
239
|
return null;
|
|
280
|
-
}
|
|
240
|
+
}
|
|
281
241
|
/**
|
|
282
242
|
* Detect language from file extension
|
|
283
243
|
*/
|
|
284
|
-
|
|
285
|
-
|
|
244
|
+
detectLanguage(filePath) {
|
|
245
|
+
const ext = extname(filePath).toLowerCase();
|
|
286
246
|
return LANGUAGE_MAP[ext] || 'javascript';
|
|
287
|
-
}
|
|
247
|
+
}
|
|
288
248
|
/**
|
|
289
249
|
* Check if task contains Tier 3 (Opus) keywords
|
|
290
250
|
*/
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
for (
|
|
294
|
-
var pattern = TIER3_KEYWORDS_1[_i];
|
|
251
|
+
containsTier3Keywords(task) {
|
|
252
|
+
let count = 0;
|
|
253
|
+
for (const pattern of TIER3_KEYWORDS) {
|
|
295
254
|
if (pattern.test(task)) {
|
|
296
255
|
count++;
|
|
297
256
|
}
|
|
298
257
|
}
|
|
299
|
-
return { matches: count > 0, count
|
|
300
|
-
}
|
|
258
|
+
return { matches: count > 0, count };
|
|
259
|
+
}
|
|
301
260
|
/**
|
|
302
261
|
* Route a task to the optimal tier and handler
|
|
303
262
|
*/
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
estimatedCost: 0.015
|
|
400
|
-
}];
|
|
401
|
-
}
|
|
402
|
-
});
|
|
403
|
-
});
|
|
404
|
-
};
|
|
263
|
+
async route(task, context) {
|
|
264
|
+
// Step 1: Try Agent Booster intent detection
|
|
265
|
+
if (this.config.agentBoosterEnabled) {
|
|
266
|
+
const intent = this.detectIntent(task);
|
|
267
|
+
if (intent && intent.confidence >= this.config.agentBoosterConfidenceThreshold) {
|
|
268
|
+
return {
|
|
269
|
+
tier: 1,
|
|
270
|
+
handler: 'agent-booster',
|
|
271
|
+
confidence: intent.confidence,
|
|
272
|
+
reasoning: `Agent Booster can handle "${intent.type}" with ${(intent.confidence * 100).toFixed(0)}% confidence`,
|
|
273
|
+
agentBoosterIntent: intent,
|
|
274
|
+
canSkipLLM: true,
|
|
275
|
+
estimatedLatencyMs: 1,
|
|
276
|
+
estimatedCost: 0,
|
|
277
|
+
};
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
// Step 2: Check for Tier 3 keywords (architecture, security, distributed)
|
|
281
|
+
const tier3Check = this.containsTier3Keywords(task);
|
|
282
|
+
if (tier3Check.matches && tier3Check.count >= 2) {
|
|
283
|
+
// Strong signal for Opus - multiple complex keywords
|
|
284
|
+
return {
|
|
285
|
+
tier: 3,
|
|
286
|
+
handler: 'opus',
|
|
287
|
+
model: 'opus',
|
|
288
|
+
confidence: Math.min(0.95, 0.7 + tier3Check.count * 0.1),
|
|
289
|
+
complexity: 0.8 + tier3Check.count * 0.05,
|
|
290
|
+
reasoning: `High complexity task (${tier3Check.count} architectural keywords) - using opus`,
|
|
291
|
+
canSkipLLM: false,
|
|
292
|
+
estimatedLatencyMs: 5000,
|
|
293
|
+
estimatedCost: 0.015,
|
|
294
|
+
};
|
|
295
|
+
}
|
|
296
|
+
// Step 3: AST complexity analysis (if file path provided)
|
|
297
|
+
let astComplexity;
|
|
298
|
+
const targetFile = context?.filePath || this.extractFilePath(task);
|
|
299
|
+
if (targetFile && existsSync(targetFile)) {
|
|
300
|
+
try {
|
|
301
|
+
astComplexity = await this.analyzeASTComplexity(targetFile);
|
|
302
|
+
}
|
|
303
|
+
catch {
|
|
304
|
+
// AST analysis not available, continue with text-based routing
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
// Step 4: Text-based complexity + tiny-dancer routing
|
|
308
|
+
const tinyDancerResult = await this.tinyDancerRouter.route(task);
|
|
309
|
+
// Step 5: Combine AST complexity with tiny-dancer result
|
|
310
|
+
// Also boost if single tier3 keyword found
|
|
311
|
+
let finalComplexity = astComplexity !== undefined
|
|
312
|
+
? (astComplexity + tinyDancerResult.complexity) / 2
|
|
313
|
+
: tinyDancerResult.complexity;
|
|
314
|
+
// Boost complexity if tier3 keywords found (even just one)
|
|
315
|
+
if (tier3Check.matches) {
|
|
316
|
+
finalComplexity = Math.min(1.0, finalComplexity + 0.25);
|
|
317
|
+
}
|
|
318
|
+
// Step 6: Determine tier based on complexity
|
|
319
|
+
const { haiku, sonnet } = this.config.complexityThresholds;
|
|
320
|
+
if (finalComplexity < haiku) {
|
|
321
|
+
return {
|
|
322
|
+
tier: 2,
|
|
323
|
+
handler: 'haiku',
|
|
324
|
+
model: 'haiku',
|
|
325
|
+
confidence: tinyDancerResult.confidence,
|
|
326
|
+
complexity: finalComplexity,
|
|
327
|
+
reasoning: `Low complexity (${(finalComplexity * 100).toFixed(0)}%) - using haiku`,
|
|
328
|
+
canSkipLLM: false,
|
|
329
|
+
estimatedLatencyMs: 500,
|
|
330
|
+
estimatedCost: 0.0002,
|
|
331
|
+
};
|
|
332
|
+
}
|
|
333
|
+
if (finalComplexity < sonnet) {
|
|
334
|
+
return {
|
|
335
|
+
tier: 2,
|
|
336
|
+
handler: 'sonnet',
|
|
337
|
+
model: 'sonnet',
|
|
338
|
+
confidence: tinyDancerResult.confidence,
|
|
339
|
+
complexity: finalComplexity,
|
|
340
|
+
reasoning: `Medium complexity (${(finalComplexity * 100).toFixed(0)}%) - using sonnet`,
|
|
341
|
+
canSkipLLM: false,
|
|
342
|
+
estimatedLatencyMs: 2000,
|
|
343
|
+
estimatedCost: 0.003,
|
|
344
|
+
};
|
|
345
|
+
}
|
|
346
|
+
return {
|
|
347
|
+
tier: 3,
|
|
348
|
+
handler: 'opus',
|
|
349
|
+
model: 'opus',
|
|
350
|
+
confidence: tinyDancerResult.confidence,
|
|
351
|
+
complexity: finalComplexity,
|
|
352
|
+
reasoning: `High complexity (${(finalComplexity * 100).toFixed(0)}%) - using opus`,
|
|
353
|
+
canSkipLLM: false,
|
|
354
|
+
estimatedLatencyMs: 5000,
|
|
355
|
+
estimatedCost: 0.015,
|
|
356
|
+
};
|
|
357
|
+
}
|
|
405
358
|
/**
|
|
406
359
|
* Analyze AST complexity of a file
|
|
407
360
|
* Returns normalized complexity score (0-1)
|
|
408
361
|
*/
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
});
|
|
436
|
-
};
|
|
362
|
+
async analyzeASTComplexity(filePath) {
|
|
363
|
+
try {
|
|
364
|
+
const content = readFileSync(filePath, 'utf-8');
|
|
365
|
+
const lines = content.split('\n');
|
|
366
|
+
// Simple heuristics for complexity
|
|
367
|
+
let complexity = 0;
|
|
368
|
+
// Line count contribution
|
|
369
|
+
complexity += Math.min(0.3, lines.length / 1000);
|
|
370
|
+
// Nesting depth estimation (count indentation)
|
|
371
|
+
const avgIndent = lines
|
|
372
|
+
.filter((l) => l.trim().length > 0)
|
|
373
|
+
.map((l) => l.match(/^(\s*)/)?.[1].length || 0)
|
|
374
|
+
.reduce((sum, indent) => sum + indent, 0) / Math.max(1, lines.length);
|
|
375
|
+
complexity += Math.min(0.2, avgIndent / 20);
|
|
376
|
+
// Control flow complexity (count keywords)
|
|
377
|
+
const controlFlowCount = (content.match(/\b(if|else|for|while|switch|case|try|catch|async|await)\b/g) || []).length;
|
|
378
|
+
complexity += Math.min(0.3, controlFlowCount / 100);
|
|
379
|
+
// Function/class count
|
|
380
|
+
const functionCount = (content.match(/\b(function|class|=>)\b/g) || []).length;
|
|
381
|
+
complexity += Math.min(0.2, functionCount / 50);
|
|
382
|
+
return Math.min(1, complexity);
|
|
383
|
+
}
|
|
384
|
+
catch {
|
|
385
|
+
return 0.5; // Default to medium complexity on error
|
|
386
|
+
}
|
|
387
|
+
}
|
|
437
388
|
/**
|
|
438
389
|
* Execute task using the appropriate tier
|
|
439
390
|
* Returns the result and routing information
|
|
440
391
|
*/
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
routeResult.model = 'sonnet';
|
|
463
|
-
routeResult.canSkipLLM = false;
|
|
464
|
-
routeResult.reasoning += ' (Agent Booster fallback to LLM)';
|
|
465
|
-
_a.label = 3;
|
|
466
|
-
case 3:
|
|
467
|
-
// Return routing result - caller handles LLM invocation
|
|
468
|
-
return [2 /*return*/, { result: routeResult.reasoning, routeResult: routeResult }];
|
|
469
|
-
}
|
|
470
|
-
});
|
|
471
|
-
});
|
|
472
|
-
};
|
|
392
|
+
async execute(task, context) {
|
|
393
|
+
const routeResult = await this.route(task, context);
|
|
394
|
+
if (routeResult.tier === 1 && routeResult.agentBoosterIntent) {
|
|
395
|
+
// Try to execute with Agent Booster
|
|
396
|
+
const abResult = await this.tryAgentBooster(routeResult.agentBoosterIntent, context);
|
|
397
|
+
if (abResult.success) {
|
|
398
|
+
return {
|
|
399
|
+
result: { applied: true, confidence: abResult.confidence },
|
|
400
|
+
routeResult,
|
|
401
|
+
};
|
|
402
|
+
}
|
|
403
|
+
// Agent Booster failed, fall back to LLM
|
|
404
|
+
routeResult.tier = 2;
|
|
405
|
+
routeResult.handler = 'sonnet';
|
|
406
|
+
routeResult.model = 'sonnet';
|
|
407
|
+
routeResult.canSkipLLM = false;
|
|
408
|
+
routeResult.reasoning += ' (Agent Booster fallback to LLM)';
|
|
409
|
+
}
|
|
410
|
+
// Return routing result - caller handles LLM invocation
|
|
411
|
+
return { result: routeResult.reasoning, routeResult };
|
|
412
|
+
}
|
|
473
413
|
/**
|
|
474
414
|
* Try to apply edit using Agent Booster
|
|
475
415
|
*/
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
language: language
|
|
507
|
-
})];
|
|
508
|
-
case 2:
|
|
509
|
-
result_1 = _d.sent();
|
|
510
|
-
if (result_1 && result_1.confidence >= this.config.agentBoosterConfidenceThreshold) {
|
|
511
|
-
return [2 /*return*/, { success: true, confidence: result_1.confidence, output: result_1.output }];
|
|
512
|
-
}
|
|
513
|
-
return [2 /*return*/, { success: false, confidence: (_a = result_1 === null || result_1 === void 0 ? void 0 : result_1.confidence) !== null && _a !== void 0 ? _a : 0 }];
|
|
514
|
-
case 3:
|
|
515
|
-
SAFE_LANGUAGES = ['javascript', 'typescript', 'python', 'rust', 'go', 'java', 'c', 'cpp', 'ruby', 'swift', 'kotlin'];
|
|
516
|
-
safeLang = SAFE_LANGUAGES.includes(language) ? language : 'javascript';
|
|
517
|
-
return [4 /*yield*/, import('child_process')];
|
|
518
|
-
case 4:
|
|
519
|
-
execSync = (_d.sent()).execSync;
|
|
520
|
-
cmd = "npx --yes agent-booster@0.2.2 apply --language " + safeLang;
|
|
521
|
-
result = execSync(cmd, {
|
|
522
|
-
encoding: 'utf-8',
|
|
523
|
-
input: JSON.stringify({ code: originalCode, edit: instruction }),
|
|
524
|
-
maxBuffer: 10 * 1024 * 1024,
|
|
525
|
-
timeout: 5000,
|
|
526
|
-
stdio: ['pipe', 'pipe', 'pipe']
|
|
527
|
-
});
|
|
528
|
-
parsed = JSON.parse(result);
|
|
529
|
-
if (parsed.confidence >= this.config.agentBoosterConfidenceThreshold) {
|
|
530
|
-
return [2 /*return*/, { success: true, confidence: parsed.confidence, output: parsed.output }];
|
|
531
|
-
}
|
|
532
|
-
return [2 /*return*/, { success: false, confidence: (_b = parsed.confidence) !== null && _b !== void 0 ? _b : 0 }];
|
|
533
|
-
case 5:
|
|
534
|
-
_c = _d.sent();
|
|
535
|
-
// Agent Booster not available or failed
|
|
536
|
-
return [2 /*return*/, { success: false, confidence: 0 }];
|
|
537
|
-
case 6: return [2 /*return*/];
|
|
416
|
+
async tryAgentBooster(intent, context) {
|
|
417
|
+
try {
|
|
418
|
+
const filePath = intent.filePath || context?.filePath;
|
|
419
|
+
if (!filePath || !existsSync(filePath)) {
|
|
420
|
+
return { success: false, confidence: 0 };
|
|
421
|
+
}
|
|
422
|
+
const originalCode = context?.originalCode || readFileSync(filePath, 'utf-8');
|
|
423
|
+
const intentToInstruction = {
|
|
424
|
+
'var-to-const': 'Convert all var declarations to const',
|
|
425
|
+
'add-types': 'Add TypeScript type annotations',
|
|
426
|
+
'add-error-handling': 'Wrap in try/catch blocks',
|
|
427
|
+
'async-await': 'Convert to async/await',
|
|
428
|
+
'add-logging': 'Add console.log statements',
|
|
429
|
+
'remove-console': 'Remove all console.* statements',
|
|
430
|
+
};
|
|
431
|
+
const instruction = intentToInstruction[intent.type];
|
|
432
|
+
const language = intent.language || 'javascript';
|
|
433
|
+
// Try local agentic-flow agent-booster (v3 — no npx needed)
|
|
434
|
+
// Note: agent-booster export declared but dist missing in alpha.1; use intelligence path as fallback
|
|
435
|
+
const boosterModule = await import('agentic-flow/agent-booster')
|
|
436
|
+
.catch(() => import(/* @vite-ignore */ 'agentic-flow/intelligence/agent-booster-enhanced'))
|
|
437
|
+
.catch(() => null);
|
|
438
|
+
if (boosterModule?.enhancedApply) {
|
|
439
|
+
const result = await boosterModule.enhancedApply({
|
|
440
|
+
code: originalCode,
|
|
441
|
+
edit: instruction,
|
|
442
|
+
language,
|
|
443
|
+
});
|
|
444
|
+
if (result && result.confidence >= this.config.agentBoosterConfidenceThreshold) {
|
|
445
|
+
return { success: true, confidence: result.confidence, output: result.output };
|
|
538
446
|
}
|
|
447
|
+
return { success: false, confidence: result?.confidence ?? 0 };
|
|
448
|
+
}
|
|
449
|
+
// Fallback: shell out to npx agent-booster
|
|
450
|
+
// Sanitize language to prevent command injection (whitelist only)
|
|
451
|
+
const SAFE_LANGUAGES = ['javascript', 'typescript', 'python', 'rust', 'go', 'java', 'c', 'cpp', 'ruby', 'swift', 'kotlin'];
|
|
452
|
+
const safeLang = SAFE_LANGUAGES.includes(language) ? language : 'javascript';
|
|
453
|
+
const { execSync } = await import('child_process');
|
|
454
|
+
const cmd = `npx --yes agent-booster@0.2.2 apply --language ${safeLang}`;
|
|
455
|
+
const result = execSync(cmd, {
|
|
456
|
+
encoding: 'utf-8',
|
|
457
|
+
input: JSON.stringify({ code: originalCode, edit: instruction }),
|
|
458
|
+
maxBuffer: 10 * 1024 * 1024,
|
|
459
|
+
timeout: 5000,
|
|
460
|
+
stdio: ['pipe', 'pipe', 'pipe'],
|
|
539
461
|
});
|
|
540
|
-
|
|
541
|
-
|
|
462
|
+
const parsed = JSON.parse(result);
|
|
463
|
+
if (parsed.confidence >= this.config.agentBoosterConfidenceThreshold) {
|
|
464
|
+
return { success: true, confidence: parsed.confidence, output: parsed.output };
|
|
465
|
+
}
|
|
466
|
+
return { success: false, confidence: parsed.confidence ?? 0 };
|
|
467
|
+
}
|
|
468
|
+
catch {
|
|
469
|
+
// Agent Booster not available or failed
|
|
470
|
+
return { success: false, confidence: 0 };
|
|
471
|
+
}
|
|
472
|
+
}
|
|
542
473
|
/**
|
|
543
474
|
* Get router statistics
|
|
544
475
|
*/
|
|
545
|
-
|
|
476
|
+
getStats() {
|
|
546
477
|
return {
|
|
547
|
-
config:
|
|
548
|
-
tinyDancerStats: this.tinyDancerRouter.getStats()
|
|
478
|
+
config: { ...this.config },
|
|
479
|
+
tinyDancerStats: this.tinyDancerRouter.getStats(),
|
|
549
480
|
};
|
|
550
|
-
}
|
|
551
|
-
|
|
552
|
-
}());
|
|
553
|
-
export { EnhancedModelRouter };
|
|
481
|
+
}
|
|
482
|
+
}
|
|
554
483
|
// ============================================================================
|
|
555
484
|
// Singleton & Factory Functions
|
|
556
485
|
// ============================================================================
|
|
557
|
-
|
|
486
|
+
let enhancedRouterInstance = null;
|
|
558
487
|
/**
|
|
559
488
|
* Get or create the singleton EnhancedModelRouter instance
|
|
560
489
|
*/
|
|
@@ -582,23 +511,18 @@ export function createEnhancedModelRouter(config) {
|
|
|
582
511
|
/**
|
|
583
512
|
* Quick route function with enhanced routing
|
|
584
513
|
*/
|
|
585
|
-
export function enhancedRouteToModel(task, context) {
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
return __generator(this, function (_a) {
|
|
589
|
-
router = getEnhancedModelRouter();
|
|
590
|
-
return [2 /*return*/, router.route(task, context)];
|
|
591
|
-
});
|
|
592
|
-
});
|
|
514
|
+
export async function enhancedRouteToModel(task, context) {
|
|
515
|
+
const router = getEnhancedModelRouter();
|
|
516
|
+
return router.route(task, context);
|
|
593
517
|
}
|
|
594
518
|
/**
|
|
595
519
|
* Detect if a task can be handled by Agent Booster
|
|
596
520
|
*/
|
|
597
521
|
export function canUseAgentBooster(task) {
|
|
598
|
-
|
|
599
|
-
|
|
522
|
+
const router = getEnhancedModelRouter();
|
|
523
|
+
const intent = router.detectIntent(task);
|
|
600
524
|
if (intent && intent.confidence >= 0.7) {
|
|
601
|
-
return { canUse: true, intent
|
|
525
|
+
return { canUse: true, intent };
|
|
602
526
|
}
|
|
603
527
|
return { canUse: false };
|
|
604
528
|
}
|