@darkiceinteractive/mcp-conductor 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +558 -0
  3. package/dist/bin/cli.d.ts +8 -0
  4. package/dist/bin/cli.d.ts.map +1 -0
  5. package/dist/bin/cli.js +940 -0
  6. package/dist/bin/cli.js.map +1 -0
  7. package/dist/bridge/http-server.d.ts +161 -0
  8. package/dist/bridge/http-server.d.ts.map +1 -0
  9. package/dist/bridge/http-server.js +367 -0
  10. package/dist/bridge/http-server.js.map +1 -0
  11. package/dist/bridge/index.d.ts +5 -0
  12. package/dist/bridge/index.d.ts.map +1 -0
  13. package/dist/bridge/index.js +5 -0
  14. package/dist/bridge/index.js.map +1 -0
  15. package/dist/config/defaults.d.ts +29 -0
  16. package/dist/config/defaults.d.ts.map +1 -0
  17. package/dist/config/defaults.js +60 -0
  18. package/dist/config/defaults.js.map +1 -0
  19. package/dist/config/index.d.ts +7 -0
  20. package/dist/config/index.d.ts.map +1 -0
  21. package/dist/config/index.js +7 -0
  22. package/dist/config/index.js.map +1 -0
  23. package/dist/config/loader.d.ts +49 -0
  24. package/dist/config/loader.d.ts.map +1 -0
  25. package/dist/config/loader.js +272 -0
  26. package/dist/config/loader.js.map +1 -0
  27. package/dist/config/schema.d.ts +93 -0
  28. package/dist/config/schema.d.ts.map +1 -0
  29. package/dist/config/schema.js +5 -0
  30. package/dist/config/schema.js.map +1 -0
  31. package/dist/hub/index.d.ts +5 -0
  32. package/dist/hub/index.d.ts.map +1 -0
  33. package/dist/hub/index.js +5 -0
  34. package/dist/hub/index.js.map +1 -0
  35. package/dist/hub/mcp-hub.d.ts +176 -0
  36. package/dist/hub/mcp-hub.d.ts.map +1 -0
  37. package/dist/hub/mcp-hub.js +550 -0
  38. package/dist/hub/mcp-hub.js.map +1 -0
  39. package/dist/index.d.ts +9 -0
  40. package/dist/index.d.ts.map +1 -0
  41. package/dist/index.js +45 -0
  42. package/dist/index.js.map +1 -0
  43. package/dist/metrics/index.d.ts +5 -0
  44. package/dist/metrics/index.d.ts.map +1 -0
  45. package/dist/metrics/index.js +5 -0
  46. package/dist/metrics/index.js.map +1 -0
  47. package/dist/metrics/metrics-collector.d.ts +211 -0
  48. package/dist/metrics/metrics-collector.d.ts.map +1 -0
  49. package/dist/metrics/metrics-collector.js +437 -0
  50. package/dist/metrics/metrics-collector.js.map +1 -0
  51. package/dist/modes/index.d.ts +5 -0
  52. package/dist/modes/index.d.ts.map +1 -0
  53. package/dist/modes/index.js +5 -0
  54. package/dist/modes/index.js.map +1 -0
  55. package/dist/modes/mode-handler.d.ts +132 -0
  56. package/dist/modes/mode-handler.d.ts.map +1 -0
  57. package/dist/modes/mode-handler.js +252 -0
  58. package/dist/modes/mode-handler.js.map +1 -0
  59. package/dist/runtime/executor.d.ts +57 -0
  60. package/dist/runtime/executor.d.ts.map +1 -0
  61. package/dist/runtime/executor.js +700 -0
  62. package/dist/runtime/executor.js.map +1 -0
  63. package/dist/runtime/index.d.ts +5 -0
  64. package/dist/runtime/index.d.ts.map +1 -0
  65. package/dist/runtime/index.js +5 -0
  66. package/dist/runtime/index.js.map +1 -0
  67. package/dist/server/index.d.ts +5 -0
  68. package/dist/server/index.d.ts.map +1 -0
  69. package/dist/server/index.js +5 -0
  70. package/dist/server/index.js.map +1 -0
  71. package/dist/server/mcp-server.d.ts +62 -0
  72. package/dist/server/mcp-server.d.ts.map +1 -0
  73. package/dist/server/mcp-server.js +1272 -0
  74. package/dist/server/mcp-server.js.map +1 -0
  75. package/dist/skills/index.d.ts +5 -0
  76. package/dist/skills/index.d.ts.map +1 -0
  77. package/dist/skills/index.js +5 -0
  78. package/dist/skills/index.js.map +1 -0
  79. package/dist/skills/skills-engine.d.ts +157 -0
  80. package/dist/skills/skills-engine.d.ts.map +1 -0
  81. package/dist/skills/skills-engine.js +405 -0
  82. package/dist/skills/skills-engine.js.map +1 -0
  83. package/dist/streaming/execution-stream.d.ts +158 -0
  84. package/dist/streaming/execution-stream.d.ts.map +1 -0
  85. package/dist/streaming/execution-stream.js +320 -0
  86. package/dist/streaming/execution-stream.js.map +1 -0
  87. package/dist/streaming/index.d.ts +5 -0
  88. package/dist/streaming/index.d.ts.map +1 -0
  89. package/dist/streaming/index.js +5 -0
  90. package/dist/streaming/index.js.map +1 -0
  91. package/dist/utils/errors.d.ts +36 -0
  92. package/dist/utils/errors.d.ts.map +1 -0
  93. package/dist/utils/errors.js +68 -0
  94. package/dist/utils/errors.js.map +1 -0
  95. package/dist/utils/helpers.d.ts +44 -0
  96. package/dist/utils/helpers.d.ts.map +1 -0
  97. package/dist/utils/helpers.js +95 -0
  98. package/dist/utils/helpers.js.map +1 -0
  99. package/dist/utils/index.d.ts +9 -0
  100. package/dist/utils/index.d.ts.map +1 -0
  101. package/dist/utils/index.js +9 -0
  102. package/dist/utils/index.js.map +1 -0
  103. package/dist/utils/logger.d.ts +13 -0
  104. package/dist/utils/logger.d.ts.map +1 -0
  105. package/dist/utils/logger.js +48 -0
  106. package/dist/utils/logger.js.map +1 -0
  107. package/dist/utils/permissions.d.ts +97 -0
  108. package/dist/utils/permissions.d.ts.map +1 -0
  109. package/dist/utils/permissions.js +165 -0
  110. package/dist/utils/permissions.js.map +1 -0
  111. package/dist/utils/rate-limiter.d.ts +87 -0
  112. package/dist/utils/rate-limiter.d.ts.map +1 -0
  113. package/dist/utils/rate-limiter.js +187 -0
  114. package/dist/utils/rate-limiter.js.map +1 -0
  115. package/dist/watcher/config-watcher.d.ts +67 -0
  116. package/dist/watcher/config-watcher.d.ts.map +1 -0
  117. package/dist/watcher/config-watcher.js +150 -0
  118. package/dist/watcher/config-watcher.js.map +1 -0
  119. package/dist/watcher/index.d.ts +5 -0
  120. package/dist/watcher/index.d.ts.map +1 -0
  121. package/dist/watcher/index.js +5 -0
  122. package/dist/watcher/index.js.map +1 -0
  123. package/package.json +86 -0
  124. package/templates/CLAUDE.md +137 -0
  125. package/templates/skill-mcp-conductor.md +64 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills-engine.js","sourceRoot":"","sources":["../../src/skills/skills-engine.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAqB,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AA2D3C;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,YAAY;IACpC,MAAM,CAAqB;IAC3B,MAAM,GAAuB,IAAI,GAAG,EAAE,CAAC;IACvC,UAAU,GAA6B,IAAI,GAAG,EAAE,CAAC;IACjD,MAAM,GAAG,KAAK,CAAC;IAEvB,YAAY,MAA0B;QACpC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG;YACZ,YAAY,EAAE,KAAK;YACnB,iBAAiB,EAAE,EAAE;YACrB,GAAG,MAAM;SACV,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAExB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YACpE,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;gBACvC,MAAM,CAAC,KAAK,CAAC,oDAAoD,EAAE;oBACjE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;iBACjC,CAAC,CAAC;gBACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YAEnB,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;gBAC3B,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACvB,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;aAC/C,CAAC,CAAC;YAEH,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAClB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACvB,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;aAC/C,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa,CAAC,GAAW;QACrC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAE5D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAEvC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,iDAAiD;gBACjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;gBACpD,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBAC3C,CAAC;qBAAM,CAAC;oBACN,4BAA4B;oBAC5B,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACrE,wCAAwC;gBACxC,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa,CAAC,GAAW;QACrC,KAAK,MAAM,IAAI,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC;iBAC5B,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACvB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YACtB,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,SAAS,CAAC,QAAgB,EAAE,QAAgB;QACxD,IAAI,CAAC;YACH,+BAA+B;YAC/B,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAE7C,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;gBAClE,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACjE,OAAO;YACT,CAAC;YAED,wBAAwB;YACxB,IACE,IAAI,CAAC,MAAM,CAAC,iBAAiB;gBAC7B,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;gBACxC,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC1D,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE;oBACzC,KAAK,EAAE,QAAQ,CAAC,IAAI;oBACpB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;iBAC5B,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,2BAA2B;YAC3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YACzD,IAAI,cAAc,GAAG,EAAE,CAAC;YAExB,IAAI,QAAQ,EAAE,CAAC;gBACb,cAAc,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC;YAED,MAAM,KAAK,GAAU;gBACnB,QAAQ;gBACR,cAAc;gBACd,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI,IAAI,EAAE;aACrB,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEtC,iBAAiB;YACjB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;YACpD,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAE3D,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE;gBAC3B,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;aAC5B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB,CAAC,GAAW;QAC1C,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC;iBAC5B,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACvB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YACtB,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACK,SAAS,CAAC,OAAe;QAC/B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,WAAW,GAAc,EAAE,CAAC;QAEhC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAE5B,gCAAgC;YAChC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxC,SAAS;YACX,CAAC;YAED,uBAAuB;YACvB,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACtC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC7C,SAAS;YACX,CAAC;YAED,iDAAiD;YACjD,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,MAAM,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;gBACjC,OAAO,GAAG,KAAK,CAAC;gBAChB,WAAW,GAAG,EAAE,CAAC;YACnB,CAAC;YAED,mBAAmB;YACnB,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBACnB,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAEnD,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,kCAAkC;oBAClC,UAAU,GAAG,GAAG,CAAC;oBACjB,OAAO,GAAG,IAAI,CAAC;oBACf,WAAW,GAAG,EAAE,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;YAC1B,MAAM,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;QACnC,CAAC;QAED,OAAO,MAAkC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,KAAa;QAClC,gBAAgB;QAChB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACrG,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;QAED,UAAU;QACV,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC;QAClC,IAAI,KAAK,KAAK,OAAO;YAAE,OAAO,KAAK,CAAC;QAEpC,OAAO;QACP,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QAEnD,SAAS;QACT,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE;YAAE,OAAO,GAAG,CAAC;QAE5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,IAAI;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACtD,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;YACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ;YACjC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW;YACvC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO;YAC/B,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;SAC1B,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,QAAgB;QAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,CAAC;QAE3B,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;aAC1B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACpC,MAAM,CAAC,CAAC,CAAC,EAAc,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;aAC1C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACf,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;YACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ;YACjC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW;YACvC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO;YAC/B,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;SAC1B,CAAC,CAAC,CAAC;IACR,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAa;QAClB,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAC;QAEtB,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,OAAO,GAAwB,EAAE,CAAC;QAExC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YACzC,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;YAE3B,mBAAmB;YACnB,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,UAAU,EAAE,CAAC;gBAC/C,SAAS,GAAG,GAAG,CAAC;YAClB,CAAC;YACD,sBAAsB;iBACjB,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC1D,SAAS,GAAG,EAAE,CAAC;YACjB,CAAC;YACD,iBAAiB;iBACZ,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9D,SAAS,GAAG,EAAE,CAAC;YACjB,CAAC;YACD,6BAA6B;iBACxB,IAAI,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBACjE,SAAS,GAAG,EAAE,CAAC;YACjB,CAAC;YACD,qBAAqB;iBAChB,IAAI,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;gBAC1E,SAAS,GAAG,EAAE,CAAC;YACjB,CAAC;YAED,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,SAAS;oBACT,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACpB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,+BAA+B;QAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,IAAY;QAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,mBAAmB,CAAC,IAAY;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,wCAAwC;QACxC,OAAO;YACC,KAAK,CAAC,QAAQ,CAAC,IAAI;eAChB,KAAK,CAAC,QAAQ,CAAC,QAAQ;kBACpB,KAAK,CAAC,QAAQ,CAAC,WAAW;;gBAE5B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;IACnC,KAAK,CAAC,cAAc;;CAEvB,CAAC;IACA,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,IAAY;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,gCAAgC;AAChC,IAAI,kBAAkB,GAAwB,IAAI,CAAC;AAEnD;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,MAA2B;IACzD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAClF,CAAC;QACD,kBAAkB,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAClC,IAAI,kBAAkB,EAAE,CAAC;QACvB,kBAAkB,CAAC,kBAAkB,EAAE,CAAC;QACxC,kBAAkB,GAAG,IAAI,CAAC;IAC5B,CAAC;AACH,CAAC"}
