snow-flow 1.1.74 → 1.1.76

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.
Files changed (161) hide show
  1. package/.claude-flow/queen/queen-memory.db +0 -0
  2. package/.claude-flow/queen-test/test-memory.db +0 -0
  3. package/.claude-flow/queen-test/test-memory.db-agents +0 -0
  4. package/.claude-flow/queen-test/test-memory.db-import +0 -0
  5. package/.claude-flow/queen-test/test-memory.db-memory +0 -0
  6. package/.claude-flow/queen-test/test-memory.db-neural +0 -0
  7. package/CLAUDE.md +111 -8
  8. package/README.md +117 -50
  9. package/deploy.sh +366 -0
  10. package/dist/cli.js +226 -0
  11. package/dist/cli.js.map +1 -1
  12. package/dist/mcp/http-transport-wrapper.d.ts +29 -0
  13. package/dist/mcp/http-transport-wrapper.d.ts.map +1 -0
  14. package/dist/mcp/http-transport-wrapper.js +318 -0
  15. package/dist/mcp/http-transport-wrapper.js.map +1 -0
  16. package/dist/mcp/service-discovery-client.d.ts +83 -0
  17. package/dist/mcp/service-discovery-client.d.ts.map +1 -0
  18. package/dist/mcp/service-discovery-client.js +211 -0
  19. package/dist/mcp/service-discovery-client.js.map +1 -0
  20. package/dist/mcp/servicenow-deployment-mcp.js +262 -29
  21. package/dist/mcp/servicenow-deployment-mcp.js.map +1 -1
  22. package/dist/mcp/servicenow-intelligent-mcp.js +252 -18
  23. package/dist/mcp/servicenow-intelligent-mcp.js.map +1 -1
  24. package/dist/mcp/servicenow-operations-mcp.js +274 -46
  25. package/dist/mcp/servicenow-operations-mcp.js.map +1 -1
  26. package/dist/orchestration/discovery/service-discovery.d.ts +81 -0
  27. package/dist/orchestration/discovery/service-discovery.d.ts.map +1 -0
  28. package/dist/orchestration/discovery/service-discovery.js +808 -0
  29. package/dist/orchestration/discovery/service-discovery.js.map +1 -0
  30. package/dist/orchestration/distributed-orchestrator.d.ts +131 -0
  31. package/dist/orchestration/distributed-orchestrator.d.ts.map +1 -0
  32. package/dist/orchestration/distributed-orchestrator.js +712 -0
  33. package/dist/orchestration/distributed-orchestrator.js.map +1 -0
  34. package/dist/orchestration/distribution/task-distribution-engine.d.ts +53 -0
  35. package/dist/orchestration/distribution/task-distribution-engine.d.ts.map +1 -0
  36. package/dist/orchestration/distribution/task-distribution-engine.js +586 -0
  37. package/dist/orchestration/distribution/task-distribution-engine.js.map +1 -0
  38. package/dist/orchestration/interfaces/distributed-orchestration.interface.d.ts +606 -0
  39. package/dist/orchestration/interfaces/distributed-orchestration.interface.d.ts.map +1 -0
  40. package/dist/orchestration/interfaces/distributed-orchestration.interface.js +65 -0
  41. package/dist/orchestration/interfaces/distributed-orchestration.interface.js.map +1 -0
  42. package/dist/orchestration/protocols/mcpx-protocol.d.ts +71 -0
  43. package/dist/orchestration/protocols/mcpx-protocol.d.ts.map +1 -0
  44. package/dist/orchestration/protocols/mcpx-protocol.js +668 -0
  45. package/dist/orchestration/protocols/mcpx-protocol.js.map +1 -0
  46. package/dist/orchestration/state/distributed-state-manager.d.ts +89 -0
  47. package/dist/orchestration/state/distributed-state-manager.d.ts.map +1 -0
  48. package/dist/orchestration/state/distributed-state-manager.js +716 -0
  49. package/dist/orchestration/state/distributed-state-manager.js.map +1 -0
  50. package/dist/queen/advanced-integration-test.d.ts +48 -0
  51. package/dist/queen/advanced-integration-test.d.ts.map +1 -0
  52. package/dist/queen/advanced-integration-test.js +474 -0
  53. package/dist/queen/advanced-integration-test.js.map +1 -0
  54. package/dist/queen/agent-factory.d.ts +40 -0
  55. package/dist/queen/agent-factory.d.ts.map +1 -0
  56. package/dist/queen/agent-factory.js +433 -0
  57. package/dist/queen/agent-factory.js.map +1 -0
  58. package/dist/queen/index.d.ts +58 -0
  59. package/dist/queen/index.d.ts.map +1 -0
  60. package/dist/queen/index.js +79 -0
  61. package/dist/queen/index.js.map +1 -0
  62. package/dist/queen/integration-example.d.ts +82 -0
  63. package/dist/queen/integration-example.d.ts.map +1 -0
  64. package/dist/queen/integration-example.js +220 -0
  65. package/dist/queen/integration-example.js.map +1 -0
  66. package/dist/queen/integration-test.d.ts +72 -0
  67. package/dist/queen/integration-test.d.ts.map +1 -0
  68. package/dist/queen/integration-test.js +564 -0
  69. package/dist/queen/integration-test.js.map +1 -0
  70. package/dist/queen/mock-mcp-client.d.ts +66 -0
  71. package/dist/queen/mock-mcp-client.d.ts.map +1 -0
  72. package/dist/queen/mock-mcp-client.js +297 -0
  73. package/dist/queen/mock-mcp-client.js.map +1 -0
  74. package/dist/queen/neural-learning.d.ts +28 -0
  75. package/dist/queen/neural-learning.d.ts.map +1 -0
  76. package/dist/queen/neural-learning.js +244 -0
  77. package/dist/queen/neural-learning.js.map +1 -0
  78. package/dist/queen/queen-memory.d.ts +25 -0
  79. package/dist/queen/queen-memory.d.ts.map +1 -0
  80. package/dist/queen/queen-memory.js +273 -0
  81. package/dist/queen/queen-memory.js.map +1 -0
  82. package/dist/queen/run-integration-tests.d.ts +9 -0
  83. package/dist/queen/run-integration-tests.d.ts.map +1 -0
  84. package/dist/queen/run-integration-tests.js +28 -0
  85. package/dist/queen/run-integration-tests.js.map +1 -0
  86. package/dist/queen/servicenow-queen.d.ts +56 -0
  87. package/dist/queen/servicenow-queen.d.ts.map +1 -0
  88. package/dist/queen/servicenow-queen.js +659 -0
  89. package/dist/queen/servicenow-queen.js.map +1 -0
  90. package/dist/queen/types.d.ts +58 -0
  91. package/dist/queen/types.d.ts.map +1 -0
  92. package/dist/queen/types.js +7 -0
  93. package/dist/queen/types.js.map +1 -0
  94. package/dist/version.d.ts +3 -1
  95. package/dist/version.d.ts.map +1 -1
  96. package/dist/version.js +27 -2
  97. package/dist/version.js.map +1 -1
  98. package/docker/base/Dockerfile.base +45 -0
  99. package/docker/generate-services.js +244 -0
  100. package/docker/nginx/Dockerfile +71 -0
  101. package/docker/nginx/consul-template.hcl +64 -0
  102. package/docker/nginx/healthcheck.sh +178 -0
  103. package/docker/nginx/nginx.conf +210 -0
  104. package/docker/nginx/supervisord.conf +57 -0
  105. package/docker/nginx/templates/upstreams.conf.tpl +48 -0
  106. package/docker/services/automation-mcp/Dockerfile +32 -0
  107. package/docker/services/automation-mcp/config/service.json +28 -0
  108. package/docker/services/automation-mcp/entrypoint.js +51 -0
  109. package/docker/services/deployment-mcp/Dockerfile +32 -0
  110. package/docker/services/deployment-mcp/entrypoint.js +51 -0
  111. package/docker/services/flow-composer-mcp/Dockerfile +32 -0
  112. package/docker/services/flow-composer-mcp/config/service.json +28 -0
  113. package/docker/services/flow-composer-mcp/entrypoint.js +51 -0
  114. package/docker/services/graph-memory-mcp/Dockerfile +32 -0
  115. package/docker/services/graph-memory-mcp/config/service.json +28 -0
  116. package/docker/services/graph-memory-mcp/entrypoint.js +51 -0
  117. package/docker/services/integration-mcp/Dockerfile +32 -0
  118. package/docker/services/integration-mcp/config/service.json +28 -0
  119. package/docker/services/integration-mcp/entrypoint.js +51 -0
  120. package/docker/services/intelligent-mcp/Dockerfile +32 -0
  121. package/docker/services/intelligent-mcp/config/service.json +28 -0
  122. package/docker/services/intelligent-mcp/entrypoint.js +51 -0
  123. package/docker/services/operations-mcp/Dockerfile +32 -0
  124. package/docker/services/operations-mcp/config/service.json +28 -0
  125. package/docker/services/operations-mcp/entrypoint.js +51 -0
  126. package/docker/services/platform-development-mcp/Dockerfile +32 -0
  127. package/docker/services/platform-development-mcp/config/service.json +28 -0
  128. package/docker/services/platform-development-mcp/entrypoint.js +51 -0
  129. package/docker/services/reporting-analytics-mcp/Dockerfile +32 -0
  130. package/docker/services/reporting-analytics-mcp/config/service.json +28 -0
  131. package/docker/services/reporting-analytics-mcp/entrypoint.js +51 -0
  132. package/docker/services/security-compliance-mcp/Dockerfile +32 -0
  133. package/docker/services/security-compliance-mcp/config/service.json +28 -0
  134. package/docker/services/security-compliance-mcp/entrypoint.js +51 -0
  135. package/docker/services/update-set-mcp/Dockerfile +32 -0
  136. package/docker/services/update-set-mcp/config/service.json +28 -0
  137. package/docker/services/update-set-mcp/entrypoint.js +51 -0
  138. package/docker-compose.override.yml +132 -0
  139. package/docker-compose.prod.yml +340 -0
  140. package/docker-compose.yml +579 -0
  141. package/k8s/automation-mcp.yaml +232 -0
  142. package/k8s/configmap.yaml +237 -0
  143. package/k8s/deployment-mcp.yaml +232 -0
  144. package/k8s/flow-composer-mcp.yaml +232 -0
  145. package/k8s/generate-k8s-manifests.js +453 -0
  146. package/k8s/graph-memory-mcp.yaml +232 -0
  147. package/k8s/infrastructure.yaml +456 -0
  148. package/k8s/ingress.yaml +361 -0
  149. package/k8s/integration-mcp.yaml +232 -0
  150. package/k8s/intelligent-mcp.yaml +232 -0
  151. package/k8s/kustomization.yaml +111 -0
  152. package/k8s/mcp-services.yaml +2552 -0
  153. package/k8s/monitoring.yaml +515 -0
  154. package/k8s/namespace.yaml +80 -0
  155. package/k8s/operations-mcp.yaml +232 -0
  156. package/k8s/platform-development-mcp.yaml +232 -0
  157. package/k8s/rbac.yaml +140 -0
  158. package/k8s/reporting-analytics-mcp.yaml +232 -0
  159. package/k8s/security-compliance-mcp.yaml +232 -0
  160. package/k8s/update-set-mcp.yaml +232 -0
  161. package/package.json +2 -2
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ /**
3
+ * Distributed Orchestration Interfaces
4
+ *
5
+ * Complete interface definitions for the distributed orchestration system
6
+ * that coordinates external Claude Code instances.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.SessionStatus = exports.MCPXCommand = exports.OrchestrationMode = exports.ConsistencyLevel = exports.InstanceStatus = void 0;
10
+ // ========================================
11
+ // Core Types and Enums
12
+ // ========================================
13
+ var InstanceStatus;
14
+ (function (InstanceStatus) {
15
+ InstanceStatus["ACTIVE"] = "active";
16
+ InstanceStatus["IDLE"] = "idle";
17
+ InstanceStatus["BUSY"] = "busy";
18
+ InstanceStatus["MAINTENANCE"] = "maintenance";
19
+ InstanceStatus["OFFLINE"] = "offline";
20
+ InstanceStatus["UNREACHABLE"] = "unreachable";
21
+ })(InstanceStatus || (exports.InstanceStatus = InstanceStatus = {}));
22
+ var ConsistencyLevel;
23
+ (function (ConsistencyLevel) {
24
+ ConsistencyLevel["EVENTUAL"] = "eventual";
25
+ ConsistencyLevel["STRONG"] = "strong";
26
+ ConsistencyLevel["WEAK"] = "weak";
27
+ })(ConsistencyLevel || (exports.ConsistencyLevel = ConsistencyLevel = {}));
28
+ var OrchestrationMode;
29
+ (function (OrchestrationMode) {
30
+ OrchestrationMode["INTERNAL_ONLY"] = "internal";
31
+ OrchestrationMode["EXTERNAL_ONLY"] = "external";
32
+ OrchestrationMode["HYBRID"] = "hybrid";
33
+ OrchestrationMode["AUTO_BALANCE"] = "auto";
34
+ })(OrchestrationMode || (exports.OrchestrationMode = OrchestrationMode = {}));
35
+ var MCPXCommand;
36
+ (function (MCPXCommand) {
37
+ // Orchestration Commands
38
+ MCPXCommand["ORCHESTRATE_SESSION_START"] = "mcpx.orchestrate.session.start";
39
+ MCPXCommand["ORCHESTRATE_SESSION_END"] = "mcpx.orchestrate.session.end";
40
+ MCPXCommand["ORCHESTRATE_TASK_ASSIGN"] = "mcpx.orchestrate.task.assign";
41
+ MCPXCommand["ORCHESTRATE_TASK_COMPLETE"] = "mcpx.orchestrate.task.complete";
42
+ // Coordination Commands
43
+ MCPXCommand["COORDINATE_STATE_SYNC"] = "mcpx.coordinate.state.sync";
44
+ MCPXCommand["COORDINATE_DEPENDENCY_RESOLVE"] = "mcpx.coordinate.dependency.resolve";
45
+ MCPXCommand["COORDINATE_QUALITY_GATE"] = "mcpx.coordinate.quality.gate";
46
+ // Distribution Commands
47
+ MCPXCommand["DISTRIBUTE_TASK_SPLIT"] = "mcpx.distribute.task.split";
48
+ MCPXCommand["DISTRIBUTE_LOAD_BALANCE"] = "mcpx.distribute.load.balance";
49
+ MCPXCommand["DISTRIBUTE_RESULT_MERGE"] = "mcpx.distribute.result.merge";
50
+ // Health & Monitoring
51
+ MCPXCommand["HEALTH_CHECK"] = "mcpx.health.check";
52
+ MCPXCommand["METRICS_REPORT"] = "mcpx.metrics.report";
53
+ MCPXCommand["STATUS_UPDATE"] = "mcpx.status.update";
54
+ })(MCPXCommand || (exports.MCPXCommand = MCPXCommand = {}));
55
+ var SessionStatus;
56
+ (function (SessionStatus) {
57
+ SessionStatus["INITIALIZING"] = "initializing";
58
+ SessionStatus["ACTIVE"] = "active";
59
+ SessionStatus["PAUSED"] = "paused";
60
+ SessionStatus["COMPLETING"] = "completing";
61
+ SessionStatus["COMPLETED"] = "completed";
62
+ SessionStatus["FAILED"] = "failed";
63
+ SessionStatus["CANCELLED"] = "cancelled";
64
+ })(SessionStatus || (exports.SessionStatus = SessionStatus = {}));
65
+ //# sourceMappingURL=distributed-orchestration.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"distributed-orchestration.interface.js","sourceRoot":"","sources":["../../../src/orchestration/interfaces/distributed-orchestration.interface.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,2CAA2C;AAC3C,uBAAuB;AACvB,2CAA2C;AAE3C,IAAY,cAOX;AAPD,WAAY,cAAc;IACxB,mCAAiB,CAAA;IACjB,+BAAa,CAAA;IACb,+BAAa,CAAA;IACb,6CAA2B,CAAA;IAC3B,qCAAmB,CAAA;IACnB,6CAA2B,CAAA;AAC7B,CAAC,EAPW,cAAc,8BAAd,cAAc,QAOzB;AAED,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,yCAAqB,CAAA;IACrB,qCAAiB,CAAA;IACjB,iCAAa,CAAA;AACf,CAAC,EAJW,gBAAgB,gCAAhB,gBAAgB,QAI3B;AAED,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,+CAA0B,CAAA;IAC1B,+CAA0B,CAAA;IAC1B,sCAAiB,CAAA;IACjB,0CAAqB,CAAA;AACvB,CAAC,EALW,iBAAiB,iCAAjB,iBAAiB,QAK5B;AAED,IAAY,WAqBX;AArBD,WAAY,WAAW;IACrB,yBAAyB;IACzB,2EAA4D,CAAA;IAC5D,uEAAwD,CAAA;IACxD,uEAAwD,CAAA;IACxD,2EAA4D,CAAA;IAE5D,0BAA0B;IAC1B,mEAAoD,CAAA;IACpD,mFAAoE,CAAA;IACpE,uEAAwD,CAAA;IAExD,wBAAwB;IACxB,mEAAoD,CAAA;IACpD,uEAAwD,CAAA;IACxD,uEAAwD,CAAA;IAExD,sBAAsB;IACtB,iDAAkC,CAAA;IAClC,qDAAsC,CAAA;IACtC,mDAAoC,CAAA;AACtC,CAAC,EArBW,WAAW,2BAAX,WAAW,QAqBtB;AA6ZD,IAAY,aAQX;AARD,WAAY,aAAa;IACvB,8CAA6B,CAAA;IAC7B,kCAAiB,CAAA;IACjB,kCAAiB,CAAA;IACjB,0CAAyB,CAAA;IACzB,wCAAuB,CAAA;IACvB,kCAAiB,CAAA;IACjB,wCAAuB,CAAA;AACzB,CAAC,EARW,aAAa,6BAAb,aAAa,QAQxB"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * MCPX (Model Context Protocol eXtended) Implementation
3
+ *
4
+ * Extends MCP with orchestration capabilities for distributed agent coordination
5
+ */
6
+ import { EventEmitter } from 'events';
7
+ import WebSocket from 'ws';
8
+ import { MCPXMessage, MCPXResponse, MCPXCommand, MCPMessage, OrchestrationContext, ClaudeCodeInstance, DistributedOrchestrator } from '../interfaces/distributed-orchestration.interface.js';
9
+ export declare class MCPXProtocol extends EventEmitter {
10
+ private orchestrator;
11
+ private securityConfig;
12
+ private connections;
13
+ private messageHandlers;
14
+ private responseCallbacks;
15
+ private securityManager;
16
+ private messageRouter;
17
+ constructor(orchestrator: DistributedOrchestrator, securityConfig: SecurityConfig);
18
+ establishConnection(agent: ClaudeCodeInstance): Promise<Connection>;
19
+ maintainConnection(connection: Connection): Promise<void>;
20
+ closeConnection(connectionId: string): Promise<void>;
21
+ negotiateProtocol(connection: Connection): Promise<ProtocolNegotiationResult>;
22
+ sendOrchestrationCommand(targetInstance: string, command: MCPXCommand, payload: any, timeout?: number): Promise<MCPXResponse>;
23
+ broadcastCommand(instances: string[], command: MCPXCommand, payload: any, timeout?: number): Promise<Map<string, MCPXResponse>>;
24
+ handleMCPXMessage(message: MCPXMessage, connection: Connection): Promise<MCPXResponse>;
25
+ translateMCPToMCPX(mcpMessage: MCPMessage, context: OrchestrationContext): MCPXMessage;
26
+ translateMCPXToMCP(mcpxMessage: MCPXMessage): MCPMessage;
27
+ private setupMessageHandlers;
28
+ private generateMessageId;
29
+ private getSupportedCapabilities;
30
+ private findCommonCapabilities;
31
+ private sendHeartbeat;
32
+ private sendMessageWithTimeout;
33
+ private sendMessage;
34
+ private createExecutionContext;
35
+ private getResourceUsage;
36
+ private logCommandExecution;
37
+ private handleConnectionFailure;
38
+ private shouldAttemptReconnection;
39
+ private attemptReconnection;
40
+ private getCurrentOrchestrationContext;
41
+ private setupConnection;
42
+ }
43
+ declare class Connection extends EventEmitter {
44
+ readonly agentId: string;
45
+ private websocket;
46
+ private protocol;
47
+ private negotiatedCapabilities;
48
+ constructor(agentId: string, websocket: WebSocket, protocol: MCPXProtocol);
49
+ send(data: string): void;
50
+ close(): void;
51
+ isAuthenticated(): boolean;
52
+ setNegotiatedCapabilities(capabilities: string[]): void;
53
+ getNegotiatedCapabilities(): string[];
54
+ }
55
+ interface SecurityConfig {
56
+ enableAuthentication: boolean;
57
+ enableEncryption: boolean;
58
+ trustedAgents: string[];
59
+ rateLimiting: {
60
+ enabled: boolean;
61
+ maxRequestsPerMinute: number;
62
+ };
63
+ }
64
+ interface ProtocolNegotiationResult {
65
+ success: boolean;
66
+ version?: string;
67
+ capabilities?: string[];
68
+ error?: string;
69
+ }
70
+ export {};
71
+ //# sourceMappingURL=mcpx-protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcpx-protocol.d.ts","sourceRoot":"","sources":["../../../src/orchestration/protocols/mcpx-protocol.ts"],"names":[],"mappings":"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"}