snow-flow 1.4.49 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (600) hide show
  1. package/.claude/helpers/github-setup.sh +28 -0
  2. package/.claude/helpers/quick-start.sh +19 -0
  3. package/.claude/helpers/setup-mcp.sh +18 -0
  4. package/{.claude.settings.template → .claude/settings.local.json} +18 -21
  5. package/.claude-flow/metrics/system-metrics.json +3060 -0
  6. package/.env.example +64 -0
  7. package/.roo/README.md +402 -0
  8. package/.roo/mcp-list.txt +257 -0
  9. package/.roo/mcp.json +32 -0
  10. package/.roo/workflows/basic-tdd.json +32 -0
  11. package/.roomodes +201 -0
  12. package/README.md +140 -614
  13. package/dist/cli.js.bak +2052 -0
  14. package/package.json +2 -2
  15. package/scripts/create-env.js +6 -1
  16. package/scripts/reset-mcp-servers.js +246 -0
  17. package/scripts/update-version.js +31 -0
  18. package/src/agents/README.md +192 -0
  19. package/src/agents/base-agent.ts +251 -0
  20. package/src/agents/coordinator.ts +971 -0
  21. package/src/agents/index.ts +18 -0
  22. package/src/agents/queen-403-handler.ts +230 -0
  23. package/src/agents/queen-agent.ts +1399 -0
  24. package/src/agents/script-writer-agent.ts +769 -0
  25. package/src/agents/security-agent.ts +726 -0
  26. package/src/agents/widget-creator-agent.ts +568 -0
  27. package/src/api/error-handling.ts +1758 -0
  28. package/src/api/natural-language-mapper.ts +630 -0
  29. package/src/api/performance-optimizer.ts +891 -0
  30. package/src/api/transaction-manager.ts +754 -0
  31. package/src/cli/deploy-artifact.ts +304 -0
  32. package/src/cli/snow-flow-cli-integration.ts +434 -0
  33. package/src/cli.ts +4455 -0
  34. package/src/cli.ts.bak +5616 -0
  35. package/src/compliance/advanced-compliance-system.ts +1268 -0
  36. package/src/compliance/index.ts +19 -0
  37. package/src/config/snow-flow-config.ts +1019 -0
  38. package/src/documentation/index.ts +16 -0
  39. package/src/documentation/self-documenting-system.ts +1421 -0
  40. package/src/dynamic-version.ts +44 -0
  41. package/src/healing/index.ts +20 -0
  42. package/src/healing/self-healing-system.ts +1435 -0
  43. package/src/health/README.md +161 -0
  44. package/src/health/system-health.ts +995 -0
  45. package/src/index.ts +60 -0
  46. package/src/intelligence/acl-analyzer.ts +377 -0
  47. package/src/intelligence/auto-resolution-engine.ts +643 -0
  48. package/src/intelligence/gap-analysis-engine.ts +488 -0
  49. package/src/intelligence/manual-instructions-generator.ts +744 -0
  50. package/src/intelligence/mcp-coverage-analyzer.ts +708 -0
  51. package/src/intelligence/multi-pass-requirements-analyzer.ts +603 -0
  52. package/src/intelligence/performance-recommendations-engine.ts +1223 -0
  53. package/src/intelligence/requirements-analyzer.ts +1148 -0
  54. package/src/intelligence/task-analyzer.ts +628 -0
  55. package/src/managers/scope-manager.ts +555 -0
  56. package/src/mcp/advanced/servicenow-advanced-features-mcp.ts +16110 -0
  57. package/src/mcp/base-mcp-server.ts +660 -0
  58. package/src/mcp/http-transport-wrapper.ts +426 -0
  59. package/src/mcp/service-discovery-client.ts +312 -0
  60. package/src/mcp/servicenow-automation-mcp-refactored.ts +678 -0
  61. package/src/mcp/servicenow-automation-mcp.ts +838 -0
  62. package/src/mcp/servicenow-deployment-mcp-refactored.ts +1292 -0
  63. package/src/mcp/servicenow-deployment-mcp.ts +7244 -0
  64. package/src/mcp/servicenow-graph-memory-mcp-refactored.ts +721 -0
  65. package/src/mcp/servicenow-graph-memory-mcp.ts +832 -0
  66. package/src/mcp/servicenow-integration-mcp-refactored.ts +655 -0
  67. package/src/mcp/servicenow-integration-mcp.ts +819 -0
  68. package/src/mcp/servicenow-intelligent-mcp-refactored.ts +977 -0
  69. package/src/mcp/servicenow-intelligent-mcp.ts +4638 -0
  70. package/src/mcp/servicenow-mcp-server.ts +728 -0
  71. package/src/mcp/servicenow-memory-mcp.ts +474 -0
  72. package/src/mcp/servicenow-operations-mcp-refactored.ts +1995 -0
  73. package/src/mcp/servicenow-operations-mcp.ts +3384 -0
  74. package/src/mcp/servicenow-platform-development-mcp-refactored.ts +611 -0
  75. package/src/mcp/servicenow-platform-development-mcp.ts +970 -0
  76. package/src/mcp/servicenow-progressive-indexer.ts +370 -0
  77. package/src/mcp/servicenow-reporting-analytics-mcp-refactored.ts +695 -0
  78. package/src/mcp/servicenow-reporting-analytics-mcp.ts +1123 -0
  79. package/src/mcp/servicenow-security-compliance-mcp-refactored.ts +642 -0
  80. package/src/mcp/servicenow-security-compliance-mcp.ts +1157 -0
  81. package/src/mcp/servicenow-update-set-mcp-refactored.ts +751 -0
  82. package/src/mcp/servicenow-update-set-mcp.ts +811 -0
  83. package/src/mcp/shared/agent-context-provider.ts +365 -0
  84. package/src/mcp/shared/base-mcp-server.ts +2463 -0
  85. package/src/mcp/shared/mcp-memory-manager.ts +540 -0
  86. package/src/mcp/shared/mcp-resource-manager.ts +367 -0
  87. package/src/mcp/snow-flow-mcp.ts +911 -0
  88. package/src/mcp/start-all-mcp-servers.ts +102 -0
  89. package/src/mcp/start-servicenow-mcp.ts +67 -0
  90. package/src/monitoring/enhanced-monitoring-system.ts +1345 -0
  91. package/src/monitoring/performance-tracker.ts +777 -0
  92. package/src/optimization/cost-optimization-engine.ts +1125 -0
  93. package/src/optimization/index.ts +10 -0
  94. package/src/queen/README.md +403 -0
  95. package/src/queen/agent-factory.ts +574 -0
  96. package/src/queen/index.ts +94 -0
  97. package/src/queen/mcp-execution-bridge.ts +681 -0
  98. package/src/queen/neural-learning.ts +319 -0
  99. package/src/queen/parallel-agent-engine.ts +848 -0
  100. package/src/queen/queen-memory-system.ts +490 -0
  101. package/src/queen/queen-memory.ts +456 -0
  102. package/src/queen/servicenow-queen.ts +1029 -0
  103. package/src/queen/types.ts +87 -0
  104. package/src/rollback/smart-rollback-system.ts +866 -0
  105. package/src/schemas/deployment.schema.json +58 -0
  106. package/src/schemas/flow.schema.json +79 -0
  107. package/src/schemas/widget.schema.json +72 -0
  108. package/src/snow-flow-system.ts +541 -0
  109. package/src/sparc/sparc-help.ts +49 -0
  110. package/src/sparc/team-sparc.ts +88 -0
  111. package/src/strategies/global-scope-strategy.ts +736 -0
  112. package/src/templates/base/application.template.json +45 -0
  113. package/src/templates/base/business_rule.template.json +33 -0
  114. package/src/templates/base/script_include.template.json +18 -0
  115. package/src/templates/base/table.template.json +64 -0
  116. package/src/templates/base/widget.template.json +25 -0
  117. package/src/templates/patterns/composite.incident-management.template.json +140 -0
  118. package/src/templates/patterns/widget.dashboard.template.json +238 -0
  119. package/src/templates/patterns/widget.datatable.template.json +292 -0
  120. package/src/testing/integration-test-suite.ts +1276 -0
  121. package/src/types/index.ts +183 -0
  122. package/src/types/neo4j-driver.d.ts +23 -0
  123. package/src/types/servicenow.types.ts +307 -0
  124. package/src/types/snow-flow.types.ts +186 -0
  125. package/src/types/todo.types.ts +70 -0
  126. package/src/utils/action-type-cache.ts +286 -0
  127. package/src/utils/agent-detector.ts +573 -0
  128. package/src/utils/artifact-tracker.ts +379 -0
  129. package/src/utils/dependency-detector.ts +233 -0
  130. package/src/utils/deployment-metadata-handler.ts +518 -0
  131. package/src/utils/error-recovery.ts +680 -0
  132. package/src/utils/logger.ts +60 -0
  133. package/src/utils/mcp-auth-middleware.ts +262 -0
  134. package/src/utils/mcp-config-manager.ts +270 -0
  135. package/src/utils/mcp-server-manager.ts +446 -0
  136. package/src/utils/mcp-tool-registry.ts +298 -0
  137. package/src/utils/migrate-snow-flow.ts +98 -0
  138. package/src/utils/oauth-html-templates.ts +188 -0
  139. package/src/utils/scope-utils.ts +443 -0
  140. package/src/utils/servicenow-client.ts +3321 -0
  141. package/src/utils/servicenow-id-generator.ts +181 -0
  142. package/src/utils/snow-memory-manager.ts +605 -0
  143. package/src/utils/snow-oauth.ts +797 -0
  144. package/src/utils/template-engine.ts +463 -0
  145. package/src/utils/theme-manager.ts +295 -0
  146. package/src/utils/unified-auth-store.ts +222 -0
  147. package/src/utils/update-set-importer.ts +422 -0
  148. package/src/utils/update-set-xml-packager.ts +371 -0
  149. package/src/utils/widget-template-generator.ts +1744 -0
  150. package/src/version.ts +1950 -0
  151. package/.claude/commands/memory/README.md +0 -9
  152. package/.claude.mcp-config.template +0 -149
  153. package/SIMPLE_TEST_COMMANDS.txt +0 -143
  154. package/SNOW_FLOW_ADVANCED_FEATURES_PLAIN.txt +0 -78
  155. package/TEST_COMMANDS_v139.sh +0 -126
  156. package/claude-flow +0 -81
  157. package/claude-flow.bat +0 -18
  158. package/claude-flow.config.json +0 -20
  159. package/claude-flow.ps1 +0 -24
  160. package/dist/agents/app-creator.agent.d.ts.map +0 -1
  161. package/dist/agents/app-creator.agent.js.map +0 -1
  162. package/dist/agents/base/base-snow-agent.d.ts.map +0 -1
  163. package/dist/agents/base/base-snow-agent.js.map +0 -1
  164. package/dist/agents/base-agent.d.ts.map +0 -1
  165. package/dist/agents/base-agent.js.map +0 -1
  166. package/dist/agents/base-snow-agent.d.ts.map +0 -1
  167. package/dist/agents/base-snow-agent.js.map +0 -1
  168. package/dist/agents/coordinator.d.ts.map +0 -1
  169. package/dist/agents/coordinator.js.map +0 -1
  170. package/dist/agents/flow-builder-agent.d.ts.map +0 -1
  171. package/dist/agents/flow-builder-agent.js.map +0 -1
  172. package/dist/agents/index.d.ts.map +0 -1
  173. package/dist/agents/index.js.map +0 -1
  174. package/dist/agents/queen-403-handler.d.ts.map +0 -1
  175. package/dist/agents/queen-403-handler.js.map +0 -1
  176. package/dist/agents/queen-agent-example.d.ts.map +0 -1
  177. package/dist/agents/queen-agent-example.js.map +0 -1
  178. package/dist/agents/queen-agent.d.ts.map +0 -1
  179. package/dist/agents/queen-agent.js.map +0 -1
  180. package/dist/agents/queen-agent.test.d.ts.map +0 -1
  181. package/dist/agents/queen-agent.test.js.map +0 -1
  182. package/dist/agents/script-generator.agent.d.ts.map +0 -1
  183. package/dist/agents/script-generator.agent.js.map +0 -1
  184. package/dist/agents/script-writer-agent.d.ts.map +0 -1
  185. package/dist/agents/script-writer-agent.js.map +0 -1
  186. package/dist/agents/security-agent.d.ts.map +0 -1
  187. package/dist/agents/security-agent.js.map +0 -1
  188. package/dist/agents/specialists/automation-specialist.agent.d.ts.map +0 -1
  189. package/dist/agents/specialists/automation-specialist.agent.js.map +0 -1
  190. package/dist/agents/specialists/data-specialist.agent.d.ts.map +0 -1
  191. package/dist/agents/specialists/data-specialist.agent.js.map +0 -1
  192. package/dist/agents/specialists/integration-specialist.agent.d.ts.map +0 -1
  193. package/dist/agents/specialists/integration-specialist.agent.js.map +0 -1
  194. package/dist/agents/specialists/reporting-specialist.agent.d.ts.map +0 -1
  195. package/dist/agents/specialists/reporting-specialist.agent.js.map +0 -1
  196. package/dist/agents/specialists/security-specialist.agent.d.ts.map +0 -1
  197. package/dist/agents/specialists/security-specialist.agent.js.map +0 -1
  198. package/dist/agents/teams/adaptive/adaptive-coordinator.agent.d.ts.map +0 -1
  199. package/dist/agents/teams/adaptive/adaptive-coordinator.agent.js.map +0 -1
  200. package/dist/agents/teams/base-team.d.ts.map +0 -1
  201. package/dist/agents/teams/base-team.js.map +0 -1
  202. package/dist/agents/teams/team-types.d.ts.map +0 -1
  203. package/dist/agents/teams/team-types.js.map +0 -1
  204. package/dist/agents/teams/widget/widget-architect.agent.d.ts.map +0 -1
  205. package/dist/agents/teams/widget/widget-architect.agent.js.map +0 -1
  206. package/dist/agents/teams/widget/widget-backend.agent.d.ts.map +0 -1
  207. package/dist/agents/teams/widget/widget-backend.agent.js.map +0 -1
  208. package/dist/agents/teams/widget/widget-frontend.agent.d.ts.map +0 -1
  209. package/dist/agents/teams/widget/widget-frontend.agent.js.map +0 -1
  210. package/dist/agents/teams/widget/widget-platform.agent.d.ts.map +0 -1
  211. package/dist/agents/teams/widget/widget-platform.agent.js.map +0 -1
  212. package/dist/agents/teams/widget/widget-uiux.agent.d.ts.map +0 -1
  213. package/dist/agents/teams/widget/widget-uiux.agent.js.map +0 -1
  214. package/dist/agents/test-agent.d.ts.map +0 -1
  215. package/dist/agents/test-agent.js.map +0 -1
  216. package/dist/agents/test-agents.d.ts.map +0 -1
  217. package/dist/agents/test-agents.js.map +0 -1
  218. package/dist/agents/ui-builder.agent.d.ts.map +0 -1
  219. package/dist/agents/ui-builder.agent.js.map +0 -1
  220. package/dist/agents/widget-builder.agent.d.ts.map +0 -1
  221. package/dist/agents/widget-builder.agent.js.map +0 -1
  222. package/dist/agents/widget-creator-agent.d.ts.map +0 -1
  223. package/dist/agents/widget-creator-agent.js.map +0 -1
  224. package/dist/agents/workflow-designer.agent.d.ts.map +0 -1
  225. package/dist/agents/workflow-designer.agent.js.map +0 -1
  226. package/dist/api/error-handling.d.ts.map +0 -1
  227. package/dist/api/error-handling.js.map +0 -1
  228. package/dist/api/flow-designer-api.d.ts.map +0 -1
  229. package/dist/api/flow-designer-api.js.map +0 -1
  230. package/dist/api/natural-language-mapper.d.ts.map +0 -1
  231. package/dist/api/natural-language-mapper.js.map +0 -1
  232. package/dist/api/performance-optimizer.d.ts.map +0 -1
  233. package/dist/api/performance-optimizer.js.map +0 -1
  234. package/dist/api/transaction-manager.d.ts.map +0 -1
  235. package/dist/api/transaction-manager.js.map +0 -1
  236. package/dist/assembly/team-assembler.d.ts.map +0 -1
  237. package/dist/assembly/team-assembler.js.map +0 -1
  238. package/dist/cli/deploy-artifact.d.ts.map +0 -1
  239. package/dist/cli/deploy-artifact.js.map +0 -1
  240. package/dist/cli/snow-flow-cli-integration.d.ts.map +0 -1
  241. package/dist/cli/snow-flow-cli-integration.js.map +0 -1
  242. package/dist/cli.d.ts.map +0 -1
  243. package/dist/cli.js.map +0 -1
  244. package/dist/compliance/advanced-compliance-system.d.ts.map +0 -1
  245. package/dist/compliance/advanced-compliance-system.js.map +0 -1
  246. package/dist/compliance/index.d.ts.map +0 -1
  247. package/dist/compliance/index.js.map +0 -1
  248. package/dist/config/snow-flow-config.d.ts.map +0 -1
  249. package/dist/config/snow-flow-config.js.map +0 -1
  250. package/dist/documentation/index.d.ts.map +0 -1
  251. package/dist/documentation/index.js.map +0 -1
  252. package/dist/documentation/self-documenting-system.d.ts.map +0 -1
  253. package/dist/documentation/self-documenting-system.js.map +0 -1
  254. package/dist/dynamic-version.d.ts.map +0 -1
  255. package/dist/dynamic-version.js.map +0 -1
  256. package/dist/healing/index.d.ts.map +0 -1
  257. package/dist/healing/index.js.map +0 -1
  258. package/dist/healing/self-healing-system.d.ts.map +0 -1
  259. package/dist/healing/self-healing-system.js.map +0 -1
  260. package/dist/health/system-health.d.ts.map +0 -1
  261. package/dist/health/system-health.js.map +0 -1
  262. package/dist/index.d.ts.map +0 -1
  263. package/dist/index.js.map +0 -1
  264. package/dist/intelligence/acl-analyzer.d.ts.map +0 -1
  265. package/dist/intelligence/acl-analyzer.js.map +0 -1
  266. package/dist/intelligence/auto-resolution-engine.d.ts.map +0 -1
  267. package/dist/intelligence/auto-resolution-engine.js.map +0 -1
  268. package/dist/intelligence/gap-analysis-engine.d.ts.map +0 -1
  269. package/dist/intelligence/gap-analysis-engine.js.map +0 -1
  270. package/dist/intelligence/manual-instructions-generator.d.ts.map +0 -1
  271. package/dist/intelligence/manual-instructions-generator.js.map +0 -1
  272. package/dist/intelligence/mcp-coverage-analyzer.d.ts.map +0 -1
  273. package/dist/intelligence/mcp-coverage-analyzer.js.map +0 -1
  274. package/dist/intelligence/multi-pass-requirements-analyzer.d.ts.map +0 -1
  275. package/dist/intelligence/multi-pass-requirements-analyzer.js.map +0 -1
  276. package/dist/intelligence/performance-recommendations-engine.d.ts.map +0 -1
  277. package/dist/intelligence/performance-recommendations-engine.js.map +0 -1
  278. package/dist/intelligence/requirements-analyzer.d.ts.map +0 -1
  279. package/dist/intelligence/requirements-analyzer.js.map +0 -1
  280. package/dist/intelligence/task-analyzer.d.ts.map +0 -1
  281. package/dist/intelligence/task-analyzer.js.map +0 -1
  282. package/dist/managers/scope-manager.d.ts.map +0 -1
  283. package/dist/managers/scope-manager.js.map +0 -1
  284. package/dist/mcp/advanced/servicenow-advanced-features-mcp.d.ts.map +0 -1
  285. package/dist/mcp/advanced/servicenow-advanced-features-mcp.js.map +0 -1
  286. package/dist/mcp/base-mcp-server.d.ts.map +0 -1
  287. package/dist/mcp/base-mcp-server.js.map +0 -1
  288. package/dist/mcp/example-refactored-server.d.ts.map +0 -1
  289. package/dist/mcp/example-refactored-server.js.map +0 -1
  290. package/dist/mcp/http-transport-wrapper.d.ts.map +0 -1
  291. package/dist/mcp/http-transport-wrapper.js.map +0 -1
  292. package/dist/mcp/mcp-wrapper.d.ts.map +0 -1
  293. package/dist/mcp/mcp-wrapper.js.map +0 -1
  294. package/dist/mcp/service-discovery-client.d.ts.map +0 -1
  295. package/dist/mcp/service-discovery-client.js.map +0 -1
  296. package/dist/mcp/servicenow-automation-mcp-refactored.d.ts.map +0 -1
  297. package/dist/mcp/servicenow-automation-mcp-refactored.js.map +0 -1
  298. package/dist/mcp/servicenow-automation-mcp.d.ts.map +0 -1
  299. package/dist/mcp/servicenow-automation-mcp.js.map +0 -1
  300. package/dist/mcp/servicenow-deployment-mcp-refactored.d.ts.map +0 -1
  301. package/dist/mcp/servicenow-deployment-mcp-refactored.js.map +0 -1
  302. package/dist/mcp/servicenow-deployment-mcp.d.ts.map +0 -1
  303. package/dist/mcp/servicenow-deployment-mcp.js.map +0 -1
  304. package/dist/mcp/servicenow-flow-composer-mcp-refactored.d.ts.map +0 -1
  305. package/dist/mcp/servicenow-flow-composer-mcp-refactored.js.map +0 -1
  306. package/dist/mcp/servicenow-flow-composer-mcp.d.ts.map +0 -1
  307. package/dist/mcp/servicenow-flow-composer-mcp.js.map +0 -1
  308. package/dist/mcp/servicenow-graph-memory-mcp-refactored.d.ts.map +0 -1
  309. package/dist/mcp/servicenow-graph-memory-mcp-refactored.js.map +0 -1
  310. package/dist/mcp/servicenow-graph-memory-mcp.d.ts.map +0 -1
  311. package/dist/mcp/servicenow-graph-memory-mcp.js.map +0 -1
  312. package/dist/mcp/servicenow-integration-mcp-refactored.d.ts.map +0 -1
  313. package/dist/mcp/servicenow-integration-mcp-refactored.js.map +0 -1
  314. package/dist/mcp/servicenow-integration-mcp.d.ts.map +0 -1
  315. package/dist/mcp/servicenow-integration-mcp.js.map +0 -1
  316. package/dist/mcp/servicenow-intelligent-mcp-refactored.d.ts.map +0 -1
  317. package/dist/mcp/servicenow-intelligent-mcp-refactored.js.map +0 -1
  318. package/dist/mcp/servicenow-intelligent-mcp.d.ts.map +0 -1
  319. package/dist/mcp/servicenow-intelligent-mcp.js.map +0 -1
  320. package/dist/mcp/servicenow-mcp-server.d.ts.map +0 -1
  321. package/dist/mcp/servicenow-mcp-server.js.map +0 -1
  322. package/dist/mcp/servicenow-memory-mcp.d.ts.map +0 -1
  323. package/dist/mcp/servicenow-memory-mcp.js.map +0 -1
  324. package/dist/mcp/servicenow-operations-mcp-refactored.d.ts.map +0 -1
  325. package/dist/mcp/servicenow-operations-mcp-refactored.js.map +0 -1
  326. package/dist/mcp/servicenow-operations-mcp.d.ts.map +0 -1
  327. package/dist/mcp/servicenow-operations-mcp.js.map +0 -1
  328. package/dist/mcp/servicenow-platform-development-mcp-refactored.d.ts.map +0 -1
  329. package/dist/mcp/servicenow-platform-development-mcp-refactored.js.map +0 -1
  330. package/dist/mcp/servicenow-platform-development-mcp.d.ts.map +0 -1
  331. package/dist/mcp/servicenow-platform-development-mcp.js.map +0 -1
  332. package/dist/mcp/servicenow-progressive-indexer.d.ts.map +0 -1
  333. package/dist/mcp/servicenow-progressive-indexer.js.map +0 -1
  334. package/dist/mcp/servicenow-reporting-analytics-mcp-refactored.d.ts.map +0 -1
  335. package/dist/mcp/servicenow-reporting-analytics-mcp-refactored.js.map +0 -1
  336. package/dist/mcp/servicenow-reporting-analytics-mcp.d.ts.map +0 -1
  337. package/dist/mcp/servicenow-reporting-analytics-mcp.js.map +0 -1
  338. package/dist/mcp/servicenow-security-compliance-mcp-refactored.d.ts.map +0 -1
  339. package/dist/mcp/servicenow-security-compliance-mcp-refactored.js.map +0 -1
  340. package/dist/mcp/servicenow-security-compliance-mcp.d.ts.map +0 -1
  341. package/dist/mcp/servicenow-security-compliance-mcp.js.map +0 -1
  342. package/dist/mcp/servicenow-update-set-mcp-refactored.d.ts.map +0 -1
  343. package/dist/mcp/servicenow-update-set-mcp-refactored.js.map +0 -1
  344. package/dist/mcp/servicenow-update-set-mcp.d.ts.map +0 -1
  345. package/dist/mcp/servicenow-update-set-mcp.js.map +0 -1
  346. package/dist/mcp/servicenow-xml-flow-mcp.d.ts.map +0 -1
  347. package/dist/mcp/servicenow-xml-flow-mcp.js.map +0 -1
  348. package/dist/mcp/shared/agent-context-provider.d.ts.map +0 -1
  349. package/dist/mcp/shared/agent-context-provider.js.map +0 -1
  350. package/dist/mcp/shared/base-mcp-server.d.ts.map +0 -1
  351. package/dist/mcp/shared/base-mcp-server.js.map +0 -1
  352. package/dist/mcp/shared/mcp-memory-manager.d.ts.map +0 -1
  353. package/dist/mcp/shared/mcp-memory-manager.js.map +0 -1
  354. package/dist/mcp/shared/mcp-resource-manager.d.ts.map +0 -1
  355. package/dist/mcp/shared/mcp-resource-manager.js.map +0 -1
  356. package/dist/mcp/snow-flow-mcp.d.ts.map +0 -1
  357. package/dist/mcp/snow-flow-mcp.js.map +0 -1
  358. package/dist/mcp/start-all-mcp-servers.d.ts.map +0 -1
  359. package/dist/mcp/start-all-mcp-servers.js.map +0 -1
  360. package/dist/mcp/start-servicenow-mcp.d.ts.map +0 -1
  361. package/dist/mcp/start-servicenow-mcp.js.map +0 -1
  362. package/dist/mcp/test-simple-mcp.d.ts.map +0 -1
  363. package/dist/mcp/test-simple-mcp.js.map +0 -1
  364. package/dist/memory/hierarchical-memory-system.d.ts +0 -90
  365. package/dist/memory/hierarchical-memory-system.d.ts.map +0 -1
  366. package/dist/memory/hierarchical-memory-system.js +0 -400
  367. package/dist/memory/hierarchical-memory-system.js.map +0 -1
  368. package/dist/memory/index.d.ts +0 -9
  369. package/dist/memory/index.d.ts.map +0 -1
  370. package/dist/memory/index.js +0 -20
  371. package/dist/memory/index.js.map +0 -1
  372. package/dist/memory/mcp-integration-example.d.ts +0 -6
  373. package/dist/memory/mcp-integration-example.d.ts.map +0 -1
  374. package/dist/memory/mcp-integration-example.js +0 -281
  375. package/dist/memory/mcp-integration-example.js.map +0 -1
  376. package/dist/memory/memory-client.d.ts +0 -199
  377. package/dist/memory/memory-client.d.ts.map +0 -1
  378. package/dist/memory/memory-client.js +0 -364
  379. package/dist/memory/memory-client.js.map +0 -1
  380. package/dist/memory/memory-manager.d.ts +0 -29
  381. package/dist/memory/memory-manager.d.ts.map +0 -1
  382. package/dist/memory/memory-manager.js +0 -280
  383. package/dist/memory/memory-manager.js.map +0 -1
  384. package/dist/memory/memory-operations.d.ts +0 -179
  385. package/dist/memory/memory-operations.d.ts.map +0 -1
  386. package/dist/memory/memory-operations.js +0 -691
  387. package/dist/memory/memory-operations.js.map +0 -1
  388. package/dist/memory/memory-system.d.ts +0 -152
  389. package/dist/memory/memory-system.d.ts.map +0 -1
  390. package/dist/memory/memory-system.js +0 -632
  391. package/dist/memory/memory-system.js.map +0 -1
  392. package/dist/memory/memory-test.d.ts +0 -6
  393. package/dist/memory/memory-test.d.ts.map +0 -1
  394. package/dist/memory/memory-test.js +0 -161
  395. package/dist/memory/memory-test.js.map +0 -1
  396. package/dist/memory/servicenow-artifact-indexer.d.ts +0 -119
  397. package/dist/memory/servicenow-artifact-indexer.d.ts.map +0 -1
  398. package/dist/memory/servicenow-artifact-indexer.js +0 -560
  399. package/dist/memory/servicenow-artifact-indexer.js.map +0 -1
  400. package/dist/memory/snow-flow-memory-patterns.d.ts +0 -213
  401. package/dist/memory/snow-flow-memory-patterns.d.ts.map +0 -1
  402. package/dist/memory/snow-flow-memory-patterns.js +0 -200
  403. package/dist/memory/snow-flow-memory-patterns.js.map +0 -1
  404. package/dist/memory/snow-memory.d.ts +0 -54
  405. package/dist/memory/snow-memory.d.ts.map +0 -1
  406. package/dist/memory/snow-memory.js +0 -301
  407. package/dist/memory/snow-memory.js.map +0 -1
  408. package/dist/memory/swarm-memory.d.ts +0 -135
  409. package/dist/memory/swarm-memory.d.ts.map +0 -1
  410. package/dist/memory/swarm-memory.js +0 -378
  411. package/dist/memory/swarm-memory.js.map +0 -1
  412. package/dist/monitoring/enhanced-monitoring-system.d.ts.map +0 -1
  413. package/dist/monitoring/enhanced-monitoring-system.js.map +0 -1
  414. package/dist/monitoring/performance-tracker.d.ts.map +0 -1
  415. package/dist/monitoring/performance-tracker.js.map +0 -1
  416. package/dist/optimization/cost-optimization-engine.d.ts.map +0 -1
  417. package/dist/optimization/cost-optimization-engine.js.map +0 -1
  418. package/dist/optimization/index.d.ts.map +0 -1
  419. package/dist/optimization/index.js.map +0 -1
  420. package/dist/orchestration/discovery/service-discovery.d.ts.map +0 -1
  421. package/dist/orchestration/discovery/service-discovery.js.map +0 -1
  422. package/dist/orchestration/distributed-orchestrator.d.ts.map +0 -1
  423. package/dist/orchestration/distributed-orchestrator.js.map +0 -1
  424. package/dist/orchestration/distribution/task-distribution-engine.d.ts.map +0 -1
  425. package/dist/orchestration/distribution/task-distribution-engine.js.map +0 -1
  426. package/dist/orchestration/interfaces/distributed-orchestration.interface.d.ts.map +0 -1
  427. package/dist/orchestration/interfaces/distributed-orchestration.interface.js.map +0 -1
  428. package/dist/orchestration/protocols/mcpx-protocol.d.ts.map +0 -1
  429. package/dist/orchestration/protocols/mcpx-protocol.js.map +0 -1
  430. package/dist/orchestration/state/distributed-state-manager.d.ts.map +0 -1
  431. package/dist/orchestration/state/distributed-state-manager.js.map +0 -1
  432. package/dist/orchestrator/flow-composer.d.ts.map +0 -1
  433. package/dist/orchestrator/flow-composer.js.map +0 -1
  434. package/dist/orchestrator/flow-pattern-templates.d.ts.map +0 -1
  435. package/dist/orchestrator/flow-pattern-templates.js.map +0 -1
  436. package/dist/orchestrator/flow-subflow-decision-engine.d.ts.map +0 -1
  437. package/dist/orchestrator/flow-subflow-decision-engine.js.map +0 -1
  438. package/dist/orchestrator/flow-validation-engine.d.ts.map +0 -1
  439. package/dist/orchestrator/flow-validation-engine.js.map +0 -1
  440. package/dist/orchestrator/snow-orchestrator.d.ts.map +0 -1
  441. package/dist/orchestrator/snow-orchestrator.js.map +0 -1
  442. package/dist/orchestrator/subflow-creation-handler.d.ts.map +0 -1
  443. package/dist/orchestrator/subflow-creation-handler.js.map +0 -1
  444. package/dist/patterns/adaptive-patterns.d.ts.map +0 -1
  445. package/dist/patterns/adaptive-patterns.js.map +0 -1
  446. package/dist/queen/advanced-integration-test.d.ts.map +0 -1
  447. package/dist/queen/advanced-integration-test.js.map +0 -1
  448. package/dist/queen/agent-factory.d.ts.map +0 -1
  449. package/dist/queen/agent-factory.js.map +0 -1
  450. package/dist/queen/index.d.ts.map +0 -1
  451. package/dist/queen/index.js.map +0 -1
  452. package/dist/queen/integration-example.d.ts.map +0 -1
  453. package/dist/queen/integration-example.js.map +0 -1
  454. package/dist/queen/integration-test.d.ts.map +0 -1
  455. package/dist/queen/integration-test.js.map +0 -1
  456. package/dist/queen/mcp-execution-bridge.d.ts.map +0 -1
  457. package/dist/queen/mcp-execution-bridge.js.map +0 -1
  458. package/dist/queen/mock-mcp-client.d.ts.map +0 -1
  459. package/dist/queen/mock-mcp-client.js.map +0 -1
  460. package/dist/queen/neural-learning.d.ts.map +0 -1
  461. package/dist/queen/neural-learning.js.map +0 -1
  462. package/dist/queen/parallel-agent-engine.d.ts.map +0 -1
  463. package/dist/queen/parallel-agent-engine.js.map +0 -1
  464. package/dist/queen/queen-memory-system.d.ts.map +0 -1
  465. package/dist/queen/queen-memory-system.js.map +0 -1
  466. package/dist/queen/queen-memory.d.ts.map +0 -1
  467. package/dist/queen/queen-memory.js.map +0 -1
  468. package/dist/queen/run-integration-tests.d.ts.map +0 -1
  469. package/dist/queen/run-integration-tests.js.map +0 -1
  470. package/dist/queen/servicenow-queen.d.ts.map +0 -1
  471. package/dist/queen/servicenow-queen.js.map +0 -1
  472. package/dist/queen/types.d.ts.map +0 -1
  473. package/dist/queen/types.js.map +0 -1
  474. package/dist/rollback/smart-rollback-system.d.ts.map +0 -1
  475. package/dist/rollback/smart-rollback-system.js.map +0 -1
  476. package/dist/snow-flow-system.d.ts.map +0 -1
  477. package/dist/snow-flow-system.js.map +0 -1
  478. package/dist/sparc/coordinators/adaptive-coordinator.d.ts.map +0 -1
  479. package/dist/sparc/coordinators/adaptive-coordinator.js.map +0 -1
  480. package/dist/sparc/coordinators/team-coordinator.d.ts.map +0 -1
  481. package/dist/sparc/coordinators/team-coordinator.js.map +0 -1
  482. package/dist/sparc/modes/team-modes.d.ts.map +0 -1
  483. package/dist/sparc/modes/team-modes.js.map +0 -1
  484. package/dist/sparc/sparc-help.d.ts.map +0 -1
  485. package/dist/sparc/sparc-help.js.map +0 -1
  486. package/dist/sparc/team-sparc.d.ts.map +0 -1
  487. package/dist/sparc/team-sparc.js.map +0 -1
  488. package/dist/sparc/teams/application-team.d.ts.map +0 -1
  489. package/dist/sparc/teams/application-team.js.map +0 -1
  490. package/dist/sparc/teams/flow-team.d.ts.map +0 -1
  491. package/dist/sparc/teams/flow-team.js.map +0 -1
  492. package/dist/sparc/teams/widget-team.d.ts.map +0 -1
  493. package/dist/sparc/teams/widget-team.js.map +0 -1
  494. package/dist/specialists/app-specialists.d.ts.map +0 -1
  495. package/dist/specialists/app-specialists.js.map +0 -1
  496. package/dist/specialists/base-specialist.d.ts.map +0 -1
  497. package/dist/specialists/base-specialist.js.map +0 -1
  498. package/dist/specialists/flow-specialists.d.ts.map +0 -1
  499. package/dist/specialists/flow-specialists.js.map +0 -1
  500. package/dist/specialists/individual-specialists.d.ts.map +0 -1
  501. package/dist/specialists/individual-specialists.js.map +0 -1
  502. package/dist/specialists/widget-specialists.d.ts.map +0 -1
  503. package/dist/specialists/widget-specialists.js.map +0 -1
  504. package/dist/strategies/global-scope-strategy.d.ts.map +0 -1
  505. package/dist/strategies/global-scope-strategy.js.map +0 -1
  506. package/dist/teams/adaptive-team.d.ts.map +0 -1
  507. package/dist/teams/adaptive-team.js.map +0 -1
  508. package/dist/teams/application-team.d.ts.map +0 -1
  509. package/dist/teams/application-team.js.map +0 -1
  510. package/dist/teams/base-team.d.ts.map +0 -1
  511. package/dist/teams/base-team.js.map +0 -1
  512. package/dist/teams/flow-team.d.ts.map +0 -1
  513. package/dist/teams/flow-team.js.map +0 -1
  514. package/dist/teams/widget-team.d.ts.map +0 -1
  515. package/dist/teams/widget-team.js.map +0 -1
  516. package/dist/testing/integration-test-suite.d.ts.map +0 -1
  517. package/dist/testing/integration-test-suite.js.map +0 -1
  518. package/dist/types/index.d.ts.map +0 -1
  519. package/dist/types/index.js.map +0 -1
  520. package/dist/types/servicenow.types.d.ts.map +0 -1
  521. package/dist/types/servicenow.types.js.map +0 -1
  522. package/dist/types/snow-flow.types.d.ts.map +0 -1
  523. package/dist/types/snow-flow.types.js.map +0 -1
  524. package/dist/types/todo.types.d.ts.map +0 -1
  525. package/dist/types/todo.types.js.map +0 -1
  526. package/dist/utils/action-type-cache.d.ts.map +0 -1
  527. package/dist/utils/action-type-cache.js.map +0 -1
  528. package/dist/utils/agent-detector.d.ts.map +0 -1
  529. package/dist/utils/agent-detector.js.map +0 -1
  530. package/dist/utils/artifact-tracker.d.ts.map +0 -1
  531. package/dist/utils/artifact-tracker.js.map +0 -1
  532. package/dist/utils/dependency-detector.d.ts.map +0 -1
  533. package/dist/utils/dependency-detector.js.map +0 -1
  534. package/dist/utils/deployment-metadata-handler.d.ts.map +0 -1
  535. package/dist/utils/deployment-metadata-handler.js.map +0 -1
  536. package/dist/utils/error-recovery.d.ts.map +0 -1
  537. package/dist/utils/error-recovery.js.map +0 -1
  538. package/dist/utils/flow-api-discovery.d.ts.map +0 -1
  539. package/dist/utils/flow-api-discovery.js.map +0 -1
  540. package/dist/utils/flow-xml-generator.d.ts.map +0 -1
  541. package/dist/utils/flow-xml-generator.js.map +0 -1
  542. package/dist/utils/logger.d.ts.map +0 -1
  543. package/dist/utils/logger.js.map +0 -1
  544. package/dist/utils/mcp-auth-middleware.d.ts.map +0 -1
  545. package/dist/utils/mcp-auth-middleware.js.map +0 -1
  546. package/dist/utils/mcp-config-manager.d.ts.map +0 -1
  547. package/dist/utils/mcp-config-manager.js.map +0 -1
  548. package/dist/utils/mcp-server-manager.d.ts.map +0 -1
  549. package/dist/utils/mcp-server-manager.js.map +0 -1
  550. package/dist/utils/mcp-tool-registry.d.ts.map +0 -1
  551. package/dist/utils/mcp-tool-registry.js.map +0 -1
  552. package/dist/utils/migrate-claude-flow.d.ts.map +0 -1
  553. package/dist/utils/migrate-claude-flow.js.map +0 -1
  554. package/dist/utils/migrate-snow-flow.d.ts.map +0 -1
  555. package/dist/utils/migrate-snow-flow.js.map +0 -1
  556. package/dist/utils/oauth-html-templates.d.ts.map +0 -1
  557. package/dist/utils/oauth-html-templates.js.map +0 -1
  558. package/dist/utils/scope-utils.d.ts.map +0 -1
  559. package/dist/utils/scope-utils.js.map +0 -1
  560. package/dist/utils/servicenow-client.d.ts.map +0 -1
  561. package/dist/utils/servicenow-client.js.map +0 -1
  562. package/dist/utils/servicenow-id-generator.d.ts.map +0 -1
  563. package/dist/utils/servicenow-id-generator.js.map +0 -1
  564. package/dist/utils/snow-memory-manager.d.ts.map +0 -1
  565. package/dist/utils/snow-memory-manager.js.map +0 -1
  566. package/dist/utils/snow-oauth-old.d.ts.map +0 -1
  567. package/dist/utils/snow-oauth-old.js.map +0 -1
  568. package/dist/utils/snow-oauth.d.ts.map +0 -1
  569. package/dist/utils/snow-oauth.js.map +0 -1
  570. package/dist/utils/template-engine.d.ts.map +0 -1
  571. package/dist/utils/template-engine.js.map +0 -1
  572. package/dist/utils/theme-manager.d.ts.map +0 -1
  573. package/dist/utils/theme-manager.js.map +0 -1
  574. package/dist/utils/unified-auth-store.d.ts.map +0 -1
  575. package/dist/utils/unified-auth-store.js.map +0 -1
  576. package/dist/utils/update-set-importer.d.ts.map +0 -1
  577. package/dist/utils/update-set-importer.js.map +0 -1
  578. package/dist/utils/update-set-xml-packager.d.ts.map +0 -1
  579. package/dist/utils/update-set-xml-packager.js.map +0 -1
  580. package/dist/utils/widget-template-generator.d.ts.map +0 -1
  581. package/dist/utils/widget-template-generator.js.map +0 -1
  582. package/dist/version.d.ts.map +0 -1
  583. package/dist/version.js.map +0 -1
  584. package/memory/agents/README.md +0 -31
  585. package/memory/claude-flow-data.json +0 -5
  586. package/memory/servicenow_artifacts/000d9224c895221055906c7518aa2d3d.json +0 -30
  587. package/memory/servicenow_artifacts/0196b66173303010e46b4a2214f6a7a2.json +0 -36
  588. package/memory/servicenow_artifacts/125e5d1d837e2a102a7ea130ceaad397.json +0 -30
  589. package/memory/servicenow_artifacts/7637c1f2b7112210a5e5911cde11a972.json +0 -30
  590. package/memory/servicenow_artifacts/default_documentation_tables_1754056582292.json +0 -55
  591. package/memory/servicenow_artifacts/default_documentation_tables_1754057477189.json +0 -55
  592. package/memory/sessions/README.md +0 -32
  593. package/memory/update-set-sessions/01f82af583faea102a7ea130ceaad3d4.json +0 -9
  594. package/memory/update-set-sessions/27718fb983faea102a7ea130ceaad34b.json +0 -9
  595. package/memory/update-set-sessions/412e9bf6833e22502a7ea130ceaad30a.json +0 -8
  596. package/memory/update-set-sessions/66fc5a79837aea102a7ea130ceaad3ab.json +0 -9
  597. package/memory/update-set-sessions/71a30ff5837eea102a7ea130ceaad37f.json +0 -9
  598. package/memory/update-set-sessions/74fba27983faea102a7ea130ceaad3bd.json +0 -9
  599. package/memory/update-set-sessions/a0b147b5837eea102a7ea130ceaad344.json +0 -58
  600. package/memory/update-set-sessions/b13f5eb983baea102a7ea130ceaad33e.json +0 -9
