snow-flow 1.1.75 → 1.1.77

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 (249) 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 +145 -13
  8. package/README.md +117 -50
  9. package/dist/agents/base-agent.d.ts +92 -0
  10. package/dist/agents/base-agent.d.ts.map +1 -0
  11. package/dist/agents/base-agent.js +228 -0
  12. package/dist/agents/base-agent.js.map +1 -0
  13. package/dist/agents/coordinator.d.ts +200 -0
  14. package/dist/agents/coordinator.d.ts.map +1 -0
  15. package/dist/agents/coordinator.js +775 -0
  16. package/dist/agents/coordinator.js.map +1 -0
  17. package/dist/agents/flow-builder-agent.d.ts +18 -0
  18. package/dist/agents/flow-builder-agent.d.ts.map +1 -0
  19. package/dist/agents/flow-builder-agent.js +536 -0
  20. package/dist/agents/flow-builder-agent.js.map +1 -0
  21. package/dist/agents/index.d.ts +18 -0
  22. package/dist/agents/index.d.ts.map +1 -0
  23. package/dist/agents/index.js +61 -0
  24. package/dist/agents/index.js.map +1 -0
  25. package/dist/agents/queen-agent-example.d.ts +23 -0
  26. package/dist/agents/queen-agent-example.d.ts.map +1 -0
  27. package/dist/agents/queen-agent-example.js +241 -0
  28. package/dist/agents/queen-agent-example.js.map +1 -0
  29. package/dist/agents/queen-agent.d.ts +180 -0
  30. package/dist/agents/queen-agent.d.ts.map +1 -0
  31. package/dist/agents/queen-agent.js +909 -0
  32. package/dist/agents/queen-agent.js.map +1 -0
  33. package/dist/agents/queen-agent.test.d.ts +6 -0
  34. package/dist/agents/queen-agent.test.d.ts.map +1 -0
  35. package/dist/agents/queen-agent.test.js.map +1 -0
  36. package/dist/agents/script-writer-agent.d.ts +22 -0
  37. package/dist/agents/script-writer-agent.d.ts.map +1 -0
  38. package/dist/agents/script-writer-agent.js +695 -0
  39. package/dist/agents/script-writer-agent.js.map +1 -0
  40. package/dist/agents/security-agent.d.ts +23 -0
  41. package/dist/agents/security-agent.d.ts.map +1 -0
  42. package/dist/agents/security-agent.js +619 -0
  43. package/dist/agents/security-agent.js.map +1 -0
  44. package/dist/agents/test-agent.d.ts +26 -0
  45. package/dist/agents/test-agent.d.ts.map +1 -0
  46. package/dist/agents/test-agent.js +735 -0
  47. package/dist/agents/test-agent.js.map +1 -0
  48. package/dist/agents/test-agents.d.ts +7 -0
  49. package/dist/agents/test-agents.d.ts.map +1 -0
  50. package/dist/agents/test-agents.js +65 -0
  51. package/dist/agents/test-agents.js.map +1 -0
  52. package/dist/agents/widget-creator-agent.d.ts +18 -0
  53. package/dist/agents/widget-creator-agent.d.ts.map +1 -0
  54. package/dist/agents/widget-creator-agent.js +440 -0
  55. package/dist/agents/widget-creator-agent.js.map +1 -0
  56. package/dist/cli/snow-flow-cli-integration.d.ts +30 -0
  57. package/dist/cli/snow-flow-cli-integration.d.ts.map +1 -0
  58. package/dist/cli/snow-flow-cli-integration.js +385 -0
  59. package/dist/cli/snow-flow-cli-integration.js.map +1 -0
  60. package/dist/cli.js +692 -150
  61. package/dist/cli.js.map +1 -1
  62. package/dist/config/snow-flow-config.d.ts +1454 -0
  63. package/dist/config/snow-flow-config.d.ts.map +1 -0
  64. package/dist/config/snow-flow-config.js +403 -0
  65. package/dist/config/snow-flow-config.js.map +1 -0
  66. package/dist/health/system-health.d.ts +123 -0
  67. package/dist/health/system-health.d.ts.map +1 -0
  68. package/dist/health/system-health.js +580 -0
  69. package/dist/health/system-health.js.map +1 -0
  70. package/dist/index.d.ts +12 -1
  71. package/dist/index.d.ts.map +1 -1
  72. package/dist/index.js +19 -3
  73. package/dist/index.js.map +1 -1
  74. package/dist/mcp/http-transport-wrapper.d.ts +29 -0
  75. package/dist/mcp/http-transport-wrapper.d.ts.map +1 -0
  76. package/dist/mcp/http-transport-wrapper.js +318 -0
  77. package/dist/mcp/http-transport-wrapper.js.map +1 -0
  78. package/dist/mcp/service-discovery-client.d.ts +83 -0
  79. package/dist/mcp/service-discovery-client.d.ts.map +1 -0
  80. package/dist/mcp/service-discovery-client.js +211 -0
  81. package/dist/mcp/service-discovery-client.js.map +1 -0
  82. package/dist/mcp/servicenow-deployment-mcp-refactored.d.ts +58 -0
  83. package/dist/mcp/servicenow-deployment-mcp-refactored.d.ts.map +1 -0
  84. package/dist/mcp/servicenow-deployment-mcp-refactored.js +651 -0
  85. package/dist/mcp/servicenow-deployment-mcp-refactored.js.map +1 -0
  86. package/dist/mcp/servicenow-deployment-mcp.js +116 -23
  87. package/dist/mcp/servicenow-deployment-mcp.js.map +1 -1
  88. package/dist/mcp/servicenow-intelligent-mcp-refactored.d.ts +43 -0
  89. package/dist/mcp/servicenow-intelligent-mcp-refactored.d.ts.map +1 -0
  90. package/dist/mcp/servicenow-intelligent-mcp-refactored.js +576 -0
  91. package/dist/mcp/servicenow-intelligent-mcp-refactored.js.map +1 -0
  92. package/dist/mcp/servicenow-intelligent-mcp.d.ts +102 -1
  93. package/dist/mcp/servicenow-intelligent-mcp.d.ts.map +1 -1
  94. package/dist/mcp/servicenow-intelligent-mcp.js +254 -18
  95. package/dist/mcp/servicenow-intelligent-mcp.js.map +1 -1
  96. package/dist/mcp/servicenow-operations-mcp.js +170 -32
  97. package/dist/mcp/servicenow-operations-mcp.js.map +1 -1
  98. package/dist/mcp/shared/agent-context-provider.d.ts +77 -0
  99. package/dist/mcp/shared/agent-context-provider.d.ts.map +1 -0
  100. package/dist/mcp/shared/agent-context-provider.js +292 -0
  101. package/dist/mcp/shared/agent-context-provider.js.map +1 -0
  102. package/dist/mcp/shared/base-mcp-server.d.ts +97 -0
  103. package/dist/mcp/shared/base-mcp-server.d.ts.map +1 -0
  104. package/dist/mcp/shared/base-mcp-server.js +216 -0
  105. package/dist/mcp/shared/base-mcp-server.js.map +1 -0
  106. package/dist/mcp/shared/mcp-memory-manager.d.ts +87 -0
  107. package/dist/mcp/shared/mcp-memory-manager.d.ts.map +1 -0
  108. package/dist/mcp/shared/mcp-memory-manager.js +423 -0
  109. package/dist/mcp/shared/mcp-memory-manager.js.map +1 -0
  110. package/dist/memory/index.d.ts +9 -0
  111. package/dist/memory/index.d.ts.map +1 -0
  112. package/dist/memory/index.js +20 -0
  113. package/dist/memory/index.js.map +1 -0
  114. package/dist/memory/mcp-integration-example.d.ts +6 -0
  115. package/dist/memory/mcp-integration-example.d.ts.map +1 -0
  116. package/dist/memory/mcp-integration-example.js +282 -0
  117. package/dist/memory/mcp-integration-example.js.map +1 -0
  118. package/dist/memory/memory-client.d.ts +184 -0
  119. package/dist/memory/memory-client.d.ts.map +1 -0
  120. package/dist/memory/memory-client.js +325 -0
  121. package/dist/memory/memory-client.js.map +1 -0
  122. package/dist/memory/memory-operations.d.ts +170 -0
  123. package/dist/memory/memory-operations.d.ts.map +1 -0
  124. package/dist/memory/memory-operations.js +639 -0
  125. package/dist/memory/memory-operations.js.map +1 -0
  126. package/dist/memory/memory-system.d.ts +118 -0
  127. package/dist/memory/memory-system.d.ts.map +1 -0
  128. package/dist/memory/memory-system.js +477 -0
  129. package/dist/memory/memory-system.js.map +1 -0
  130. package/dist/memory/memory-test.d.ts +6 -0
  131. package/dist/memory/memory-test.d.ts.map +1 -0
  132. package/dist/memory/memory-test.js +162 -0
  133. package/dist/memory/memory-test.js.map +1 -0
  134. package/dist/memory/swarm-memory.d.ts +135 -0
  135. package/dist/memory/swarm-memory.d.ts.map +1 -0
  136. package/dist/memory/swarm-memory.js +378 -0
  137. package/dist/memory/swarm-memory.js.map +1 -0
  138. package/dist/monitoring/performance-tracker.d.ts +157 -0
  139. package/dist/monitoring/performance-tracker.d.ts.map +1 -0
  140. package/dist/monitoring/performance-tracker.js +571 -0
  141. package/dist/monitoring/performance-tracker.js.map +1 -0
  142. package/dist/orchestration/discovery/service-discovery.d.ts +81 -0
  143. package/dist/orchestration/discovery/service-discovery.d.ts.map +1 -0
  144. package/dist/orchestration/discovery/service-discovery.js +808 -0
  145. package/dist/orchestration/discovery/service-discovery.js.map +1 -0
  146. package/dist/orchestration/distributed-orchestrator.d.ts +131 -0
  147. package/dist/orchestration/distributed-orchestrator.d.ts.map +1 -0
  148. package/dist/orchestration/distributed-orchestrator.js +712 -0
  149. package/dist/orchestration/distributed-orchestrator.js.map +1 -0
  150. package/dist/orchestration/distribution/task-distribution-engine.d.ts +53 -0
  151. package/dist/orchestration/distribution/task-distribution-engine.d.ts.map +1 -0
  152. package/dist/orchestration/distribution/task-distribution-engine.js +586 -0
  153. package/dist/orchestration/distribution/task-distribution-engine.js.map +1 -0
  154. package/dist/orchestration/interfaces/distributed-orchestration.interface.d.ts +606 -0
  155. package/dist/orchestration/interfaces/distributed-orchestration.interface.d.ts.map +1 -0
  156. package/dist/orchestration/interfaces/distributed-orchestration.interface.js +65 -0
  157. package/dist/orchestration/interfaces/distributed-orchestration.interface.js.map +1 -0
  158. package/dist/orchestration/protocols/mcpx-protocol.d.ts +71 -0
  159. package/dist/orchestration/protocols/mcpx-protocol.d.ts.map +1 -0
  160. package/dist/orchestration/protocols/mcpx-protocol.js +668 -0
  161. package/dist/orchestration/protocols/mcpx-protocol.js.map +1 -0
  162. package/dist/orchestration/state/distributed-state-manager.d.ts +89 -0
  163. package/dist/orchestration/state/distributed-state-manager.d.ts.map +1 -0
  164. package/dist/orchestration/state/distributed-state-manager.js +716 -0
  165. package/dist/orchestration/state/distributed-state-manager.js.map +1 -0
  166. package/dist/queen/advanced-integration-test.d.ts +48 -0
  167. package/dist/queen/advanced-integration-test.d.ts.map +1 -0
  168. package/dist/queen/advanced-integration-test.js +474 -0
  169. package/dist/queen/advanced-integration-test.js.map +1 -0
  170. package/dist/queen/agent-factory.d.ts +43 -0
  171. package/dist/queen/agent-factory.d.ts.map +1 -0
  172. package/dist/queen/agent-factory.js +485 -0
  173. package/dist/queen/agent-factory.js.map +1 -0
  174. package/dist/queen/index.d.ts +58 -0
  175. package/dist/queen/index.d.ts.map +1 -0
  176. package/dist/queen/index.js +79 -0
  177. package/dist/queen/index.js.map +1 -0
  178. package/dist/queen/integration-example.d.ts +82 -0
  179. package/dist/queen/integration-example.d.ts.map +1 -0
  180. package/dist/queen/integration-example.js +220 -0
  181. package/dist/queen/integration-example.js.map +1 -0
  182. package/dist/queen/integration-test.d.ts +72 -0
  183. package/dist/queen/integration-test.d.ts.map +1 -0
  184. package/dist/queen/integration-test.js +564 -0
  185. package/dist/queen/integration-test.js.map +1 -0
  186. package/dist/queen/mock-mcp-client.d.ts +66 -0
  187. package/dist/queen/mock-mcp-client.d.ts.map +1 -0
  188. package/dist/queen/mock-mcp-client.js +297 -0
  189. package/dist/queen/mock-mcp-client.js.map +1 -0
  190. package/dist/queen/neural-learning.d.ts +28 -0
  191. package/dist/queen/neural-learning.d.ts.map +1 -0
  192. package/dist/queen/neural-learning.js +244 -0
  193. package/dist/queen/neural-learning.js.map +1 -0
  194. package/dist/queen/queen-memory.d.ts +31 -0
  195. package/dist/queen/queen-memory.d.ts.map +1 -0
  196. package/dist/queen/queen-memory.js +315 -0
  197. package/dist/queen/queen-memory.js.map +1 -0
  198. package/dist/queen/run-integration-tests.d.ts +9 -0
  199. package/dist/queen/run-integration-tests.d.ts.map +1 -0
  200. package/dist/queen/run-integration-tests.js +28 -0
  201. package/dist/queen/run-integration-tests.js.map +1 -0
  202. package/dist/queen/servicenow-queen.d.ts +56 -0
  203. package/dist/queen/servicenow-queen.d.ts.map +1 -0
  204. package/dist/queen/servicenow-queen.js +659 -0
  205. package/dist/queen/servicenow-queen.js.map +1 -0
  206. package/dist/queen/types.d.ts +58 -0
  207. package/dist/queen/types.d.ts.map +1 -0
  208. package/dist/queen/types.js +7 -0
  209. package/dist/queen/types.js.map +1 -0
  210. package/dist/snow-flow-system.d.ts +132 -0
  211. package/dist/snow-flow-system.d.ts.map +1 -0
  212. package/dist/snow-flow-system.js +396 -0
  213. package/dist/snow-flow-system.js.map +1 -0
  214. package/dist/types/todo.types.d.ts +61 -0
  215. package/dist/types/todo.types.d.ts.map +1 -0
  216. package/dist/types/todo.types.js +7 -0
  217. package/dist/types/todo.types.js.map +1 -0
  218. package/dist/utils/error-recovery.d.ts +101 -0
  219. package/dist/utils/error-recovery.d.ts.map +1 -0
  220. package/dist/utils/error-recovery.js +548 -0
  221. package/dist/utils/error-recovery.js.map +1 -0
  222. package/dist/version.d.ts +2 -1
  223. package/dist/version.d.ts.map +1 -1
  224. package/dist/version.js +16 -2
  225. package/dist/version.js.map +1 -1
  226. package/package.json +8 -3
  227. package/test-clean-install/.claude/config.json +0 -12
  228. package/test-clean-install/.env.example +0 -49
  229. package/test-clean-install/CLAUDE.md +0 -26
  230. package/test-clean-install/README.md +0 -23
  231. package/test-global-install/.claude/config.json +0 -12
  232. package/test-global-install/CLAUDE.md +0 -26
  233. package/test-global-install/README.md +0 -23
  234. package/test-global-install/test-global-install/.claude/config.json +0 -12
  235. package/test-global-install/test-global-install/CLAUDE.md +0 -26
  236. package/test-global-install/test-global-install/README.md +0 -23
  237. package/test-global-install/test-global-install/test-global-install/.claude/config.json +0 -12
  238. package/test-global-install/test-global-install/test-global-install/.env.example +0 -49
  239. package/test-global-install/test-global-install/test-global-install/CLAUDE.md +0 -26
  240. package/test-global-install/test-global-install/test-global-install/README.md +0 -23
  241. package/test-init-debug/.claude/config.json +0 -12
  242. package/test-init-debug/CLAUDE.md +0 -693
  243. package/test-init-debug/README.md +0 -392
  244. package/test-init-real/.claude/config.json +0 -12
  245. package/test-init-real/.claude/mcp-config.json +0 -128
  246. package/test-init-real/.claude/settings.json +0 -37
  247. package/test-init-real/CLAUDE.md +0 -693
  248. package/test-init-real/README.md +0 -392
  249. package/test-init-real/activate-mcp.sh +0 -15
