@pcircle/claude-code-buddy-mcp 2.3.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/LICENSE +661 -0
- package/README.md +599 -0
- package/README.zh-TW.md +577 -0
- package/dist/__benchmarks__/performance-fixes.bench.d.ts +8 -0
- package/dist/__benchmarks__/performance-fixes.bench.d.ts.map +1 -0
- package/dist/__benchmarks__/performance-fixes.bench.js +213 -0
- package/dist/__benchmarks__/performance-fixes.bench.js.map +1 -0
- package/dist/agents/DevelopmentButler.d.ts +80 -0
- package/dist/agents/DevelopmentButler.d.ts.map +1 -0
- package/dist/agents/DevelopmentButler.js +328 -0
- package/dist/agents/DevelopmentButler.js.map +1 -0
- package/dist/agents/E2EHealingAgent.d.ts +30 -0
- package/dist/agents/E2EHealingAgent.d.ts.map +1 -0
- package/dist/agents/E2EHealingAgent.js +162 -0
- package/dist/agents/E2EHealingAgent.js.map +1 -0
- package/dist/agents/TestWriterAgent.d.ts +26 -0
- package/dist/agents/TestWriterAgent.d.ts.map +1 -0
- package/dist/agents/TestWriterAgent.js +139 -0
- package/dist/agents/TestWriterAgent.js.map +1 -0
- package/dist/agents/base/AgentExecutor.d.ts +7 -0
- package/dist/agents/base/AgentExecutor.d.ts.map +1 -0
- package/dist/agents/base/AgentExecutor.js +13 -0
- package/dist/agents/base/AgentExecutor.js.map +1 -0
- package/dist/agents/base/index.d.ts +2 -0
- package/dist/agents/base/index.d.ts.map +1 -0
- package/dist/agents/base/index.js +2 -0
- package/dist/agents/base/index.js.map +1 -0
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.d.ts +24 -0
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.d.ts.map +1 -0
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.js +55 -0
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.js.map +1 -0
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.d.ts +22 -0
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.d.ts.map +1 -0
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.js +36 -0
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.js.map +1 -0
- package/dist/agents/e2e-healing/config.d.ts +4 -0
- package/dist/agents/e2e-healing/config.d.ts.map +1 -0
- package/dist/agents/e2e-healing/config.js +28 -0
- package/dist/agents/e2e-healing/config.js.map +1 -0
- package/dist/agents/e2e-healing/generators/FixGenerator.d.ts +21 -0
- package/dist/agents/e2e-healing/generators/FixGenerator.d.ts.map +1 -0
- package/dist/agents/e2e-healing/generators/FixGenerator.js +33 -0
- package/dist/agents/e2e-healing/generators/FixGenerator.js.map +1 -0
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.d.ts +29 -0
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.d.ts.map +1 -0
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.js +70 -0
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.js.map +1 -0
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.d.ts +30 -0
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.d.ts.map +1 -0
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.js +115 -0
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.js.map +1 -0
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.d.ts +19 -0
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.d.ts.map +1 -0
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.js +79 -0
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.js.map +1 -0
- package/dist/agents/e2e-healing/safety/CircuitBreaker.d.ts +26 -0
- package/dist/agents/e2e-healing/safety/CircuitBreaker.d.ts.map +1 -0
- package/dist/agents/e2e-healing/safety/CircuitBreaker.js +75 -0
- package/dist/agents/e2e-healing/safety/CircuitBreaker.js.map +1 -0
- package/dist/agents/e2e-healing/safety/RollbackManager.d.ts +31 -0
- package/dist/agents/e2e-healing/safety/RollbackManager.d.ts.map +1 -0
- package/dist/agents/e2e-healing/safety/RollbackManager.js +130 -0
- package/dist/agents/e2e-healing/safety/RollbackManager.js.map +1 -0
- package/dist/agents/e2e-healing/safety/SafetyGate.d.ts +21 -0
- package/dist/agents/e2e-healing/safety/SafetyGate.d.ts.map +1 -0
- package/dist/agents/e2e-healing/safety/SafetyGate.js +62 -0
- package/dist/agents/e2e-healing/safety/SafetyGate.js.map +1 -0
- package/dist/agents/e2e-healing/safety/ScopeLimiter.d.ts +14 -0
- package/dist/agents/e2e-healing/safety/ScopeLimiter.d.ts.map +1 -0
- package/dist/agents/e2e-healing/safety/ScopeLimiter.js +36 -0
- package/dist/agents/e2e-healing/safety/ScopeLimiter.js.map +1 -0
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.d.ts +29 -0
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.d.ts.map +1 -0
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.js +86 -0
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.js.map +1 -0
- package/dist/agents/e2e-healing/types.d.ts +46 -0
- package/dist/agents/e2e-healing/types.d.ts.map +1 -0
- package/dist/agents/e2e-healing/types.js +2 -0
- package/dist/agents/e2e-healing/types.js.map +1 -0
- package/dist/agents/knowledge/KnowledgeGraph.d.ts +26 -0
- package/dist/agents/knowledge/KnowledgeGraph.d.ts.map +1 -0
- package/dist/agents/knowledge/KnowledgeGraph.js +106 -0
- package/dist/agents/knowledge/KnowledgeGraph.js.map +1 -0
- package/dist/agents/knowledge/KnowledgeGraphSQLite.d.ts +42 -0
- package/dist/agents/knowledge/KnowledgeGraphSQLite.d.ts.map +1 -0
- package/dist/agents/knowledge/KnowledgeGraphSQLite.js +349 -0
- package/dist/agents/knowledge/KnowledgeGraphSQLite.js.map +1 -0
- package/dist/agents/knowledge/index.d.ts +94 -0
- package/dist/agents/knowledge/index.d.ts.map +1 -0
- package/dist/agents/knowledge/index.js +296 -0
- package/dist/agents/knowledge/index.js.map +1 -0
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.d.ts +25 -0
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.d.ts.map +1 -0
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.js +342 -0
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.js.map +1 -0
- package/dist/agents/knowledge/types.d.ts +21 -0
- package/dist/agents/knowledge/types.d.ts.map +1 -0
- package/dist/agents/knowledge/types.js +2 -0
- package/dist/agents/knowledge/types.js.map +1 -0
- package/dist/agents/templates/ci-templates.d.ts +8 -0
- package/dist/agents/templates/ci-templates.d.ts.map +1 -0
- package/dist/agents/templates/ci-templates.js +119 -0
- package/dist/agents/templates/ci-templates.js.map +1 -0
- package/dist/agents/templates/test-templates.d.ts +18 -0
- package/dist/agents/templates/test-templates.d.ts.map +1 -0
- package/dist/agents/templates/test-templates.js +22 -0
- package/dist/agents/templates/test-templates.js.map +1 -0
- package/dist/config/index.d.ts +51 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +96 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/models.d.ts +47 -0
- package/dist/config/models.d.ts.map +1 -0
- package/dist/config/models.js +57 -0
- package/dist/config/models.js.map +1 -0
- package/dist/config/simple-config.d.ts +32 -0
- package/dist/config/simple-config.d.ts.map +1 -0
- package/dist/config/simple-config.js +225 -0
- package/dist/config/simple-config.js.map +1 -0
- package/dist/core/AgentRegistry.d.ts +32 -0
- package/dist/core/AgentRegistry.d.ts.map +1 -0
- package/dist/core/AgentRegistry.js +281 -0
- package/dist/core/AgentRegistry.js.map +1 -0
- package/dist/core/BackgroundExecutor.d.ts +56 -0
- package/dist/core/BackgroundExecutor.d.ts.map +1 -0
- package/dist/core/BackgroundExecutor.js +492 -0
- package/dist/core/BackgroundExecutor.js.map +1 -0
- package/dist/core/BackgroundExecutorConstants.d.ts +8 -0
- package/dist/core/BackgroundExecutorConstants.d.ts.map +1 -0
- package/dist/core/BackgroundExecutorConstants.js +8 -0
- package/dist/core/BackgroundExecutorConstants.js.map +1 -0
- package/dist/core/CheckpointDetector.d.ts +25 -0
- package/dist/core/CheckpointDetector.d.ts.map +1 -0
- package/dist/core/CheckpointDetector.js +67 -0
- package/dist/core/CheckpointDetector.js.map +1 -0
- package/dist/core/ExecutionMonitor.d.ts +29 -0
- package/dist/core/ExecutionMonitor.d.ts.map +1 -0
- package/dist/core/ExecutionMonitor.js +124 -0
- package/dist/core/ExecutionMonitor.js.map +1 -0
- package/dist/core/ExecutionQueue.d.ts +21 -0
- package/dist/core/ExecutionQueue.d.ts.map +1 -0
- package/dist/core/ExecutionQueue.js +104 -0
- package/dist/core/ExecutionQueue.js.map +1 -0
- package/dist/core/HealthCheck.d.ts +39 -0
- package/dist/core/HealthCheck.d.ts.map +1 -0
- package/dist/core/HealthCheck.js +219 -0
- package/dist/core/HealthCheck.js.map +1 -0
- package/dist/core/HookIntegration.d.ts +45 -0
- package/dist/core/HookIntegration.d.ts.map +1 -0
- package/dist/core/HookIntegration.js +241 -0
- package/dist/core/HookIntegration.js.map +1 -0
- package/dist/core/MCPToolInterface.d.ts +120 -0
- package/dist/core/MCPToolInterface.d.ts.map +1 -0
- package/dist/core/MCPToolInterface.js +376 -0
- package/dist/core/MCPToolInterface.js.map +1 -0
- package/dist/core/PromptEnhancer.d.ts +13 -0
- package/dist/core/PromptEnhancer.d.ts.map +1 -0
- package/dist/core/PromptEnhancer.js +112 -0
- package/dist/core/PromptEnhancer.js.map +1 -0
- package/dist/core/ResourceMonitor.d.ts +32 -0
- package/dist/core/ResourceMonitor.d.ts.map +1 -0
- package/dist/core/ResourceMonitor.js +181 -0
- package/dist/core/ResourceMonitor.js.map +1 -0
- package/dist/core/ResultHandler.d.ts +9 -0
- package/dist/core/ResultHandler.d.ts.map +1 -0
- package/dist/core/ResultHandler.js +60 -0
- package/dist/core/ResultHandler.js.map +1 -0
- package/dist/core/ServiceLocator.d.ts +10 -0
- package/dist/core/ServiceLocator.d.ts.map +1 -0
- package/dist/core/ServiceLocator.js +29 -0
- package/dist/core/ServiceLocator.js.map +1 -0
- package/dist/core/SessionContextMonitor.d.ts +41 -0
- package/dist/core/SessionContextMonitor.d.ts.map +1 -0
- package/dist/core/SessionContextMonitor.js +156 -0
- package/dist/core/SessionContextMonitor.js.map +1 -0
- package/dist/core/SessionTokenTracker.d.ts +43 -0
- package/dist/core/SessionTokenTracker.d.ts.map +1 -0
- package/dist/core/SessionTokenTracker.js +76 -0
- package/dist/core/SessionTokenTracker.js.map +1 -0
- package/dist/core/TaskScheduler.d.ts +19 -0
- package/dist/core/TaskScheduler.d.ts.map +1 -0
- package/dist/core/TaskScheduler.js +59 -0
- package/dist/core/TaskScheduler.js.map +1 -0
- package/dist/core/WorkflowGuidanceEngine.d.ts +35 -0
- package/dist/core/WorkflowGuidanceEngine.d.ts.map +1 -0
- package/dist/core/WorkflowGuidanceEngine.js +104 -0
- package/dist/core/WorkflowGuidanceEngine.js.map +1 -0
- package/dist/core/types.d.ts +66 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +11 -0
- package/dist/core/types.js.map +1 -0
- package/dist/db/ConnectionPool.d.ts +47 -0
- package/dist/db/ConnectionPool.d.ts.map +1 -0
- package/dist/db/ConnectionPool.js +432 -0
- package/dist/db/ConnectionPool.js.map +1 -0
- package/dist/db/QueryCache.d.ts +46 -0
- package/dist/db/QueryCache.d.ts.map +1 -0
- package/dist/db/QueryCache.js +229 -0
- package/dist/db/QueryCache.js.map +1 -0
- package/dist/errors/index.d.ts +62 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +124 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/evolution/ABTestManager.d.ts +21 -0
- package/dist/evolution/ABTestManager.d.ts.map +1 -0
- package/dist/evolution/ABTestManager.js +183 -0
- package/dist/evolution/ABTestManager.js.map +1 -0
- package/dist/evolution/AdaptationEngine.d.ts +60 -0
- package/dist/evolution/AdaptationEngine.d.ts.map +1 -0
- package/dist/evolution/AdaptationEngine.js +313 -0
- package/dist/evolution/AdaptationEngine.js.map +1 -0
- package/dist/evolution/AgentEvolutionConfig.d.ts +32 -0
- package/dist/evolution/AgentEvolutionConfig.d.ts.map +1 -0
- package/dist/evolution/AgentEvolutionConfig.js +329 -0
- package/dist/evolution/AgentEvolutionConfig.js.map +1 -0
- package/dist/evolution/ContextMatcher.d.ts +24 -0
- package/dist/evolution/ContextMatcher.d.ts.map +1 -0
- package/dist/evolution/ContextMatcher.js +85 -0
- package/dist/evolution/ContextMatcher.js.map +1 -0
- package/dist/evolution/EvolutionBootstrap.d.ts +69 -0
- package/dist/evolution/EvolutionBootstrap.d.ts.map +1 -0
- package/dist/evolution/EvolutionBootstrap.js +332 -0
- package/dist/evolution/EvolutionBootstrap.js.map +1 -0
- package/dist/evolution/EvolutionMonitor.d.ts +111 -0
- package/dist/evolution/EvolutionMonitor.d.ts.map +1 -0
- package/dist/evolution/EvolutionMonitor.js +540 -0
- package/dist/evolution/EvolutionMonitor.js.map +1 -0
- package/dist/evolution/FeedbackCollector.d.ts +26 -0
- package/dist/evolution/FeedbackCollector.d.ts.map +1 -0
- package/dist/evolution/FeedbackCollector.js +93 -0
- package/dist/evolution/FeedbackCollector.js.map +1 -0
- package/dist/evolution/KnowledgeTransferManager.d.ts +16 -0
- package/dist/evolution/KnowledgeTransferManager.d.ts.map +1 -0
- package/dist/evolution/KnowledgeTransferManager.js +34 -0
- package/dist/evolution/KnowledgeTransferManager.js.map +1 -0
- package/dist/evolution/LearningManager.d.ts +79 -0
- package/dist/evolution/LearningManager.d.ts.map +1 -0
- package/dist/evolution/LearningManager.js +582 -0
- package/dist/evolution/LearningManager.js.map +1 -0
- package/dist/evolution/LearningManagerConstants.d.ts +55 -0
- package/dist/evolution/LearningManagerConstants.d.ts.map +1 -0
- package/dist/evolution/LearningManagerConstants.js +55 -0
- package/dist/evolution/LearningManagerConstants.js.map +1 -0
- package/dist/evolution/MultiObjectiveOptimizer.d.ts +9 -0
- package/dist/evolution/MultiObjectiveOptimizer.d.ts.map +1 -0
- package/dist/evolution/MultiObjectiveOptimizer.js +92 -0
- package/dist/evolution/MultiObjectiveOptimizer.js.map +1 -0
- package/dist/evolution/PatternExplainer.d.ts +14 -0
- package/dist/evolution/PatternExplainer.d.ts.map +1 -0
- package/dist/evolution/PatternExplainer.js +113 -0
- package/dist/evolution/PatternExplainer.js.map +1 -0
- package/dist/evolution/PerformanceTracker.d.ts +43 -0
- package/dist/evolution/PerformanceTracker.d.ts.map +1 -0
- package/dist/evolution/PerformanceTracker.js +453 -0
- package/dist/evolution/PerformanceTracker.js.map +1 -0
- package/dist/evolution/PerformanceTrackerConstants.d.ts +5 -0
- package/dist/evolution/PerformanceTrackerConstants.d.ts.map +1 -0
- package/dist/evolution/PerformanceTrackerConstants.js +5 -0
- package/dist/evolution/PerformanceTrackerConstants.js.map +1 -0
- package/dist/evolution/StatisticalAnalyzer.d.ts +20 -0
- package/dist/evolution/StatisticalAnalyzer.d.ts.map +1 -0
- package/dist/evolution/StatisticalAnalyzer.js +154 -0
- package/dist/evolution/StatisticalAnalyzer.js.map +1 -0
- package/dist/evolution/TransferabilityChecker.d.ts +11 -0
- package/dist/evolution/TransferabilityChecker.d.ts.map +1 -0
- package/dist/evolution/TransferabilityChecker.js +78 -0
- package/dist/evolution/TransferabilityChecker.js.map +1 -0
- package/dist/evolution/index.d.ts +11 -0
- package/dist/evolution/index.d.ts.map +1 -0
- package/dist/evolution/index.js +9 -0
- package/dist/evolution/index.js.map +1 -0
- package/dist/evolution/instrumentation/SpanTracker.d.ts +64 -0
- package/dist/evolution/instrumentation/SpanTracker.d.ts.map +1 -0
- package/dist/evolution/instrumentation/SpanTracker.js +229 -0
- package/dist/evolution/instrumentation/SpanTracker.js.map +1 -0
- package/dist/evolution/instrumentation/withEvolutionTracking.d.ts +19 -0
- package/dist/evolution/instrumentation/withEvolutionTracking.d.ts.map +1 -0
- package/dist/evolution/instrumentation/withEvolutionTracking.js +256 -0
- package/dist/evolution/instrumentation/withEvolutionTracking.js.map +1 -0
- package/dist/evolution/integration-test-scenarios.d.ts +56 -0
- package/dist/evolution/integration-test-scenarios.d.ts.map +1 -0
- package/dist/evolution/integration-test-scenarios.js +131 -0
- package/dist/evolution/integration-test-scenarios.js.map +1 -0
- package/dist/evolution/links/LinkManager.d.ts +17 -0
- package/dist/evolution/links/LinkManager.d.ts.map +1 -0
- package/dist/evolution/links/LinkManager.js +41 -0
- package/dist/evolution/links/LinkManager.js.map +1 -0
- package/dist/evolution/storage/EvolutionStore.d.ts +87 -0
- package/dist/evolution/storage/EvolutionStore.d.ts.map +1 -0
- package/dist/evolution/storage/EvolutionStore.js +2 -0
- package/dist/evolution/storage/EvolutionStore.js.map +1 -0
- package/dist/evolution/storage/IEvolutionStore.d.ts +87 -0
- package/dist/evolution/storage/IEvolutionStore.d.ts.map +1 -0
- package/dist/evolution/storage/IEvolutionStore.js +2 -0
- package/dist/evolution/storage/IEvolutionStore.js.map +1 -0
- package/dist/evolution/storage/SQLiteStore.d.ts +115 -0
- package/dist/evolution/storage/SQLiteStore.d.ts.map +1 -0
- package/dist/evolution/storage/SQLiteStore.enhanced.d.ts +35 -0
- package/dist/evolution/storage/SQLiteStore.enhanced.d.ts.map +1 -0
- package/dist/evolution/storage/SQLiteStore.enhanced.js +514 -0
- package/dist/evolution/storage/SQLiteStore.enhanced.js.map +1 -0
- package/dist/evolution/storage/SQLiteStore.js +915 -0
- package/dist/evolution/storage/SQLiteStore.js.map +1 -0
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.d.ts +109 -0
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.d.ts.map +1 -0
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.js +1033 -0
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.js.map +1 -0
- package/dist/evolution/storage/index.d.ts +6 -0
- package/dist/evolution/storage/index.d.ts.map +1 -0
- package/dist/evolution/storage/index.js +3 -0
- package/dist/evolution/storage/index.js.map +1 -0
- package/dist/evolution/storage/migrations/MigrationManager.d.ts +17 -0
- package/dist/evolution/storage/migrations/MigrationManager.d.ts.map +1 -0
- package/dist/evolution/storage/migrations/MigrationManager.js +242 -0
- package/dist/evolution/storage/migrations/MigrationManager.js.map +1 -0
- package/dist/evolution/storage/repositories/AdaptationRepository.d.ts +17 -0
- package/dist/evolution/storage/repositories/AdaptationRepository.d.ts.map +1 -0
- package/dist/evolution/storage/repositories/AdaptationRepository.js +82 -0
- package/dist/evolution/storage/repositories/AdaptationRepository.js.map +1 -0
- package/dist/evolution/storage/repositories/CostRecordsRepository.d.ts +43 -0
- package/dist/evolution/storage/repositories/CostRecordsRepository.d.ts.map +1 -0
- package/dist/evolution/storage/repositories/CostRecordsRepository.js +157 -0
- package/dist/evolution/storage/repositories/CostRecordsRepository.js.map +1 -0
- package/dist/evolution/storage/repositories/ExecutionRepository.d.ts +12 -0
- package/dist/evolution/storage/repositories/ExecutionRepository.d.ts.map +1 -0
- package/dist/evolution/storage/repositories/ExecutionRepository.js +87 -0
- package/dist/evolution/storage/repositories/ExecutionRepository.js.map +1 -0
- package/dist/evolution/storage/repositories/PatternRepository.d.ts +12 -0
- package/dist/evolution/storage/repositories/PatternRepository.d.ts.map +1 -0
- package/dist/evolution/storage/repositories/PatternRepository.js +150 -0
- package/dist/evolution/storage/repositories/PatternRepository.js.map +1 -0
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.d.ts +39 -0
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.d.ts.map +1 -0
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.js +130 -0
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.js.map +1 -0
- package/dist/evolution/storage/repositories/RewardRepository.d.ts +17 -0
- package/dist/evolution/storage/repositories/RewardRepository.d.ts.map +1 -0
- package/dist/evolution/storage/repositories/RewardRepository.js +82 -0
- package/dist/evolution/storage/repositories/RewardRepository.js.map +1 -0
- package/dist/evolution/storage/repositories/SpanRepository.d.ts +14 -0
- package/dist/evolution/storage/repositories/SpanRepository.d.ts.map +1 -0
- package/dist/evolution/storage/repositories/SpanRepository.js +191 -0
- package/dist/evolution/storage/repositories/SpanRepository.js.map +1 -0
- package/dist/evolution/storage/repositories/StatsRepository.d.ts +16 -0
- package/dist/evolution/storage/repositories/StatsRepository.d.ts.map +1 -0
- package/dist/evolution/storage/repositories/StatsRepository.js +271 -0
- package/dist/evolution/storage/repositories/StatsRepository.js.map +1 -0
- package/dist/evolution/storage/repositories/TaskRepository.d.ts +16 -0
- package/dist/evolution/storage/repositories/TaskRepository.d.ts.map +1 -0
- package/dist/evolution/storage/repositories/TaskRepository.js +93 -0
- package/dist/evolution/storage/repositories/TaskRepository.js.map +1 -0
- package/dist/evolution/storage/schema.d.ts +81 -0
- package/dist/evolution/storage/schema.d.ts.map +1 -0
- package/dist/evolution/storage/schema.js +241 -0
- package/dist/evolution/storage/schema.js.map +1 -0
- package/dist/evolution/storage/types.d.ts +402 -0
- package/dist/evolution/storage/types.d.ts.map +1 -0
- package/dist/evolution/storage/types.js +2 -0
- package/dist/evolution/storage/types.js.map +1 -0
- package/dist/evolution/storage/validation.d.ts +12 -0
- package/dist/evolution/storage/validation.d.ts.map +1 -0
- package/dist/evolution/storage/validation.js +88 -0
- package/dist/evolution/storage/validation.js.map +1 -0
- package/dist/evolution/types.d.ts +214 -0
- package/dist/evolution/types.d.ts.map +1 -0
- package/dist/evolution/types.js +2 -0
- package/dist/evolution/types.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/knowledge-graph/index.d.ts +27 -0
- package/dist/knowledge-graph/index.d.ts.map +1 -0
- package/dist/knowledge-graph/index.js +353 -0
- package/dist/knowledge-graph/index.js.map +1 -0
- package/dist/knowledge-graph/types.d.ts +37 -0
- package/dist/knowledge-graph/types.d.ts.map +1 -0
- package/dist/knowledge-graph/types.js +2 -0
- package/dist/knowledge-graph/types.js.map +1 -0
- package/dist/management/UninstallManager.d.ts +23 -0
- package/dist/management/UninstallManager.d.ts.map +1 -0
- package/dist/management/UninstallManager.js +186 -0
- package/dist/management/UninstallManager.js.map +1 -0
- package/dist/management/index.d.ts +3 -0
- package/dist/management/index.d.ts.map +1 -0
- package/dist/management/index.js +2 -0
- package/dist/management/index.js.map +1 -0
- package/dist/mcp/BuddyCommands.d.ts +13 -0
- package/dist/mcp/BuddyCommands.d.ts.map +1 -0
- package/dist/mcp/BuddyCommands.js +110 -0
- package/dist/mcp/BuddyCommands.js.map +1 -0
- package/dist/mcp/ClaudeMdReloader.d.ts +37 -0
- package/dist/mcp/ClaudeMdReloader.d.ts.map +1 -0
- package/dist/mcp/ClaudeMdReloader.js +92 -0
- package/dist/mcp/ClaudeMdReloader.js.map +1 -0
- package/dist/mcp/HumanInLoopUI.d.ts +23 -0
- package/dist/mcp/HumanInLoopUI.d.ts.map +1 -0
- package/dist/mcp/HumanInLoopUI.js +92 -0
- package/dist/mcp/HumanInLoopUI.js.map +1 -0
- package/dist/mcp/ServerInitializer.d.ts +47 -0
- package/dist/mcp/ServerInitializer.d.ts.map +1 -0
- package/dist/mcp/ServerInitializer.js +89 -0
- package/dist/mcp/ServerInitializer.js.map +1 -0
- package/dist/mcp/SessionBootstrapper.d.ts +11 -0
- package/dist/mcp/SessionBootstrapper.d.ts.map +1 -0
- package/dist/mcp/SessionBootstrapper.js +67 -0
- package/dist/mcp/SessionBootstrapper.js.map +1 -0
- package/dist/mcp/ToolDefinitions.d.ts +42 -0
- package/dist/mcp/ToolDefinitions.d.ts.map +1 -0
- package/dist/mcp/ToolDefinitions.js +234 -0
- package/dist/mcp/ToolDefinitions.js.map +1 -0
- package/dist/mcp/ToolRouter.d.ts +22 -0
- package/dist/mcp/ToolRouter.d.ts.map +1 -0
- package/dist/mcp/ToolRouter.js +102 -0
- package/dist/mcp/ToolRouter.js.map +1 -0
- package/dist/mcp/handlers/BuddyHandlers.d.ts +14 -0
- package/dist/mcp/handlers/BuddyHandlers.d.ts.map +1 -0
- package/dist/mcp/handlers/BuddyHandlers.js +152 -0
- package/dist/mcp/handlers/BuddyHandlers.js.map +1 -0
- package/dist/mcp/handlers/ResourceHandlers.d.ts +3 -0
- package/dist/mcp/handlers/ResourceHandlers.d.ts.map +1 -0
- package/dist/mcp/handlers/ResourceHandlers.js +86 -0
- package/dist/mcp/handlers/ResourceHandlers.js.map +1 -0
- package/dist/mcp/handlers/ToolHandlers.d.ts +52 -0
- package/dist/mcp/handlers/ToolHandlers.d.ts.map +1 -0
- package/dist/mcp/handlers/ToolHandlers.js +914 -0
- package/dist/mcp/handlers/ToolHandlers.js.map +1 -0
- package/dist/mcp/handlers/index.d.ts +4 -0
- package/dist/mcp/handlers/index.d.ts.map +1 -0
- package/dist/mcp/handlers/index.js +4 -0
- package/dist/mcp/handlers/index.js.map +1 -0
- package/dist/mcp/index.d.ts +5 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +3 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/schemas/OutputSchemas.d.ts +368 -0
- package/dist/mcp/schemas/OutputSchemas.d.ts.map +1 -0
- package/dist/mcp/schemas/OutputSchemas.js +191 -0
- package/dist/mcp/schemas/OutputSchemas.js.map +1 -0
- package/dist/mcp/server.d.ts +17 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +184 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/tools/add-observations.d.ts +48 -0
- package/dist/mcp/tools/add-observations.d.ts.map +1 -0
- package/dist/mcp/tools/add-observations.js +64 -0
- package/dist/mcp/tools/add-observations.js.map +1 -0
- package/dist/mcp/tools/buddy-do.d.ts +14 -0
- package/dist/mcp/tools/buddy-do.d.ts.map +1 -0
- package/dist/mcp/tools/buddy-do.js +77 -0
- package/dist/mcp/tools/buddy-do.js.map +1 -0
- package/dist/mcp/tools/buddy-help.d.ts +13 -0
- package/dist/mcp/tools/buddy-help.d.ts.map +1 -0
- package/dist/mcp/tools/buddy-help.js +52 -0
- package/dist/mcp/tools/buddy-help.js.map +1 -0
- package/dist/mcp/tools/buddy-remember.d.ts +15 -0
- package/dist/mcp/tools/buddy-remember.d.ts.map +1 -0
- package/dist/mcp/tools/buddy-remember.js +77 -0
- package/dist/mcp/tools/buddy-remember.js.map +1 -0
- package/dist/mcp/tools/create-entities.d.ts +57 -0
- package/dist/mcp/tools/create-entities.d.ts.map +1 -0
- package/dist/mcp/tools/create-entities.js +64 -0
- package/dist/mcp/tools/create-entities.js.map +1 -0
- package/dist/mcp/tools/create-relations.d.ts +60 -0
- package/dist/mcp/tools/create-relations.d.ts.map +1 -0
- package/dist/mcp/tools/create-relations.js +84 -0
- package/dist/mcp/tools/create-relations.js.map +1 -0
- package/dist/mcp/tools/health-check.d.ts +10 -0
- package/dist/mcp/tools/health-check.d.ts.map +1 -0
- package/dist/mcp/tools/health-check.js +37 -0
- package/dist/mcp/tools/health-check.js.map +1 -0
- package/dist/mcp/tools/recall-memory.d.ts +31 -0
- package/dist/mcp/tools/recall-memory.d.ts.map +1 -0
- package/dist/mcp/tools/recall-memory.js +31 -0
- package/dist/mcp/tools/recall-memory.js.map +1 -0
- package/dist/mcp/validation.d.ts +88 -0
- package/dist/mcp/validation.d.ts.map +1 -0
- package/dist/mcp/validation.js +119 -0
- package/dist/mcp/validation.js.map +1 -0
- package/dist/memory/ProjectAutoTracker.d.ts +36 -0
- package/dist/memory/ProjectAutoTracker.d.ts.map +1 -0
- package/dist/memory/ProjectAutoTracker.js +200 -0
- package/dist/memory/ProjectAutoTracker.js.map +1 -0
- package/dist/memory/ProjectMemoryCleanup.d.ts +17 -0
- package/dist/memory/ProjectMemoryCleanup.d.ts.map +1 -0
- package/dist/memory/ProjectMemoryCleanup.js +57 -0
- package/dist/memory/ProjectMemoryCleanup.js.map +1 -0
- package/dist/memory/ProjectMemoryManager.d.ts +15 -0
- package/dist/memory/ProjectMemoryManager.d.ts.map +1 -0
- package/dist/memory/ProjectMemoryManager.js +36 -0
- package/dist/memory/ProjectMemoryManager.js.map +1 -0
- package/dist/orchestrator/AgentRouter.d.ts +20 -0
- package/dist/orchestrator/AgentRouter.d.ts.map +1 -0
- package/dist/orchestrator/AgentRouter.js +274 -0
- package/dist/orchestrator/AgentRouter.js.map +1 -0
- package/dist/orchestrator/CostTracker.d.ts +25 -0
- package/dist/orchestrator/CostTracker.d.ts.map +1 -0
- package/dist/orchestrator/CostTracker.js +199 -0
- package/dist/orchestrator/CostTracker.js.map +1 -0
- package/dist/orchestrator/GlobalResourcePool.d.ts +59 -0
- package/dist/orchestrator/GlobalResourcePool.d.ts.map +1 -0
- package/dist/orchestrator/GlobalResourcePool.js +224 -0
- package/dist/orchestrator/GlobalResourcePool.js.map +1 -0
- package/dist/orchestrator/GlobalResourcePoolConstants.d.ts +22 -0
- package/dist/orchestrator/GlobalResourcePoolConstants.d.ts.map +1 -0
- package/dist/orchestrator/GlobalResourcePoolConstants.js +22 -0
- package/dist/orchestrator/GlobalResourcePoolConstants.js.map +1 -0
- package/dist/orchestrator/TaskAnalyzer.d.ts +15 -0
- package/dist/orchestrator/TaskAnalyzer.d.ts.map +1 -0
- package/dist/orchestrator/TaskAnalyzer.js +234 -0
- package/dist/orchestrator/TaskAnalyzer.js.map +1 -0
- package/dist/orchestrator/TaskAnalyzerConstants.d.ts +16 -0
- package/dist/orchestrator/TaskAnalyzerConstants.d.ts.map +1 -0
- package/dist/orchestrator/TaskAnalyzerConstants.js +16 -0
- package/dist/orchestrator/TaskAnalyzerConstants.js.map +1 -0
- package/dist/orchestrator/example.d.ts +2 -0
- package/dist/orchestrator/example.d.ts.map +1 -0
- package/dist/orchestrator/example.js +118 -0
- package/dist/orchestrator/example.js.map +1 -0
- package/dist/orchestrator/index.d.ts +82 -0
- package/dist/orchestrator/index.d.ts.map +1 -0
- package/dist/orchestrator/index.js +364 -0
- package/dist/orchestrator/index.js.map +1 -0
- package/dist/orchestrator/router.d.ts +48 -0
- package/dist/orchestrator/router.d.ts.map +1 -0
- package/dist/orchestrator/router.js +126 -0
- package/dist/orchestrator/router.js.map +1 -0
- package/dist/orchestrator/types.d.ts +60 -0
- package/dist/orchestrator/types.d.ts.map +1 -0
- package/dist/orchestrator/types.js +2 -0
- package/dist/orchestrator/types.js.map +1 -0
- package/dist/planning/PlanningEngine.d.ts +52 -0
- package/dist/planning/PlanningEngine.d.ts.map +1 -0
- package/dist/planning/PlanningEngine.js +271 -0
- package/dist/planning/PlanningEngine.js.map +1 -0
- package/dist/planning/TaskDecomposer.d.ts +32 -0
- package/dist/planning/TaskDecomposer.d.ts.map +1 -0
- package/dist/planning/TaskDecomposer.js +152 -0
- package/dist/planning/TaskDecomposer.js.map +1 -0
- package/dist/prompts/templates/PromptTemplates.d.ts +11 -0
- package/dist/prompts/templates/PromptTemplates.d.ts.map +1 -0
- package/dist/prompts/templates/PromptTemplates.js +942 -0
- package/dist/prompts/templates/PromptTemplates.js.map +1 -0
- package/dist/prompts/templates/index.d.ts +2 -0
- package/dist/prompts/templates/index.d.ts.map +1 -0
- package/dist/prompts/templates/index.js +2 -0
- package/dist/prompts/templates/index.js.map +1 -0
- package/dist/skills/SkillManager.d.ts +33 -0
- package/dist/skills/SkillManager.d.ts.map +1 -0
- package/dist/skills/SkillManager.js +153 -0
- package/dist/skills/SkillManager.js.map +1 -0
- package/dist/skills/index.d.ts +3 -0
- package/dist/skills/index.d.ts.map +1 -0
- package/dist/skills/index.js +2 -0
- package/dist/skills/index.js.map +1 -0
- package/dist/telemetry/TelemetryCollector.d.ts +19 -0
- package/dist/telemetry/TelemetryCollector.d.ts.map +1 -0
- package/dist/telemetry/TelemetryCollector.js +62 -0
- package/dist/telemetry/TelemetryCollector.js.map +1 -0
- package/dist/telemetry/TelemetryStore.d.ts +20 -0
- package/dist/telemetry/TelemetryStore.d.ts.map +1 -0
- package/dist/telemetry/TelemetryStore.js +126 -0
- package/dist/telemetry/TelemetryStore.js.map +1 -0
- package/dist/telemetry/index.d.ts +8 -0
- package/dist/telemetry/index.d.ts.map +1 -0
- package/dist/telemetry/index.js +33 -0
- package/dist/telemetry/index.js.map +1 -0
- package/dist/telemetry/sanitization.d.ts +6 -0
- package/dist/telemetry/sanitization.d.ts.map +1 -0
- package/dist/telemetry/sanitization.js +180 -0
- package/dist/telemetry/sanitization.js.map +1 -0
- package/dist/telemetry/types.d.ts +73 -0
- package/dist/telemetry/types.d.ts.map +1 -0
- package/dist/telemetry/types.js +16 -0
- package/dist/telemetry/types.js.map +1 -0
- package/dist/templates/git-education-templates.d.ts +26 -0
- package/dist/templates/git-education-templates.d.ts.map +1 -0
- package/dist/templates/git-education-templates.js +455 -0
- package/dist/templates/git-education-templates.js.map +1 -0
- package/dist/types/AgentClassification.d.ts +6 -0
- package/dist/types/AgentClassification.d.ts.map +1 -0
- package/dist/types/AgentClassification.js +7 -0
- package/dist/types/AgentClassification.js.map +1 -0
- package/dist/types/Checkpoint.d.ts +12 -0
- package/dist/types/Checkpoint.d.ts.map +1 -0
- package/dist/types/Checkpoint.js +13 -0
- package/dist/types/Checkpoint.js.map +1 -0
- package/dist/types/toonify.d.ts +91 -0
- package/dist/types/toonify.d.ts.map +1 -0
- package/dist/types/toonify.js +18 -0
- package/dist/types/toonify.js.map +1 -0
- package/dist/ui/AsciiProgressBar.d.ts +29 -0
- package/dist/ui/AsciiProgressBar.d.ts.map +1 -0
- package/dist/ui/AsciiProgressBar.js +131 -0
- package/dist/ui/AsciiProgressBar.js.map +1 -0
- package/dist/ui/AttributionManager.d.ts +19 -0
- package/dist/ui/AttributionManager.d.ts.map +1 -0
- package/dist/ui/AttributionManager.js +107 -0
- package/dist/ui/AttributionManager.js.map +1 -0
- package/dist/ui/Dashboard.d.ts +24 -0
- package/dist/ui/Dashboard.d.ts.map +1 -0
- package/dist/ui/Dashboard.js +135 -0
- package/dist/ui/Dashboard.js.map +1 -0
- package/dist/ui/LoadingIndicator.d.ts +53 -0
- package/dist/ui/LoadingIndicator.d.ts.map +1 -0
- package/dist/ui/LoadingIndicator.js +174 -0
- package/dist/ui/LoadingIndicator.js.map +1 -0
- package/dist/ui/MetricsStore.d.ts +15 -0
- package/dist/ui/MetricsStore.d.ts.map +1 -0
- package/dist/ui/MetricsStore.js +111 -0
- package/dist/ui/MetricsStore.js.map +1 -0
- package/dist/ui/ProgressRenderer.d.ts +24 -0
- package/dist/ui/ProgressRenderer.d.ts.map +1 -0
- package/dist/ui/ProgressRenderer.js +121 -0
- package/dist/ui/ProgressRenderer.js.map +1 -0
- package/dist/ui/ResponseFormatter.d.ts +42 -0
- package/dist/ui/ResponseFormatter.d.ts.map +1 -0
- package/dist/ui/ResponseFormatter.js +243 -0
- package/dist/ui/ResponseFormatter.js.map +1 -0
- package/dist/ui/UIEventBus.d.ts +38 -0
- package/dist/ui/UIEventBus.d.ts.map +1 -0
- package/dist/ui/UIEventBus.js +173 -0
- package/dist/ui/UIEventBus.js.map +1 -0
- package/dist/ui/index.d.ts +8 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +6 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/theme.d.ts +292 -0
- package/dist/ui/theme.d.ts.map +1 -0
- package/dist/ui/theme.js +153 -0
- package/dist/ui/theme.js.map +1 -0
- package/dist/ui/types.d.ts +146 -0
- package/dist/ui/types.d.ts.map +1 -0
- package/dist/ui/types.js +16 -0
- package/dist/ui/types.js.map +1 -0
- package/dist/utils/ILogger.d.ts +7 -0
- package/dist/utils/ILogger.d.ts.map +1 -0
- package/dist/utils/ILogger.js +2 -0
- package/dist/utils/ILogger.js.map +1 -0
- package/dist/utils/MinHeap.d.ts +15 -0
- package/dist/utils/MinHeap.d.ts.map +1 -0
- package/dist/utils/MinHeap.js +69 -0
- package/dist/utils/MinHeap.js.map +1 -0
- package/dist/utils/RateLimiter.d.ts +28 -0
- package/dist/utils/RateLimiter.d.ts.map +1 -0
- package/dist/utils/RateLimiter.js +115 -0
- package/dist/utils/RateLimiter.js.map +1 -0
- package/dist/utils/SecureKeyStore.d.ts +10 -0
- package/dist/utils/SecureKeyStore.d.ts.map +1 -0
- package/dist/utils/SecureKeyStore.js +32 -0
- package/dist/utils/SecureKeyStore.js.map +1 -0
- package/dist/utils/SystemResources.d.ts +40 -0
- package/dist/utils/SystemResources.d.ts.map +1 -0
- package/dist/utils/SystemResources.js +221 -0
- package/dist/utils/SystemResources.js.map +1 -0
- package/dist/utils/cost-tracker.d.ts +34 -0
- package/dist/utils/cost-tracker.d.ts.map +1 -0
- package/dist/utils/cost-tracker.js +92 -0
- package/dist/utils/cost-tracker.js.map +1 -0
- package/dist/utils/errorHandler.d.ts +28 -0
- package/dist/utils/errorHandler.d.ts.map +1 -0
- package/dist/utils/errorHandler.js +206 -0
- package/dist/utils/errorHandler.js.map +1 -0
- package/dist/utils/json.d.ts +13 -0
- package/dist/utils/json.d.ts.map +1 -0
- package/dist/utils/json.js +85 -0
- package/dist/utils/json.js.map +1 -0
- package/dist/utils/logger.d.ts +16 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +57 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/lru-cache.d.ts +40 -0
- package/dist/utils/lru-cache.d.ts.map +1 -0
- package/dist/utils/lru-cache.js +209 -0
- package/dist/utils/lru-cache.js.map +1 -0
- package/dist/utils/memory.d.ts +20 -0
- package/dist/utils/memory.d.ts.map +1 -0
- package/dist/utils/memory.js +53 -0
- package/dist/utils/memory.js.map +1 -0
- package/dist/utils/money.d.ts +10 -0
- package/dist/utils/money.d.ts.map +1 -0
- package/dist/utils/money.js +25 -0
- package/dist/utils/money.js.map +1 -0
- package/dist/utils/pathValidation.d.ts +2 -0
- package/dist/utils/pathValidation.d.ts.map +1 -0
- package/dist/utils/pathValidation.js +62 -0
- package/dist/utils/pathValidation.js.map +1 -0
- package/dist/utils/paths.d.ts +4 -0
- package/dist/utils/paths.d.ts.map +1 -0
- package/dist/utils/paths.js +28 -0
- package/dist/utils/paths.js.map +1 -0
- package/dist/utils/requestId.d.ts +4 -0
- package/dist/utils/requestId.d.ts.map +1 -0
- package/dist/utils/requestId.js +17 -0
- package/dist/utils/requestId.js.map +1 -0
- package/dist/utils/retry.d.ts +20 -0
- package/dist/utils/retry.d.ts.map +1 -0
- package/dist/utils/retry.js +226 -0
- package/dist/utils/retry.js.map +1 -0
- package/dist/utils/toonify-adapter.d.ts +77 -0
- package/dist/utils/toonify-adapter.d.ts.map +1 -0
- package/dist/utils/toonify-adapter.js +283 -0
- package/dist/utils/toonify-adapter.js.map +1 -0
- package/dist/utils/validation.d.ts +7 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +62 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +116 -0
- package/plugin.json +21 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { Orchestrator } from './index.js';
|
|
2
|
+
import { toDollars, toMicroDollars } from '../utils/money.js';
|
|
3
|
+
import { logger } from '../utils/logger.js';
|
|
4
|
+
const MICRO_COST_DECIMALS = 6;
|
|
5
|
+
const BUDGET_DECIMALS = 2;
|
|
6
|
+
const TEST_COST_DECIMALS = 3;
|
|
7
|
+
async function main() {
|
|
8
|
+
logger.info('šÆ Agent Orchestrator Examples\n');
|
|
9
|
+
logger.info('ā'.repeat(60) + '\n');
|
|
10
|
+
const orchestrator = new Orchestrator();
|
|
11
|
+
logger.info('š Example 1: Simple Task Analysis\n');
|
|
12
|
+
const simpleTask = {
|
|
13
|
+
id: 'task-simple',
|
|
14
|
+
description: 'Format this JSON object: {"name":"test","value":123}',
|
|
15
|
+
};
|
|
16
|
+
const simpleAnalysis = await orchestrator.analyzeTask(simpleTask);
|
|
17
|
+
logger.info(`Task: ${simpleTask.description}`);
|
|
18
|
+
logger.info(`Complexity: ${simpleAnalysis.analysis.complexity}`);
|
|
19
|
+
logger.info(`Selected Agent: ${simpleAnalysis.routing.selectedAgent}`);
|
|
20
|
+
logger.info(`Model: ${simpleAnalysis.routing.modelName}`);
|
|
21
|
+
logger.info(`Estimated Cost: $${toDollars(simpleAnalysis.routing.estimatedCost).toFixed(MICRO_COST_DECIMALS)}`);
|
|
22
|
+
logger.info(`Reasoning: ${simpleAnalysis.analysis.reasoning}`);
|
|
23
|
+
logger.info('\n' + 'ā'.repeat(60) + '\n');
|
|
24
|
+
logger.info('š Example 2: Complex Task Analysis\n');
|
|
25
|
+
const complexTask = {
|
|
26
|
+
id: 'task-complex',
|
|
27
|
+
description: 'Analyze the system architecture of a microservices-based e-commerce platform ' +
|
|
28
|
+
'and provide comprehensive recommendations for improving scalability, security, ' +
|
|
29
|
+
'performance, and maintainability. Include detailed database schema design.',
|
|
30
|
+
};
|
|
31
|
+
const complexAnalysis = await orchestrator.analyzeTask(complexTask);
|
|
32
|
+
logger.info(`Task: ${complexTask.description.substring(0, 80)}...`);
|
|
33
|
+
logger.info(`Complexity: ${complexAnalysis.analysis.complexity}`);
|
|
34
|
+
logger.info(`Selected Agent: ${complexAnalysis.routing.selectedAgent}`);
|
|
35
|
+
logger.info(`Model: ${complexAnalysis.routing.modelName}`);
|
|
36
|
+
logger.info(`Estimated Cost: $${toDollars(complexAnalysis.routing.estimatedCost).toFixed(MICRO_COST_DECIMALS)}`);
|
|
37
|
+
logger.info(`Reasoning: ${complexAnalysis.analysis.reasoning}`);
|
|
38
|
+
logger.info('\n' + 'ā'.repeat(60) + '\n');
|
|
39
|
+
logger.info('š Example 3: Medium Task Analysis\n');
|
|
40
|
+
const mediumTask = {
|
|
41
|
+
id: 'task-medium',
|
|
42
|
+
description: 'Create user authentication service',
|
|
43
|
+
};
|
|
44
|
+
const mediumAnalysis = await orchestrator.analyzeTask(mediumTask);
|
|
45
|
+
logger.info(`Task: ${mediumTask.description}`);
|
|
46
|
+
logger.info(`Complexity: ${mediumAnalysis.analysis.complexity}`);
|
|
47
|
+
logger.info(`Selected Agent: ${mediumAnalysis.routing.selectedAgent}`);
|
|
48
|
+
logger.info(`Model: ${mediumAnalysis.routing.modelName}`);
|
|
49
|
+
logger.info(`Estimated Cost: $${toDollars(mediumAnalysis.routing.estimatedCost).toFixed(MICRO_COST_DECIMALS)}`);
|
|
50
|
+
logger.info(`Reasoning: ${mediumAnalysis.analysis.reasoning}`);
|
|
51
|
+
logger.info('\n' + 'ā'.repeat(60) + '\n');
|
|
52
|
+
logger.info('š Example 4: Batch Task Analysis\n');
|
|
53
|
+
const batchTasks = [
|
|
54
|
+
{ id: 'batch-1', description: 'Format JSON' },
|
|
55
|
+
{ id: 'batch-2', description: 'Validate email format' },
|
|
56
|
+
{ id: 'batch-3', description: 'Write unit test' },
|
|
57
|
+
{ id: 'batch-4', description: 'Refactor authentication module' },
|
|
58
|
+
{
|
|
59
|
+
id: 'batch-5',
|
|
60
|
+
description: 'Design comprehensive database schema for multi-tenant SaaS platform',
|
|
61
|
+
},
|
|
62
|
+
];
|
|
63
|
+
const router = orchestrator.getRouter();
|
|
64
|
+
const batchAnalyses = await router.getAnalyzer().analyzeBatch(batchTasks);
|
|
65
|
+
const batchRoutings = await router.getRouter().routeBatch(batchAnalyses);
|
|
66
|
+
logger.info(`Analyzing ${batchTasks.length} tasks:\n`);
|
|
67
|
+
batchRoutings.forEach((routing, index) => {
|
|
68
|
+
const task = batchTasks[index];
|
|
69
|
+
logger.info(` ${index + 1}. ${task.description.substring(0, 50)}...`);
|
|
70
|
+
logger.info(` Agent: ${routing.selectedAgent}`);
|
|
71
|
+
logger.info(` Cost: $${toDollars(routing.estimatedCost).toFixed(MICRO_COST_DECIMALS)}\n`);
|
|
72
|
+
});
|
|
73
|
+
const totalEstimatedCost = batchRoutings.reduce((sum, r) => sum + r.estimatedCost, 0);
|
|
74
|
+
logger.info(`Total Estimated Cost: $${toDollars(totalEstimatedCost).toFixed(MICRO_COST_DECIMALS)}`);
|
|
75
|
+
logger.info('\n' + 'ā'.repeat(60) + '\n');
|
|
76
|
+
logger.info('š Example 5: System Status Check\n');
|
|
77
|
+
const status = await orchestrator.getSystemStatus();
|
|
78
|
+
logger.info('š» System Resources:');
|
|
79
|
+
logger.info(` Total Memory: ${status.resources.totalMemoryMB}MB`);
|
|
80
|
+
logger.info(` Available Memory: ${status.resources.availableMemoryMB}MB`);
|
|
81
|
+
logger.info(` Memory Usage: ${status.resources.memoryUsagePercent}%`);
|
|
82
|
+
logger.info(` CPU Usage: ${status.resources.cpuUsagePercent}%`);
|
|
83
|
+
logger.info('\nš° Cost Statistics:');
|
|
84
|
+
logger.info(` Total Tasks: ${status.costStats.taskCount}`);
|
|
85
|
+
logger.info(` Total Cost: $${toDollars(status.costStats.totalCost).toFixed(MICRO_COST_DECIMALS)}`);
|
|
86
|
+
logger.info(` Monthly Spend: $${toDollars(status.costStats.monthlySpend).toFixed(MICRO_COST_DECIMALS)}`);
|
|
87
|
+
logger.info(` Remaining Budget: $${toDollars(status.costStats.remainingBudget).toFixed(BUDGET_DECIMALS)}`);
|
|
88
|
+
logger.info(`\nš” Recommendation: ${status.recommendation}`);
|
|
89
|
+
logger.info('\n' + 'ā'.repeat(60) + '\n');
|
|
90
|
+
logger.info('š Example 6: Cost Tracking Simulation\n');
|
|
91
|
+
const costTracker = router.getCostTracker();
|
|
92
|
+
logger.info('Simulating task executions...\n');
|
|
93
|
+
costTracker.recordCost('sim-1', 'claude-haiku-4-20250514', 1000, 2000);
|
|
94
|
+
logger.info('ā
Task 1: Haiku - 1000 input, 2000 output tokens');
|
|
95
|
+
costTracker.recordCost('sim-2', 'claude-sonnet-4-5-20250929', 5000, 10000);
|
|
96
|
+
logger.info('ā
Task 2: Sonnet - 5000 input, 10000 output tokens');
|
|
97
|
+
costTracker.recordCost('sim-3', 'claude-opus-4-5-20251101', 3000, 8000);
|
|
98
|
+
logger.info('ā
Task 3: Opus - 3000 input, 8000 output tokens');
|
|
99
|
+
logger.info('\n' + costTracker.generateReport());
|
|
100
|
+
logger.info('\n' + 'ā'.repeat(60) + '\n');
|
|
101
|
+
logger.info('š Example 7: Budget Check\n');
|
|
102
|
+
const testCosts = [
|
|
103
|
+
{ description: 'Small task', cost: 0.001 },
|
|
104
|
+
{ description: 'Medium task', cost: 0.05 },
|
|
105
|
+
{ description: 'Large task', cost: 1.0 },
|
|
106
|
+
{ description: 'Huge task', cost: 10.0 },
|
|
107
|
+
];
|
|
108
|
+
testCosts.forEach(({ description, cost }) => {
|
|
109
|
+
const costInMicroDollars = toMicroDollars(cost);
|
|
110
|
+
const withinBudget = costTracker.isWithinBudget(costInMicroDollars);
|
|
111
|
+
const icon = withinBudget ? 'ā
' : 'ā';
|
|
112
|
+
logger.info(`${icon} ${description} ($${cost.toFixed(TEST_COST_DECIMALS)}): ${withinBudget ? 'Approved' : 'Blocked'}`);
|
|
113
|
+
});
|
|
114
|
+
logger.info('\n' + 'ā'.repeat(60) + '\n');
|
|
115
|
+
logger.info('⨠Examples completed!\n');
|
|
116
|
+
}
|
|
117
|
+
main().catch((error) => logger.error('Example failed:', error));
|
|
118
|
+
//# sourceMappingURL=example.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"example.js","sourceRoot":"","sources":["../../src/orchestrator/example.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { Task, TaskAnalysis, RoutingDecision } from './types.js';
|
|
2
|
+
import { Router } from './router.js';
|
|
3
|
+
import { GlobalResourcePool } from './GlobalResourcePool.js';
|
|
4
|
+
import { KnowledgeAgent } from '../agents/knowledge/index.js';
|
|
5
|
+
import { BackgroundExecutor } from '../core/BackgroundExecutor.js';
|
|
6
|
+
import { ResourceMonitor } from '../core/ResourceMonitor.js';
|
|
7
|
+
import { ExecutionConfig, Progress, BackgroundTask } from '../core/types.js';
|
|
8
|
+
export declare class Orchestrator {
|
|
9
|
+
private router;
|
|
10
|
+
private anthropic;
|
|
11
|
+
private orchestratorId;
|
|
12
|
+
private resourcePool;
|
|
13
|
+
private knowledge;
|
|
14
|
+
private backgroundExecutor;
|
|
15
|
+
private resourceMonitor;
|
|
16
|
+
constructor(options?: {
|
|
17
|
+
knowledgeDbPath?: string;
|
|
18
|
+
});
|
|
19
|
+
initialize(): Promise<void>;
|
|
20
|
+
executeTask(task: Task): Promise<{
|
|
21
|
+
task: Task;
|
|
22
|
+
analysis: TaskAnalysis;
|
|
23
|
+
routing: RoutingDecision;
|
|
24
|
+
response: string;
|
|
25
|
+
cost: number;
|
|
26
|
+
executionTimeMs: number;
|
|
27
|
+
}>;
|
|
28
|
+
executeBatch(tasks: Task[], mode?: 'sequential' | 'parallel', options?: {
|
|
29
|
+
maxConcurrent?: number;
|
|
30
|
+
forceSequential?: boolean;
|
|
31
|
+
}): Promise<{
|
|
32
|
+
results: Awaited<ReturnType<Orchestrator['executeTask']>>[];
|
|
33
|
+
totalCost: number;
|
|
34
|
+
totalTimeMs: number;
|
|
35
|
+
}>;
|
|
36
|
+
private callClaude;
|
|
37
|
+
getCostReport(): string;
|
|
38
|
+
getSystemStatus(): Promise<{
|
|
39
|
+
resources: Awaited<ReturnType<Router['getSystemStatus']>>['resources'];
|
|
40
|
+
costStats: Awaited<ReturnType<Router['getSystemStatus']>>['costStats'];
|
|
41
|
+
recommendation: string;
|
|
42
|
+
}>;
|
|
43
|
+
exportCostData(): string;
|
|
44
|
+
analyzeTask(task: Task): Promise<{
|
|
45
|
+
analysis: TaskAnalysis;
|
|
46
|
+
routing: RoutingDecision;
|
|
47
|
+
}>;
|
|
48
|
+
private executeTasksInParallel;
|
|
49
|
+
getResourcePoolStatus(): Promise<ReturnType<GlobalResourcePool['getStatus']>>;
|
|
50
|
+
getResourcePoolReport(): Promise<string>;
|
|
51
|
+
getOrchestratorId(): string;
|
|
52
|
+
getRouter(): Router;
|
|
53
|
+
getKnowledgeAgent(): KnowledgeAgent;
|
|
54
|
+
getDecisionHistory(): Promise<Awaited<ReturnType<KnowledgeAgent['getDecisions']>>>;
|
|
55
|
+
getLessonsLearned(): Promise<Awaited<ReturnType<KnowledgeAgent['getLessonsLearned']>>>;
|
|
56
|
+
recordBestPractice(practice: {
|
|
57
|
+
name: string;
|
|
58
|
+
description: string;
|
|
59
|
+
why: string;
|
|
60
|
+
example?: string;
|
|
61
|
+
tags?: string[];
|
|
62
|
+
}): Promise<void>;
|
|
63
|
+
getKnowledgeStats(): Promise<Awaited<ReturnType<KnowledgeAgent['getStats']>>>;
|
|
64
|
+
executeTaskWithMode(task: Task, config: ExecutionConfig): Promise<{
|
|
65
|
+
taskId?: string;
|
|
66
|
+
result?: Awaited<ReturnType<Orchestrator['executeTask']>>;
|
|
67
|
+
}>;
|
|
68
|
+
getBackgroundTaskProgress(taskId: string): Promise<Progress>;
|
|
69
|
+
getBackgroundTask(taskId: string): BackgroundTask | undefined;
|
|
70
|
+
cancelBackgroundTask(taskId: string): Promise<void>;
|
|
71
|
+
getAllBackgroundTasks(): BackgroundTask[];
|
|
72
|
+
getBackgroundStats(): ReturnType<BackgroundExecutor['getStats']>;
|
|
73
|
+
clearFinishedBackgroundTasks(): number;
|
|
74
|
+
getResourceStatus(): ReturnType<ResourceMonitor['getCurrentResources']>;
|
|
75
|
+
close(): void;
|
|
76
|
+
}
|
|
77
|
+
export * from './types.js';
|
|
78
|
+
export { TaskAnalyzer } from './TaskAnalyzer.js';
|
|
79
|
+
export { AgentRouter } from './AgentRouter.js';
|
|
80
|
+
export { CostTracker } from './CostTracker.js';
|
|
81
|
+
export { Router } from './router.js';
|
|
82
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,364 @@
|
|
|
1
|
+
import Anthropic from '@anthropic-ai/sdk';
|
|
2
|
+
import { Router } from './router.js';
|
|
3
|
+
import { appConfig } from '../config/index.js';
|
|
4
|
+
import { GlobalResourcePool } from './GlobalResourcePool.js';
|
|
5
|
+
import { randomBytes } from 'crypto';
|
|
6
|
+
import { KnowledgeAgent } from '../agents/knowledge/index.js';
|
|
7
|
+
import { join } from 'path';
|
|
8
|
+
import { BackgroundExecutor } from '../core/BackgroundExecutor.js';
|
|
9
|
+
import { ResourceMonitor } from '../core/ResourceMonitor.js';
|
|
10
|
+
import { ValidationError } from '../errors/index.js';
|
|
11
|
+
import { logger } from '../utils/logger.js';
|
|
12
|
+
import { formatMoney } from '../utils/money.js';
|
|
13
|
+
import { validateDatabasePath } from '../utils/pathValidation.js';
|
|
14
|
+
export class Orchestrator {
|
|
15
|
+
router;
|
|
16
|
+
anthropic;
|
|
17
|
+
orchestratorId;
|
|
18
|
+
resourcePool;
|
|
19
|
+
knowledge;
|
|
20
|
+
backgroundExecutor;
|
|
21
|
+
resourceMonitor;
|
|
22
|
+
constructor(options) {
|
|
23
|
+
this.router = new Router();
|
|
24
|
+
this.anthropic = new Anthropic({
|
|
25
|
+
apiKey: appConfig.claude.apiKey,
|
|
26
|
+
});
|
|
27
|
+
this.orchestratorId = `orch-${randomBytes(4).toString('hex')}`;
|
|
28
|
+
this.resourcePool = GlobalResourcePool.getInstance();
|
|
29
|
+
const rawDbPath = options?.knowledgeDbPath || join(process.cwd(), 'data', 'knowledge-graph.db');
|
|
30
|
+
const dbPath = validateDatabasePath(rawDbPath);
|
|
31
|
+
this.knowledge = new KnowledgeAgent(dbPath);
|
|
32
|
+
this.resourceMonitor = new ResourceMonitor();
|
|
33
|
+
this.backgroundExecutor = new BackgroundExecutor(this.resourceMonitor);
|
|
34
|
+
logger.info(`[Orchestrator] Initialized with ID: ${this.orchestratorId}`);
|
|
35
|
+
}
|
|
36
|
+
async initialize() {
|
|
37
|
+
await this.knowledge.initialize();
|
|
38
|
+
}
|
|
39
|
+
async executeTask(task) {
|
|
40
|
+
const startTime = Date.now();
|
|
41
|
+
try {
|
|
42
|
+
const similarTasks = await this.knowledge.findSimilar(task.description, 'feature');
|
|
43
|
+
if (similarTasks.length > 0) {
|
|
44
|
+
logger.info(`š” Found ${similarTasks.length} similar past experiences`);
|
|
45
|
+
similarTasks.slice(0, 2).forEach((t, i) => {
|
|
46
|
+
logger.info(` ${i + 1}. ${t.name}`);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
const { analysis, routing, approved, message } = await this.router.routeTask(task);
|
|
50
|
+
if (!approved) {
|
|
51
|
+
throw new ValidationError(`Task execution blocked: ${message}`, {
|
|
52
|
+
component: 'Orchestrator',
|
|
53
|
+
method: 'executeTask',
|
|
54
|
+
taskId: task.id,
|
|
55
|
+
taskDescription: task.description,
|
|
56
|
+
blockReason: message,
|
|
57
|
+
constraint: 'task must be approved by router',
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
logger.info(`\nšÆ Executing task: ${task.id}`);
|
|
61
|
+
logger.info(`š Complexity: ${analysis.complexity}`);
|
|
62
|
+
const capabilitySummary = analysis.requiredCapabilities.length > 0
|
|
63
|
+
? analysis.requiredCapabilities.join(', ')
|
|
64
|
+
: 'general';
|
|
65
|
+
logger.info(`š§ Capabilities: ${capabilitySummary}`);
|
|
66
|
+
logger.info(`š° Estimated cost: ${formatMoney(routing.estimatedCost)}\n`);
|
|
67
|
+
await this.knowledge.recordDecision({
|
|
68
|
+
name: `Task ${task.id} Routing Decision`,
|
|
69
|
+
reason: routing.reasoning,
|
|
70
|
+
alternatives: analysis.requiredCapabilities,
|
|
71
|
+
tradeoffs: [`Estimated cost: ${formatMoney(routing.estimatedCost)}`, `Complexity: ${analysis.complexity}`],
|
|
72
|
+
outcome: `Selected capabilities: ${capabilitySummary}`,
|
|
73
|
+
tags: ['routing', 'orchestrator', task.id]
|
|
74
|
+
});
|
|
75
|
+
const modelToUse = routing.enhancedPrompt.suggestedModel || 'claude-sonnet-4-5-20250929';
|
|
76
|
+
const response = await this.callClaude(modelToUse, task.description);
|
|
77
|
+
const actualCost = this.router.recordTaskCost(task.id, modelToUse, response.usage.input_tokens, response.usage.output_tokens);
|
|
78
|
+
const executionTimeMs = Date.now() - startTime;
|
|
79
|
+
logger.info(`ā
Task completed in ${executionTimeMs}ms`);
|
|
80
|
+
logger.info(`š° Actual cost: ${formatMoney(actualCost)}\n`);
|
|
81
|
+
await this.knowledge.recordFeature({
|
|
82
|
+
name: `Task ${task.id} Execution`,
|
|
83
|
+
description: task.description.substring(0, 100),
|
|
84
|
+
implementation: `Capabilities: ${capabilitySummary}, Model: ${modelToUse}, Tokens: ${response.usage.input_tokens + response.usage.output_tokens}`,
|
|
85
|
+
challenges: actualCost > routing.estimatedCost ? ['Cost exceeded estimate'] : undefined,
|
|
86
|
+
tags: ['task-execution', task.id]
|
|
87
|
+
});
|
|
88
|
+
return {
|
|
89
|
+
task,
|
|
90
|
+
analysis,
|
|
91
|
+
routing,
|
|
92
|
+
response: response.content[0].type === 'text' ? response.content[0].text : '',
|
|
93
|
+
cost: actualCost,
|
|
94
|
+
executionTimeMs,
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
catch (error) {
|
|
98
|
+
const executionTimeMs = Date.now() - startTime;
|
|
99
|
+
await this.knowledge.recordBugFix({
|
|
100
|
+
name: `Task ${task.id} Error`,
|
|
101
|
+
rootCause: error instanceof Error ? error.message : String(error),
|
|
102
|
+
solution: 'Task execution failed, needs investigation',
|
|
103
|
+
prevention: 'Review task requirements and system constraints',
|
|
104
|
+
tags: ['error', 'task-failure', task.id]
|
|
105
|
+
});
|
|
106
|
+
logger.error(`ā Task failed after ${executionTimeMs}ms:`, error);
|
|
107
|
+
throw error;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
async executeBatch(tasks, mode = 'sequential', options) {
|
|
111
|
+
const startTime = Date.now();
|
|
112
|
+
const hasE2E = tasks.some(task => task.description?.toLowerCase().includes('e2e') ||
|
|
113
|
+
task.description?.toLowerCase().includes('end-to-end'));
|
|
114
|
+
if (hasE2E) {
|
|
115
|
+
logger.info('ā ļø Detected E2E tests - forcing sequential execution');
|
|
116
|
+
mode = 'sequential';
|
|
117
|
+
}
|
|
118
|
+
if (options?.forceSequential) {
|
|
119
|
+
mode = 'sequential';
|
|
120
|
+
}
|
|
121
|
+
logger.info(`\nš Executing ${tasks.length} tasks in ${mode} mode...\n`);
|
|
122
|
+
let results;
|
|
123
|
+
if (mode === 'parallel') {
|
|
124
|
+
const maxConcurrent = options?.maxConcurrent ?? 2;
|
|
125
|
+
results = await this.executeTasksInParallel(tasks, maxConcurrent);
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
results = [];
|
|
129
|
+
for (const task of tasks) {
|
|
130
|
+
const result = await this.executeTask(task);
|
|
131
|
+
results.push(result);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
const totalCost = results.reduce((sum, r) => sum + r.cost, 0);
|
|
135
|
+
const totalTimeMs = Date.now() - startTime;
|
|
136
|
+
logger.info(`\nā
Batch completed`);
|
|
137
|
+
logger.info(`š Tasks: ${results.length}`);
|
|
138
|
+
logger.info(`š° Total cost: $${totalCost.toFixed(6)}`);
|
|
139
|
+
logger.info(`ā±ļø Total time: ${totalTimeMs}ms\n`);
|
|
140
|
+
return {
|
|
141
|
+
results,
|
|
142
|
+
totalCost,
|
|
143
|
+
totalTimeMs,
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
async callClaude(model, prompt) {
|
|
147
|
+
const message = await this.anthropic.messages.create({
|
|
148
|
+
model,
|
|
149
|
+
max_tokens: 4096,
|
|
150
|
+
messages: [
|
|
151
|
+
{
|
|
152
|
+
role: 'user',
|
|
153
|
+
content: prompt,
|
|
154
|
+
},
|
|
155
|
+
],
|
|
156
|
+
});
|
|
157
|
+
return message;
|
|
158
|
+
}
|
|
159
|
+
getCostReport() {
|
|
160
|
+
return this.router.getCostReport();
|
|
161
|
+
}
|
|
162
|
+
async getSystemStatus() {
|
|
163
|
+
return this.router.getSystemStatus();
|
|
164
|
+
}
|
|
165
|
+
exportCostData() {
|
|
166
|
+
return this.router.getCostTracker().exportData();
|
|
167
|
+
}
|
|
168
|
+
async analyzeTask(task) {
|
|
169
|
+
const { analysis, routing } = await this.router.routeTask(task);
|
|
170
|
+
return { analysis, routing };
|
|
171
|
+
}
|
|
172
|
+
async executeTasksInParallel(tasks, maxConcurrent) {
|
|
173
|
+
const results = [];
|
|
174
|
+
const executing = [];
|
|
175
|
+
for (const task of tasks) {
|
|
176
|
+
const promise = this.executeTask(task).then(result => {
|
|
177
|
+
results.push(result);
|
|
178
|
+
const index = executing.indexOf(promise);
|
|
179
|
+
if (index > -1) {
|
|
180
|
+
executing.splice(index, 1);
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
executing.push(promise);
|
|
184
|
+
if (executing.length >= maxConcurrent) {
|
|
185
|
+
await Promise.race(executing);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
await Promise.all(executing);
|
|
189
|
+
return results;
|
|
190
|
+
}
|
|
191
|
+
async getResourcePoolStatus() {
|
|
192
|
+
return this.resourcePool.getStatus();
|
|
193
|
+
}
|
|
194
|
+
async getResourcePoolReport() {
|
|
195
|
+
return this.resourcePool.generateReport();
|
|
196
|
+
}
|
|
197
|
+
getOrchestratorId() {
|
|
198
|
+
return this.orchestratorId;
|
|
199
|
+
}
|
|
200
|
+
getRouter() {
|
|
201
|
+
return this.router;
|
|
202
|
+
}
|
|
203
|
+
getKnowledgeAgent() {
|
|
204
|
+
return this.knowledge;
|
|
205
|
+
}
|
|
206
|
+
async getDecisionHistory() {
|
|
207
|
+
return this.knowledge.getDecisions();
|
|
208
|
+
}
|
|
209
|
+
async getLessonsLearned() {
|
|
210
|
+
return this.knowledge.getLessonsLearned();
|
|
211
|
+
}
|
|
212
|
+
async recordBestPractice(practice) {
|
|
213
|
+
await this.knowledge.recordBestPractice(practice);
|
|
214
|
+
}
|
|
215
|
+
async getKnowledgeStats() {
|
|
216
|
+
return this.knowledge.getStats();
|
|
217
|
+
}
|
|
218
|
+
async executeTaskWithMode(task, config) {
|
|
219
|
+
if (config.mode === 'background') {
|
|
220
|
+
const wrappedTask = async (context) => {
|
|
221
|
+
const result = await this.executeTask(task);
|
|
222
|
+
context.updateProgress(0.3, 'routing');
|
|
223
|
+
context.updateProgress(0.6, 'executing');
|
|
224
|
+
context.updateProgress(0.9, 'finalizing');
|
|
225
|
+
context.updateProgress(1.0, 'completed');
|
|
226
|
+
return result;
|
|
227
|
+
};
|
|
228
|
+
try {
|
|
229
|
+
const taskId = await this.backgroundExecutor.executeTask(wrappedTask, config);
|
|
230
|
+
return { taskId };
|
|
231
|
+
}
|
|
232
|
+
catch (error) {
|
|
233
|
+
logger.error('[Orchestrator] Failed to submit background task:', {
|
|
234
|
+
taskId: task.id,
|
|
235
|
+
taskDescription: task.description,
|
|
236
|
+
error: error instanceof Error ? error.message : String(error),
|
|
237
|
+
});
|
|
238
|
+
throw error;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
else if (config.mode === 'foreground') {
|
|
242
|
+
const result = await this.executeTask(task);
|
|
243
|
+
return { result };
|
|
244
|
+
}
|
|
245
|
+
else {
|
|
246
|
+
const { analysis } = await this.analyzeTask(task);
|
|
247
|
+
if (analysis.complexity === 'complex') {
|
|
248
|
+
const backgroundConfig = {
|
|
249
|
+
...config,
|
|
250
|
+
mode: 'background',
|
|
251
|
+
};
|
|
252
|
+
try {
|
|
253
|
+
const taskId = await this.backgroundExecutor.executeTask(async (context) => this.executeTask(task), backgroundConfig);
|
|
254
|
+
return { taskId };
|
|
255
|
+
}
|
|
256
|
+
catch (error) {
|
|
257
|
+
logger.error('[Orchestrator] Failed to submit complex task to background:', {
|
|
258
|
+
taskId: task.id,
|
|
259
|
+
taskDescription: task.description,
|
|
260
|
+
complexity: analysis.complexity,
|
|
261
|
+
error: error instanceof Error ? error.message : String(error),
|
|
262
|
+
});
|
|
263
|
+
throw error;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
else {
|
|
267
|
+
const result = await this.executeTask(task);
|
|
268
|
+
return { result };
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
async getBackgroundTaskProgress(taskId) {
|
|
273
|
+
return this.backgroundExecutor.getProgress(taskId);
|
|
274
|
+
}
|
|
275
|
+
getBackgroundTask(taskId) {
|
|
276
|
+
return this.backgroundExecutor.getTask(taskId);
|
|
277
|
+
}
|
|
278
|
+
async cancelBackgroundTask(taskId) {
|
|
279
|
+
return this.backgroundExecutor.cancelTask(taskId);
|
|
280
|
+
}
|
|
281
|
+
getAllBackgroundTasks() {
|
|
282
|
+
return this.backgroundExecutor.getAllTasks();
|
|
283
|
+
}
|
|
284
|
+
getBackgroundStats() {
|
|
285
|
+
return this.backgroundExecutor.getStats();
|
|
286
|
+
}
|
|
287
|
+
clearFinishedBackgroundTasks() {
|
|
288
|
+
return this.backgroundExecutor.clearFinishedTasks();
|
|
289
|
+
}
|
|
290
|
+
getResourceStatus() {
|
|
291
|
+
return this.resourceMonitor.getCurrentResources();
|
|
292
|
+
}
|
|
293
|
+
close() {
|
|
294
|
+
const runningTasks = this.backgroundExecutor.getTasksByStatus('running');
|
|
295
|
+
for (const task of runningTasks) {
|
|
296
|
+
this.backgroundExecutor.cancelTask(task.taskId).catch(error => {
|
|
297
|
+
logger.warn(`Failed to cancel task ${task.taskId} during shutdown:`, error);
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
try {
|
|
301
|
+
this.resourceMonitor.dispose();
|
|
302
|
+
}
|
|
303
|
+
catch (error) {
|
|
304
|
+
logger.warn('Failed to dispose ResourceMonitor:', error);
|
|
305
|
+
}
|
|
306
|
+
try {
|
|
307
|
+
this.resourcePool.releaseE2ESlot(this.orchestratorId);
|
|
308
|
+
}
|
|
309
|
+
catch (error) {
|
|
310
|
+
logger.warn(`Failed to release E2E slot for ${this.orchestratorId}:`, error);
|
|
311
|
+
}
|
|
312
|
+
try {
|
|
313
|
+
this.knowledge.close();
|
|
314
|
+
}
|
|
315
|
+
catch (error) {
|
|
316
|
+
logger.warn('Failed to close KnowledgeAgent:', error);
|
|
317
|
+
}
|
|
318
|
+
logger.info(`Orchestrator ${this.orchestratorId} shutdown complete`);
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
export * from './types.js';
|
|
322
|
+
export { TaskAnalyzer } from './TaskAnalyzer.js';
|
|
323
|
+
export { AgentRouter } from './AgentRouter.js';
|
|
324
|
+
export { CostTracker } from './CostTracker.js';
|
|
325
|
+
export { Router } from './router.js';
|
|
326
|
+
if (import.meta.url === `file://${process.argv[1]}`) {
|
|
327
|
+
const orchestrator = new Orchestrator();
|
|
328
|
+
const demoTasks = [
|
|
329
|
+
{
|
|
330
|
+
id: 'task-1',
|
|
331
|
+
description: 'Write a simple hello world function in TypeScript',
|
|
332
|
+
},
|
|
333
|
+
{
|
|
334
|
+
id: 'task-2',
|
|
335
|
+
description: 'Analyze the system architecture of a microservices-based e-commerce platform ' +
|
|
336
|
+
'and provide detailed recommendations for improving scalability, security, and performance',
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
id: 'task-3',
|
|
340
|
+
description: 'Format this JSON: {"name":"test","value":123}',
|
|
341
|
+
},
|
|
342
|
+
];
|
|
343
|
+
logger.info('šÆ Agent Orchestrator Demo\n');
|
|
344
|
+
for (const task of demoTasks) {
|
|
345
|
+
const { analysis, routing } = await orchestrator.analyzeTask(task);
|
|
346
|
+
logger.info(`\nš Task: ${task.id}`);
|
|
347
|
+
logger.info(` Description: ${task.description}`);
|
|
348
|
+
logger.info(` Complexity: ${analysis.complexity}`);
|
|
349
|
+
logger.info(` Agent: ${routing.selectedAgent}`);
|
|
350
|
+
logger.info(` Estimated cost: ${formatMoney(routing.estimatedCost)}`);
|
|
351
|
+
logger.info(` Reasoning: ${analysis.reasoning}`);
|
|
352
|
+
}
|
|
353
|
+
logger.info('\n' + 'ā'.repeat(60));
|
|
354
|
+
const status = await orchestrator.getSystemStatus();
|
|
355
|
+
logger.info('\nš» System Resources:');
|
|
356
|
+
logger.info(` Memory: ${status.resources.availableMemoryMB}MB available`);
|
|
357
|
+
logger.info(` Usage: ${status.resources.memoryUsagePercent}%`);
|
|
358
|
+
logger.info('\nš° Cost Stats:');
|
|
359
|
+
logger.info(` Monthly spend: $${status.costStats.monthlySpend.toFixed(6)}`);
|
|
360
|
+
logger.info(` Remaining budget: $${status.costStats.remainingBudget.toFixed(2)}`);
|
|
361
|
+
logger.info(` Recommendation: ${status.recommendation}`);
|
|
362
|
+
logger.info('\n' + 'ā'.repeat(60) + '\n');
|
|
363
|
+
}
|
|
364
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Task, TaskAnalysis, RoutingDecision } from './types.js';
|
|
2
|
+
import { TaskAnalyzer } from './TaskAnalyzer.js';
|
|
3
|
+
import { AgentRouter } from './AgentRouter.js';
|
|
4
|
+
import { CostTracker } from './CostTracker.js';
|
|
5
|
+
import { PerformanceTracker } from '../evolution/PerformanceTracker.js';
|
|
6
|
+
import { LearningManager } from '../evolution/LearningManager.js';
|
|
7
|
+
import { AdaptationEngine, AdaptedExecution } from '../evolution/AdaptationEngine.js';
|
|
8
|
+
import { type MicroDollars } from '../utils/money.js';
|
|
9
|
+
export declare class Router {
|
|
10
|
+
private analyzer;
|
|
11
|
+
private router;
|
|
12
|
+
private costTracker;
|
|
13
|
+
private performanceTracker;
|
|
14
|
+
private learningManager;
|
|
15
|
+
private adaptationEngine;
|
|
16
|
+
constructor();
|
|
17
|
+
private configureAgentEvolution;
|
|
18
|
+
routeTask(task: Task): Promise<{
|
|
19
|
+
analysis: TaskAnalysis;
|
|
20
|
+
routing: RoutingDecision;
|
|
21
|
+
approved: boolean;
|
|
22
|
+
message: string;
|
|
23
|
+
adaptedExecution?: AdaptedExecution;
|
|
24
|
+
}>;
|
|
25
|
+
routeBatch(tasks: Task[]): Promise<{
|
|
26
|
+
results: Array<{
|
|
27
|
+
analysis: TaskAnalysis;
|
|
28
|
+
routing: RoutingDecision;
|
|
29
|
+
approved: boolean;
|
|
30
|
+
}>;
|
|
31
|
+
totalCost: MicroDollars;
|
|
32
|
+
approved: boolean;
|
|
33
|
+
}>;
|
|
34
|
+
recordTaskCost(taskId: string, modelName: string, inputTokens: number, outputTokens: number): MicroDollars;
|
|
35
|
+
getCostReport(): string;
|
|
36
|
+
getSystemStatus(): Promise<{
|
|
37
|
+
resources: Awaited<ReturnType<AgentRouter['getSystemResources']>>;
|
|
38
|
+
costStats: ReturnType<CostTracker['getStats']>;
|
|
39
|
+
recommendation: string;
|
|
40
|
+
}>;
|
|
41
|
+
getAnalyzer(): TaskAnalyzer;
|
|
42
|
+
getRouter(): AgentRouter;
|
|
43
|
+
getCostTracker(): CostTracker;
|
|
44
|
+
getPerformanceTracker(): PerformanceTracker;
|
|
45
|
+
getLearningManager(): LearningManager;
|
|
46
|
+
getAdaptationEngine(): AdaptationEngine;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=router.d.ts.map
|