@@ -0,0 +1,681 @@
1
+ /**
2
+ * MCP Execution Bridge
3
+ *
4
+ * Bridges the gap between agent recommendations and actual MCP tool execution
5
+ * Enables Queen Agent and specialized agents to directly execute ServiceNow operations
6
+ */
7
+
8
+ import { EventEmitter } from 'eventemitter3';
9
+ import { ServiceNowOAuth } from '../utils/snow-oauth.js';
10
+ import { QueenMemorySystem } from './queen-memory.js';
11
+ import { Logger } from '../utils/logger.js';
12
+ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
13
+ import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
14
+ import { spawn, ChildProcess } from 'child_process';
15
+
16
+ export interface AgentRecommendation {
17
+ agentId: string;
18
+ agentType: string;
19
+ action: string;
20
+ tool: string;
21
+ server: string;
22
+ params: any;
23
+ reasoning: string;
24
+ confidence: number;
25
+ dependencies?: string[];
26
+ }
27
+
28
+ export interface MCPExecutionResult {
29
+ success: boolean;
30
+ recommendation: AgentRecommendation;
31
+ toolResult?: any;
32
+ error?: string;
33
+ executionTime: number;
34
+ retries?: number;
35
+ fallbackUsed?: boolean;
36
+ }
37
+
38
+ export interface MCPServerConfig {
39
+ name: string;
40
+ command: string;
41
+ args?: string[];
42
+ env?: Record<string, string>;
43
+ }
44
+
45
+ /**
46
+ * Maps agent recommendations to MCP tool calls and executes them
47
+ */
48
+ export class MCPExecutionBridge extends EventEmitter {
49
+ private mcpClients: Map<string, Client> = new Map();
50
+ private mcpProcesses: Map<string, ChildProcess> = new Map();
51
+ private sessionAuth: ServiceNowOAuth;
52
+ private memory: QueenMemorySystem;
53
+ private logger: Logger;
54
+
55
+ // MCP server configurations
56
+ private serverConfigs: Map<string, MCPServerConfig> = new Map([
57
+ ['deployment', {
58
+ name: 'servicenow-deployment',
59
+ command: 'node',
60
+ args: ['dist/mcp/servicenow-deployment-mcp.js']
61
+ }],
62
+ ['intelligent', {
63
+ name: 'servicenow-intelligent',
64
+ command: 'node',
65
+ args: ['dist/mcp/servicenow-intelligent-mcp.js']
66
+ }],
67
+ ['operations', {
68
+ name: 'servicenow-operations',
69
+ command: 'node',
70
+ args: ['dist/mcp/servicenow-operations-mcp.js']
71
+ }],
72
+ ['update-set', {
73
+ name: 'servicenow-update-set',
74
+ command: 'node',
75
+ args: ['dist/mcp/servicenow-update-set-mcp.js']
76
+ }],
77
+ ]);
78
+
79
+ // Tool to server mapping
80
+ private toolServerMap: Map<string, string> = new Map([
81
+ // Deployment tools
82
+ ['snow_deploy', 'deployment'],
83
+ ['snow_deploy_widget', 'deployment'],
84
+ ['snow_deploy_flow', 'deployment'],
85
+ ['snow_preview_widget', 'deployment'],
86
+ ['snow_widget_test', 'deployment'],
87
+
88
+ // Intelligent tools
89
+ ['snow_find_artifact', 'intelligent'],
90
+ ['snow_edit_artifact', 'intelligent'],
91
+ ['snow_comprehensive_search', 'intelligent'],
92
+ ['snow_analyze_requirements', 'intelligent'],
93
+
94
+
95
+ // Operations tools
96
+ ['snow_catalog_item_search', 'operations'],
97
+ ['snow_test_flow_with_mock', 'operations'],
98
+ ['snow_link_catalog_to_flow', 'operations'],
99
+
100
+ // Update set tools
101
+ ['snow_update_set_create', 'update-set'],
102
+ ['snow_update_set_switch', 'update-set'],
103
+ ['snow_update_set_add_artifact', 'update-set'],
104
+ ]);
105
+
106
+ constructor(memory?: QueenMemorySystem) {
107
+ super();
108
+ this.sessionAuth = new ServiceNowOAuth();
109
+ this.memory = memory || new QueenMemorySystem();
110
+ this.logger = new Logger('MCPExecutionBridge');
111
+ }
112
+
113
+ /**
114
+ * Execute an agent recommendation by calling the appropriate MCP tool
115
+ */
116
+ async executeAgentRecommendation(
117
+ agent: { id: string; type: string },
118
+ recommendation: AgentRecommendation
119
+ ): Promise<MCPExecutionResult> {
120
+ const startTime = Date.now();
121
+
122
+ try {
123
+ this.logger.info(`Executing recommendation from ${agent.type} agent:`, {
124
+ tool: recommendation.tool,
125
+ action: recommendation.action,
126
+ confidence: recommendation.confidence
127
+ });
128
+
129
+ // 1. Map recommendation to MCP tool
130
+ const toolMapping = await this.mapRecommendationToTool(recommendation);
131
+
132
+ // 2. Ensure MCP client is connected
133
+ const client = await this.ensureMCPClient(toolMapping.server);
134
+
135
+ // 3. Execute tool with session authentication
136
+ const toolResult = await this.executeToolWithAuth(
137
+ client,
138
+ toolMapping.tool,
139
+ toolMapping.params
140
+ );
141
+
142
+ // 4. Store result in shared memory for other agents
143
+ await this.storeExecutionResult(agent.id, recommendation, toolResult);
144
+
145
+ // 5. Emit execution event for monitoring
146
+ this.emit('execution:complete', {
147
+ agent,
148
+ recommendation,
149
+ result: toolResult,
150
+ executionTime: Date.now() - startTime
151
+ });
152
+
153
+ return {
154
+ success: true,
155
+ recommendation,
156
+ toolResult: toolResult.result,
157
+ executionTime: Date.now() - startTime
158
+ };
159
+
160
+ } catch (error) {
161
+ this.logger.error('Execution failed:', error);
162
+
163
+ // Try fallback strategies
164
+ const fallbackResult = await this.tryFallbackStrategies(
165
+ agent,
166
+ recommendation,
167
+ error
168
+ );
169
+
170
+ if (fallbackResult.success) {
171
+ return fallbackResult;
172
+ }
173
+
174
+ // Store failure for learning
175
+ await this.storeExecutionFailure(agent.id, recommendation, error);
176
+
177
+ return {
178
+ success: false,
179
+ recommendation,
180
+ error: error instanceof Error ? error.message : 'Unknown error',
181
+ executionTime: Date.now() - startTime,
182
+ fallbackUsed: true
183
+ };
184
+ }
185
+ }
186
+
187
+ /**
188
+ * Map agent recommendation to specific MCP tool
189
+ */
190
+ private async mapRecommendationToTool(
191
+ recommendation: AgentRecommendation
192
+ ): Promise<{ server: string; tool: string; params: any }> {
193
+ // Direct tool mapping if specified
194
+ if (recommendation.tool && recommendation.server) {
195
+ return {
196
+ server: recommendation.server,
197
+ tool: recommendation.tool,
198
+ params: recommendation.params
199
+ };
200
+ }
201
+
202
+ // Intelligent mapping based on action
203
+ const mapping = await this.intelligentToolMapping(recommendation);
204
+
205
+ // Store mapping decision for learning
206
+ await this.memory.store(`tool_mapping_${Date.now()}`, {
207
+ recommendation,
208
+ mapping,
209
+ timestamp: new Date().toISOString()
210
+ });
211
+
212
+ return mapping;
213
+ }
214
+
215
+ /**
216
+ * Intelligent tool mapping based on action description
217
+ */
218
+ private async intelligentToolMapping(
219
+ recommendation: AgentRecommendation
220
+ ): Promise<{ server: string; tool: string; params: any }> {
221
+ const action = recommendation.action.toLowerCase();
222
+
223
+ // Widget-related actions
224
+ if (action.includes('widget') || action.includes('portal')) {
225
+ if (action.includes('deploy') || action.includes('create')) {
226
+ return {
227
+ server: 'deployment',
228
+ tool: 'snow_deploy',
229
+ params: { type: 'widget', config: recommendation.params }
230
+ };
231
+ }
232
+ if (action.includes('test')) {
233
+ return {
234
+ server: 'deployment',
235
+ tool: 'snow_widget_test',
236
+ params: recommendation.params
237
+ };
238
+ }
239
+ }
240
+
241
+ // Flow-related actions (testing only - creation not supported)
242
+ if (action.includes('flow') || action.includes('workflow')) {
243
+ if (action.includes('test')) {
244
+ return {
245
+ server: 'operations',
246
+ tool: 'snow_test_flow_with_mock',
247
+ params: recommendation.params
248
+ };
249
+ }
250
+ }
251
+
252
+ // Search/discovery actions
253
+ if (action.includes('find') || action.includes('search') || action.includes('discover')) {
254
+ return {
255
+ server: 'intelligent',
256
+ tool: 'snow_find_artifact',
257
+ params: {
258
+ query: recommendation.params.query || recommendation.action,
259
+ type: recommendation.params.type || 'any'
260
+ }
261
+ };
262
+ }
263
+
264
+ // Update set actions
265
+ if (action.includes('update set') || action.includes('track')) {
266
+ if (action.includes('create')) {
267
+ return {
268
+ server: 'update-set',
269
+ tool: 'snow_update_set_create',
270
+ params: recommendation.params
271
+ };
272
+ }
273
+ if (action.includes('add') || action.includes('track')) {
274
+ return {
275
+ server: 'update-set',
276
+ tool: 'snow_update_set_add_artifact',
277
+ params: recommendation.params
278
+ };
279
+ }
280
+ }
281
+
282
+ // Default fallback - try intelligent search
283
+ return {
284
+ server: 'intelligent',
285
+ tool: 'snow_find_artifact',
286
+ params: {
287
+ query: recommendation.action,
288
+ type: 'any'
289
+ }
290
+ };
291
+ }
292
+
293
+ /**
294
+ * Ensure MCP client is connected and ready
295
+ */
296
+ private async ensureMCPClient(serverName: string): Promise<Client> {
297
+ // Check if client already exists and is connected
298
+ const existingClient = this.mcpClients.get(serverName);
299
+ if (existingClient) {
300
+ return existingClient;
301
+ }
302
+
303
+ // Get server configuration
304
+ const config = this.serverConfigs.get(serverName);
305
+ if (!config) {
306
+ throw new Error(`Unknown MCP server: ${serverName}`);
307
+ }
308
+
309
+ // Spawn MCP server process
310
+ const serverProcess = spawn(config.command, config.args || [], {
311
+ env: { ...process.env, ...config.env },
312
+ stdio: ['pipe', 'pipe', 'pipe'],
313
+ });
314
+
315
+ this.mcpProcesses.set(serverName, serverProcess);
316
+
317
+ // Create MCP client
318
+ const transport = new StdioClientTransport({
319
+ command: config.command,
320
+ args: config.args,
321
+ env: { ...process.env, ...config.env },
322
+ });
323
+
324
+ const client = new Client({
325
+ name: `queen-agent-${serverName}`,
326
+ version: '1.0.0',
327
+ }, {
328
+ capabilities: {}
329
+ });
330
+
331
+ // Connect to server
332
+ await client.connect(transport);
333
+
334
+ // Store client
335
+ this.mcpClients.set(serverName, client);
336
+
337
+ this.logger.info(`Connected to MCP server: ${serverName}`);
338
+
339
+ return client;
340
+ }
341
+
342
+ /**
343
+ * Execute tool with authentication
344
+ */
345
+ private async executeToolWithAuth(
346
+ client: Client,
347
+ tool: string,
348
+ params: any
349
+ ): Promise<any> {
350
+ // Ensure we have valid authentication
351
+ const isAuthenticated = await this.sessionAuth.isAuthenticated();
352
+ if (!isAuthenticated) {
353
+ throw new Error('Not authenticated with ServiceNow. Run "snow-flow auth login" first.');
354
+ }
355
+
356
+ // Call the tool
357
+ const result = await client.callTool({
358
+ name: tool,
359
+ arguments: params
360
+ });
361
+
362
+ return result;
363
+ }
364
+
365
+ /**
366
+ * Store execution result in shared memory
367
+ */
368
+ private async storeExecutionResult(
369
+ agentId: string,
370
+ recommendation: AgentRecommendation,
371
+ result: any
372
+ ): Promise<void> {
373
+ const executionRecord = {
374
+ agentId,
375
+ recommendation,
376
+ result,
377
+ timestamp: new Date().toISOString(),
378
+ success: true
379
+ };
380
+
381
+ // Store in memory for coordination
382
+ await this.memory.store(`execution_${agentId}_${Date.now()}`, executionRecord);
383
+
384
+ // Update agent progress
385
+ await this.memory.storeProgress(agentId, {
386
+ lastExecution: executionRecord,
387
+ totalExecutions: await this.getAgentExecutionCount(agentId) + 1
388
+ });
389
+ }
390
+
391
+ /**
392
+ * Store execution failure for learning
393
+ */
394
+ private async storeExecutionFailure(
395
+ agentId: string,
396
+ recommendation: AgentRecommendation,
397
+ error: any
398
+ ): Promise<void> {
399
+ const failureRecord = {
400
+ agentId,
401
+ recommendation,
402
+ error: error instanceof Error ? error.message : String(error),
403
+ errorStack: error instanceof Error ? error.stack : undefined,
404
+ timestamp: new Date().toISOString(),
405
+ success: false
406
+ };
407
+
408
+ // Store failure for pattern analysis
409
+ await this.memory.store(`failure_${agentId}_${Date.now()}`, failureRecord);
410
+
411
+ // Update failure patterns
412
+ await this.memory.storeFailurePattern({
413
+ tool: recommendation.tool,
414
+ action: recommendation.action,
415
+ errorType: this.classifyError(error),
416
+ frequency: 1
417
+ });
418
+ }
419
+
420
+ /**
421
+ * Try fallback strategies when primary execution fails
422
+ */
423
+ private async tryFallbackStrategies(
424
+ agent: { id: string; type: string },
425
+ recommendation: AgentRecommendation,
426
+ error: any
427
+ ): Promise<MCPExecutionResult> {
428
+ const strategies = [
429
+ this.tryAlternativeTool.bind(this),
430
+ this.trySimplifiedParams.bind(this),
431
+ this.tryManualSteps.bind(this)
432
+ ];
433
+
434
+ for (const strategy of strategies) {
435
+ try {
436
+ const result = await strategy(agent, recommendation, error);
437
+ if (result.success) {
438
+ this.logger.info('Fallback strategy succeeded:', strategy.name);
439
+ return result;
440
+ }
441
+ } catch (strategyError) {
442
+ this.logger.warn(`Fallback strategy ${strategy.name} failed:`, strategyError);
443
+ }
444
+ }
445
+
446
+ return {
447
+ success: false,
448
+ recommendation,
449
+ error: 'All fallback strategies failed',
450
+ executionTime: 0,
451
+ fallbackUsed: true
452
+ };
453
+ }
454
+
455
+ /**
456
+ * Try using an alternative tool
457
+ */
458
+ private async tryAlternativeTool(
459
+ agent: { id: string; type: string },
460
+ recommendation: AgentRecommendation,
461
+ error: any
462
+ ): Promise<MCPExecutionResult> {
463
+ // Map to alternative tools based on failure type
464
+ const alternatives: Record<string, string[]> = {
465
+ 'snow_deploy': ['snow_deploy_widget', 'snow_deploy_flow'],
466
+ 'snow_create_flow': ['snow_flow_wizard', 'snow_deploy'],
467
+ 'snow_find_artifact': ['snow_comprehensive_search', 'snow_discover_existing_flows']
468
+ };
469
+
470
+ const altTools = alternatives[recommendation.tool];
471
+ if (!altTools || altTools.length === 0) {
472
+ throw new Error('No alternative tools available');
473
+ }
474
+
475
+ // Try first alternative
476
+ const altTool = altTools[0];
477
+ const altRecommendation = {
478
+ ...recommendation,
479
+ tool: altTool,
480
+ params: this.adaptParamsForTool(recommendation.params, altTool)
481
+ };
482
+
483
+ return this.executeAgentRecommendation(agent, altRecommendation);
484
+ }
485
+
486
+ /**
487
+ * Try with simplified parameters
488
+ */
489
+ private async trySimplifiedParams(
490
+ agent: { id: string; type: string },
491
+ recommendation: AgentRecommendation,
492
+ error: any
493
+ ): Promise<MCPExecutionResult> {
494
+ // Simplify complex params
495
+ const simplifiedParams = this.simplifyParams(recommendation.params);
496
+
497
+ const simplifiedRecommendation = {
498
+ ...recommendation,
499
+ params: simplifiedParams
500
+ };
501
+
502
+ return this.executeAgentRecommendation(agent, simplifiedRecommendation);
503
+ }
504
+
505
+ /**
506
+ * Generate manual steps as fallback
507
+ */
508
+ private async tryManualSteps(
509
+ agent: { id: string; type: string },
510
+ recommendation: AgentRecommendation,
511
+ error: any
512
+ ): Promise<MCPExecutionResult> {
513
+ // Generate manual steps based on recommendation
514
+ const manualSteps = this.generateManualSteps(recommendation);
515
+
516
+ return {
517
+ success: true,
518
+ recommendation,
519
+ toolResult: {
520
+ type: 'manual_steps',
521
+ steps: manualSteps,
522
+ reason: 'Automated execution failed, manual steps provided'
523
+ },
524
+ executionTime: 0,
525
+ fallbackUsed: true
526
+ };
527
+ }
528
+
529
+ /**
530
+ * Helper methods
531
+ */
532
+
533
+ private async getAgentExecutionCount(agentId: string): Promise<number> {
534
+ const progress = await this.memory.getProgress(agentId);
535
+ return progress?.totalExecutions || 0;
536
+ }
537
+
538
+ private classifyError(error: any): string {
539
+ if (!error) return 'unknown';
540
+
541
+ const message = error instanceof Error ? error.message.toLowerCase() : String(error).toLowerCase();
542
+
543
+ if (message.includes('auth') || message.includes('401') || message.includes('403')) {
544
+ return 'authentication';
545
+ }
546
+ if (message.includes('timeout')) {
547
+ return 'timeout';
548
+ }
549
+ if (message.includes('not found') || message.includes('404')) {
550
+ return 'not_found';
551
+ }
552
+ if (message.includes('permission') || message.includes('access')) {
553
+ return 'permission';
554
+ }
555
+ if (message.includes('rate limit')) {
556
+ return 'rate_limit';
557
+ }
558
+
559
+ return 'general';
560
+ }
561
+
562
+ private adaptParamsForTool(params: any, newTool: string): any {
563
+ // Adapt parameters for different tool format
564
+ const adaptations: Record<string, (p: any) => any> = {
565
+ 'snow_deploy_widget': (p) => ({
566
+ name: p.name || p.config?.name,
567
+ title: p.title || p.config?.title,
568
+ template: p.template || p.config?.template || '<div>Widget</div>',
569
+ css: p.css || p.config?.css || '',
570
+ client_script: p.client_script || p.config?.client_script || '',
571
+ server_script: p.server_script || p.config?.server_script || ''
572
+ }),
573
+ 'snow_comprehensive_search': (p) => ({
574
+ query: p.query || p.name || p.description,
575
+ include_inactive: false
576
+ })
577
+ };
578
+
579
+ const adapter = adaptations[newTool];
580
+ return adapter ? adapter(params) : params;
581
+ }
582
+
583
+ private simplifyParams(params: any): any {
584
+ // Remove optional fields and complex nested structures
585
+ const simplified: any = {};
586
+
587
+ for (const [key, value] of Object.entries(params)) {
588
+ if (value !== undefined && value !== null) {
589
+ if (typeof value === 'object' && !Array.isArray(value)) {
590
+ // Flatten nested objects
591
+ simplified[key] = JSON.stringify(value);
592
+ } else if (Array.isArray(value) && value.length > 5) {
593
+ // Limit array size
594
+ simplified[key] = value.slice(0, 5);
595
+ } else {
596
+ simplified[key] = value;
597
+ }
598
+ }
599
+ }
600
+
601
+ return simplified;
602
+ }
603
+
604
+ private generateManualSteps(recommendation: AgentRecommendation): string[] {
605
+ const action = recommendation.action.toLowerCase();
606
+
607
+ if (action.includes('widget')) {
608
+ return [
609
+ '1. Navigate to Service Portal > Widgets',
610
+ '2. Click "New" to create a widget',
611
+ `3. Set name to: ${recommendation.params.name || 'custom_widget'}`,
612
+ '4. Add HTML template, CSS, and scripts as needed',
613
+ '5. Save and test the widget',
614
+ '6. Add widget to a portal page'
615
+ ];
616
+ }
617
+
618
+ if (action.includes('flow')) {
619
+ return [
620
+ '1. Navigate to Flow Designer',
621
+ '2. Click "New" > "Flow"',
622
+ `3. Set name to: ${recommendation.params.name || 'custom_flow'}`,
623
+ '4. Configure trigger conditions',
624
+ '5. Add flow steps and actions',
625
+ '6. Test and activate the flow'
626
+ ];
627
+ }
628
+
629
+ return [
630
+ '1. Log in to ServiceNow instance',
631
+ `2. Execute action: ${recommendation.action}`,
632
+ '3. Use parameters provided in the recommendation',
633
+ '4. Test the implementation',
634
+ '5. Document the changes'
635
+ ];
636
+ }
637
+
638
+ /**
639
+ * Cleanup resources
640
+ */
641
+ async cleanup(): Promise<void> {
642
+ // Disconnect all clients
643
+ for (const [name, client] of this.mcpClients) {
644
+ try {
645
+ await client.close();
646
+ this.logger.info(`Disconnected from MCP server: ${name}`);
647
+ } catch (error) {
648
+ this.logger.error(`Error disconnecting from ${name}:`, error);
649
+ }
650
+ }
651
+
652
+ // Terminate all processes
653
+ for (const [name, process] of this.mcpProcesses) {
654
+ try {
655
+ process.kill('SIGTERM');
656
+ this.logger.info(`Terminated MCP server process: ${name}`);
657
+ } catch (error) {
658
+ this.logger.error(`Error terminating ${name}:`, error);
659
+ }
660
+ }
661
+
662
+ this.mcpClients.clear();
663
+ this.mcpProcesses.clear();
664
+ }
665
+
666
+ /**
667
+ * Disconnect from MCP resources
668
+ */
669
+ async disconnect(): Promise<void> {
670
+ this.logger.info('Disconnecting MCP resources');
671
+ // Clean up any active connections or resources
672
+ }
673
+
674
+ /**
675
+ * Public shutdown method for cleanup
676
+ */
677
+ async shutdown(): Promise<void> {
678
+ this.logger.info('Shutting down MCP Execution Bridge');
679
+ await this.disconnect();
680
+ }
681
+ }