@@ -0,0 +1,58 @@
1
+ /**
2
+ * ServiceNow Queen Agent Types
3
+ * Simple, elegant type definitions for the hive-mind
4
+ */
5
+ export interface ServiceNowTask {
6
+ id: string;
7
+ objective: string;
8
+ type: 'widget' | 'flow' | 'script' | 'application' | 'integration' | 'unknown';
9
+ artifacts: string[];
10
+ status: 'analyzing' | 'planning' | 'executing' | 'completed' | 'failed';
11
+ result?: any;
12
+ error?: string;
13
+ }
14
+ export interface Agent {
15
+ id: string;
16
+ type: AgentType;
17
+ status: 'idle' | 'working' | 'completed' | 'failed';
18
+ task?: string;
19
+ capabilities: string[];
20
+ mcpTools: string[];
21
+ }
22
+ export type AgentType = 'widget-creator' | 'flow-builder' | 'script-writer' | 'app-architect' | 'integration-specialist' | 'catalog-manager' | 'researcher' | 'tester';
23
+ export interface DeploymentPattern {
24
+ taskType: string;
25
+ successRate: number;
26
+ agentSequence: AgentType[];
27
+ mcpSequence: string[];
28
+ avgDuration: number;
29
+ lastUsed: Date;
30
+ }
31
+ export interface QueenMemory {
32
+ patterns: DeploymentPattern[];
33
+ artifacts: Map<string, any>;
34
+ agentHistory: Map<string, Agent[]>;
35
+ learnings: Map<string, string>;
36
+ }
37
+ export interface TaskAnalysis {
38
+ type: ServiceNowTask['type'];
39
+ requiredAgents: AgentType[];
40
+ estimatedComplexity: number;
41
+ suggestedPattern?: DeploymentPattern;
42
+ dependencies: string[];
43
+ }
44
+ export interface AgentMessage {
45
+ from: string;
46
+ to: string;
47
+ type: 'task' | 'result' | 'error' | 'query' | 'coordination';
48
+ content: any;
49
+ timestamp: Date;
50
+ }
51
+ export interface ServiceNowArtifact {
52
+ type: 'widget' | 'flow' | 'script' | 'table' | 'catalog_item';
53
+ name: string;
54
+ sys_id?: string;
55
+ config: any;
56
+ dependencies: string[];
57
+ }
58
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/queen/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,aAAa,GAAG,SAAS,CAAC;IAC/E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,WAAW,GAAG,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;IACxE,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IACpD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,MAAM,SAAS,GACjB,gBAAgB,GAChB,cAAc,GACd,eAAe,GACf,eAAe,GACf,wBAAwB,GACxB,iBAAiB,GACjB,YAAY,GACZ,QAAQ,CAAC;AAEb,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACnC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IAC7B,cAAc,EAAE,SAAS,EAAE,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,cAAc,CAAC;IAC7D,OAAO,EAAE,GAAG,CAAC;IACb,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,cAAc,CAAC;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC;IACZ,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * ServiceNow Queen Agent Types
4
+ * Simple, elegant type definitions for the hive-mind
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/queen/types.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
@@ -0,0 +1,132 @@
1
+ /**
2
+ * Snow-Flow Main Integration Layer
3
+ * Coordinates all subsystems: Agents, Memory, MCPs, and ServiceNow
4
+ */
5
+ import { EventEmitter } from 'events';
6
+ import { SnowFlowConfig } from './config/snow-flow-config';
7
+ import { MemorySystem } from './memory/memory-system';
8
+ import { MCPServerManager } from './utils/mcp-server-manager';
9
+ export interface SwarmSession {
10
+ id: string;
11
+ objective: string;
12
+ startedAt: Date;
13
+ status: 'initializing' | 'active' | 'completing' | 'completed' | 'failed';
14
+ queenAgentId: string;
15
+ activeAgents: Map<string, AgentInfo>;
16
+ completedTasks: number;
17
+ totalTasks: number;
18
+ errors: Error[];
19
+ }
20
+ export interface AgentInfo {
21
+ id: string;
22
+ type: string;
23
+ status: 'spawned' | 'active' | 'blocked' | 'completed' | 'failed';
24
+ assignedTasks: string[];
25
+ progress: number;
26
+ lastActivity: Date;
27
+ }
28
+ export declare class SnowFlowSystem extends EventEmitter {
29
+ private config;
30
+ private queen?;
31
+ private memory?;
32
+ private mcpManager?;
33
+ private performanceTracker?;
34
+ private systemHealth?;
35
+ private errorRecovery;
36
+ private logger;
37
+ private sessions;
38
+ private initialized;
39
+ constructor(config?: Partial<SnowFlowConfig>);
40
+ /**
41
+ * Initialize the entire Snow-Flow system
42
+ */
43
+ initialize(): Promise<void>;
44
+ /**
45
+ * Initialize Memory System with SQLite
46
+ */
47
+ private initializeMemory;
48
+ /**
49
+ * Initialize MCP Server Manager
50
+ */
51
+ private initializeMCPServers;
52
+ /**
53
+ * Initialize Queen Agent System
54
+ */
55
+ private initializeQueen;
56
+ /**
57
+ * Initialize Performance Tracking
58
+ */
59
+ private initializePerformanceTracking;
60
+ /**
61
+ * Initialize System Health Monitoring
62
+ */
63
+ private initializeHealthMonitoring;
64
+ /**
65
+ * Execute a swarm objective
66
+ */
67
+ executeSwarm(objective: string, options?: SwarmOptions): Promise<SwarmResult>;
68
+ /**
69
+ * Get system status
70
+ */
71
+ getStatus(): Promise<SystemStatus>;
72
+ /**
73
+ * Shutdown the system gracefully
74
+ */
75
+ shutdown(): Promise<void>;
76
+ /**
77
+ * Get session information
78
+ */
79
+ getSession(sessionId: string): SwarmSession | undefined;
80
+ /**
81
+ * List all sessions
82
+ */
83
+ listSessions(filter?: {
84
+ status?: string;
85
+ }): SwarmSession[];
86
+ /**
87
+ * Get memory system instance
88
+ */
89
+ getMemory(): MemorySystem | undefined;
90
+ /**
91
+ * Get MCP manager instance
92
+ */
93
+ getMCPManager(): MCPServerManager | undefined;
94
+ /**
95
+ * Private helper methods
96
+ */
97
+ private generateSessionId;
98
+ private updateAgentInfo;
99
+ private gracefullyCompleteSession;
100
+ private calculateSuccessRate;
101
+ private calculateAverageExecutionTime;
102
+ }
103
+ export interface SwarmOptions {
104
+ strategy?: 'research' | 'development' | 'analysis' | 'testing' | 'optimization' | 'maintenance';
105
+ mode?: 'centralized' | 'distributed' | 'hierarchical' | 'mesh' | 'hybrid';
106
+ maxAgents?: number;
107
+ parallel?: boolean;
108
+ monitor?: boolean;
109
+ autoPermissions?: boolean;
110
+ smartDiscovery?: boolean;
111
+ liveTesting?: boolean;
112
+ autoDeploy?: boolean;
113
+ autoRollback?: boolean;
114
+ sharedMemory?: boolean;
115
+ progressMonitoring?: boolean;
116
+ }
117
+ export interface SwarmResult {
118
+ sessionId: string;
119
+ success: boolean;
120
+ artifacts: any[];
121
+ summary: string;
122
+ metrics: any;
123
+ }
124
+ export interface SystemStatus {
125
+ initialized: boolean;
126
+ status: string;
127
+ components: Record<string, any>;
128
+ activeSessions?: number;
129
+ metrics?: any;
130
+ }
131
+ export declare const snowFlowSystem: SnowFlowSystem;
132
+ //# sourceMappingURL=snow-flow-system.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snow-flow-system.d.ts","sourceRoot":"","sources":["../src/snow-flow-system.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,396 @@
1
+ "use strict";
2
+ /**
3
+ * Snow-Flow Main Integration Layer
4
+ * Coordinates all subsystems: Agents, Memory, MCPs, and ServiceNow
5
+ */
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.snowFlowSystem = exports.SnowFlowSystem = void 0;
11
+ const events_1 = require("events");
12
+ const snow_flow_config_1 = require("./config/snow-flow-config");
13
+ const servicenow_queen_1 = require("./queen/servicenow-queen");
14
+ const memory_system_1 = require("./memory/memory-system");
15
+ const mcp_server_manager_1 = require("./utils/mcp-server-manager");
16
+ const performance_tracker_1 = require("./monitoring/performance-tracker");
17
+ const system_health_1 = require("./health/system-health");
18
+ const error_recovery_1 = require("./utils/error-recovery");
19
+ const logger_1 = require("./utils/logger");
20
+ const path_1 = __importDefault(require("path"));
21
+ const os_1 = __importDefault(require("os"));
22
+ class SnowFlowSystem extends events_1.EventEmitter {
23
+ constructor(config) {
24
+ super();
25
+ this.sessions = new Map();
26
+ this.initialized = false;
27
+ this.config = new snow_flow_config_1.SnowFlowConfig(config);
28
+ this.logger = new logger_1.Logger('SnowFlowSystem');
29
+ this.errorRecovery = new error_recovery_1.ErrorRecovery(this.logger);
30
+ }
31
+ /**
32
+ * Initialize the entire Snow-Flow system
33
+ */
34
+ async initialize() {
35
+ if (this.initialized) {
36
+ this.logger.info('System already initialized');
37
+ return;
38
+ }
39
+ try {
40
+ this.logger.info('Initializing Snow-Flow System...');
41
+ // 1. Initialize Memory System
42
+ await this.initializeMemory();
43
+ // 2. Initialize MCP Servers
44
+ await this.initializeMCPServers();
45
+ // 3. Initialize Queen Agent System
46
+ await this.initializeQueen();
47
+ // 4. Initialize Performance Tracking
48
+ await this.initializePerformanceTracking();
49
+ // 5. Initialize System Health Monitoring
50
+ await this.initializeHealthMonitoring();
51
+ this.initialized = true;
52
+ this.emit('system:initialized');
53
+ this.logger.info('Snow-Flow System initialized successfully');
54
+ }
55
+ catch (error) {
56
+ this.logger.error('System initialization failed:', error);
57
+ await this.errorRecovery.handleCriticalError(error, {
58
+ operation: 'system_initialization',
59
+ fallbackStrategies: ['retry_initialization', 'partial_initialization']
60
+ });
61
+ throw error;
62
+ }
63
+ }
64
+ /**
65
+ * Initialize Memory System with SQLite
66
+ */
67
+ async initializeMemory() {
68
+ this.logger.info('Initializing Memory System...');
69
+ const dbPath = path_1.default.join(os_1.default.homedir(), '.snow-flow', 'memory', 'snow-flow.db');
70
+ this.memory = new memory_system_1.MemorySystem({
71
+ dbPath,
72
+ schema: this.config.memory.schema,
73
+ ttl: this.config.memory.ttl
74
+ });
75
+ await this.memory.initialize();
76
+ this.emit('memory:initialized');
77
+ }
78
+ /**
79
+ * Initialize MCP Server Manager
80
+ */
81
+ async initializeMCPServers() {
82
+ this.logger.info('Initializing MCP Servers...');
83
+ this.mcpManager = new mcp_server_manager_1.MCPServerManager(this.config.mcp);
84
+ // Start all required MCP servers
85
+ const servers = [
86
+ 'servicenow-deployment',
87
+ 'servicenow-intelligent',
88
+ 'servicenow-operations',
89
+ 'servicenow-flow-composer',
90
+ 'servicenow-platform-development',
91
+ 'servicenow-integration',
92
+ 'servicenow-automation',
93
+ 'servicenow-security-compliance',
94
+ 'servicenow-reporting-analytics',
95
+ 'servicenow-graph-memory',
96
+ 'servicenow-update-set'
97
+ ];
98
+ for (const server of servers) {
99
+ try {
100
+ await this.mcpManager.startServer(server);
101
+ this.logger.info(`Started MCP server: ${server}`);
102
+ }
103
+ catch (error) {
104
+ this.logger.error(`Failed to start MCP server ${server}:`, error);
105
+ // Continue with other servers even if one fails
106
+ }
107
+ }
108
+ this.emit('mcp:initialized');
109
+ }
110
+ /**
111
+ * Initialize Queen Agent System
112
+ */
113
+ async initializeQueen() {
114
+ this.logger.info('Initializing Queen Agent System...');
115
+ if (!this.memory || !this.mcpManager) {
116
+ throw new Error('Memory and MCP must be initialized before Queen');
117
+ }
118
+ this.queen = new servicenow_queen_1.ServiceNowQueen({
119
+ memory: this.memory,
120
+ mcpManager: this.mcpManager,
121
+ config: this.config.agents.queen
122
+ });
123
+ await this.queen.initialize();
124
+ // Set up Queen event handlers
125
+ this.queen.on('agent:spawned', (agent) => {
126
+ this.emit('agent:spawned', agent);
127
+ });
128
+ this.queen.on('agent:completed', (agent) => {
129
+ this.emit('agent:completed', agent);
130
+ });
131
+ this.queen.on('swarm:progress', (progress) => {
132
+ this.emit('swarm:progress', progress);
133
+ });
134
+ this.emit('queen:initialized');
135
+ }
136
+ /**
137
+ * Initialize Performance Tracking
138
+ */
139
+ async initializePerformanceTracking() {
140
+ this.logger.info('Initializing Performance Tracking...');
141
+ if (!this.memory) {
142
+ throw new Error('Memory must be initialized before Performance Tracking');
143
+ }
144
+ this.performanceTracker = new performance_tracker_1.PerformanceTracker({
145
+ memory: this.memory,
146
+ config: this.config.monitoring.performance
147
+ });
148
+ await this.performanceTracker.initialize();
149
+ // Set up performance monitoring
150
+ this.performanceTracker.on('metric:recorded', (metric) => {
151
+ this.emit('performance:metric', metric);
152
+ });
153
+ this.emit('performance:initialized');
154
+ }
155
+ /**
156
+ * Initialize System Health Monitoring
157
+ */
158
+ async initializeHealthMonitoring() {
159
+ this.logger.info('Initializing System Health Monitoring...');
160
+ if (!this.memory || !this.mcpManager) {
161
+ throw new Error('Memory and MCP must be initialized before Health Monitoring');
162
+ }
163
+ this.systemHealth = new system_health_1.SystemHealth({
164
+ memory: this.memory,
165
+ mcpManager: this.mcpManager,
166
+ config: this.config.health
167
+ });
168
+ await this.systemHealth.initialize();
169
+ // Set up health monitoring
170
+ this.systemHealth.on('health:check', (status) => {
171
+ this.emit('health:status', status);
172
+ });
173
+ // Start periodic health checks
174
+ await this.systemHealth.startMonitoring();
175
+ this.emit('health:initialized');
176
+ }
177
+ /**
178
+ * Execute a swarm objective
179
+ */
180
+ async executeSwarm(objective, options = {}) {
181
+ if (!this.initialized) {
182
+ throw new Error('System not initialized. Call initialize() first.');
183
+ }
184
+ const sessionId = this.generateSessionId();
185
+ const session = {
186
+ id: sessionId,
187
+ objective,
188
+ startedAt: new Date(),
189
+ status: 'initializing',
190
+ queenAgentId: '',
191
+ activeAgents: new Map(),
192
+ completedTasks: 0,
193
+ totalTasks: 0,
194
+ errors: []
195
+ };
196
+ this.sessions.set(sessionId, session);
197
+ try {
198
+ // Track swarm execution
199
+ await this.performanceTracker?.startOperation('swarm_execution', {
200
+ sessionId,
201
+ objective
202
+ });
203
+ // Queen analyzes objective and spawns agents
204
+ const analysis = await this.queen.analyzeObjective(objective, {
205
+ sessionId,
206
+ ...options
207
+ });
208
+ session.queenAgentId = analysis.queenId;
209
+ session.totalTasks = analysis.estimatedTasks;
210
+ session.status = 'active';
211
+ // Execute swarm with Queen coordination
212
+ const result = await this.queen.executeSwarm(analysis, {
213
+ sessionId,
214
+ onProgress: (progress) => {
215
+ session.completedTasks = progress.completed;
216
+ session.status = progress.status;
217
+ this.emit('swarm:progress', { sessionId, progress });
218
+ },
219
+ onAgentUpdate: (agentUpdate) => {
220
+ this.updateAgentInfo(session, agentUpdate);
221
+ }
222
+ });
223
+ session.status = 'completed';
224
+ await this.performanceTracker?.endOperation('swarm_execution', {
225
+ sessionId,
226
+ success: true
227
+ });
228
+ return {
229
+ sessionId,
230
+ success: true,
231
+ artifacts: result.artifacts,
232
+ summary: result.summary,
233
+ metrics: await this.performanceTracker?.getSessionMetrics(sessionId) || {}
234
+ };
235
+ }
236
+ catch (error) {
237
+ session.status = 'failed';
238
+ session.errors.push(error);
239
+ await this.performanceTracker?.endOperation('swarm_execution', {
240
+ sessionId,
241
+ success: false,
242
+ error: error.message
243
+ });
244
+ // Attempt recovery
245
+ const recovery = await this.errorRecovery.attemptSwarmRecovery(sessionId, error);
246
+ if (recovery.success) {
247
+ return recovery.result;
248
+ }
249
+ throw error;
250
+ }
251
+ }
252
+ /**
253
+ * Get system status
254
+ */
255
+ async getStatus() {
256
+ if (!this.initialized) {
257
+ return {
258
+ initialized: false,
259
+ status: 'not_initialized',
260
+ components: {}
261
+ };
262
+ }
263
+ const healthStatus = await this.systemHealth.getFullStatus();
264
+ const activeSessions = Array.from(this.sessions.values())
265
+ .filter(s => s.status === 'active');
266
+ return {
267
+ initialized: true,
268
+ status: healthStatus.healthy ? 'healthy' : 'degraded',
269
+ components: {
270
+ memory: healthStatus.components.memory,
271
+ mcp: healthStatus.components.mcp,
272
+ queen: healthStatus.components.queen,
273
+ performance: healthStatus.components.performance
274
+ },
275
+ activeSessions: activeSessions.length,
276
+ metrics: {
277
+ totalSessions: this.sessions.size,
278
+ successRate: await this.calculateSuccessRate(),
279
+ averageExecutionTime: await this.calculateAverageExecutionTime()
280
+ }
281
+ };
282
+ }
283
+ /**
284
+ * Shutdown the system gracefully
285
+ */
286
+ async shutdown() {
287
+ this.logger.info('Shutting down Snow-Flow System...');
288
+ try {
289
+ // Complete active sessions
290
+ for (const session of this.sessions.values()) {
291
+ if (session.status === 'active') {
292
+ await this.gracefullyCompleteSession(session.id);
293
+ }
294
+ }
295
+ // Shutdown components in reverse order
296
+ await this.systemHealth?.stopMonitoring();
297
+ await this.performanceTracker?.shutdown();
298
+ await this.queen?.shutdown();
299
+ await this.mcpManager?.shutdownAll();
300
+ await this.memory?.close();
301
+ this.initialized = false;
302
+ this.emit('system:shutdown');
303
+ this.logger.info('Snow-Flow System shutdown complete');
304
+ }
305
+ catch (error) {
306
+ this.logger.error('Error during shutdown:', error);
307
+ throw error;
308
+ }
309
+ }
310
+ /**
311
+ * Get session information
312
+ */
313
+ getSession(sessionId) {
314
+ return this.sessions.get(sessionId);
315
+ }
316
+ /**
317
+ * List all sessions
318
+ */
319
+ listSessions(filter) {
320
+ const sessions = Array.from(this.sessions.values());
321
+ if (filter?.status) {
322
+ return sessions.filter(s => s.status === filter.status);
323
+ }
324
+ return sessions;
325
+ }
326
+ /**
327
+ * Get memory system instance
328
+ */
329
+ getMemory() {
330
+ return this.memory;
331
+ }
332
+ /**
333
+ * Get MCP manager instance
334
+ */
335
+ getMCPManager() {
336
+ return this.mcpManager;
337
+ }
338
+ /**
339
+ * Private helper methods
340
+ */
341
+ generateSessionId() {
342
+ return `swarm_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
343
+ }
344
+ updateAgentInfo(session, update) {
345
+ const agent = session.activeAgents.get(update.agentId) || {
346
+ id: update.agentId,
347
+ type: update.agentType,
348
+ status: 'spawned',
349
+ assignedTasks: [],
350
+ progress: 0,
351
+ lastActivity: new Date()
352
+ };
353
+ Object.assign(agent, update);
354
+ session.activeAgents.set(update.agentId, agent);
355
+ }
356
+ async gracefullyCompleteSession(sessionId) {
357
+ const session = this.sessions.get(sessionId);
358
+ if (!session)
359
+ return;
360
+ this.logger.info(`Gracefully completing session ${sessionId}`);
361
+ // Notify all active agents to wrap up
362
+ for (const agent of session.activeAgents.values()) {
363
+ if (agent.status === 'active') {
364
+ await this.queen?.requestAgentShutdown(agent.id, sessionId);
365
+ }
366
+ }
367
+ // Wait for agents to complete (max 30 seconds)
368
+ const timeout = setTimeout(() => {
369
+ session.status = 'completed';
370
+ }, 30000);
371
+ while (session.status === 'active') {
372
+ await new Promise(resolve => setTimeout(resolve, 1000));
373
+ const activeAgents = Array.from(session.activeAgents.values())
374
+ .filter(a => a.status === 'active');
375
+ if (activeAgents.length === 0) {
376
+ session.status = 'completed';
377
+ clearTimeout(timeout);
378
+ break;
379
+ }
380
+ }
381
+ }
382
+ async calculateSuccessRate() {
383
+ const sessions = Array.from(this.sessions.values());
384
+ const completed = sessions.filter(s => s.status === 'completed').length;
385
+ const total = sessions.filter(s => ['completed', 'failed'].includes(s.status)).length;
386
+ return total > 0 ? (completed / total) * 100 : 0;
387
+ }
388
+ async calculateAverageExecutionTime() {
389
+ const metrics = await this.performanceTracker?.getAggregateMetrics('swarm_execution');
390
+ return metrics?.averageDuration || 0;
391
+ }
392
+ }
393
+ exports.SnowFlowSystem = SnowFlowSystem;
394
+ // Export singleton instance
395
+ exports.snowFlowSystem = new SnowFlowSystem();
396
+ //# sourceMappingURL=snow-flow-system.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snow-flow-system.js","sourceRoot":"","sources":["../src/snow-flow-system.ts"],"names":[],"mappings":"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"}