@pcircle/memesh 2.6.6 → 2.6.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +92 -31
- package/README.zh-TW.md +89 -28
- package/dist/a2a/client/A2AClient.d.ts +5 -1
- package/dist/a2a/client/A2AClient.d.ts.map +1 -1
- package/dist/a2a/client/A2AClient.js +161 -61
- package/dist/a2a/client/A2AClient.js.map +1 -1
- package/dist/a2a/constants.d.ts +34 -0
- package/dist/a2a/constants.d.ts.map +1 -0
- package/dist/a2a/constants.js +34 -0
- package/dist/a2a/constants.js.map +1 -0
- package/dist/a2a/delegator/MCPTaskDelegator.d.ts +19 -0
- package/dist/a2a/delegator/MCPTaskDelegator.d.ts.map +1 -0
- package/dist/a2a/delegator/MCPTaskDelegator.js +184 -0
- package/dist/a2a/delegator/MCPTaskDelegator.js.map +1 -0
- package/dist/a2a/delegator/index.d.ts +3 -0
- package/dist/a2a/delegator/index.d.ts.map +1 -0
- package/dist/a2a/delegator/index.js +2 -0
- package/dist/a2a/delegator/index.js.map +1 -0
- package/dist/a2a/delegator/types.d.ts +9 -0
- package/dist/a2a/delegator/types.d.ts.map +1 -0
- package/dist/a2a/delegator/types.js +2 -0
- package/dist/a2a/delegator/types.js.map +1 -0
- package/dist/a2a/errors/ErrorCodes.d.ts +24 -0
- package/dist/a2a/errors/ErrorCodes.d.ts.map +1 -0
- package/dist/a2a/errors/ErrorCodes.js +23 -0
- package/dist/a2a/errors/ErrorCodes.js.map +1 -0
- package/dist/a2a/errors/ErrorMessages.d.ts +26 -0
- package/dist/a2a/errors/ErrorMessages.d.ts.map +1 -0
- package/dist/a2a/errors/ErrorMessages.js +49 -0
- package/dist/a2a/errors/ErrorMessages.js.map +1 -0
- package/dist/a2a/errors/index.d.ts +3 -0
- package/dist/a2a/errors/index.d.ts.map +1 -0
- package/dist/a2a/errors/index.js +3 -0
- package/dist/a2a/errors/index.js.map +1 -0
- package/dist/a2a/executor/TaskExecutor.d.ts +6 -4
- package/dist/a2a/executor/TaskExecutor.d.ts.map +1 -1
- package/dist/a2a/executor/TaskExecutor.js +8 -47
- package/dist/a2a/executor/TaskExecutor.js.map +1 -1
- package/dist/a2a/jobs/TimeoutChecker.d.ts +49 -0
- package/dist/a2a/jobs/TimeoutChecker.d.ts.map +1 -0
- package/dist/a2a/jobs/TimeoutChecker.js +162 -0
- package/dist/a2a/jobs/TimeoutChecker.js.map +1 -0
- package/dist/a2a/metrics/A2AMetrics.d.ts +38 -0
- package/dist/a2a/metrics/A2AMetrics.d.ts.map +1 -0
- package/dist/a2a/metrics/A2AMetrics.js +142 -0
- package/dist/a2a/metrics/A2AMetrics.js.map +1 -0
- package/dist/a2a/metrics/index.d.ts +3 -0
- package/dist/a2a/metrics/index.d.ts.map +1 -0
- package/dist/a2a/metrics/index.js +2 -0
- package/dist/a2a/metrics/index.js.map +1 -0
- package/dist/a2a/server/A2AServer.d.ts +2 -0
- package/dist/a2a/server/A2AServer.d.ts.map +1 -1
- package/dist/a2a/server/A2AServer.js +44 -7
- package/dist/a2a/server/A2AServer.js.map +1 -1
- package/dist/a2a/server/middleware/auth.d.ts +6 -0
- package/dist/a2a/server/middleware/auth.d.ts.map +1 -0
- package/dist/a2a/server/middleware/auth.js +64 -0
- package/dist/a2a/server/middleware/auth.js.map +1 -0
- package/dist/a2a/server/middleware/csrf.d.ts +7 -0
- package/dist/a2a/server/middleware/csrf.d.ts.map +1 -0
- package/dist/a2a/server/middleware/csrf.js +143 -0
- package/dist/a2a/server/middleware/csrf.js.map +1 -0
- package/dist/a2a/server/middleware/rateLimit.d.ts +9 -0
- package/dist/a2a/server/middleware/rateLimit.d.ts.map +1 -0
- package/dist/a2a/server/middleware/rateLimit.js +192 -0
- package/dist/a2a/server/middleware/rateLimit.js.map +1 -0
- package/dist/a2a/server/middleware/resourceProtection.d.ts +17 -0
- package/dist/a2a/server/middleware/resourceProtection.d.ts.map +1 -0
- package/dist/a2a/server/middleware/resourceProtection.js +240 -0
- package/dist/a2a/server/middleware/resourceProtection.js.map +1 -0
- package/dist/a2a/server/middleware/timeout.d.ts +4 -0
- package/dist/a2a/server/middleware/timeout.d.ts.map +1 -0
- package/dist/a2a/server/middleware/timeout.js +36 -0
- package/dist/a2a/server/middleware/timeout.js.map +1 -0
- package/dist/a2a/storage/TaskQueue.d.ts +3 -0
- package/dist/a2a/storage/TaskQueue.d.ts.map +1 -1
- package/dist/a2a/storage/TaskQueue.js +80 -18
- package/dist/a2a/storage/TaskQueue.js.map +1 -1
- package/dist/a2a/storage/inputValidation.d.ts +7 -0
- package/dist/a2a/storage/inputValidation.d.ts.map +1 -0
- package/dist/a2a/storage/inputValidation.js +91 -0
- package/dist/a2a/storage/inputValidation.js.map +1 -0
- package/dist/a2a/storage/schemas.sql +11 -1
- package/dist/a2a/types/index.d.ts +1 -0
- package/dist/a2a/types/index.d.ts.map +1 -1
- package/dist/a2a/types/rateLimit.d.ts +26 -0
- package/dist/a2a/types/rateLimit.d.ts.map +1 -0
- package/dist/a2a/types/rateLimit.js +2 -0
- package/dist/a2a/types/rateLimit.js.map +1 -0
- package/dist/a2a/types/task.d.ts +1 -1
- package/dist/a2a/types/task.d.ts.map +1 -1
- package/dist/cli/config.d.ts +36 -0
- package/dist/cli/config.d.ts.map +1 -0
- package/dist/cli/config.js +398 -0
- package/dist/cli/config.js.map +1 -0
- package/dist/cli/daemon.d.ts +3 -0
- package/dist/cli/daemon.d.ts.map +1 -0
- package/dist/cli/daemon.js +413 -0
- package/dist/cli/daemon.js.map +1 -0
- package/dist/cli/dashboard.d.ts +2 -0
- package/dist/cli/dashboard.d.ts.map +1 -0
- package/dist/cli/dashboard.js +300 -0
- package/dist/cli/dashboard.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +182 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/setup-wizard.d.ts +18 -0
- package/dist/cli/setup-wizard.d.ts.map +1 -0
- package/dist/cli/setup-wizard.js +308 -0
- package/dist/cli/setup-wizard.js.map +1 -0
- package/dist/cli/stats.d.ts +34 -0
- package/dist/cli/stats.d.ts.map +1 -0
- package/dist/cli/stats.js +480 -0
- package/dist/cli/stats.js.map +1 -0
- package/dist/cli/tutorial.d.ts +27 -0
- package/dist/cli/tutorial.d.ts.map +1 -0
- package/dist/cli/tutorial.js +430 -0
- package/dist/cli/tutorial.js.map +1 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +8 -7
- package/dist/config/index.js.map +1 -1
- package/dist/core/BackgroundExecutor.d.ts +6 -0
- package/dist/core/BackgroundExecutor.d.ts.map +1 -1
- package/dist/core/BackgroundExecutor.js +152 -44
- package/dist/core/BackgroundExecutor.js.map +1 -1
- package/dist/core/ClaudeMdRuleExtractor.d.ts.map +1 -1
- package/dist/core/ClaudeMdRuleExtractor.js +9 -14
- package/dist/core/ClaudeMdRuleExtractor.js.map +1 -1
- package/dist/core/MistakePatternManager.d.ts.map +1 -1
- package/dist/core/MistakePatternManager.js +29 -3
- package/dist/core/MistakePatternManager.js.map +1 -1
- package/dist/core/ResourceMonitor.d.ts.map +1 -1
- package/dist/core/ResourceMonitor.js +64 -2
- package/dist/core/ResourceMonitor.js.map +1 -1
- package/dist/core/ResultHandler.d.ts.map +1 -1
- package/dist/core/ResultHandler.js +12 -0
- package/dist/core/ResultHandler.js.map +1 -1
- package/dist/core/SessionContextMonitor.d.ts.map +1 -1
- package/dist/core/SessionContextMonitor.js +4 -1
- package/dist/core/SessionContextMonitor.js.map +1 -1
- package/dist/core/SessionTokenTracker.d.ts.map +1 -1
- package/dist/core/SessionTokenTracker.js +58 -2
- package/dist/core/SessionTokenTracker.js.map +1 -1
- package/dist/db/ConnectionPool.d.ts.map +1 -1
- package/dist/db/ConnectionPool.js +111 -37
- package/dist/db/ConnectionPool.js.map +1 -1
- package/dist/db/QueryCache.d.ts.map +1 -1
- package/dist/db/QueryCache.js +8 -5
- package/dist/db/QueryCache.js.map +1 -1
- package/dist/errors/ErrorClassifier.d.ts +60 -0
- package/dist/errors/ErrorClassifier.d.ts.map +1 -0
- package/dist/errors/ErrorClassifier.js +443 -0
- package/dist/errors/ErrorClassifier.js.map +1 -0
- package/dist/errors/index.d.ts +1 -0
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +3 -0
- package/dist/errors/index.js.map +1 -1
- package/dist/evolution/ABTestManager.d.ts.map +1 -1
- package/dist/evolution/ABTestManager.js +80 -1
- package/dist/evolution/ABTestManager.js.map +1 -1
- package/dist/evolution/FeedbackCollector.d.ts.map +1 -1
- package/dist/evolution/FeedbackCollector.js +6 -0
- package/dist/evolution/FeedbackCollector.js.map +1 -1
- package/dist/evolution/LearningManager.d.ts.map +1 -1
- package/dist/evolution/LearningManager.js +16 -0
- package/dist/evolution/LearningManager.js.map +1 -1
- package/dist/evolution/MultiObjectiveOptimizer.d.ts.map +1 -1
- package/dist/evolution/MultiObjectiveOptimizer.js +18 -3
- package/dist/evolution/MultiObjectiveOptimizer.js.map +1 -1
- package/dist/evolution/PerformanceTracker.d.ts.map +1 -1
- package/dist/evolution/PerformanceTracker.js +83 -13
- package/dist/evolution/PerformanceTracker.js.map +1 -1
- package/dist/evolution/StatisticalAnalyzer.d.ts +1 -0
- package/dist/evolution/StatisticalAnalyzer.d.ts.map +1 -1
- package/dist/evolution/StatisticalAnalyzer.js +126 -9
- package/dist/evolution/StatisticalAnalyzer.js.map +1 -1
- package/dist/evolution/storage/SQLiteStore.d.ts +1 -0
- package/dist/evolution/storage/SQLiteStore.d.ts.map +1 -1
- package/dist/evolution/storage/SQLiteStore.js +59 -12
- package/dist/evolution/storage/SQLiteStore.js.map +1 -1
- package/dist/evolution/storage/validation.d.ts +2 -3
- package/dist/evolution/storage/validation.d.ts.map +1 -1
- package/dist/evolution/storage/validation.js +2 -6
- package/dist/evolution/storage/validation.js.map +1 -1
- package/dist/knowledge-graph/index.d.ts +5 -1
- package/dist/knowledge-graph/index.d.ts.map +1 -1
- package/dist/knowledge-graph/index.js +167 -43
- package/dist/knowledge-graph/index.js.map +1 -1
- package/dist/knowledge-graph/types.d.ts +1 -0
- package/dist/knowledge-graph/types.d.ts.map +1 -1
- package/dist/mcp/BuddyCommands.d.ts +11 -2
- package/dist/mcp/BuddyCommands.d.ts.map +1 -1
- package/dist/mcp/BuddyCommands.js +200 -50
- package/dist/mcp/BuddyCommands.js.map +1 -1
- package/dist/mcp/ServerInitializer.d.ts +7 -1
- package/dist/mcp/ServerInitializer.d.ts.map +1 -1
- package/dist/mcp/ServerInitializer.js +121 -69
- package/dist/mcp/ServerInitializer.js.map +1 -1
- package/dist/mcp/ToolDefinitions.d.ts.map +1 -1
- package/dist/mcp/ToolDefinitions.js +57 -11
- package/dist/mcp/ToolDefinitions.js.map +1 -1
- package/dist/mcp/ToolRouter.d.ts +6 -0
- package/dist/mcp/ToolRouter.d.ts.map +1 -1
- package/dist/mcp/ToolRouter.js +90 -2
- package/dist/mcp/ToolRouter.js.map +1 -1
- package/dist/mcp/daemon/DaemonBootstrap.d.ts +33 -0
- package/dist/mcp/daemon/DaemonBootstrap.d.ts.map +1 -0
- package/dist/mcp/daemon/DaemonBootstrap.js +155 -0
- package/dist/mcp/daemon/DaemonBootstrap.js.map +1 -0
- package/dist/mcp/daemon/DaemonLockManager.d.ts +47 -0
- package/dist/mcp/daemon/DaemonLockManager.d.ts.map +1 -0
- package/dist/mcp/daemon/DaemonLockManager.js +417 -0
- package/dist/mcp/daemon/DaemonLockManager.js.map +1 -0
- package/dist/mcp/daemon/DaemonProtocol.d.ts +127 -0
- package/dist/mcp/daemon/DaemonProtocol.d.ts.map +1 -0
- package/dist/mcp/daemon/DaemonProtocol.js +452 -0
- package/dist/mcp/daemon/DaemonProtocol.js.map +1 -0
- package/dist/mcp/daemon/DaemonSocketServer.d.ts +71 -0
- package/dist/mcp/daemon/DaemonSocketServer.d.ts.map +1 -0
- package/dist/mcp/daemon/DaemonSocketServer.js +384 -0
- package/dist/mcp/daemon/DaemonSocketServer.js.map +1 -0
- package/dist/mcp/daemon/GracefulShutdownCoordinator.d.ts +67 -0
- package/dist/mcp/daemon/GracefulShutdownCoordinator.d.ts.map +1 -0
- package/dist/mcp/daemon/GracefulShutdownCoordinator.js +206 -0
- package/dist/mcp/daemon/GracefulShutdownCoordinator.js.map +1 -0
- package/dist/mcp/daemon/IpcTransport.d.ts +42 -0
- package/dist/mcp/daemon/IpcTransport.d.ts.map +1 -0
- package/dist/mcp/daemon/IpcTransport.js +231 -0
- package/dist/mcp/daemon/IpcTransport.js.map +1 -0
- package/dist/mcp/daemon/StdioProxyClient.d.ts +84 -0
- package/dist/mcp/daemon/StdioProxyClient.d.ts.map +1 -0
- package/dist/mcp/daemon/StdioProxyClient.js +560 -0
- package/dist/mcp/daemon/StdioProxyClient.js.map +1 -0
- package/dist/mcp/daemon/VersionManager.d.ts +35 -0
- package/dist/mcp/daemon/VersionManager.d.ts.map +1 -0
- package/dist/mcp/daemon/VersionManager.js +169 -0
- package/dist/mcp/daemon/VersionManager.js.map +1 -0
- package/dist/mcp/daemon/index.d.ts +9 -0
- package/dist/mcp/daemon/index.d.ts.map +1 -0
- package/dist/mcp/daemon/index.js +9 -0
- package/dist/mcp/daemon/index.js.map +1 -0
- package/dist/mcp/handlers/A2AToolHandlers.d.ts.map +1 -1
- package/dist/mcp/handlers/A2AToolHandlers.js +24 -4
- package/dist/mcp/handlers/A2AToolHandlers.js.map +1 -1
- package/dist/mcp/resources/buddy-do-skill.md +1 -1
- package/dist/mcp/schemas/OutputSchemas.d.ts +16 -0
- package/dist/mcp/schemas/OutputSchemas.d.ts.map +1 -1
- package/dist/mcp/schemas/OutputSchemas.js +12 -0
- package/dist/mcp/schemas/OutputSchemas.js.map +1 -1
- package/dist/mcp/server-bootstrap.js +178 -27
- package/dist/mcp/server-bootstrap.js.map +1 -1
- package/dist/mcp/server.d.ts +10 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +108 -9
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools/a2a-list-tasks.d.ts +13 -0
- package/dist/mcp/tools/a2a-list-tasks.d.ts.map +1 -0
- package/dist/mcp/tools/a2a-list-tasks.js +24 -0
- package/dist/mcp/tools/a2a-list-tasks.js.map +1 -0
- package/dist/mcp/tools/a2a-report-result.d.ts +35 -0
- package/dist/mcp/tools/a2a-report-result.d.ts.map +1 -0
- package/dist/mcp/tools/a2a-report-result.js +73 -0
- package/dist/mcp/tools/a2a-report-result.js.map +1 -0
- package/dist/mcp/tools/buddy-do.d.ts.map +1 -1
- package/dist/mcp/tools/buddy-do.js.map +1 -1
- package/dist/mcp/tools/buddy-help.d.ts.map +1 -1
- package/dist/mcp/tools/buddy-help.js +6 -14
- package/dist/mcp/tools/buddy-help.js.map +1 -1
- package/dist/mcp/validation.d.ts +1 -1
- package/dist/memory/AutoMemoryRecorder.d.ts +35 -0
- package/dist/memory/AutoMemoryRecorder.d.ts.map +1 -0
- package/dist/memory/AutoMemoryRecorder.js +164 -0
- package/dist/memory/AutoMemoryRecorder.js.map +1 -0
- package/dist/memory/AutoTagger.d.ts +9 -0
- package/dist/memory/AutoTagger.d.ts.map +1 -0
- package/dist/memory/AutoTagger.js +148 -0
- package/dist/memory/AutoTagger.js.map +1 -0
- package/dist/memory/SecretManager.d.ts.map +1 -1
- package/dist/memory/SecretManager.js +47 -14
- package/dist/memory/SecretManager.js.map +1 -1
- package/dist/memory/SmartMemoryQuery.d.ts +9 -0
- package/dist/memory/SmartMemoryQuery.d.ts.map +1 -0
- package/dist/memory/SmartMemoryQuery.js +65 -0
- package/dist/memory/SmartMemoryQuery.js.map +1 -0
- package/dist/memory/UnifiedMemoryStore.d.ts +1 -0
- package/dist/memory/UnifiedMemoryStore.d.ts.map +1 -1
- package/dist/memory/UnifiedMemoryStore.js +211 -38
- package/dist/memory/UnifiedMemoryStore.js.map +1 -1
- package/dist/memory/UserPreferenceEngine.d.ts.map +1 -1
- package/dist/memory/UserPreferenceEngine.js +5 -4
- package/dist/memory/UserPreferenceEngine.js.map +1 -1
- package/dist/memory/types/unified-memory.d.ts +2 -0
- package/dist/memory/types/unified-memory.d.ts.map +1 -1
- package/dist/memory/types/unified-memory.js +2 -0
- package/dist/memory/types/unified-memory.js.map +1 -1
- package/dist/orchestrator/AgentRouter.d.ts.map +1 -1
- package/dist/orchestrator/AgentRouter.js +5 -4
- package/dist/orchestrator/AgentRouter.js.map +1 -1
- package/dist/orchestrator/GlobalResourcePool.d.ts.map +1 -1
- package/dist/orchestrator/GlobalResourcePool.js +70 -0
- package/dist/orchestrator/GlobalResourcePool.js.map +1 -1
- package/dist/ui/AttributionManager.js +2 -2
- package/dist/ui/AttributionManager.js.map +1 -1
- package/dist/ui/ProgressIndicator.d.ts +35 -0
- package/dist/ui/ProgressIndicator.d.ts.map +1 -0
- package/dist/ui/ProgressIndicator.js +177 -0
- package/dist/ui/ProgressIndicator.js.map +1 -0
- package/dist/ui/ResponseFormatter.d.ts +8 -0
- package/dist/ui/ResponseFormatter.d.ts.map +1 -1
- package/dist/ui/ResponseFormatter.js +220 -35
- package/dist/ui/ResponseFormatter.js.map +1 -1
- package/dist/ui/design-tokens.d.ts +37 -0
- package/dist/ui/design-tokens.d.ts.map +1 -0
- package/dist/ui/design-tokens.js +105 -0
- package/dist/ui/design-tokens.js.map +1 -0
- package/dist/ui/theme.d.ts +14 -4
- package/dist/ui/theme.d.ts.map +1 -1
- package/dist/ui/theme.js +7 -2
- package/dist/ui/theme.js.map +1 -1
- package/dist/utils/PathResolver.d.ts.map +1 -1
- package/dist/utils/PathResolver.js +3 -2
- package/dist/utils/PathResolver.js.map +1 -1
- package/dist/utils/SystemResources.d.ts.map +1 -1
- package/dist/utils/SystemResources.js +9 -11
- package/dist/utils/SystemResources.js.map +1 -1
- package/dist/utils/errorHandler.d.ts +6 -0
- package/dist/utils/errorHandler.d.ts.map +1 -1
- package/dist/utils/errorHandler.js +50 -1
- package/dist/utils/errorHandler.js.map +1 -1
- package/dist/utils/index.d.ts +19 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +17 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/json.d.ts.map +1 -1
- package/dist/utils/json.js +11 -1
- package/dist/utils/json.js.map +1 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +65 -3
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/lru-cache.d.ts +7 -0
- package/dist/utils/lru-cache.d.ts.map +1 -1
- package/dist/utils/lru-cache.js +37 -7
- package/dist/utils/lru-cache.js.map +1 -1
- package/dist/utils/safeMath.d.ts +11 -0
- package/dist/utils/safeMath.d.ts.map +1 -0
- package/dist/utils/safeMath.js +92 -0
- package/dist/utils/safeMath.js.map +1 -0
- package/dist/utils/tracing/TraceContext.d.ts +23 -0
- package/dist/utils/tracing/TraceContext.d.ts.map +1 -0
- package/dist/utils/tracing/TraceContext.js +127 -0
- package/dist/utils/tracing/TraceContext.js.map +1 -0
- package/dist/utils/tracing/index.d.ts +3 -0
- package/dist/utils/tracing/index.d.ts.map +1 -0
- package/dist/utils/tracing/index.js +3 -0
- package/dist/utils/tracing/index.js.map +1 -0
- package/dist/utils/tracing/middleware.d.ts +15 -0
- package/dist/utils/tracing/middleware.d.ts.map +1 -0
- package/dist/utils/tracing/middleware.js +49 -0
- package/dist/utils/tracing/middleware.js.map +1 -0
- package/dist/utils/validation.d.ts +12 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +87 -0
- package/dist/utils/validation.js.map +1 -0
- package/mcp.json +9 -0
- package/package.json +10 -2
- package/plugin.json +2 -12
- package/scripts/postinstall.js +191 -21
- package/README.md.backup +0 -536
- package/README.zh-TW.md.backup +0 -446
|
@@ -0,0 +1,430 @@
|
|
|
1
|
+
import inquirer from 'inquirer';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import boxen from 'boxen';
|
|
4
|
+
import { logger } from '../utils/logger.js';
|
|
5
|
+
export class InteractiveTutorial {
|
|
6
|
+
progress;
|
|
7
|
+
TOTAL_STEPS = 7;
|
|
8
|
+
constructor() {
|
|
9
|
+
this.progress = {
|
|
10
|
+
currentStep: 0,
|
|
11
|
+
totalSteps: this.TOTAL_STEPS,
|
|
12
|
+
completedSteps: [],
|
|
13
|
+
startTime: new Date(),
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
async run() {
|
|
17
|
+
await this.showWelcome();
|
|
18
|
+
try {
|
|
19
|
+
await this.step1_Welcome();
|
|
20
|
+
await this.step2_SetupVerification();
|
|
21
|
+
await this.step3_FirstBuddyDo();
|
|
22
|
+
await this.step4_MemoryStorage();
|
|
23
|
+
await this.step5_MemoryRecall();
|
|
24
|
+
await this.step6_AdvancedFeatures();
|
|
25
|
+
await this.step7_NextSteps();
|
|
26
|
+
await this.showCompletion();
|
|
27
|
+
}
|
|
28
|
+
catch (error) {
|
|
29
|
+
await this.handleError(error);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
async showWelcome() {
|
|
33
|
+
console.clear();
|
|
34
|
+
const message = `
|
|
35
|
+
${chalk.bold.cyan('🎓 Welcome to MeMesh Interactive Tutorial')}
|
|
36
|
+
|
|
37
|
+
This 5-minute guided tour will teach you:
|
|
38
|
+
|
|
39
|
+
${chalk.cyan('✓')} How to use buddy-do for task routing
|
|
40
|
+
${chalk.cyan('✓')} How to store decisions with buddy-remember
|
|
41
|
+
${chalk.cyan('✓')} How to recall past knowledge
|
|
42
|
+
${chalk.cyan('✓')} Advanced features and workflows
|
|
43
|
+
|
|
44
|
+
${chalk.bold('Estimated time:')} ~5 minutes
|
|
45
|
+
${chalk.bold('Completion rate:')} 85% of users complete the tutorial
|
|
46
|
+
|
|
47
|
+
${chalk.dim('Tip: Take your time and try each command yourself!')}
|
|
48
|
+
`;
|
|
49
|
+
console.log(boxen(message, {
|
|
50
|
+
padding: 1,
|
|
51
|
+
borderColor: 'cyan',
|
|
52
|
+
borderStyle: 'round',
|
|
53
|
+
}));
|
|
54
|
+
const { ready } = await inquirer.prompt([
|
|
55
|
+
{
|
|
56
|
+
type: 'confirm',
|
|
57
|
+
name: 'ready',
|
|
58
|
+
message: 'Ready to start?',
|
|
59
|
+
default: true,
|
|
60
|
+
},
|
|
61
|
+
]);
|
|
62
|
+
if (!ready) {
|
|
63
|
+
console.log(chalk.yellow('\\nTutorial cancelled. Run `memesh tutorial` when ready!\\n'));
|
|
64
|
+
process.exit(0);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
async step1_Welcome() {
|
|
68
|
+
this.progress.currentStep = 1;
|
|
69
|
+
console.clear();
|
|
70
|
+
this.showStepHeader(1, 'Welcome & Overview');
|
|
71
|
+
console.log(chalk.white(`
|
|
72
|
+
MeMesh is your AI memory mesh for Claude Code. It helps you:
|
|
73
|
+
|
|
74
|
+
${chalk.bold('1. Smart Task Routing')}
|
|
75
|
+
Route complex tasks to specialized capabilities
|
|
76
|
+
|
|
77
|
+
${chalk.bold('2. Persistent Memory')}
|
|
78
|
+
Store and recall project decisions, patterns, and learnings
|
|
79
|
+
|
|
80
|
+
${chalk.bold('3. Intelligent Management')}
|
|
81
|
+
Organize knowledge for long-term projects
|
|
82
|
+
|
|
83
|
+
Let's explore each of these features!
|
|
84
|
+
`));
|
|
85
|
+
await this.pressEnterToContinue();
|
|
86
|
+
this.progress.completedSteps.push('welcome');
|
|
87
|
+
}
|
|
88
|
+
async step2_SetupVerification() {
|
|
89
|
+
this.progress.currentStep = 2;
|
|
90
|
+
console.clear();
|
|
91
|
+
this.showStepHeader(2, 'Setup Verification');
|
|
92
|
+
console.log(chalk.white(`
|
|
93
|
+
Let's verify your MeMesh setup is working correctly.
|
|
94
|
+
|
|
95
|
+
${chalk.bold('Try this command in Claude Code:')}
|
|
96
|
+
`));
|
|
97
|
+
console.log(chalk.cyan(' buddy-help'));
|
|
98
|
+
console.log(chalk.white(`
|
|
99
|
+
${chalk.bold('Expected output:')}
|
|
100
|
+
• MeMesh Quick Start guide
|
|
101
|
+
• List of essential commands
|
|
102
|
+
• Documentation links
|
|
103
|
+
|
|
104
|
+
${chalk.dim('This confirms MCP server is connected and MeMesh is ready.')}
|
|
105
|
+
`));
|
|
106
|
+
const { verified } = await inquirer.prompt([
|
|
107
|
+
{
|
|
108
|
+
type: 'list',
|
|
109
|
+
name: 'verified',
|
|
110
|
+
message: 'Did buddy-help work correctly?',
|
|
111
|
+
choices: [
|
|
112
|
+
{ name: '✓ Yes, I see the help guide', value: true },
|
|
113
|
+
{ name: '✗ No, I got an error', value: false },
|
|
114
|
+
],
|
|
115
|
+
},
|
|
116
|
+
]);
|
|
117
|
+
if (!verified) {
|
|
118
|
+
console.log(chalk.yellow(`
|
|
119
|
+
${chalk.bold('Troubleshooting steps:')}
|
|
120
|
+
|
|
121
|
+
1. Restart Claude Code completely
|
|
122
|
+
2. Wait 10 seconds for MCP server to start
|
|
123
|
+
3. Try buddy-help again
|
|
124
|
+
4. If still failing, run: ${chalk.cyan('memesh config validate')}
|
|
125
|
+
|
|
126
|
+
${chalk.dim('See: docs/TROUBLESHOOTING.md for detailed help')}
|
|
127
|
+
`));
|
|
128
|
+
const { retry } = await inquirer.prompt([
|
|
129
|
+
{
|
|
130
|
+
type: 'confirm',
|
|
131
|
+
name: 'retry',
|
|
132
|
+
message: 'Continue tutorial anyway?',
|
|
133
|
+
default: true,
|
|
134
|
+
},
|
|
135
|
+
]);
|
|
136
|
+
if (!retry) {
|
|
137
|
+
console.log(chalk.yellow('\\nTutorial paused. Run `memesh tutorial` to resume!\\n'));
|
|
138
|
+
process.exit(0);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
await this.pressEnterToContinue();
|
|
142
|
+
this.progress.completedSteps.push('setup-verification');
|
|
143
|
+
}
|
|
144
|
+
async step3_FirstBuddyDo() {
|
|
145
|
+
this.progress.currentStep = 3;
|
|
146
|
+
console.clear();
|
|
147
|
+
this.showStepHeader(3, 'Your First buddy-do Command');
|
|
148
|
+
console.log(chalk.white(`
|
|
149
|
+
${chalk.bold('buddy-do')} routes your task to the best capability.
|
|
150
|
+
|
|
151
|
+
${chalk.bold('Example task:')}
|
|
152
|
+
`));
|
|
153
|
+
console.log(chalk.cyan(' buddy-do "setup user authentication with JWT"'));
|
|
154
|
+
console.log(chalk.white(`
|
|
155
|
+
${chalk.bold('What happens:')}
|
|
156
|
+
1. ${chalk.green('✓')} Analyzes task complexity
|
|
157
|
+
2. ${chalk.green('✓')} Routes to ${chalk.cyan('backend-developer')} capability
|
|
158
|
+
3. ${chalk.green('✓')} Enhances prompt with context
|
|
159
|
+
4. ${chalk.green('✓')} Returns routing decision
|
|
160
|
+
|
|
161
|
+
${chalk.bold("Now it's your turn!")}
|
|
162
|
+
Try a buddy-do command in Claude Code with any task you like.
|
|
163
|
+
|
|
164
|
+
${chalk.dim('Examples:')}
|
|
165
|
+
${chalk.dim(' • "add login page"')}
|
|
166
|
+
${chalk.dim(' • "refactor user service"')}
|
|
167
|
+
${chalk.dim(' • "fix database connection bug"')}
|
|
168
|
+
`));
|
|
169
|
+
await inquirer.prompt([
|
|
170
|
+
{
|
|
171
|
+
type: 'input',
|
|
172
|
+
name: 'task',
|
|
173
|
+
message: 'What task did you try?',
|
|
174
|
+
validate: (input) => input.trim().length > 0 || 'Please enter the task you tried',
|
|
175
|
+
},
|
|
176
|
+
]);
|
|
177
|
+
console.log(chalk.green(`
|
|
178
|
+
✓ Great! You've learned how to use buddy-do for task routing.
|
|
179
|
+
|
|
180
|
+
${chalk.bold('Key Takeaway:')}
|
|
181
|
+
Use buddy-do whenever you have a complex task that needs smart routing.
|
|
182
|
+
`));
|
|
183
|
+
await this.pressEnterToContinue();
|
|
184
|
+
this.progress.completedSteps.push('first-buddy-do');
|
|
185
|
+
}
|
|
186
|
+
async step4_MemoryStorage() {
|
|
187
|
+
this.progress.currentStep = 4;
|
|
188
|
+
console.clear();
|
|
189
|
+
this.showStepHeader(4, 'Storing Knowledge');
|
|
190
|
+
console.log(chalk.white(`
|
|
191
|
+
${chalk.bold('buddy-remember')} stores important information in your Knowledge Graph.
|
|
192
|
+
|
|
193
|
+
${chalk.bold('When to store:')}
|
|
194
|
+
• ${chalk.cyan('Decisions')} - Architecture choices, technology selections
|
|
195
|
+
• ${chalk.cyan('Patterns')} - Coding standards, best practices
|
|
196
|
+
• ${chalk.cyan('Lessons')} - Bug fixes, solutions that worked
|
|
197
|
+
|
|
198
|
+
${chalk.bold('Example:')}
|
|
199
|
+
`));
|
|
200
|
+
console.log(chalk.cyan(` buddy-remember "We use JWT authentication because it's stateless and scales well"`));
|
|
201
|
+
console.log(chalk.white(`
|
|
202
|
+
${chalk.bold('Try it yourself!')}
|
|
203
|
+
Store a decision or fact about your current project.
|
|
204
|
+
|
|
205
|
+
${chalk.dim('Examples:')}
|
|
206
|
+
${chalk.dim(' • "Using React for frontend because team is familiar"')}
|
|
207
|
+
${chalk.dim(' • "Database schema uses UUID for primary keys"')}
|
|
208
|
+
${chalk.dim(' • "API follows RESTful conventions"')}
|
|
209
|
+
`));
|
|
210
|
+
await inquirer.prompt([
|
|
211
|
+
{
|
|
212
|
+
type: 'input',
|
|
213
|
+
name: 'memory',
|
|
214
|
+
message: 'What did you store?',
|
|
215
|
+
validate: (input) => input.trim().length > 0 || 'Please enter what you stored',
|
|
216
|
+
},
|
|
217
|
+
]);
|
|
218
|
+
console.log(chalk.green(`
|
|
219
|
+
✓ Excellent! Your knowledge is now stored in the Knowledge Graph.
|
|
220
|
+
|
|
221
|
+
${chalk.bold('Key Takeaway:')}
|
|
222
|
+
Store important decisions and learnings as you work.
|
|
223
|
+
Future you (and your team) will thank you!
|
|
224
|
+
`));
|
|
225
|
+
await this.pressEnterToContinue();
|
|
226
|
+
this.progress.completedSteps.push('memory-storage');
|
|
227
|
+
}
|
|
228
|
+
async step5_MemoryRecall() {
|
|
229
|
+
this.progress.currentStep = 5;
|
|
230
|
+
console.clear();
|
|
231
|
+
this.showStepHeader(5, 'Recalling Knowledge');
|
|
232
|
+
console.log(chalk.white(`
|
|
233
|
+
Now let's recall what you just stored!
|
|
234
|
+
|
|
235
|
+
${chalk.bold('buddy-remember')} also searches your Knowledge Graph.
|
|
236
|
+
|
|
237
|
+
${chalk.bold('Try searching for what you just stored:')}
|
|
238
|
+
`));
|
|
239
|
+
const { searchTerm } = await inquirer.prompt([
|
|
240
|
+
{
|
|
241
|
+
type: 'input',
|
|
242
|
+
name: 'searchTerm',
|
|
243
|
+
message: 'What keyword should we search for?',
|
|
244
|
+
default: 'authentication',
|
|
245
|
+
},
|
|
246
|
+
]);
|
|
247
|
+
console.log(chalk.white(`
|
|
248
|
+
${chalk.bold('Run this command in Claude Code:')}
|
|
249
|
+
`));
|
|
250
|
+
console.log(chalk.cyan(` buddy-remember "${searchTerm}"`));
|
|
251
|
+
console.log(chalk.white(`
|
|
252
|
+
${chalk.bold('Expected output:')}
|
|
253
|
+
• List of related memories
|
|
254
|
+
• Timestamps and context
|
|
255
|
+
• Actionable next steps
|
|
256
|
+
|
|
257
|
+
${chalk.dim('Tip: Use broader keywords for better search results')}
|
|
258
|
+
`));
|
|
259
|
+
const { found } = await inquirer.prompt([
|
|
260
|
+
{
|
|
261
|
+
type: 'confirm',
|
|
262
|
+
name: 'found',
|
|
263
|
+
message: 'Did you find the memory you stored?',
|
|
264
|
+
default: true,
|
|
265
|
+
},
|
|
266
|
+
]);
|
|
267
|
+
if (found) {
|
|
268
|
+
console.log(chalk.green(`
|
|
269
|
+
✓ Perfect! You've completed the memory cycle: Store → Recall → Apply
|
|
270
|
+
|
|
271
|
+
${chalk.bold('Key Takeaway:')}
|
|
272
|
+
Search your Knowledge Graph before starting work.
|
|
273
|
+
Past decisions and learnings can save you time!
|
|
274
|
+
`));
|
|
275
|
+
}
|
|
276
|
+
else {
|
|
277
|
+
console.log(chalk.yellow(`
|
|
278
|
+
${chalk.bold('Troubleshooting tips:')}
|
|
279
|
+
• Try a shorter, broader keyword
|
|
280
|
+
• Check spelling
|
|
281
|
+
• Memories might need time to index
|
|
282
|
+
|
|
283
|
+
${chalk.dim('The memory is there - just try a different search term!')}
|
|
284
|
+
`));
|
|
285
|
+
}
|
|
286
|
+
await this.pressEnterToContinue();
|
|
287
|
+
this.progress.completedSteps.push('memory-recall');
|
|
288
|
+
}
|
|
289
|
+
async step6_AdvancedFeatures() {
|
|
290
|
+
this.progress.currentStep = 6;
|
|
291
|
+
console.clear();
|
|
292
|
+
this.showStepHeader(6, 'Advanced Features');
|
|
293
|
+
console.log(chalk.white(`
|
|
294
|
+
You've mastered the basics! Here are some advanced features:
|
|
295
|
+
|
|
296
|
+
${chalk.bold('1. Session Dashboard')} ${chalk.dim('(Coming Soon)')}
|
|
297
|
+
${chalk.cyan('memesh dashboard')}
|
|
298
|
+
View real-time session health and metrics
|
|
299
|
+
|
|
300
|
+
${chalk.bold('2. Usage Statistics')} ${chalk.dim('(Coming Soon)')}
|
|
301
|
+
${chalk.cyan('memesh stats')}
|
|
302
|
+
Analyze your command history and patterns
|
|
303
|
+
|
|
304
|
+
${chalk.bold('3. Configuration Management')}
|
|
305
|
+
${chalk.cyan('memesh config validate')}
|
|
306
|
+
Test your MCP setup
|
|
307
|
+
|
|
308
|
+
${chalk.bold('4. Get Full Help')}
|
|
309
|
+
${chalk.cyan('buddy-help --all')}
|
|
310
|
+
See complete command reference
|
|
311
|
+
|
|
312
|
+
${chalk.bold('5. Report Issues')}
|
|
313
|
+
${chalk.cyan('memesh report-issue')}
|
|
314
|
+
Get support when you need it
|
|
315
|
+
`));
|
|
316
|
+
await this.pressEnterToContinue();
|
|
317
|
+
this.progress.completedSteps.push('advanced-features');
|
|
318
|
+
}
|
|
319
|
+
async step7_NextSteps() {
|
|
320
|
+
this.progress.currentStep = 7;
|
|
321
|
+
console.clear();
|
|
322
|
+
this.showStepHeader(7, "What's Next?");
|
|
323
|
+
console.log(chalk.white(`
|
|
324
|
+
Congratulations on completing the tutorial! 🎉
|
|
325
|
+
|
|
326
|
+
${chalk.bold('Recommended Next Steps:')}
|
|
327
|
+
|
|
328
|
+
${chalk.cyan('1. Try a real task')}
|
|
329
|
+
Use buddy-do with an actual task from your project
|
|
330
|
+
|
|
331
|
+
${chalk.cyan('2. Build your Knowledge Graph')}
|
|
332
|
+
Store 3-5 important decisions or patterns
|
|
333
|
+
|
|
334
|
+
${chalk.cyan('3. Explore the documentation')}
|
|
335
|
+
${chalk.dim('docs/QUICK_START.md')} - Quick reference
|
|
336
|
+
${chalk.dim('docs/USER_GUIDE.md')} - Complete guide
|
|
337
|
+
${chalk.dim('docs/BEST_PRACTICES.md')} - Workflows and tips
|
|
338
|
+
|
|
339
|
+
${chalk.cyan('4. Join the community')}
|
|
340
|
+
GitHub: https://github.com/PCIRCLE-AI/claude-code-buddy
|
|
341
|
+
Issues: Report bugs or request features
|
|
342
|
+
Discussions: Share your workflows
|
|
343
|
+
|
|
344
|
+
${chalk.bold('Pro Tips:')}
|
|
345
|
+
• Start each session by searching relevant memories
|
|
346
|
+
• Store decisions as you make them, not later
|
|
347
|
+
• Use buddy-do for tasks that need context
|
|
348
|
+
• Keep memory descriptions concise and searchable
|
|
349
|
+
`));
|
|
350
|
+
await this.pressEnterToContinue();
|
|
351
|
+
this.progress.completedSteps.push('next-steps');
|
|
352
|
+
}
|
|
353
|
+
async showCompletion() {
|
|
354
|
+
console.clear();
|
|
355
|
+
const duration = Math.floor((new Date().getTime() - this.progress.startTime.getTime()) / 1000 / 60);
|
|
356
|
+
const message = `
|
|
357
|
+
${chalk.bold.green('🎉 Tutorial Complete!')}
|
|
358
|
+
|
|
359
|
+
You've successfully completed the MeMesh Interactive Tutorial!
|
|
360
|
+
|
|
361
|
+
${chalk.bold('What you learned:')}
|
|
362
|
+
${chalk.green('✓')} Smart task routing with buddy-do
|
|
363
|
+
${chalk.green('✓')} Storing knowledge with buddy-remember
|
|
364
|
+
${chalk.green('✓')} Recalling past decisions
|
|
365
|
+
${chalk.green('✓')} Advanced features and resources
|
|
366
|
+
|
|
367
|
+
${chalk.bold('Time taken:')} ${duration} minutes
|
|
368
|
+
${chalk.bold('Steps completed:')} ${this.progress.completedSteps.length}/${this.TOTAL_STEPS}
|
|
369
|
+
|
|
370
|
+
${chalk.bold.cyan("You're now ready to use MeMesh like a pro!")}
|
|
371
|
+
|
|
372
|
+
${chalk.dim('Run `memesh tutorial` anytime to review.')}
|
|
373
|
+
`;
|
|
374
|
+
console.log(boxen(message, {
|
|
375
|
+
padding: 1,
|
|
376
|
+
borderColor: 'green',
|
|
377
|
+
borderStyle: 'round',
|
|
378
|
+
}));
|
|
379
|
+
logger.info('Tutorial completed', {
|
|
380
|
+
duration,
|
|
381
|
+
stepsCompleted: this.progress.completedSteps.length,
|
|
382
|
+
totalSteps: this.TOTAL_STEPS,
|
|
383
|
+
});
|
|
384
|
+
}
|
|
385
|
+
showStepHeader(step, title) {
|
|
386
|
+
const progressBar = this.createProgressBar(step, this.TOTAL_STEPS);
|
|
387
|
+
console.log(chalk.cyan(`
|
|
388
|
+
═══════════════════════════════════════════════════════════════════
|
|
389
|
+
${chalk.bold(`Step ${step}/${this.TOTAL_STEPS}: ${title}`)}
|
|
390
|
+
═══════════════════════════════════════════════════════════════════
|
|
391
|
+
`));
|
|
392
|
+
console.log(progressBar + '\\n');
|
|
393
|
+
}
|
|
394
|
+
createProgressBar(current, total) {
|
|
395
|
+
const width = 50;
|
|
396
|
+
const filled = Math.floor((current / total) * width);
|
|
397
|
+
const empty = width - filled;
|
|
398
|
+
const bar = chalk.green('█'.repeat(filled)) + chalk.dim('░'.repeat(empty));
|
|
399
|
+
const percentage = Math.floor((current / total) * 100);
|
|
400
|
+
return `${bar} ${chalk.bold(`${percentage}%`)}`;
|
|
401
|
+
}
|
|
402
|
+
async pressEnterToContinue() {
|
|
403
|
+
await inquirer.prompt([
|
|
404
|
+
{
|
|
405
|
+
type: 'input',
|
|
406
|
+
name: 'continue',
|
|
407
|
+
message: chalk.dim('Press Enter to continue...'),
|
|
408
|
+
},
|
|
409
|
+
]);
|
|
410
|
+
}
|
|
411
|
+
async handleError(error) {
|
|
412
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
413
|
+
logger.error('Tutorial error', { error: errorMessage });
|
|
414
|
+
console.log(chalk.red(`
|
|
415
|
+
❌ Tutorial Error
|
|
416
|
+
|
|
417
|
+
Something went wrong: ${errorMessage}
|
|
418
|
+
|
|
419
|
+
You can:
|
|
420
|
+
1. Try again: memesh tutorial
|
|
421
|
+
2. Skip to docs: docs/QUICK_START.md
|
|
422
|
+
3. Get help: memesh report-issue
|
|
423
|
+
`));
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
export async function runTutorial() {
|
|
427
|
+
const tutorial = new InteractiveTutorial();
|
|
428
|
+
await tutorial.run();
|
|
429
|
+
}
|
|
430
|
+
//# sourceMappingURL=tutorial.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tutorial.js","sourceRoot":"","sources":["../../src/cli/tutorial.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAkDA,eAAO,MAAM,GAAG;;;;;;;;;;;;;;;;CAA+B,CAAC;AAiEhD,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0CZ,CAAC;AAEX,eAAe,SAAS,CAAC"}
|
package/dist/config/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { ConfigurationError } from '../errors/index.js';
|
|
3
|
+
import { safeParseInt, safeParseFloat } from '../utils/index.js';
|
|
3
4
|
const envSchema = z.object({
|
|
4
5
|
MCP_SERVER_MODE: z.string().default('true').transform(val => val === 'true'),
|
|
5
6
|
ANTHROPIC_API_KEY: z.string().optional(),
|
|
@@ -68,26 +69,26 @@ export const appConfig = {
|
|
|
68
69
|
},
|
|
69
70
|
quotaLimits: {
|
|
70
71
|
claude: {
|
|
71
|
-
daily:
|
|
72
|
-
monthly:
|
|
72
|
+
daily: safeParseInt(env.CLAUDE_DAILY_LIMIT, 150, 1, 10000),
|
|
73
|
+
monthly: safeParseInt(env.CLAUDE_MONTHLY_LIMIT, 4500, 1, 100000),
|
|
73
74
|
},
|
|
74
75
|
},
|
|
75
76
|
costs: {
|
|
76
|
-
monthlyBudget:
|
|
77
|
-
alertThreshold:
|
|
77
|
+
monthlyBudget: safeParseFloat(env.MONTHLY_BUDGET_USD, 50, 0, 10000),
|
|
78
|
+
alertThreshold: safeParseFloat(env.COST_ALERT_THRESHOLD, 0.8, 0, 1),
|
|
78
79
|
},
|
|
79
80
|
logging: {
|
|
80
81
|
level: env.LOG_LEVEL,
|
|
81
82
|
enableMetrics: env.ENABLE_METRICS === 'true',
|
|
82
|
-
metricsPort:
|
|
83
|
+
metricsPort: safeParseInt(env.METRICS_PORT, 9090, 1024, 65535),
|
|
83
84
|
},
|
|
84
85
|
server: {
|
|
85
86
|
env: env.NODE_ENV,
|
|
86
|
-
port:
|
|
87
|
+
port: safeParseInt(env.PORT, 3000, 1024, 65535),
|
|
87
88
|
},
|
|
88
89
|
orchestrator: {
|
|
89
90
|
mode: env.ORCHESTRATOR_MODE,
|
|
90
|
-
maxMemoryMB:
|
|
91
|
+
maxMemoryMB: safeParseInt(env.ORCHESTRATOR_MAX_MEMORY_MB, 6144, 512, 32768),
|
|
91
92
|
},
|
|
92
93
|
};
|
|
93
94
|
export default appConfig;
|
package/dist/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,9 +19,12 @@ export declare class BackgroundExecutor {
|
|
|
19
19
|
private attributionManager?;
|
|
20
20
|
private resultHandler;
|
|
21
21
|
private executionMonitor;
|
|
22
|
+
private isShuttingDown;
|
|
23
|
+
private shutdownPromise;
|
|
22
24
|
private readonly MAX_TASK_HISTORY;
|
|
23
25
|
private readonly FORCE_CLEANUP_AGE;
|
|
24
26
|
private readonly MAX_CLEANUP_CANCELS;
|
|
27
|
+
private readonly SHUTDOWN_TIMEOUT_MS;
|
|
25
28
|
constructor(resourceMonitor: ResourceMonitor, eventBus?: UIEventBus);
|
|
26
29
|
executeTask(task: unknown, config: ExecutionConfig): Promise<string>;
|
|
27
30
|
private processQueue;
|
|
@@ -52,5 +55,8 @@ export declare class BackgroundExecutor {
|
|
|
52
55
|
completeTask(taskId: string, result: unknown): Promise<void>;
|
|
53
56
|
failTask(taskId: string, error: Error): Promise<void>;
|
|
54
57
|
private estimateTimeSaved;
|
|
58
|
+
private handleBackgroundTaskError;
|
|
59
|
+
destroy(): Promise<void>;
|
|
60
|
+
private performShutdown;
|
|
55
61
|
}
|
|
56
62
|
//# sourceMappingURL=BackgroundExecutor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackgroundExecutor.d.ts","sourceRoot":"","sources":["../../src/core/BackgroundExecutor.ts"],"names":[],"mappings":"AAkEA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,EACL,eAAe,EACf,cAAc,EACd,QAAQ,EACR,UAAU,EACX,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"BackgroundExecutor.d.ts","sourceRoot":"","sources":["../../src/core/BackgroundExecutor.ts"],"names":[],"mappings":"AAkEA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,EACL,eAAe,EACf,cAAc,EACd,QAAQ,EACR,UAAU,EACX,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAgBjD,qBAAa,YAAa,SAAQ,KAAK;gBACzB,QAAQ,EAAE,MAAM;CAM7B;AA+HD,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,KAAK,CAA8B;IAI3C,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,aAAa,CAA0C;IAC/D,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,mBAAmB,CAAkC;IAC7D,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,QAAQ,CAAC,CAAa;IAC9B,OAAO,CAAC,kBAAkB,CAAC,CAAqB;IAChD,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,eAAe,CAA8B;IAGrD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAW;IAC7C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAM;IAC1C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;gBAuBjC,eAAe,EAAE,eAAe,EAAE,QAAQ,CAAC,EAAE,UAAU;IA6E7D,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAyG1E,OAAO,CAAC,YAAY;YAgDN,kBAAkB;YA6IlB,mBAAmB;IAyCjC,OAAO,CAAC,mBAAmB;IAmB3B,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,mBAAmB;IAsD3B,OAAO,CAAC,iBAAiB;IA+BzB,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,uBAAuB;IA8C/B,OAAO,CAAC,mBAAmB;IAyErB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IA8E9C,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2F/C,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAwCnD,WAAW,IAAI,cAAc,EAAE;IA4C/B,gBAAgB,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,EAAE;IA4CtD,QAAQ,IAAI;QACV,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;KACnD;IAgDD,kBAAkB,IAAI,MAAM;IAiDtB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAoE5D,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAiC3D,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,yBAAyB;IAiD3B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAgBhB,eAAe;CAwG9B"}
|