@pcircle/memesh 2.7.0 → 2.8.0
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 +38 -34
- package/README.zh-TW.md +42 -46
- package/dist/cli/setup-wizard.d.ts.map +1 -1
- package/dist/cli/setup-wizard.js +0 -41
- package/dist/cli/setup-wizard.js.map +1 -1
- package/dist/cloud/MeMeshCloudClient.d.ts +88 -0
- package/dist/cloud/MeMeshCloudClient.d.ts.map +1 -0
- package/dist/cloud/MeMeshCloudClient.js +147 -0
- package/dist/cloud/MeMeshCloudClient.js.map +1 -0
- package/dist/cloud/index.d.ts +3 -0
- package/dist/cloud/index.d.ts.map +1 -0
- package/dist/cloud/index.js +2 -0
- package/dist/cloud/index.js.map +1 -0
- package/dist/config/index.d.ts +12 -2
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +10 -0
- package/dist/config/index.js.map +1 -1
- package/dist/core/AgentRegistry.d.ts +1 -2
- package/dist/core/AgentRegistry.d.ts.map +1 -1
- package/dist/core/AgentRegistry.js.map +1 -1
- package/dist/core/HookIntegration.d.ts +2 -5
- package/dist/core/HookIntegration.d.ts.map +1 -1
- package/dist/core/HookIntegration.js +9 -11
- package/dist/core/HookIntegration.js.map +1 -1
- package/dist/core/ServiceLocator.d.ts.map +1 -1
- package/dist/core/ServiceLocator.js +2 -1
- package/dist/core/ServiceLocator.js.map +1 -1
- package/dist/embeddings/EmbeddingService.d.ts +20 -0
- package/dist/embeddings/EmbeddingService.d.ts.map +1 -0
- package/dist/embeddings/EmbeddingService.js +109 -0
- package/dist/embeddings/EmbeddingService.js.map +1 -0
- package/dist/embeddings/ModelManager.d.ts +18 -0
- package/dist/embeddings/ModelManager.d.ts.map +1 -0
- package/dist/embeddings/ModelManager.js +84 -0
- package/dist/embeddings/ModelManager.js.map +1 -0
- package/dist/embeddings/VectorExtension.d.ts +19 -0
- package/dist/embeddings/VectorExtension.d.ts.map +1 -0
- package/dist/embeddings/VectorExtension.js +107 -0
- package/dist/embeddings/VectorExtension.js.map +1 -0
- package/dist/embeddings/index.d.ts +4 -0
- package/dist/embeddings/index.d.ts.map +1 -0
- package/dist/embeddings/index.js +4 -0
- package/dist/embeddings/index.js.map +1 -0
- package/dist/errors/ErrorClassifier.d.ts.map +1 -1
- package/dist/errors/ErrorClassifier.js +0 -27
- package/dist/errors/ErrorClassifier.js.map +1 -1
- package/dist/i18n/locales/en.js +1 -1
- package/dist/i18n/locales/en.js.map +1 -1
- package/dist/index.d.ts +0 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -76
- package/dist/index.js.map +1 -1
- package/dist/integrations/session-memory/SessionContextInjector.d.ts +30 -0
- package/dist/integrations/session-memory/SessionContextInjector.d.ts.map +1 -0
- package/dist/integrations/session-memory/SessionContextInjector.js +192 -0
- package/dist/integrations/session-memory/SessionContextInjector.js.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryIngester.d.ts +15 -0
- package/dist/integrations/session-memory/SessionMemoryIngester.d.ts.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryIngester.js +229 -0
- package/dist/integrations/session-memory/SessionMemoryIngester.js.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryParser.d.ts +16 -0
- package/dist/integrations/session-memory/SessionMemoryParser.d.ts.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryParser.js +271 -0
- package/dist/integrations/session-memory/SessionMemoryParser.js.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryPipeline.d.ts +20 -0
- package/dist/integrations/session-memory/SessionMemoryPipeline.d.ts.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryPipeline.js +60 -0
- package/dist/integrations/session-memory/SessionMemoryPipeline.js.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryWatcher.d.ts +27 -0
- package/dist/integrations/session-memory/SessionMemoryWatcher.d.ts.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryWatcher.js +145 -0
- package/dist/integrations/session-memory/SessionMemoryWatcher.js.map +1 -0
- package/dist/integrations/session-memory/index.d.ts +9 -0
- package/dist/integrations/session-memory/index.d.ts.map +1 -0
- package/dist/integrations/session-memory/index.js +6 -0
- package/dist/integrations/session-memory/index.js.map +1 -0
- package/dist/integrations/session-memory/types.d.ts +74 -0
- package/dist/integrations/session-memory/types.d.ts.map +1 -0
- package/dist/integrations/session-memory/types.js +22 -0
- package/dist/integrations/session-memory/types.js.map +1 -0
- package/dist/knowledge-graph/index.d.ts.map +1 -1
- package/dist/knowledge-graph/index.js.map +1 -1
- package/dist/mcp/BuddyCommands.d.ts +0 -1
- package/dist/mcp/BuddyCommands.d.ts.map +1 -1
- package/dist/mcp/BuddyCommands.js +49 -215
- package/dist/mcp/BuddyCommands.js.map +1 -1
- package/dist/mcp/HumanInLoopUI.d.ts +1 -1
- package/dist/mcp/HumanInLoopUI.d.ts.map +1 -1
- package/dist/mcp/ServerInitializer.d.ts +3 -18
- package/dist/mcp/ServerInitializer.d.ts.map +1 -1
- package/dist/mcp/ServerInitializer.js +8 -41
- package/dist/mcp/ServerInitializer.js.map +1 -1
- package/dist/mcp/SessionBootstrapper.d.ts +3 -1
- package/dist/mcp/SessionBootstrapper.d.ts.map +1 -1
- package/dist/mcp/SessionBootstrapper.js +37 -25
- package/dist/mcp/SessionBootstrapper.js.map +1 -1
- package/dist/mcp/ToolDefinitions.d.ts +1 -0
- package/dist/mcp/ToolDefinitions.d.ts.map +1 -1
- package/dist/mcp/ToolDefinitions.js +67 -243
- package/dist/mcp/ToolDefinitions.js.map +1 -1
- package/dist/mcp/ToolRouter.d.ts +6 -9
- package/dist/mcp/ToolRouter.d.ts.map +1 -1
- package/dist/mcp/ToolRouter.js +44 -74
- package/dist/mcp/ToolRouter.js.map +1 -1
- package/dist/mcp/handlers/BuddyHandlers.d.ts +1 -3
- package/dist/mcp/handlers/BuddyHandlers.d.ts.map +1 -1
- package/dist/mcp/handlers/BuddyHandlers.js +2 -4
- package/dist/mcp/handlers/BuddyHandlers.js.map +1 -1
- package/dist/mcp/handlers/BuddyRecordMistake.d.ts +1 -1
- package/dist/mcp/handlers/BuddyRecordMistake.d.ts.map +1 -1
- package/dist/mcp/handlers/BuddyRecordMistake.js +1 -1
- package/dist/mcp/handlers/BuddyRecordMistake.js.map +1 -1
- package/dist/mcp/handlers/ToolHandlers.d.ts +1 -21
- package/dist/mcp/handlers/ToolHandlers.d.ts.map +1 -1
- package/dist/mcp/handlers/ToolHandlers.js +73 -302
- package/dist/mcp/handlers/ToolHandlers.js.map +1 -1
- package/dist/mcp/handlers/index.d.ts +0 -1
- package/dist/mcp/handlers/index.d.ts.map +1 -1
- package/dist/mcp/handlers/index.js +0 -1
- package/dist/mcp/handlers/index.js.map +1 -1
- package/dist/mcp/index.d.ts +1 -1
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/resources/best-practices.md +1 -1
- package/dist/mcp/resources/ccb-complete-guide.md +25 -70
- package/dist/mcp/resources/examples.md +1 -1
- package/dist/mcp/resources/handlers/TaskLogsHandler.d.ts.map +1 -1
- package/dist/mcp/resources/handlers/TaskLogsHandler.js +3 -4
- package/dist/mcp/resources/handlers/TaskLogsHandler.js.map +1 -1
- package/dist/mcp/resources/quick-reference.md +1 -1
- package/dist/mcp/resources/usage-guide.md +1 -1
- package/dist/mcp/schemas/OutputSchemas.d.ts +34 -372
- package/dist/mcp/schemas/OutputSchemas.d.ts.map +1 -1
- package/dist/mcp/schemas/OutputSchemas.js +17 -206
- package/dist/mcp/schemas/OutputSchemas.js.map +1 -1
- package/dist/mcp/server-bootstrap.js +37 -90
- package/dist/mcp/server-bootstrap.js.map +1 -1
- package/dist/mcp/server.d.ts +0 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +16 -29
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools/buddy-do.d.ts +1 -2
- package/dist/mcp/tools/buddy-do.d.ts.map +1 -1
- package/dist/mcp/tools/buddy-do.js +5 -27
- package/dist/mcp/tools/buddy-do.js.map +1 -1
- package/dist/mcp/tools/buddy-remember.d.ts +14 -1
- package/dist/mcp/tools/buddy-remember.d.ts.map +1 -1
- package/dist/mcp/tools/buddy-remember.js +154 -13
- package/dist/mcp/tools/buddy-remember.js.map +1 -1
- package/dist/mcp/tools/memesh-cloud-sync.d.ts +30 -0
- package/dist/mcp/tools/memesh-cloud-sync.d.ts.map +1 -0
- package/dist/mcp/tools/memesh-cloud-sync.js +185 -0
- package/dist/mcp/tools/memesh-cloud-sync.js.map +1 -0
- package/dist/mcp/validation.d.ts +1 -58
- package/dist/mcp/validation.d.ts.map +1 -1
- package/dist/mcp/validation.js +0 -47
- package/dist/mcp/validation.js.map +1 -1
- package/dist/memory/SmartMemoryQuery.d.ts.map +1 -1
- package/dist/memory/SmartMemoryQuery.js +3 -2
- package/dist/memory/SmartMemoryQuery.js.map +1 -1
- package/dist/memory/UnifiedMemoryStore.js +1 -1
- package/dist/memory/UnifiedMemoryStore.js.map +1 -1
- package/dist/memory/types/pattern-types.d.ts +1 -1
- package/dist/memory/types/pattern-types.d.ts.map +1 -1
- package/dist/prompts/templates/PromptTemplates.d.ts +1 -1
- package/dist/prompts/templates/PromptTemplates.d.ts.map +1 -1
- package/dist/prompts/templates/PromptTemplates.js.map +1 -1
- package/dist/telemetry/TelemetryStore.d.ts.map +1 -1
- package/dist/telemetry/TelemetryStore.js.map +1 -1
- package/dist/types/AgentClassification.d.ts +24 -0
- package/dist/types/AgentClassification.d.ts.map +1 -1
- package/dist/types/AgentClassification.js +12 -0
- package/dist/types/AgentClassification.js.map +1 -1
- package/dist/ui/UIEventBus.js +2 -2
- package/dist/ui/UIEventBus.js.map +1 -1
- package/dist/ui/design-tokens.d.ts.map +1 -1
- package/dist/ui/design-tokens.js +6 -7
- package/dist/ui/design-tokens.js.map +1 -1
- package/dist/utils/logger.js +1 -1
- package/dist/utils/logger.js.map +1 -1
- package/package.json +7 -5
- package/plugin.json +1 -1
- package/scripts/postinstall.js +10 -67
- package/dist/a2a/client/A2AClient.d.ts +0 -23
- package/dist/a2a/client/A2AClient.d.ts.map +0 -1
- package/dist/a2a/client/A2AClient.js +0 -260
- package/dist/a2a/client/A2AClient.js.map +0 -1
- package/dist/a2a/client/index.d.ts +0 -2
- package/dist/a2a/client/index.d.ts.map +0 -1
- package/dist/a2a/client/index.js +0 -2
- package/dist/a2a/client/index.js.map +0 -1
- package/dist/a2a/constants.d.ts +0 -34
- package/dist/a2a/constants.d.ts.map +0 -1
- package/dist/a2a/constants.js +0 -34
- package/dist/a2a/constants.js.map +0 -1
- package/dist/a2a/delegator/MCPTaskDelegator.d.ts +0 -19
- package/dist/a2a/delegator/MCPTaskDelegator.d.ts.map +0 -1
- package/dist/a2a/delegator/MCPTaskDelegator.js +0 -184
- package/dist/a2a/delegator/MCPTaskDelegator.js.map +0 -1
- package/dist/a2a/delegator/index.d.ts +0 -3
- package/dist/a2a/delegator/index.d.ts.map +0 -1
- package/dist/a2a/delegator/index.js +0 -2
- package/dist/a2a/delegator/index.js.map +0 -1
- package/dist/a2a/delegator/types.d.ts +0 -9
- package/dist/a2a/delegator/types.d.ts.map +0 -1
- package/dist/a2a/delegator/types.js +0 -2
- package/dist/a2a/delegator/types.js.map +0 -1
- package/dist/a2a/errors/ErrorCodes.d.ts +0 -26
- package/dist/a2a/errors/ErrorCodes.d.ts.map +0 -1
- package/dist/a2a/errors/ErrorCodes.js +0 -25
- package/dist/a2a/errors/ErrorCodes.js.map +0 -1
- package/dist/a2a/errors/ErrorMessages.d.ts +0 -28
- package/dist/a2a/errors/ErrorMessages.d.ts.map +0 -1
- package/dist/a2a/errors/ErrorMessages.js +0 -51
- package/dist/a2a/errors/ErrorMessages.js.map +0 -1
- package/dist/a2a/errors/index.d.ts +0 -3
- package/dist/a2a/errors/index.d.ts.map +0 -1
- package/dist/a2a/errors/index.js +0 -3
- package/dist/a2a/errors/index.js.map +0 -1
- package/dist/a2a/executor/TaskExecutor.d.ts +0 -11
- package/dist/a2a/executor/TaskExecutor.d.ts.map +0 -1
- package/dist/a2a/executor/TaskExecutor.js +0 -15
- package/dist/a2a/executor/TaskExecutor.js.map +0 -1
- package/dist/a2a/executor/index.d.ts +0 -2
- package/dist/a2a/executor/index.d.ts.map +0 -1
- package/dist/a2a/executor/index.js +0 -2
- package/dist/a2a/executor/index.js.map +0 -1
- package/dist/a2a/jobs/TimeoutChecker.d.ts +0 -49
- package/dist/a2a/jobs/TimeoutChecker.d.ts.map +0 -1
- package/dist/a2a/jobs/TimeoutChecker.js +0 -176
- package/dist/a2a/jobs/TimeoutChecker.js.map +0 -1
- package/dist/a2a/metrics/A2AMetrics.d.ts +0 -38
- package/dist/a2a/metrics/A2AMetrics.d.ts.map +0 -1
- package/dist/a2a/metrics/A2AMetrics.js +0 -142
- package/dist/a2a/metrics/A2AMetrics.js.map +0 -1
- package/dist/a2a/metrics/index.d.ts +0 -3
- package/dist/a2a/metrics/index.d.ts.map +0 -1
- package/dist/a2a/metrics/index.js +0 -2
- package/dist/a2a/metrics/index.js.map +0 -1
- package/dist/a2a/server/A2AServer.d.ts +0 -34
- package/dist/a2a/server/A2AServer.d.ts.map +0 -1
- package/dist/a2a/server/A2AServer.js +0 -160
- package/dist/a2a/server/A2AServer.js.map +0 -1
- package/dist/a2a/server/index.d.ts +0 -4
- package/dist/a2a/server/index.d.ts.map +0 -1
- package/dist/a2a/server/index.js +0 -4
- package/dist/a2a/server/index.js.map +0 -1
- package/dist/a2a/server/middleware/auth.d.ts +0 -6
- package/dist/a2a/server/middleware/auth.d.ts.map +0 -1
- package/dist/a2a/server/middleware/auth.js +0 -64
- package/dist/a2a/server/middleware/auth.js.map +0 -1
- package/dist/a2a/server/middleware/csrf.d.ts +0 -7
- package/dist/a2a/server/middleware/csrf.d.ts.map +0 -1
- package/dist/a2a/server/middleware/csrf.js +0 -169
- package/dist/a2a/server/middleware/csrf.js.map +0 -1
- package/dist/a2a/server/middleware/rateLimit.d.ts +0 -9
- package/dist/a2a/server/middleware/rateLimit.d.ts.map +0 -1
- package/dist/a2a/server/middleware/rateLimit.js +0 -192
- package/dist/a2a/server/middleware/rateLimit.js.map +0 -1
- package/dist/a2a/server/middleware/resourceProtection.d.ts +0 -17
- package/dist/a2a/server/middleware/resourceProtection.d.ts.map +0 -1
- package/dist/a2a/server/middleware/resourceProtection.js +0 -258
- package/dist/a2a/server/middleware/resourceProtection.js.map +0 -1
- package/dist/a2a/server/middleware/timeout.d.ts +0 -4
- package/dist/a2a/server/middleware/timeout.d.ts.map +0 -1
- package/dist/a2a/server/middleware/timeout.js +0 -56
- package/dist/a2a/server/middleware/timeout.js.map +0 -1
- package/dist/a2a/server/middleware.d.ts +0 -6
- package/dist/a2a/server/middleware.d.ts.map +0 -1
- package/dist/a2a/server/middleware.js +0 -72
- package/dist/a2a/server/middleware.js.map +0 -1
- package/dist/a2a/server/routes.d.ts +0 -18
- package/dist/a2a/server/routes.d.ts.map +0 -1
- package/dist/a2a/server/routes.js +0 -176
- package/dist/a2a/server/routes.js.map +0 -1
- package/dist/a2a/server/validation/index.d.ts +0 -2
- package/dist/a2a/server/validation/index.d.ts.map +0 -1
- package/dist/a2a/server/validation/index.js +0 -2
- package/dist/a2a/server/validation/index.js.map +0 -1
- package/dist/a2a/server/validation/sendMessageSchema.d.ts +0 -112
- package/dist/a2a/server/validation/sendMessageSchema.d.ts.map +0 -1
- package/dist/a2a/server/validation/sendMessageSchema.js +0 -143
- package/dist/a2a/server/validation/sendMessageSchema.js.map +0 -1
- package/dist/a2a/storage/AgentRegistry.d.ts +0 -26
- package/dist/a2a/storage/AgentRegistry.d.ts.map +0 -1
- package/dist/a2a/storage/AgentRegistry.js +0 -197
- package/dist/a2a/storage/AgentRegistry.js.map +0 -1
- package/dist/a2a/storage/TaskQueue.d.ts +0 -27
- package/dist/a2a/storage/TaskQueue.d.ts.map +0 -1
- package/dist/a2a/storage/TaskQueue.js +0 -339
- package/dist/a2a/storage/TaskQueue.js.map +0 -1
- package/dist/a2a/storage/index.d.ts +0 -3
- package/dist/a2a/storage/index.d.ts.map +0 -1
- package/dist/a2a/storage/index.js +0 -3
- package/dist/a2a/storage/index.js.map +0 -1
- package/dist/a2a/storage/inputValidation.d.ts +0 -18
- package/dist/a2a/storage/inputValidation.d.ts.map +0 -1
- package/dist/a2a/storage/inputValidation.js +0 -101
- package/dist/a2a/storage/inputValidation.js.map +0 -1
- package/dist/a2a/storage/registry-schemas.sql +0 -20
- package/dist/a2a/storage/schemas.sql +0 -64
- package/dist/a2a/types/agent-card.d.ts +0 -59
- package/dist/a2a/types/agent-card.d.ts.map +0 -1
- package/dist/a2a/types/agent-card.js +0 -2
- package/dist/a2a/types/agent-card.js.map +0 -1
- package/dist/a2a/types/index.d.ts +0 -6
- package/dist/a2a/types/index.d.ts.map +0 -1
- package/dist/a2a/types/index.js +0 -2
- package/dist/a2a/types/index.js.map +0 -1
- package/dist/a2a/types/message.d.ts +0 -16
- package/dist/a2a/types/message.d.ts.map +0 -1
- package/dist/a2a/types/message.js +0 -2
- package/dist/a2a/types/message.js.map +0 -1
- package/dist/a2a/types/protocol.d.ts +0 -60
- package/dist/a2a/types/protocol.d.ts.map +0 -1
- package/dist/a2a/types/protocol.js +0 -2
- package/dist/a2a/types/protocol.js.map +0 -1
- package/dist/a2a/types/rateLimit.d.ts +0 -26
- package/dist/a2a/types/rateLimit.d.ts.map +0 -1
- package/dist/a2a/types/rateLimit.js +0 -2
- package/dist/a2a/types/rateLimit.js.map +0 -1
- package/dist/a2a/types/task.d.ts +0 -73
- package/dist/a2a/types/task.d.ts.map +0 -1
- package/dist/a2a/types/task.js +0 -2
- package/dist/a2a/types/task.js.map +0 -1
- package/dist/agents/DevelopmentButler.d.ts +0 -89
- package/dist/agents/DevelopmentButler.d.ts.map +0 -1
- package/dist/agents/DevelopmentButler.js +0 -449
- package/dist/agents/DevelopmentButler.js.map +0 -1
- package/dist/agents/E2EHealingAgent.d.ts +0 -29
- package/dist/agents/E2EHealingAgent.d.ts.map +0 -1
- package/dist/agents/E2EHealingAgent.js +0 -148
- package/dist/agents/E2EHealingAgent.js.map +0 -1
- package/dist/agents/TestWriterAgent.d.ts +0 -26
- package/dist/agents/TestWriterAgent.d.ts.map +0 -1
- package/dist/agents/TestWriterAgent.js +0 -139
- package/dist/agents/TestWriterAgent.js.map +0 -1
- package/dist/agents/base/AgentExecutor.d.ts +0 -7
- package/dist/agents/base/AgentExecutor.d.ts.map +0 -1
- package/dist/agents/base/AgentExecutor.js +0 -13
- package/dist/agents/base/AgentExecutor.js.map +0 -1
- package/dist/agents/base/index.d.ts +0 -2
- package/dist/agents/base/index.d.ts.map +0 -1
- package/dist/agents/base/index.js +0 -2
- package/dist/agents/base/index.js.map +0 -1
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.d.ts +0 -24
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.d.ts.map +0 -1
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.js +0 -55
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.js.map +0 -1
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.d.ts +0 -22
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.d.ts.map +0 -1
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.js +0 -36
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.js.map +0 -1
- package/dist/agents/e2e-healing/config.d.ts +0 -4
- package/dist/agents/e2e-healing/config.d.ts.map +0 -1
- package/dist/agents/e2e-healing/config.js +0 -28
- package/dist/agents/e2e-healing/config.js.map +0 -1
- package/dist/agents/e2e-healing/generators/FixGenerator.d.ts +0 -21
- package/dist/agents/e2e-healing/generators/FixGenerator.d.ts.map +0 -1
- package/dist/agents/e2e-healing/generators/FixGenerator.js +0 -33
- package/dist/agents/e2e-healing/generators/FixGenerator.js.map +0 -1
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.d.ts +0 -29
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.d.ts.map +0 -1
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.js +0 -70
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.js.map +0 -1
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.d.ts +0 -30
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.d.ts.map +0 -1
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.js +0 -115
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.js.map +0 -1
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.d.ts +0 -19
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.d.ts.map +0 -1
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.js +0 -79
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.js.map +0 -1
- package/dist/agents/e2e-healing/safety/CircuitBreaker.d.ts +0 -26
- package/dist/agents/e2e-healing/safety/CircuitBreaker.d.ts.map +0 -1
- package/dist/agents/e2e-healing/safety/CircuitBreaker.js +0 -75
- package/dist/agents/e2e-healing/safety/CircuitBreaker.js.map +0 -1
- package/dist/agents/e2e-healing/safety/RollbackManager.d.ts +0 -31
- package/dist/agents/e2e-healing/safety/RollbackManager.d.ts.map +0 -1
- package/dist/agents/e2e-healing/safety/RollbackManager.js +0 -130
- package/dist/agents/e2e-healing/safety/RollbackManager.js.map +0 -1
- package/dist/agents/e2e-healing/safety/SafetyGate.d.ts +0 -21
- package/dist/agents/e2e-healing/safety/SafetyGate.d.ts.map +0 -1
- package/dist/agents/e2e-healing/safety/SafetyGate.js +0 -62
- package/dist/agents/e2e-healing/safety/SafetyGate.js.map +0 -1
- package/dist/agents/e2e-healing/safety/ScopeLimiter.d.ts +0 -14
- package/dist/agents/e2e-healing/safety/ScopeLimiter.d.ts.map +0 -1
- package/dist/agents/e2e-healing/safety/ScopeLimiter.js +0 -36
- package/dist/agents/e2e-healing/safety/ScopeLimiter.js.map +0 -1
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.d.ts +0 -29
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.d.ts.map +0 -1
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.js +0 -86
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.js.map +0 -1
- package/dist/agents/e2e-healing/types.d.ts +0 -46
- package/dist/agents/e2e-healing/types.d.ts.map +0 -1
- package/dist/agents/e2e-healing/types.js +0 -2
- package/dist/agents/e2e-healing/types.js.map +0 -1
- package/dist/agents/knowledge/KnowledgeGraph.d.ts +0 -26
- package/dist/agents/knowledge/KnowledgeGraph.d.ts.map +0 -1
- package/dist/agents/knowledge/KnowledgeGraph.js +0 -106
- package/dist/agents/knowledge/KnowledgeGraph.js.map +0 -1
- package/dist/agents/knowledge/KnowledgeGraphSQLite.d.ts +0 -42
- package/dist/agents/knowledge/KnowledgeGraphSQLite.d.ts.map +0 -1
- package/dist/agents/knowledge/KnowledgeGraphSQLite.js +0 -349
- package/dist/agents/knowledge/KnowledgeGraphSQLite.js.map +0 -1
- package/dist/agents/knowledge/index.d.ts +0 -94
- package/dist/agents/knowledge/index.d.ts.map +0 -1
- package/dist/agents/knowledge/index.js +0 -296
- package/dist/agents/knowledge/index.js.map +0 -1
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.d.ts +0 -25
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.d.ts.map +0 -1
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.js +0 -344
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.js.map +0 -1
- package/dist/agents/knowledge/types.d.ts +0 -21
- package/dist/agents/knowledge/types.d.ts.map +0 -1
- package/dist/agents/knowledge/types.js +0 -2
- package/dist/agents/knowledge/types.js.map +0 -1
- package/dist/agents/templates/ci-templates.d.ts +0 -8
- package/dist/agents/templates/ci-templates.d.ts.map +0 -1
- package/dist/agents/templates/ci-templates.js +0 -119
- package/dist/agents/templates/ci-templates.js.map +0 -1
- package/dist/agents/templates/test-templates.d.ts +0 -18
- package/dist/agents/templates/test-templates.d.ts.map +0 -1
- package/dist/agents/templates/test-templates.js +0 -22
- package/dist/agents/templates/test-templates.js.map +0 -1
- package/dist/core/BackgroundExecutor.d.ts +0 -62
- package/dist/core/BackgroundExecutor.d.ts.map +0 -1
- package/dist/core/BackgroundExecutor.js +0 -600
- package/dist/core/BackgroundExecutor.js.map +0 -1
- package/dist/core/ClaudeMdRuleExtractor.d.ts +0 -16
- package/dist/core/ClaudeMdRuleExtractor.d.ts.map +0 -1
- package/dist/core/ClaudeMdRuleExtractor.js +0 -231
- package/dist/core/ClaudeMdRuleExtractor.js.map +0 -1
- package/dist/core/ExecutionMonitor.d.ts +0 -29
- package/dist/core/ExecutionMonitor.d.ts.map +0 -1
- package/dist/core/ExecutionMonitor.js +0 -124
- package/dist/core/ExecutionMonitor.js.map +0 -1
- package/dist/core/ExecutionQueue.d.ts +0 -21
- package/dist/core/ExecutionQueue.d.ts.map +0 -1
- package/dist/core/ExecutionQueue.js +0 -104
- package/dist/core/ExecutionQueue.js.map +0 -1
- package/dist/core/PromptEnhancer.d.ts +0 -13
- package/dist/core/PromptEnhancer.d.ts.map +0 -1
- package/dist/core/PromptEnhancer.js +0 -112
- package/dist/core/PromptEnhancer.js.map +0 -1
- package/dist/core/ResultHandler.d.ts +0 -9
- package/dist/core/ResultHandler.d.ts.map +0 -1
- package/dist/core/ResultHandler.js +0 -72
- package/dist/core/ResultHandler.js.map +0 -1
- package/dist/core/SessionContextMonitor.d.ts +0 -41
- package/dist/core/SessionContextMonitor.d.ts.map +0 -1
- package/dist/core/SessionContextMonitor.js +0 -159
- package/dist/core/SessionContextMonitor.js.map +0 -1
- package/dist/core/SessionTokenTracker.d.ts +0 -43
- package/dist/core/SessionTokenTracker.d.ts.map +0 -1
- package/dist/core/SessionTokenTracker.js +0 -132
- package/dist/core/SessionTokenTracker.js.map +0 -1
- package/dist/core/SkillsKnowledgeIntegrator.d.ts +0 -28
- package/dist/core/SkillsKnowledgeIntegrator.d.ts.map +0 -1
- package/dist/core/SkillsKnowledgeIntegrator.js +0 -149
- package/dist/core/SkillsKnowledgeIntegrator.js.map +0 -1
- package/dist/core/TaskScheduler.d.ts +0 -19
- package/dist/core/TaskScheduler.d.ts.map +0 -1
- package/dist/core/TaskScheduler.js +0 -59
- package/dist/core/TaskScheduler.js.map +0 -1
- package/dist/core/WorkflowEnforcementEngine.d.ts +0 -46
- package/dist/core/WorkflowEnforcementEngine.d.ts.map +0 -1
- package/dist/core/WorkflowEnforcementEngine.js +0 -277
- package/dist/core/WorkflowEnforcementEngine.js.map +0 -1
- package/dist/core/WorkflowGuidanceEngine.d.ts +0 -42
- package/dist/core/WorkflowGuidanceEngine.d.ts.map +0 -1
- package/dist/core/WorkflowGuidanceEngine.js +0 -141
- package/dist/core/WorkflowGuidanceEngine.js.map +0 -1
- package/dist/evolution/ABTestManager.d.ts +0 -21
- package/dist/evolution/ABTestManager.d.ts.map +0 -1
- package/dist/evolution/ABTestManager.js +0 -262
- package/dist/evolution/ABTestManager.js.map +0 -1
- package/dist/evolution/AgentEvolutionConfig.d.ts +0 -32
- package/dist/evolution/AgentEvolutionConfig.d.ts.map +0 -1
- package/dist/evolution/AgentEvolutionConfig.js +0 -311
- package/dist/evolution/AgentEvolutionConfig.js.map +0 -1
- package/dist/evolution/CloudEvolutionClient.d.ts +0 -39
- package/dist/evolution/CloudEvolutionClient.d.ts.map +0 -1
- package/dist/evolution/CloudEvolutionClient.js +0 -35
- package/dist/evolution/CloudEvolutionClient.js.map +0 -1
- package/dist/evolution/ContextMatcher.d.ts +0 -24
- package/dist/evolution/ContextMatcher.d.ts.map +0 -1
- package/dist/evolution/ContextMatcher.js +0 -85
- package/dist/evolution/ContextMatcher.js.map +0 -1
- package/dist/evolution/EvolutionBootstrap.d.ts +0 -69
- package/dist/evolution/EvolutionBootstrap.d.ts.map +0 -1
- package/dist/evolution/EvolutionBootstrap.js +0 -332
- package/dist/evolution/EvolutionBootstrap.js.map +0 -1
- package/dist/evolution/EvolutionMonitor.d.ts +0 -10
- package/dist/evolution/EvolutionMonitor.d.ts.map +0 -1
- package/dist/evolution/EvolutionMonitor.js +0 -17
- package/dist/evolution/EvolutionMonitor.js.map +0 -1
- package/dist/evolution/FeedbackCollector.d.ts +0 -19
- package/dist/evolution/FeedbackCollector.d.ts.map +0 -1
- package/dist/evolution/FeedbackCollector.js +0 -40
- package/dist/evolution/FeedbackCollector.js.map +0 -1
- package/dist/evolution/KnowledgeTransferManager.d.ts +0 -16
- package/dist/evolution/KnowledgeTransferManager.d.ts.map +0 -1
- package/dist/evolution/KnowledgeTransferManager.js +0 -50
- package/dist/evolution/KnowledgeTransferManager.js.map +0 -1
- package/dist/evolution/LearningManager.d.ts +0 -18
- package/dist/evolution/LearningManager.d.ts.map +0 -1
- package/dist/evolution/LearningManager.js +0 -87
- package/dist/evolution/LearningManager.js.map +0 -1
- package/dist/evolution/LocalMistakeDetector.d.ts +0 -20
- package/dist/evolution/LocalMistakeDetector.d.ts.map +0 -1
- package/dist/evolution/LocalMistakeDetector.js +0 -233
- package/dist/evolution/LocalMistakeDetector.js.map +0 -1
- package/dist/evolution/MultiObjectiveOptimizer.d.ts +0 -9
- package/dist/evolution/MultiObjectiveOptimizer.d.ts.map +0 -1
- package/dist/evolution/MultiObjectiveOptimizer.js +0 -107
- package/dist/evolution/MultiObjectiveOptimizer.js.map +0 -1
- package/dist/evolution/PatternExplainer.d.ts +0 -14
- package/dist/evolution/PatternExplainer.d.ts.map +0 -1
- package/dist/evolution/PatternExplainer.js +0 -113
- package/dist/evolution/PatternExplainer.js.map +0 -1
- package/dist/evolution/PerformanceTracker.d.ts +0 -29
- package/dist/evolution/PerformanceTracker.d.ts.map +0 -1
- package/dist/evolution/PerformanceTracker.js +0 -351
- package/dist/evolution/PerformanceTracker.js.map +0 -1
- package/dist/evolution/StatisticalAnalyzer.d.ts +0 -21
- package/dist/evolution/StatisticalAnalyzer.d.ts.map +0 -1
- package/dist/evolution/StatisticalAnalyzer.js +0 -271
- package/dist/evolution/StatisticalAnalyzer.js.map +0 -1
- package/dist/evolution/TransferabilityChecker.d.ts +0 -11
- package/dist/evolution/TransferabilityChecker.d.ts.map +0 -1
- package/dist/evolution/TransferabilityChecker.js +0 -78
- package/dist/evolution/TransferabilityChecker.js.map +0 -1
- package/dist/evolution/index.d.ts +0 -8
- package/dist/evolution/index.d.ts.map +0 -1
- package/dist/evolution/index.js +0 -6
- package/dist/evolution/index.js.map +0 -1
- package/dist/evolution/instrumentation/SpanTracker.d.ts +0 -64
- package/dist/evolution/instrumentation/SpanTracker.d.ts.map +0 -1
- package/dist/evolution/instrumentation/SpanTracker.js +0 -229
- package/dist/evolution/instrumentation/SpanTracker.js.map +0 -1
- package/dist/evolution/instrumentation/withEvolutionTracking.d.ts +0 -19
- package/dist/evolution/instrumentation/withEvolutionTracking.d.ts.map +0 -1
- package/dist/evolution/instrumentation/withEvolutionTracking.js +0 -253
- package/dist/evolution/instrumentation/withEvolutionTracking.js.map +0 -1
- package/dist/evolution/integration-test-scenarios.d.ts +0 -56
- package/dist/evolution/integration-test-scenarios.d.ts.map +0 -1
- package/dist/evolution/integration-test-scenarios.js +0 -131
- package/dist/evolution/integration-test-scenarios.js.map +0 -1
- package/dist/evolution/links/LinkManager.d.ts +0 -17
- package/dist/evolution/links/LinkManager.d.ts.map +0 -1
- package/dist/evolution/links/LinkManager.js +0 -41
- package/dist/evolution/links/LinkManager.js.map +0 -1
- package/dist/evolution/storage/EvolutionStore.d.ts +0 -87
- package/dist/evolution/storage/EvolutionStore.d.ts.map +0 -1
- package/dist/evolution/storage/EvolutionStore.js +0 -2
- package/dist/evolution/storage/EvolutionStore.js.map +0 -1
- package/dist/evolution/storage/IEvolutionStore.d.ts +0 -87
- package/dist/evolution/storage/IEvolutionStore.d.ts.map +0 -1
- package/dist/evolution/storage/IEvolutionStore.js +0 -2
- package/dist/evolution/storage/IEvolutionStore.js.map +0 -1
- package/dist/evolution/storage/SQLiteStore.d.ts +0 -116
- package/dist/evolution/storage/SQLiteStore.d.ts.map +0 -1
- package/dist/evolution/storage/SQLiteStore.js +0 -965
- package/dist/evolution/storage/SQLiteStore.js.map +0 -1
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.d.ts +0 -109
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.d.ts.map +0 -1
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.js +0 -1033
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.js.map +0 -1
- package/dist/evolution/storage/index.d.ts +0 -6
- package/dist/evolution/storage/index.d.ts.map +0 -1
- package/dist/evolution/storage/index.js +0 -3
- package/dist/evolution/storage/index.js.map +0 -1
- package/dist/evolution/storage/migrations/MigrationManager.d.ts +0 -17
- package/dist/evolution/storage/migrations/MigrationManager.d.ts.map +0 -1
- package/dist/evolution/storage/migrations/MigrationManager.js +0 -242
- package/dist/evolution/storage/migrations/MigrationManager.js.map +0 -1
- package/dist/evolution/storage/repositories/AdaptationRepository.d.ts +0 -17
- package/dist/evolution/storage/repositories/AdaptationRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/AdaptationRepository.js +0 -82
- package/dist/evolution/storage/repositories/AdaptationRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/CostRecordsRepository.d.ts +0 -43
- package/dist/evolution/storage/repositories/CostRecordsRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/CostRecordsRepository.js +0 -157
- package/dist/evolution/storage/repositories/CostRecordsRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/ExecutionRepository.d.ts +0 -12
- package/dist/evolution/storage/repositories/ExecutionRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/ExecutionRepository.js +0 -87
- package/dist/evolution/storage/repositories/ExecutionRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/PatternRepository.d.ts +0 -12
- package/dist/evolution/storage/repositories/PatternRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/PatternRepository.js +0 -150
- package/dist/evolution/storage/repositories/PatternRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.d.ts +0 -39
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.js +0 -130
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/RewardRepository.d.ts +0 -17
- package/dist/evolution/storage/repositories/RewardRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/RewardRepository.js +0 -82
- package/dist/evolution/storage/repositories/RewardRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/SpanRepository.d.ts +0 -14
- package/dist/evolution/storage/repositories/SpanRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/SpanRepository.js +0 -191
- package/dist/evolution/storage/repositories/SpanRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/StatsRepository.d.ts +0 -16
- package/dist/evolution/storage/repositories/StatsRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/StatsRepository.js +0 -271
- package/dist/evolution/storage/repositories/StatsRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/TaskRepository.d.ts +0 -16
- package/dist/evolution/storage/repositories/TaskRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/TaskRepository.js +0 -93
- package/dist/evolution/storage/repositories/TaskRepository.js.map +0 -1
- package/dist/evolution/storage/schema.d.ts +0 -81
- package/dist/evolution/storage/schema.d.ts.map +0 -1
- package/dist/evolution/storage/schema.js +0 -241
- package/dist/evolution/storage/schema.js.map +0 -1
- package/dist/evolution/storage/types.d.ts +0 -402
- package/dist/evolution/storage/types.d.ts.map +0 -1
- package/dist/evolution/storage/types.js +0 -2
- package/dist/evolution/storage/types.js.map +0 -1
- package/dist/evolution/storage/validation.d.ts +0 -11
- package/dist/evolution/storage/validation.d.ts.map +0 -1
- package/dist/evolution/storage/validation.js +0 -84
- package/dist/evolution/storage/validation.js.map +0 -1
- package/dist/evolution/types.d.ts +0 -248
- package/dist/evolution/types.d.ts.map +0 -1
- package/dist/evolution/types.js +0 -13
- package/dist/evolution/types.js.map +0 -1
- package/dist/hooks/a2a-collaboration.d.ts +0 -30
- package/dist/hooks/a2a-collaboration.d.ts.map +0 -1
- package/dist/hooks/a2a-collaboration.js +0 -400
- package/dist/hooks/a2a-collaboration.js.map +0 -1
- package/dist/mcp/handlers/A2AToolHandlers.d.ts +0 -17
- package/dist/mcp/handlers/A2AToolHandlers.d.ts.map +0 -1
- package/dist/mcp/handlers/A2AToolHandlers.js +0 -221
- package/dist/mcp/handlers/A2AToolHandlers.js.map +0 -1
- package/dist/mcp/tools/a2a-list-tasks.d.ts +0 -13
- package/dist/mcp/tools/a2a-list-tasks.d.ts.map +0 -1
- package/dist/mcp/tools/a2a-list-tasks.js +0 -24
- package/dist/mcp/tools/a2a-list-tasks.js.map +0 -1
- package/dist/mcp/tools/a2a-report-result.d.ts +0 -35
- package/dist/mcp/tools/a2a-report-result.d.ts.map +0 -1
- package/dist/mcp/tools/a2a-report-result.js +0 -73
- package/dist/mcp/tools/a2a-report-result.js.map +0 -1
- package/dist/orchestrator/AgentRouter.d.ts +0 -20
- package/dist/orchestrator/AgentRouter.d.ts.map +0 -1
- package/dist/orchestrator/AgentRouter.js +0 -275
- package/dist/orchestrator/AgentRouter.js.map +0 -1
- package/dist/orchestrator/CostTracker.d.ts +0 -25
- package/dist/orchestrator/CostTracker.d.ts.map +0 -1
- package/dist/orchestrator/CostTracker.js +0 -199
- package/dist/orchestrator/CostTracker.js.map +0 -1
- package/dist/orchestrator/GlobalResourcePool.d.ts +0 -59
- package/dist/orchestrator/GlobalResourcePool.d.ts.map +0 -1
- package/dist/orchestrator/GlobalResourcePool.js +0 -291
- package/dist/orchestrator/GlobalResourcePool.js.map +0 -1
- package/dist/orchestrator/TaskAnalyzer.d.ts +0 -15
- package/dist/orchestrator/TaskAnalyzer.d.ts.map +0 -1
- package/dist/orchestrator/TaskAnalyzer.js +0 -234
- package/dist/orchestrator/TaskAnalyzer.js.map +0 -1
- package/dist/orchestrator/example.d.ts +0 -2
- package/dist/orchestrator/example.d.ts.map +0 -1
- package/dist/orchestrator/example.js +0 -118
- package/dist/orchestrator/example.js.map +0 -1
- package/dist/orchestrator/index.d.ts +0 -82
- package/dist/orchestrator/index.d.ts.map +0 -1
- package/dist/orchestrator/index.js +0 -370
- package/dist/orchestrator/index.js.map +0 -1
- package/dist/orchestrator/router.d.ts +0 -43
- package/dist/orchestrator/router.d.ts.map +0 -1
- package/dist/orchestrator/router.js +0 -95
- package/dist/orchestrator/router.js.map +0 -1
- package/dist/orchestrator/types.d.ts +0 -60
- package/dist/orchestrator/types.d.ts.map +0 -1
- package/dist/orchestrator/types.js +0 -2
- package/dist/orchestrator/types.js.map +0 -1
- package/dist/planning/TaskDecomposer.d.ts +0 -32
- package/dist/planning/TaskDecomposer.d.ts.map +0 -1
- package/dist/planning/TaskDecomposer.js +0 -152
- package/dist/planning/TaskDecomposer.js.map +0 -1
|
@@ -1,400 +0,0 @@
|
|
|
1
|
-
import fs from 'fs';
|
|
2
|
-
import path from 'path';
|
|
3
|
-
import os from 'os';
|
|
4
|
-
import { execFileSync } from 'child_process';
|
|
5
|
-
import { expandHome } from '../utils/paths.js';
|
|
6
|
-
const CCB_DATA_DIR = expandHome('~/.claude-code-buddy');
|
|
7
|
-
const KG_DB_PATH = path.join(CCB_DATA_DIR, 'knowledge-graph.db');
|
|
8
|
-
const AGENT_REGISTRY_PATH = path.join(CCB_DATA_DIR, 'a2a-registry.db');
|
|
9
|
-
const STATE_DIR = expandHome('~/.claude/state');
|
|
10
|
-
const AGENT_IDENTITY_FILE = path.join(STATE_DIR, 'agent-identity.json');
|
|
11
|
-
const NAME_POOL = [
|
|
12
|
-
'Alpha',
|
|
13
|
-
'Beta',
|
|
14
|
-
'Gamma',
|
|
15
|
-
'Delta',
|
|
16
|
-
'Epsilon',
|
|
17
|
-
'Zeta',
|
|
18
|
-
'Eta',
|
|
19
|
-
'Theta',
|
|
20
|
-
'Iota',
|
|
21
|
-
'Kappa',
|
|
22
|
-
'Lambda',
|
|
23
|
-
'Mu',
|
|
24
|
-
'Nu',
|
|
25
|
-
'Xi',
|
|
26
|
-
'Omicron',
|
|
27
|
-
'Pi',
|
|
28
|
-
'Rho',
|
|
29
|
-
'Sigma',
|
|
30
|
-
'Tau',
|
|
31
|
-
'Upsilon',
|
|
32
|
-
];
|
|
33
|
-
function sqliteQuery(dbPath, query, params) {
|
|
34
|
-
const result = sqliteQueryWithStatus(dbPath, query, params);
|
|
35
|
-
return result.output;
|
|
36
|
-
}
|
|
37
|
-
function escapeSqlValue(value) {
|
|
38
|
-
if (value === null || value === undefined) {
|
|
39
|
-
return 'NULL';
|
|
40
|
-
}
|
|
41
|
-
if (typeof value === 'number') {
|
|
42
|
-
if (!Number.isFinite(value)) {
|
|
43
|
-
return 'NULL';
|
|
44
|
-
}
|
|
45
|
-
return String(value);
|
|
46
|
-
}
|
|
47
|
-
if (typeof value === 'boolean') {
|
|
48
|
-
return value ? '1' : '0';
|
|
49
|
-
}
|
|
50
|
-
const strValue = String(value);
|
|
51
|
-
if (strValue.includes('\x00')) {
|
|
52
|
-
throw new Error('SQL parameter contains null byte - potential injection attack');
|
|
53
|
-
}
|
|
54
|
-
const escaped = strValue.replace(/'/g, "''");
|
|
55
|
-
return `'${escaped}'`;
|
|
56
|
-
}
|
|
57
|
-
function sqliteQueryWithStatus(dbPath, query, params) {
|
|
58
|
-
try {
|
|
59
|
-
const args = ['-separator', '|', dbPath];
|
|
60
|
-
let finalQuery = query;
|
|
61
|
-
if (params && params.length > 0) {
|
|
62
|
-
const escapedParams = params.map(escapeSqlValue);
|
|
63
|
-
let paramIndex = 0;
|
|
64
|
-
finalQuery = query.replace(/\?/g, () => {
|
|
65
|
-
if (paramIndex < escapedParams.length) {
|
|
66
|
-
return escapedParams[paramIndex++];
|
|
67
|
-
}
|
|
68
|
-
return '?';
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
const result = execFileSync('sqlite3', [...args, finalQuery], {
|
|
72
|
-
encoding: 'utf-8',
|
|
73
|
-
timeout: 5000,
|
|
74
|
-
});
|
|
75
|
-
return {
|
|
76
|
-
output: result.trim(),
|
|
77
|
-
success: true,
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
catch (e) {
|
|
81
|
-
const error = e instanceof Error ? e.message : String(e);
|
|
82
|
-
return {
|
|
83
|
-
output: '',
|
|
84
|
-
success: false,
|
|
85
|
-
error,
|
|
86
|
-
};
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
function readJSON(filePath, defaultValue = null) {
|
|
90
|
-
try {
|
|
91
|
-
if (fs.existsSync(filePath)) {
|
|
92
|
-
const content = fs.readFileSync(filePath, 'utf-8');
|
|
93
|
-
return JSON.parse(content);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
catch {
|
|
97
|
-
}
|
|
98
|
-
return defaultValue;
|
|
99
|
-
}
|
|
100
|
-
function writeJSON(filePath, data) {
|
|
101
|
-
try {
|
|
102
|
-
const dir = path.dirname(filePath);
|
|
103
|
-
if (!fs.existsSync(dir)) {
|
|
104
|
-
fs.mkdirSync(dir, { recursive: true });
|
|
105
|
-
}
|
|
106
|
-
fs.writeFileSync(filePath, JSON.stringify(data, null, 2));
|
|
107
|
-
return true;
|
|
108
|
-
}
|
|
109
|
-
catch {
|
|
110
|
-
return false;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
function _getUsedNames() {
|
|
114
|
-
if (!fs.existsSync(KG_DB_PATH))
|
|
115
|
-
return [];
|
|
116
|
-
const query = "SELECT name FROM entities WHERE type='session_identity' AND name LIKE 'Online Agent:%'";
|
|
117
|
-
const result = sqliteQuery(KG_DB_PATH, query);
|
|
118
|
-
if (!result)
|
|
119
|
-
return [];
|
|
120
|
-
return result
|
|
121
|
-
.split('\n')
|
|
122
|
-
.map((line) => line.replace('Online Agent: ', '').replace(/ \(.*\)$/, '').trim())
|
|
123
|
-
.filter(Boolean);
|
|
124
|
-
}
|
|
125
|
-
function getOnlineAgents() {
|
|
126
|
-
if (!fs.existsSync(AGENT_REGISTRY_PATH))
|
|
127
|
-
return [];
|
|
128
|
-
const query = "SELECT agent_id FROM agents WHERE status='active' ORDER BY last_heartbeat DESC LIMIT 10";
|
|
129
|
-
const result = sqliteQuery(AGENT_REGISTRY_PATH, query);
|
|
130
|
-
return result ? result.split('\n').filter(Boolean) : [];
|
|
131
|
-
}
|
|
132
|
-
function generateUniqueFallbackName() {
|
|
133
|
-
const timestamp = Date.now().toString(36);
|
|
134
|
-
const random = Math.random().toString(36).substring(2, 6);
|
|
135
|
-
return `Agent-${timestamp}-${random}`;
|
|
136
|
-
}
|
|
137
|
-
function tryClaimName(entityName, now) {
|
|
138
|
-
const atomicInsertQuery = `
|
|
139
|
-
INSERT INTO entities (name, type, created_at)
|
|
140
|
-
SELECT ?, 'session_identity', ?
|
|
141
|
-
WHERE NOT EXISTS (SELECT 1 FROM entities WHERE name = ?);
|
|
142
|
-
SELECT changes();
|
|
143
|
-
`;
|
|
144
|
-
const result = sqliteQueryWithStatus(KG_DB_PATH, atomicInsertQuery, [entityName, now, entityName]);
|
|
145
|
-
if (!result.success) {
|
|
146
|
-
return false;
|
|
147
|
-
}
|
|
148
|
-
const changesCount = parseInt(result.output, 10);
|
|
149
|
-
return changesCount === 1;
|
|
150
|
-
}
|
|
151
|
-
function pickAvailableName() {
|
|
152
|
-
if (!fs.existsSync(KG_DB_PATH)) {
|
|
153
|
-
return NAME_POOL[0];
|
|
154
|
-
}
|
|
155
|
-
const now = new Date().toISOString();
|
|
156
|
-
for (const name of NAME_POOL) {
|
|
157
|
-
const entityName = `Online Agent: ${name}`;
|
|
158
|
-
if (tryClaimName(entityName, now)) {
|
|
159
|
-
return name;
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
for (let attempt = 0; attempt < 10; attempt++) {
|
|
163
|
-
const fallbackName = generateUniqueFallbackName();
|
|
164
|
-
const entityName = `Online Agent: ${fallbackName}`;
|
|
165
|
-
if (tryClaimName(entityName, now)) {
|
|
166
|
-
return fallbackName;
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
const ultimateFallback = `Agent-${Date.now().toString(36)}-${process.pid}`;
|
|
170
|
-
const entityName = `Online Agent: ${ultimateFallback}`;
|
|
171
|
-
tryClaimName(entityName, now);
|
|
172
|
-
return ultimateFallback;
|
|
173
|
-
}
|
|
174
|
-
function generateAgentId() {
|
|
175
|
-
const hostname = os.hostname().toLowerCase().replace(/[^a-z0-9]/g, '-');
|
|
176
|
-
const timestamp = Date.now().toString(36);
|
|
177
|
-
return `${hostname}-${timestamp}`;
|
|
178
|
-
}
|
|
179
|
-
function registerToKnowledgeGraph(identity) {
|
|
180
|
-
if (!fs.existsSync(KG_DB_PATH))
|
|
181
|
-
return false;
|
|
182
|
-
const entityName = `Online Agent: ${identity.name}`;
|
|
183
|
-
const now = new Date().toISOString();
|
|
184
|
-
try {
|
|
185
|
-
sqliteQuery(KG_DB_PATH, 'INSERT OR IGNORE INTO entities (name, type, created_at) VALUES (?, ?, ?)', [entityName, 'session_identity', now]);
|
|
186
|
-
const entityId = sqliteQuery(KG_DB_PATH, 'SELECT id FROM entities WHERE name = ?', [
|
|
187
|
-
entityName,
|
|
188
|
-
]);
|
|
189
|
-
if (entityId && /^\d+$/.test(entityId)) {
|
|
190
|
-
const observations = [
|
|
191
|
-
`Agent ID: ${identity.agentId}`,
|
|
192
|
-
`Name: ${identity.name}`,
|
|
193
|
-
`Status: ONLINE`,
|
|
194
|
-
`Specialization: ${identity.specialization}`,
|
|
195
|
-
`Checked in: ${now}`,
|
|
196
|
-
];
|
|
197
|
-
for (const obs of observations) {
|
|
198
|
-
sqliteQuery(KG_DB_PATH, 'INSERT INTO observations (entity_id, content, created_at) VALUES (?, ?, ?)', [entityId, obs, now]);
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
return true;
|
|
202
|
-
}
|
|
203
|
-
catch {
|
|
204
|
-
return false;
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
function loadIdentity() {
|
|
208
|
-
return readJSON(AGENT_IDENTITY_FILE);
|
|
209
|
-
}
|
|
210
|
-
function saveIdentity(identity) {
|
|
211
|
-
return writeJSON(AGENT_IDENTITY_FILE, identity);
|
|
212
|
-
}
|
|
213
|
-
export function agentCheckIn() {
|
|
214
|
-
const existingIdentity = loadIdentity();
|
|
215
|
-
if (existingIdentity?.sessionStart) {
|
|
216
|
-
const sessionAge = Date.now() - new Date(existingIdentity.sessionStart).getTime();
|
|
217
|
-
if (sessionAge < 60 * 60 * 1000) {
|
|
218
|
-
return existingIdentity;
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
const name = pickAvailableName();
|
|
222
|
-
const agentId = generateAgentId();
|
|
223
|
-
const identity = {
|
|
224
|
-
name,
|
|
225
|
-
agentId,
|
|
226
|
-
specialization: 'General (awaiting assignment)',
|
|
227
|
-
sessionStart: new Date().toISOString(),
|
|
228
|
-
status: 'ONLINE',
|
|
229
|
-
};
|
|
230
|
-
saveIdentity(identity);
|
|
231
|
-
registerToKnowledgeGraph(identity);
|
|
232
|
-
return identity;
|
|
233
|
-
}
|
|
234
|
-
export function checkPendingTasks(agentId) {
|
|
235
|
-
const taskDbPath = path.join(CCB_DATA_DIR, 'a2a-tasks.db');
|
|
236
|
-
if (!fs.existsSync(taskDbPath))
|
|
237
|
-
return [];
|
|
238
|
-
const baseQuery = 'SELECT id, description, state, created_at as createdAt, sender_id as senderId FROM tasks WHERE state=\'SUBMITTED\'';
|
|
239
|
-
const query = agentId
|
|
240
|
-
? `${baseQuery} AND assigned_agent_id=${escapeSqlValue(agentId)} ORDER BY created_at DESC LIMIT 10`
|
|
241
|
-
: `${baseQuery} ORDER BY created_at DESC LIMIT 10`;
|
|
242
|
-
try {
|
|
243
|
-
const result = execFileSync('sqlite3', ['-json', taskDbPath, query], { encoding: 'utf-8', timeout: 5000 });
|
|
244
|
-
if (!result.trim())
|
|
245
|
-
return [];
|
|
246
|
-
const parsed = JSON.parse(result);
|
|
247
|
-
return parsed.map((row) => ({
|
|
248
|
-
id: String(row.id),
|
|
249
|
-
description: row.description || '',
|
|
250
|
-
state: row.state,
|
|
251
|
-
createdAt: row.createdAt || '',
|
|
252
|
-
senderId: row.senderId || '',
|
|
253
|
-
}));
|
|
254
|
-
}
|
|
255
|
-
catch {
|
|
256
|
-
const fallbackQuery = "SELECT id, description, state, created_at, sender_id FROM tasks WHERE state='SUBMITTED' ORDER BY created_at DESC LIMIT 10";
|
|
257
|
-
const result = sqliteQuery(taskDbPath, fallbackQuery);
|
|
258
|
-
if (!result)
|
|
259
|
-
return [];
|
|
260
|
-
return result
|
|
261
|
-
.split('\n')
|
|
262
|
-
.filter(Boolean)
|
|
263
|
-
.map((line) => {
|
|
264
|
-
const parts = line.split('|');
|
|
265
|
-
const id = parts[0] || '';
|
|
266
|
-
const senderId = parts[parts.length - 1] || '';
|
|
267
|
-
const createdAt = parts[parts.length - 2] || '';
|
|
268
|
-
const state = parts[parts.length - 3] || '';
|
|
269
|
-
const description = parts.slice(1, -3).join('|');
|
|
270
|
-
return {
|
|
271
|
-
id,
|
|
272
|
-
description,
|
|
273
|
-
state: state,
|
|
274
|
-
createdAt,
|
|
275
|
-
senderId,
|
|
276
|
-
};
|
|
277
|
-
});
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
export function getLatestCommitHash() {
|
|
281
|
-
try {
|
|
282
|
-
const result = execFileSync('git', ['rev-parse', '--short', 'HEAD'], {
|
|
283
|
-
encoding: 'utf-8',
|
|
284
|
-
timeout: 5000,
|
|
285
|
-
});
|
|
286
|
-
return result.trim();
|
|
287
|
-
}
|
|
288
|
-
catch {
|
|
289
|
-
return null;
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
export function getLatestCommitMessage() {
|
|
293
|
-
try {
|
|
294
|
-
const result = execFileSync('git', ['log', '-1', '--pretty=%s'], {
|
|
295
|
-
encoding: 'utf-8',
|
|
296
|
-
timeout: 5000,
|
|
297
|
-
});
|
|
298
|
-
return result.trim();
|
|
299
|
-
}
|
|
300
|
-
catch {
|
|
301
|
-
return null;
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
export function formatTaskCompletionReport(taskId, commitHash, commitMessage) {
|
|
305
|
-
return {
|
|
306
|
-
taskId,
|
|
307
|
-
status: 'COMPLETED',
|
|
308
|
-
result: `Task completed!\nCommit: ${commitHash}\nMessage: ${commitMessage}`,
|
|
309
|
-
completedAt: new Date().toISOString(),
|
|
310
|
-
};
|
|
311
|
-
}
|
|
312
|
-
function displayCheckInBroadcast(identity, onlineAgents, pendingTasks) {
|
|
313
|
-
console.log('');
|
|
314
|
-
console.log('='.repeat(60));
|
|
315
|
-
console.log(' A2A Collaboration System');
|
|
316
|
-
console.log('='.repeat(60));
|
|
317
|
-
console.log('');
|
|
318
|
-
console.log(` BROADCAST: ${identity.name} is now online!`);
|
|
319
|
-
console.log('');
|
|
320
|
-
console.log(` Name: ${identity.name}`);
|
|
321
|
-
console.log(` Agent ID: ${identity.agentId}`);
|
|
322
|
-
console.log(` Specialization: ${identity.specialization}`);
|
|
323
|
-
console.log(` Checked in: ${new Date().toLocaleString()}`);
|
|
324
|
-
console.log('');
|
|
325
|
-
const otherAgents = onlineAgents.filter((a) => a !== identity.agentId);
|
|
326
|
-
if (otherAgents.length > 0) {
|
|
327
|
-
console.log(' Other online agents:');
|
|
328
|
-
otherAgents.slice(0, 5).forEach((agent) => {
|
|
329
|
-
console.log(` - ${agent}`);
|
|
330
|
-
});
|
|
331
|
-
console.log('');
|
|
332
|
-
}
|
|
333
|
-
if (pendingTasks.length > 0) {
|
|
334
|
-
console.log(' Pending tasks for you:');
|
|
335
|
-
pendingTasks.slice(0, 3).forEach((task, i) => {
|
|
336
|
-
console.log(` ${i + 1}. [${task.state}] ${task.description?.slice(0, 50)}...`);
|
|
337
|
-
console.log(` From: ${task.senderId} | ID: ${task.id}`);
|
|
338
|
-
});
|
|
339
|
-
console.log('');
|
|
340
|
-
console.log(' Use a2a-list-tasks to see all tasks');
|
|
341
|
-
console.log('');
|
|
342
|
-
}
|
|
343
|
-
console.log(' Available A2A Actions:');
|
|
344
|
-
console.log('');
|
|
345
|
-
console.log(' Assign specialization:');
|
|
346
|
-
console.log(` "${identity.name}, you handle frontend" or "${identity.name}, you handle backend API"`);
|
|
347
|
-
console.log('');
|
|
348
|
-
console.log(' Send task to another agent:');
|
|
349
|
-
console.log(' a2a-send-task targetAgentId="<agent>" taskDescription="..."');
|
|
350
|
-
console.log('');
|
|
351
|
-
console.log(' Check your tasks:');
|
|
352
|
-
console.log(' a2a-list-tasks');
|
|
353
|
-
console.log('');
|
|
354
|
-
console.log(' Report task completion:');
|
|
355
|
-
console.log(' a2a-report-result taskId="<id>" result="Done! Commit: xxx" success=true');
|
|
356
|
-
console.log('');
|
|
357
|
-
console.log('='.repeat(60));
|
|
358
|
-
console.log('');
|
|
359
|
-
}
|
|
360
|
-
function displayAlreadyCheckedIn(identity) {
|
|
361
|
-
console.log('');
|
|
362
|
-
console.log(` Already checked in as ${identity.name}`);
|
|
363
|
-
console.log(` Specialization: ${identity.specialization}`);
|
|
364
|
-
console.log('');
|
|
365
|
-
}
|
|
366
|
-
export function initA2ACollaboration() {
|
|
367
|
-
const existingIdentity = loadIdentity();
|
|
368
|
-
if (existingIdentity?.sessionStart) {
|
|
369
|
-
const sessionAge = Date.now() - new Date(existingIdentity.sessionStart).getTime();
|
|
370
|
-
if (sessionAge < 60 * 60 * 1000) {
|
|
371
|
-
displayAlreadyCheckedIn(existingIdentity);
|
|
372
|
-
return existingIdentity;
|
|
373
|
-
}
|
|
374
|
-
}
|
|
375
|
-
const identity = agentCheckIn();
|
|
376
|
-
const onlineAgents = getOnlineAgents();
|
|
377
|
-
const pendingTasks = checkPendingTasks(identity.agentId);
|
|
378
|
-
displayCheckInBroadcast(identity, onlineAgents, pendingTasks);
|
|
379
|
-
return identity;
|
|
380
|
-
}
|
|
381
|
-
export function updateSpecialization(newSpecialization) {
|
|
382
|
-
const identity = loadIdentity();
|
|
383
|
-
if (!identity) {
|
|
384
|
-
console.log(' No identity found. Please check in first.');
|
|
385
|
-
return null;
|
|
386
|
-
}
|
|
387
|
-
identity.specialization = newSpecialization;
|
|
388
|
-
identity.updatedAt = new Date().toISOString();
|
|
389
|
-
saveIdentity(identity);
|
|
390
|
-
console.log('');
|
|
391
|
-
console.log(` Specialization updated!`);
|
|
392
|
-
console.log(` Name: ${identity.name}`);
|
|
393
|
-
console.log(` New Specialization: ${newSpecialization}`);
|
|
394
|
-
console.log('');
|
|
395
|
-
return identity;
|
|
396
|
-
}
|
|
397
|
-
export function getCurrentIdentity() {
|
|
398
|
-
return loadIdentity();
|
|
399
|
-
}
|
|
400
|
-
//# sourceMappingURL=a2a-collaboration.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"a2a-collaboration.js","sourceRoot":"","sources":["../../src/hooks/a2a-collaboration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
|
|
2
|
-
import { A2AClient } from '../../a2a/client/A2AClient.js';
|
|
3
|
-
import { AgentRegistry } from '../../a2a/storage/AgentRegistry.js';
|
|
4
|
-
export declare class A2AToolHandlers {
|
|
5
|
-
private client;
|
|
6
|
-
private registry;
|
|
7
|
-
constructor(client?: A2AClient, registry?: AgentRegistry);
|
|
8
|
-
handleA2ASendTask(args: unknown): Promise<CallToolResult>;
|
|
9
|
-
handleA2AGetTask(args: unknown): Promise<CallToolResult>;
|
|
10
|
-
handleA2AListTasks(args: unknown): Promise<CallToolResult>;
|
|
11
|
-
handleA2AListAgents(args: unknown): Promise<CallToolResult>;
|
|
12
|
-
private formatTaskSentResponse;
|
|
13
|
-
private formatTaskDetailsResponse;
|
|
14
|
-
private formatTaskListResponse;
|
|
15
|
-
private formatAgentListResponse;
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=A2AToolHandlers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A2AToolHandlers.d.ts","sourceRoot":"","sources":["../../../src/mcp/handlers/A2AToolHandlers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AA4BnE,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,QAAQ,CAAgB;gBAEpB,MAAM,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,aAAa;IASlD,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC;IAuDzD,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC;IA0CxD,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC;IA8C1D,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC;IAmDjE,OAAO,CAAC,sBAAsB;IAiB9B,OAAO,CAAC,yBAAyB;IAuCjC,OAAO,CAAC,sBAAsB;IA2B9B,OAAO,CAAC,uBAAuB;CAuBhC"}
|
|
@@ -1,221 +0,0 @@
|
|
|
1
|
-
import { ValidationError } from '../../errors/index.js';
|
|
2
|
-
import { A2AClient } from '../../a2a/client/A2AClient.js';
|
|
3
|
-
import { AgentRegistry } from '../../a2a/storage/AgentRegistry.js';
|
|
4
|
-
import { A2ASendTaskInputSchema, A2AGetTaskInputSchema, A2AListTasksInputSchema, A2AListAgentsInputSchema, formatValidationError, } from '../validation.js';
|
|
5
|
-
const SELF_AGENT_ID = 'self';
|
|
6
|
-
export class A2AToolHandlers {
|
|
7
|
-
client;
|
|
8
|
-
registry;
|
|
9
|
-
constructor(client, registry) {
|
|
10
|
-
this.client = client || new A2AClient();
|
|
11
|
-
this.registry = registry || AgentRegistry.getInstance();
|
|
12
|
-
}
|
|
13
|
-
async handleA2ASendTask(args) {
|
|
14
|
-
const parseResult = A2ASendTaskInputSchema.safeParse(args);
|
|
15
|
-
if (!parseResult.success) {
|
|
16
|
-
throw new ValidationError(formatValidationError(parseResult.error), {
|
|
17
|
-
component: 'A2AToolHandlers',
|
|
18
|
-
method: 'handleA2ASendTask',
|
|
19
|
-
providedArgs: args,
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
const input = parseResult.data;
|
|
23
|
-
try {
|
|
24
|
-
const sendResponse = await this.client.sendMessage(input.targetAgentId, {
|
|
25
|
-
message: {
|
|
26
|
-
role: 'user',
|
|
27
|
-
parts: [
|
|
28
|
-
{
|
|
29
|
-
type: 'text',
|
|
30
|
-
text: input.taskDescription,
|
|
31
|
-
},
|
|
32
|
-
],
|
|
33
|
-
},
|
|
34
|
-
});
|
|
35
|
-
const task = await this.client.getTask(input.targetAgentId, sendResponse.taskId);
|
|
36
|
-
return {
|
|
37
|
-
content: [
|
|
38
|
-
{
|
|
39
|
-
type: 'text',
|
|
40
|
-
text: this.formatTaskSentResponse(input.targetAgentId, task),
|
|
41
|
-
},
|
|
42
|
-
],
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
catch (error) {
|
|
46
|
-
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
47
|
-
throw new Error(`Failed to send task to agent ${input.targetAgentId}: ${errorMsg}\n\n` +
|
|
48
|
-
`💡 Troubleshooting tips:\n` +
|
|
49
|
-
` - Verify the agent ID is correct using 'a2a-list-agents' tool\n` +
|
|
50
|
-
` - Check if the target agent is running and accessible\n` +
|
|
51
|
-
` - Ensure MEMESH_A2A_TOKEN is configured in .env file`);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
async handleA2AGetTask(args) {
|
|
55
|
-
const parseResult = A2AGetTaskInputSchema.safeParse(args);
|
|
56
|
-
if (!parseResult.success) {
|
|
57
|
-
throw new ValidationError(formatValidationError(parseResult.error), {
|
|
58
|
-
component: 'A2AToolHandlers',
|
|
59
|
-
method: 'handleA2AGetTask',
|
|
60
|
-
providedArgs: args,
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
const input = parseResult.data;
|
|
64
|
-
try {
|
|
65
|
-
const task = await this.client.getTask(input.targetAgentId, input.taskId);
|
|
66
|
-
return {
|
|
67
|
-
content: [
|
|
68
|
-
{
|
|
69
|
-
type: 'text',
|
|
70
|
-
text: this.formatTaskDetailsResponse(task),
|
|
71
|
-
},
|
|
72
|
-
],
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
catch (error) {
|
|
76
|
-
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
77
|
-
throw new Error(`Failed to get task ${input.taskId} from agent ${input.targetAgentId}: ${errorMsg}\n\n` +
|
|
78
|
-
`💡 Troubleshooting tips:\n` +
|
|
79
|
-
` - Verify the task ID exists using 'a2a-list-tasks' tool\n` +
|
|
80
|
-
` - Check if the target agent is running and responding\n` +
|
|
81
|
-
` - Confirm you have permission to access this task`);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
async handleA2AListTasks(args) {
|
|
85
|
-
const parseResult = A2AListTasksInputSchema.safeParse(args);
|
|
86
|
-
if (!parseResult.success) {
|
|
87
|
-
throw new ValidationError(formatValidationError(parseResult.error), {
|
|
88
|
-
component: 'A2AToolHandlers',
|
|
89
|
-
method: 'handleA2AListTasks',
|
|
90
|
-
providedArgs: args,
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
const input = parseResult.data;
|
|
94
|
-
try {
|
|
95
|
-
const tasks = await this.client.listTasks(SELF_AGENT_ID, {
|
|
96
|
-
status: input.state,
|
|
97
|
-
limit: input.limit,
|
|
98
|
-
offset: input.offset,
|
|
99
|
-
});
|
|
100
|
-
return {
|
|
101
|
-
content: [
|
|
102
|
-
{
|
|
103
|
-
type: 'text',
|
|
104
|
-
text: this.formatTaskListResponse(tasks),
|
|
105
|
-
},
|
|
106
|
-
],
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
catch (error) {
|
|
110
|
-
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
111
|
-
throw new Error(`Failed to list tasks: ${errorMsg}\n\n` +
|
|
112
|
-
`💡 Troubleshooting tips:\n` +
|
|
113
|
-
` - Verify A2A server is running\n` +
|
|
114
|
-
` - Check MEMESH_A2A_TOKEN configuration in .env\n` +
|
|
115
|
-
` - Ensure network connectivity to A2A server`);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
async handleA2AListAgents(args) {
|
|
119
|
-
const parseResult = A2AListAgentsInputSchema.safeParse(args);
|
|
120
|
-
if (!parseResult.success) {
|
|
121
|
-
throw new ValidationError(formatValidationError(parseResult.error), {
|
|
122
|
-
component: 'A2AToolHandlers',
|
|
123
|
-
method: 'handleA2AListAgents',
|
|
124
|
-
providedArgs: args,
|
|
125
|
-
});
|
|
126
|
-
}
|
|
127
|
-
const input = parseResult.data;
|
|
128
|
-
try {
|
|
129
|
-
const agents = this.registry.listActive();
|
|
130
|
-
const filteredAgents = input.status && input.status !== 'all'
|
|
131
|
-
? agents.filter((agent) => agent.status === input.status)
|
|
132
|
-
: agents;
|
|
133
|
-
return {
|
|
134
|
-
content: [
|
|
135
|
-
{
|
|
136
|
-
type: 'text',
|
|
137
|
-
text: this.formatAgentListResponse(filteredAgents),
|
|
138
|
-
},
|
|
139
|
-
],
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
catch (error) {
|
|
143
|
-
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
144
|
-
throw new Error(`Failed to list agents: ${errorMsg}\n\n` +
|
|
145
|
-
`💡 Troubleshooting tips:\n` +
|
|
146
|
-
` - Check if agent registry is initialized\n` +
|
|
147
|
-
` - Verify A2A protocol is enabled\n` +
|
|
148
|
-
` - Try restarting the MCP server`);
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
formatTaskSentResponse(targetAgentId, task) {
|
|
152
|
-
return [
|
|
153
|
-
`✅ Task sent to agent: ${targetAgentId}`,
|
|
154
|
-
``,
|
|
155
|
-
`Task ID: ${task.id}`,
|
|
156
|
-
`State: ${task.state}`,
|
|
157
|
-
`Name: ${task.name || 'N/A'}`,
|
|
158
|
-
`Priority: ${task.priority || 'N/A'}`,
|
|
159
|
-
`Created: ${task.createdAt}`,
|
|
160
|
-
``,
|
|
161
|
-
`Use 'a2a-get-task' to check task status.`,
|
|
162
|
-
].join('\n');
|
|
163
|
-
}
|
|
164
|
-
formatTaskDetailsResponse(task) {
|
|
165
|
-
const lines = [
|
|
166
|
-
`📋 Task Details`,
|
|
167
|
-
``,
|
|
168
|
-
`Task ID: ${task.id}`,
|
|
169
|
-
`State: ${task.state}`,
|
|
170
|
-
`Name: ${task.name || 'N/A'}`,
|
|
171
|
-
`Description: ${task.description || 'N/A'}`,
|
|
172
|
-
`Priority: ${task.priority || 'N/A'}`,
|
|
173
|
-
`Created: ${task.createdAt}`,
|
|
174
|
-
`Updated: ${task.updatedAt}`,
|
|
175
|
-
``,
|
|
176
|
-
`Messages: ${task.messages.length}`,
|
|
177
|
-
`Artifacts: ${task.artifacts?.length || 0}`,
|
|
178
|
-
];
|
|
179
|
-
if (task.sessionId) {
|
|
180
|
-
lines.push(`Session ID: ${task.sessionId}`);
|
|
181
|
-
}
|
|
182
|
-
if (task.messages.length > 0) {
|
|
183
|
-
const latestMessage = task.messages[task.messages.length - 1];
|
|
184
|
-
lines.push(``);
|
|
185
|
-
lines.push(`Latest Message (${latestMessage.role}):`);
|
|
186
|
-
latestMessage.parts.forEach((part) => {
|
|
187
|
-
if (part.type === 'text') {
|
|
188
|
-
lines.push(` ${part.text}`);
|
|
189
|
-
}
|
|
190
|
-
});
|
|
191
|
-
}
|
|
192
|
-
return lines.join('\n');
|
|
193
|
-
}
|
|
194
|
-
formatTaskListResponse(tasks) {
|
|
195
|
-
if (tasks.length === 0) {
|
|
196
|
-
return '📋 No tasks found.';
|
|
197
|
-
}
|
|
198
|
-
const lines = [
|
|
199
|
-
`📋 Own Tasks (${tasks.length} total)`,
|
|
200
|
-
``,
|
|
201
|
-
];
|
|
202
|
-
tasks.forEach((task, index) => {
|
|
203
|
-
lines.push(`${index + 1}. [${task.state}] ${task.id}`, ` Name: ${task.name || 'N/A'}`, ` Priority: ${task.priority || 'N/A'}`, ` Messages: ${task.messageCount} | Artifacts: ${task.artifactCount}`, ` Created: ${task.createdAt}`, ``);
|
|
204
|
-
});
|
|
205
|
-
return lines.join('\n');
|
|
206
|
-
}
|
|
207
|
-
formatAgentListResponse(agents) {
|
|
208
|
-
if (agents.length === 0) {
|
|
209
|
-
return '🤖 No agents available.';
|
|
210
|
-
}
|
|
211
|
-
const lines = [
|
|
212
|
-
`🤖 Available A2A Agents (${agents.length} total)`,
|
|
213
|
-
``,
|
|
214
|
-
];
|
|
215
|
-
agents.forEach((agent, index) => {
|
|
216
|
-
lines.push(`${index + 1}. ${agent.agentId}`, ` URL: ${agent.baseUrl}`, ` Port: ${agent.port}`, ` Status: ${agent.status}`, ` Last Heartbeat: ${agent.lastHeartbeat}`, ``);
|
|
217
|
-
});
|
|
218
|
-
return lines.join('\n');
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
//# sourceMappingURL=A2AToolHandlers.js.map
|