@@ -0,0 +1,158 @@
1
+ /**
2
+ * Execution Streaming Manager
3
+ *
4
+ * Manages SSE connections and streams execution progress events
5
+ * to connected clients in real-time.
6
+ */
7
+ import { EventEmitter } from 'node:events';
8
+ import type { ServerResponse } from 'node:http';
9
+ export interface StreamEvent {
10
+ type: 'log' | 'progress' | 'tool_call' | 'error' | 'complete';
11
+ timestamp: string;
12
+ executionId: string;
13
+ data: unknown;
14
+ }
15
+ export interface LogEvent {
16
+ message: string;
17
+ level?: 'info' | 'warn' | 'error' | 'debug';
18
+ }
19
+ export interface ProgressEvent {
20
+ percent: number;
21
+ message?: string;
22
+ }
23
+ export interface ToolCallEvent {
24
+ server: string;
25
+ tool: string;
26
+ status: 'started' | 'completed' | 'error';
27
+ durationMs?: number;
28
+ error?: string;
29
+ }
30
+ export interface CompleteEvent {
31
+ success: boolean;
32
+ result?: unknown;
33
+ error?: {
34
+ type: string;
35
+ message: string;
36
+ };
37
+ metrics: {
38
+ executionTimeMs: number;
39
+ toolCalls: number;
40
+ dataProcessedBytes: number;
41
+ };
42
+ }
43
+ export interface ExecutionState {
44
+ id: string;
45
+ startedAt: Date;
46
+ status: 'running' | 'completed' | 'error' | 'timeout';
47
+ progress: number;
48
+ logs: string[];
49
+ toolCalls: number;
50
+ lastUpdate: Date;
51
+ }
52
+ /**
53
+ * Manages streaming for a single execution
54
+ */
55
+ export declare class ExecutionStream extends EventEmitter {
56
+ private connections;
57
+ private state;
58
+ private eventBuffer;
59
+ private maxBufferSize;
60
+ constructor(executionId: string);
61
+ /**
62
+ * Add an SSE connection to this stream
63
+ */
64
+ addConnection(res: ServerResponse): void;
65
+ /**
66
+ * Broadcast a log event
67
+ */
68
+ log(message: string, level?: 'info' | 'warn' | 'error' | 'debug'): void;
69
+ /**
70
+ * Broadcast a progress event
71
+ */
72
+ progress(percent: number, message?: string): void;
73
+ /**
74
+ * Broadcast a tool call event
75
+ */
76
+ toolCall(server: string, tool: string, status: 'started' | 'completed' | 'error', durationMs?: number, error?: string): void;
77
+ /**
78
+ * Broadcast an error event
79
+ */
80
+ error(message: string, type?: string): void;
81
+ /**
82
+ * Broadcast completion event and close connections
83
+ */
84
+ complete(result: CompleteEvent): void;
85
+ /**
86
+ * Get current execution state
87
+ */
88
+ getState(): ExecutionState;
89
+ /**
90
+ * Check if stream has active connections
91
+ */
92
+ hasConnections(): boolean;
93
+ /**
94
+ * Get connection count
95
+ */
96
+ getConnectionCount(): number;
97
+ /**
98
+ * Close all SSE connections
99
+ */
100
+ closeAllConnections(): void;
101
+ /**
102
+ * Send event to a single connection
103
+ */
104
+ private sendEvent;
105
+ /**
106
+ * Broadcast event to all connections and buffer it
107
+ */
108
+ private broadcast;
109
+ }
110
+ /**
111
+ * Manager for all active execution streams
112
+ */
113
+ export declare class StreamManager {
114
+ private streams;
115
+ private cleanupInterval;
116
+ private maxStreamAge;
117
+ constructor();
118
+ /**
119
+ * Create a new execution stream
120
+ */
121
+ createStream(executionId: string): ExecutionStream;
122
+ /**
123
+ * Get an existing stream
124
+ */
125
+ getStream(executionId: string): ExecutionStream | undefined;
126
+ /**
127
+ * Remove a stream
128
+ */
129
+ removeStream(executionId: string): void;
130
+ /**
131
+ * Get all active streams
132
+ */
133
+ listStreams(): Array<{
134
+ id: string;
135
+ state: ExecutionState;
136
+ }>;
137
+ /**
138
+ * Get stream count
139
+ */
140
+ getStreamCount(): number;
141
+ /**
142
+ * Clean up stale streams (completed with no connections)
143
+ */
144
+ private cleanupStaleStreams;
145
+ /**
146
+ * Shutdown the stream manager
147
+ */
148
+ shutdown(): void;
149
+ }
150
+ /**
151
+ * Get or create the global stream manager
152
+ */
153
+ export declare function getStreamManager(): StreamManager;
154
+ /**
155
+ * Shutdown the global stream manager
156
+ */
157
+ export declare function shutdownStreamManager(): void;
158
+ //# sourceMappingURL=execution-stream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-stream.d.ts","sourceRoot":"","sources":["../../src/streaming/execution-stream.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,320 @@
1
+ /**
2
+ * Execution Streaming Manager
3
+ *
4
+ * Manages SSE connections and streams execution progress events
5
+ * to connected clients in real-time.
6
+ */
7
+ import { EventEmitter } from 'node:events';
8
+ import { logger } from '../utils/index.js';
9
+ /**
10
+ * Manages streaming for a single execution
11
+ */
12
+ export class ExecutionStream extends EventEmitter {
13
+ connections = new Set();
14
+ state;
15
+ eventBuffer = [];
16
+ maxBufferSize = 100;
17
+ constructor(executionId) {
18
+ super();
19
+ this.state = {
20
+ id: executionId,
21
+ startedAt: new Date(),
22
+ status: 'running',
23
+ progress: 0,
24
+ logs: [],
25
+ toolCalls: 0,
26
+ lastUpdate: new Date(),
27
+ };
28
+ }
29
+ /**
30
+ * Add an SSE connection to this stream
31
+ */
32
+ addConnection(res) {
33
+ // Set SSE headers
34
+ res.writeHead(200, {
35
+ 'Content-Type': 'text/event-stream',
36
+ 'Cache-Control': 'no-cache',
37
+ Connection: 'keep-alive',
38
+ 'Access-Control-Allow-Origin': '*',
39
+ });
40
+ // Send initial state
41
+ this.sendEvent(res, {
42
+ type: 'log',
43
+ timestamp: new Date().toISOString(),
44
+ executionId: this.state.id,
45
+ data: { message: 'Connected to execution stream', level: 'info' },
46
+ });
47
+ // Send buffered events
48
+ for (const event of this.eventBuffer) {
49
+ this.sendEvent(res, event);
50
+ }
51
+ this.connections.add(res);
52
+ // Handle connection close
53
+ res.on('close', () => {
54
+ this.connections.delete(res);
55
+ logger.debug('SSE connection closed', { executionId: this.state.id });
56
+ });
57
+ logger.debug('SSE connection added', {
58
+ executionId: this.state.id,
59
+ totalConnections: this.connections.size,
60
+ });
61
+ }
62
+ /**
63
+ * Broadcast a log event
64
+ */
65
+ log(message, level = 'info') {
66
+ this.state.logs.push(message);
67
+ this.state.lastUpdate = new Date();
68
+ const event = {
69
+ type: 'log',
70
+ timestamp: new Date().toISOString(),
71
+ executionId: this.state.id,
72
+ data: { message, level },
73
+ };
74
+ this.broadcast(event);
75
+ this.emit('log', event);
76
+ }
77
+ /**
78
+ * Broadcast a progress event
79
+ */
80
+ progress(percent, message) {
81
+ this.state.progress = Math.min(100, Math.max(0, percent));
82
+ this.state.lastUpdate = new Date();
83
+ const event = {
84
+ type: 'progress',
85
+ timestamp: new Date().toISOString(),
86
+ executionId: this.state.id,
87
+ data: { percent: this.state.progress, message },
88
+ };
89
+ this.broadcast(event);
90
+ this.emit('progress', event);
91
+ }
92
+ /**
93
+ * Broadcast a tool call event
94
+ */
95
+ toolCall(server, tool, status, durationMs, error) {
96
+ if (status === 'completed' || status === 'error') {
97
+ this.state.toolCalls++;
98
+ }
99
+ this.state.lastUpdate = new Date();
100
+ const event = {
101
+ type: 'tool_call',
102
+ timestamp: new Date().toISOString(),
103
+ executionId: this.state.id,
104
+ data: { server, tool, status, durationMs, error },
105
+ };
106
+ this.broadcast(event);
107
+ this.emit('tool_call', event);
108
+ }
109
+ /**
110
+ * Broadcast an error event
111
+ */
112
+ error(message, type = 'runtime') {
113
+ this.state.status = 'error';
114
+ this.state.lastUpdate = new Date();
115
+ const event = {
116
+ type: 'error',
117
+ timestamp: new Date().toISOString(),
118
+ executionId: this.state.id,
119
+ data: { type, message },
120
+ };
121
+ this.broadcast(event);
122
+ this.emit('execution_error', event);
123
+ }
124
+ /**
125
+ * Broadcast completion event and close connections
126
+ */
127
+ complete(result) {
128
+ this.state.status = result.success ? 'completed' : 'error';
129
+ this.state.progress = 100;
130
+ this.state.lastUpdate = new Date();
131
+ const event = {
132
+ type: 'complete',
133
+ timestamp: new Date().toISOString(),
134
+ executionId: this.state.id,
135
+ data: result,
136
+ };
137
+ this.broadcast(event);
138
+ this.emit('complete', event);
139
+ // Close all connections after a brief delay
140
+ setTimeout(() => {
141
+ this.closeAllConnections();
142
+ }, 100);
143
+ }
144
+ /**
145
+ * Get current execution state
146
+ */
147
+ getState() {
148
+ return { ...this.state };
149
+ }
150
+ /**
151
+ * Check if stream has active connections
152
+ */
153
+ hasConnections() {
154
+ return this.connections.size > 0;
155
+ }
156
+ /**
157
+ * Get connection count
158
+ */
159
+ getConnectionCount() {
160
+ return this.connections.size;
161
+ }
162
+ /**
163
+ * Close all SSE connections
164
+ */
165
+ closeAllConnections() {
166
+ for (const conn of this.connections) {
167
+ try {
168
+ conn.end();
169
+ }
170
+ catch {
171
+ // Ignore errors closing connections
172
+ }
173
+ }
174
+ this.connections.clear();
175
+ }
176
+ /**
177
+ * Send event to a single connection
178
+ */
179
+ sendEvent(res, event) {
180
+ try {
181
+ res.write(`event: ${event.type}\n`);
182
+ res.write(`data: ${JSON.stringify(event)}\n\n`);
183
+ }
184
+ catch {
185
+ // Connection may have closed
186
+ this.connections.delete(res);
187
+ }
188
+ }
189
+ /**
190
+ * Broadcast event to all connections and buffer it
191
+ */
192
+ broadcast(event) {
193
+ // Add to buffer
194
+ this.eventBuffer.push(event);
195
+ if (this.eventBuffer.length > this.maxBufferSize) {
196
+ this.eventBuffer.shift();
197
+ }
198
+ // Send to all connections
199
+ for (const conn of this.connections) {
200
+ this.sendEvent(conn, event);
201
+ }
202
+ }
203
+ }
204
+ /**
205
+ * Manager for all active execution streams
206
+ */
207
+ export class StreamManager {
208
+ streams = new Map();
209
+ cleanupInterval = null;
210
+ maxStreamAge = 5 * 60 * 1000; // 5 minutes
211
+ constructor() {
212
+ // Start cleanup interval
213
+ this.cleanupInterval = setInterval(() => this.cleanupStaleStreams(), 60000);
214
+ }
215
+ /**
216
+ * Create a new execution stream
217
+ */
218
+ createStream(executionId) {
219
+ // Clean up existing stream if any
220
+ const existing = this.streams.get(executionId);
221
+ if (existing) {
222
+ existing.closeAllConnections();
223
+ }
224
+ const stream = new ExecutionStream(executionId);
225
+ this.streams.set(executionId, stream);
226
+ logger.debug('Created execution stream', { executionId });
227
+ return stream;
228
+ }
229
+ /**
230
+ * Get an existing stream
231
+ */
232
+ getStream(executionId) {
233
+ return this.streams.get(executionId);
234
+ }
235
+ /**
236
+ * Remove a stream
237
+ */
238
+ removeStream(executionId) {
239
+ const stream = this.streams.get(executionId);
240
+ if (stream) {
241
+ stream.closeAllConnections();
242
+ this.streams.delete(executionId);
243
+ logger.debug('Removed execution stream', { executionId });
244
+ }
245
+ }
246
+ /**
247
+ * Get all active streams
248
+ */
249
+ listStreams() {
250
+ return Array.from(this.streams.entries()).map(([id, stream]) => ({
251
+ id,
252
+ state: stream.getState(),
253
+ }));
254
+ }
255
+ /**
256
+ * Get stream count
257
+ */
258
+ getStreamCount() {
259
+ return this.streams.size;
260
+ }
261
+ /**
262
+ * Clean up stale streams (completed with no connections)
263
+ */
264
+ cleanupStaleStreams() {
265
+ const now = Date.now();
266
+ const toRemove = [];
267
+ for (const [id, stream] of this.streams) {
268
+ const state = stream.getState();
269
+ const age = now - state.lastUpdate.getTime();
270
+ // Remove if completed and older than max age, or if no connections and stale
271
+ if ((state.status === 'completed' || state.status === 'error') &&
272
+ !stream.hasConnections() &&
273
+ age > this.maxStreamAge) {
274
+ toRemove.push(id);
275
+ }
276
+ }
277
+ for (const id of toRemove) {
278
+ this.removeStream(id);
279
+ }
280
+ if (toRemove.length > 0) {
281
+ logger.debug('Cleaned up stale streams', { count: toRemove.length });
282
+ }
283
+ }
284
+ /**
285
+ * Shutdown the stream manager
286
+ */
287
+ shutdown() {
288
+ if (this.cleanupInterval) {
289
+ clearInterval(this.cleanupInterval);
290
+ this.cleanupInterval = null;
291
+ }
292
+ // Close all streams
293
+ for (const [id, stream] of this.streams) {
294
+ stream.closeAllConnections();
295
+ }
296
+ this.streams.clear();
297
+ logger.debug('Stream manager shut down');
298
+ }
299
+ }
300
+ // Global stream manager instance
301
+ let globalStreamManager = null;
302
+ /**
303
+ * Get or create the global stream manager
304
+ */
305
+ export function getStreamManager() {
306
+ if (!globalStreamManager) {
307
+ globalStreamManager = new StreamManager();
308
+ }
309
+ return globalStreamManager;
310
+ }
311
+ /**
312
+ * Shutdown the global stream manager
313
+ */
314
+ export function shutdownStreamManager() {
315
+ if (globalStreamManager) {
316
+ globalStreamManager.shutdown();
317
+ globalStreamManager = null;
318
+ }
319
+ }
320
+ //# sourceMappingURL=execution-stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-stream.js","sourceRoot":"","sources":["../../src/streaming/execution-stream.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Streaming module exports
3
+ */
4
+ export { ExecutionStream, StreamManager, getStreamManager, shutdownStreamManager, type StreamEvent, type LogEvent, type ProgressEvent, type ToolCallEvent, type CompleteEvent, type ExecutionState, } from './execution-stream.js';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/streaming/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EACrB,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,cAAc,GACpB,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Streaming module exports
3
+ */
4
+ export { ExecutionStream, StreamManager, getStreamManager, shutdownStreamManager, } from './execution-stream.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/streaming/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,qBAAqB,GAOtB,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Custom error types for MCP Executor
3
+ */
4
+ export type ErrorType = 'syntax' | 'runtime' | 'timeout' | 'security' | 'connection' | 'tool_not_found' | 'server_not_found';
5
+ export declare class ExecutionError extends Error {
6
+ readonly type: ErrorType;
7
+ readonly line?: number;
8
+ readonly stack?: string;
9
+ constructor(type: ErrorType, message: string, options?: {
10
+ line?: number;
11
+ stack?: string;
12
+ });
13
+ toJSON(): Record<string, unknown>;
14
+ }
15
+ export declare class SyntaxError extends ExecutionError {
16
+ constructor(message: string, line?: number);
17
+ }
18
+ export declare class RuntimeError extends ExecutionError {
19
+ constructor(message: string, stack?: string);
20
+ }
21
+ export declare class TimeoutError extends ExecutionError {
22
+ constructor(timeoutMs: number);
23
+ }
24
+ export declare class SecurityError extends ExecutionError {
25
+ constructor(message: string);
26
+ }
27
+ export declare class ConnectionError extends ExecutionError {
28
+ constructor(serverName: string, message: string);
29
+ }
30
+ export declare class ToolNotFoundError extends ExecutionError {
31
+ constructor(serverName: string, toolName: string);
32
+ }
33
+ export declare class ServerNotFoundError extends ExecutionError {
34
+ constructor(serverName: string);
35
+ }
36
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,GAAG,gBAAgB,GAAG,kBAAkB,CAAC;AAE7H,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAgB,IAAI,EAAE,SAAS,CAAC;IAChC,SAAgB,IAAI,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAgB,KAAK,CAAC,EAAE,MAAM,CAAC;gBAEnB,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE;IAUzF,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAQlC;AAED,qBAAa,WAAY,SAAQ,cAAc;gBACjC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;CAI3C;AAED,qBAAa,YAAa,SAAQ,cAAc;gBAClC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;CAI5C;AAED,qBAAa,YAAa,SAAQ,cAAc;gBAClC,SAAS,EAAE,MAAM;CAI9B;AAED,qBAAa,aAAc,SAAQ,cAAc;gBACnC,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,eAAgB,SAAQ,cAAc;gBACrC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAIhD;AAED,qBAAa,iBAAkB,SAAQ,cAAc;gBACvC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CAIjD;AAED,qBAAa,mBAAoB,SAAQ,cAAc;gBACzC,UAAU,EAAE,MAAM;CAI/B"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Custom error types for MCP Executor
3
+ */
4
+ export class ExecutionError extends Error {
5
+ type;
6
+ line;
7
+ stack;
8
+ constructor(type, message, options) {
9
+ super(message);
10
+ this.name = 'ExecutionError';
11
+ this.type = type;
12
+ this.line = options?.line;
13
+ if (options?.stack) {
14
+ this.stack = options.stack;
15
+ }
16
+ }
17
+ toJSON() {
18
+ return {
19
+ type: this.type,
20
+ message: this.message,
21
+ line: this.line,
22
+ stack: this.stack,
23
+ };
24
+ }
25
+ }
26
+ export class SyntaxError extends ExecutionError {
27
+ constructor(message, line) {
28
+ super('syntax', message, { line });
29
+ this.name = 'SyntaxError';
30
+ }
31
+ }
32
+ export class RuntimeError extends ExecutionError {
33
+ constructor(message, stack) {
34
+ super('runtime', message, { stack });
35
+ this.name = 'RuntimeError';
36
+ }
37
+ }
38
+ export class TimeoutError extends ExecutionError {
39
+ constructor(timeoutMs) {
40
+ super('timeout', `Execution timed out after ${timeoutMs}ms`);
41
+ this.name = 'TimeoutError';
42
+ }
43
+ }
44
+ export class SecurityError extends ExecutionError {
45
+ constructor(message) {
46
+ super('security', message);
47
+ this.name = 'SecurityError';
48
+ }
49
+ }
50
+ export class ConnectionError extends ExecutionError {
51
+ constructor(serverName, message) {
52
+ super('connection', `Failed to connect to server '${serverName}': ${message}`);
53
+ this.name = 'ConnectionError';
54
+ }
55
+ }
56
+ export class ToolNotFoundError extends ExecutionError {
57
+ constructor(serverName, toolName) {
58
+ super('tool_not_found', `Tool '${toolName}' not found on server '${serverName}'`);
59
+ this.name = 'ToolNotFoundError';
60
+ }
61
+ }
62
+ export class ServerNotFoundError extends ExecutionError {
63
+ constructor(serverName) {
64
+ super('server_not_found', `Server '${serverName}' not found`);
65
+ this.name = 'ServerNotFoundError';
66
+ }
67
+ }
68
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvB,IAAI,CAAY;IAChB,IAAI,CAAU;IACd,KAAK,CAAU;IAE/B,YAAY,IAAe,EAAE,OAAe,EAAE,OAA2C;QACvF,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,CAAC;QAC1B,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,WAAY,SAAQ,cAAc;IAC7C,YAAY,OAAe,EAAE,IAAa;QACxC,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC5B,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,cAAc;IAC9C,YAAY,OAAe,EAAE,KAAc;QACzC,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,cAAc;IAC9C,YAAY,SAAiB;QAC3B,KAAK,CAAC,SAAS,EAAE,6BAA6B,SAAS,IAAI,CAAC,CAAC;QAC7D,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,cAAc;IAC/C,YAAY,OAAe;QACzB,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAC9B,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,cAAc;IACjD,YAAY,UAAkB,EAAE,OAAe;QAC7C,KAAK,CAAC,YAAY,EAAE,gCAAgC,UAAU,MAAM,OAAO,EAAE,CAAC,CAAC;QAC/E,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,cAAc;IACnD,YAAY,UAAkB,EAAE,QAAgB;QAC9C,KAAK,CAAC,gBAAgB,EAAE,SAAS,QAAQ,0BAA0B,UAAU,GAAG,CAAC,CAAC;QAClF,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,cAAc;IACrD,YAAY,UAAkB;QAC5B,KAAK,CAAC,kBAAkB,EAAE,WAAW,UAAU,aAAa,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF"}