crewly 1.2.4 → 1.2.6

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 (286) hide show
  1. package/LICENSE +1 -1
  2. package/config/constants.ts +4 -2
  3. package/config/roles/auditor/prompt.md +84 -0
  4. package/config/roles/orchestrator/prompt.md +62 -7
  5. package/config/runtime_scripts/runtime-config.json +5 -5
  6. package/config/skills/orchestrator/cancel-all-schedules/execute.sh +24 -0
  7. package/config/skills/orchestrator/cancel-all-schedules/instructions.md +23 -0
  8. package/config/skills/orchestrator/cancel-all-schedules/skill.json +17 -0
  9. package/config/skills/orchestrator/list-schedules/execute.sh +19 -0
  10. package/config/skills/orchestrator/list-schedules/instructions.md +24 -0
  11. package/config/skills/orchestrator/list-schedules/skill.json +12 -0
  12. package/dist/backend/backend/src/constants.d.ts +53 -13
  13. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  14. package/dist/backend/backend/src/constants.js +54 -16
  15. package/dist/backend/backend/src/constants.js.map +1 -1
  16. package/dist/backend/backend/src/controllers/auditor/auditor.controller.d.ts +37 -0
  17. package/dist/backend/backend/src/controllers/auditor/auditor.controller.d.ts.map +1 -0
  18. package/dist/backend/backend/src/controllers/auditor/auditor.controller.js +64 -0
  19. package/dist/backend/backend/src/controllers/auditor/auditor.controller.js.map +1 -0
  20. package/dist/backend/backend/src/controllers/auditor/auditor.routes.d.ts +15 -0
  21. package/dist/backend/backend/src/controllers/auditor/auditor.routes.d.ts.map +1 -0
  22. package/dist/backend/backend/src/controllers/auditor/auditor.routes.js +23 -0
  23. package/dist/backend/backend/src/controllers/auditor/auditor.routes.js.map +1 -0
  24. package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.d.ts +23 -0
  25. package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.d.ts.map +1 -0
  26. package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.js +42 -0
  27. package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.js.map +1 -0
  28. package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.d.ts +56 -0
  29. package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.d.ts.map +1 -0
  30. package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.js +173 -0
  31. package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.js.map +1 -0
  32. package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.d.ts +22 -0
  33. package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.d.ts.map +1 -0
  34. package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.js +33 -0
  35. package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.js.map +1 -0
  36. package/dist/backend/backend/src/controllers/cloud/admin/index.d.ts +7 -0
  37. package/dist/backend/backend/src/controllers/cloud/admin/index.d.ts.map +1 -0
  38. package/dist/backend/backend/src/controllers/cloud/admin/index.js +7 -0
  39. package/dist/backend/backend/src/controllers/cloud/admin/index.js.map +1 -0
  40. package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.d.ts +1 -1
  41. package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.js +5 -5
  42. package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.js.map +1 -1
  43. package/dist/backend/backend/src/controllers/cloud/cloud.routes.d.ts.map +1 -1
  44. package/dist/backend/backend/src/controllers/cloud/cloud.routes.js +0 -3
  45. package/dist/backend/backend/src/controllers/cloud/cloud.routes.js.map +1 -1
  46. package/dist/backend/backend/src/controllers/cloud/index.d.ts +0 -5
  47. package/dist/backend/backend/src/controllers/cloud/index.d.ts.map +1 -1
  48. package/dist/backend/backend/src/controllers/cloud/index.js +0 -5
  49. package/dist/backend/backend/src/controllers/cloud/index.js.map +1 -1
  50. package/dist/backend/backend/src/controllers/cloud/relay.controller.d.ts +6 -45
  51. package/dist/backend/backend/src/controllers/cloud/relay.controller.d.ts.map +1 -1
  52. package/dist/backend/backend/src/controllers/cloud/relay.controller.js +6 -165
  53. package/dist/backend/backend/src/controllers/cloud/relay.controller.js.map +1 -1
  54. package/dist/backend/backend/src/controllers/cloud/relay.routes.d.ts +5 -9
  55. package/dist/backend/backend/src/controllers/cloud/relay.routes.d.ts.map +1 -1
  56. package/dist/backend/backend/src/controllers/cloud/relay.routes.js +11 -21
  57. package/dist/backend/backend/src/controllers/cloud/relay.routes.js.map +1 -1
  58. package/dist/backend/backend/src/controllers/cloud/tasks/index.d.ts +5 -2
  59. package/dist/backend/backend/src/controllers/cloud/tasks/index.d.ts.map +1 -1
  60. package/dist/backend/backend/src/controllers/cloud/tasks/index.js +5 -2
  61. package/dist/backend/backend/src/controllers/cloud/tasks/index.js.map +1 -1
  62. package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.d.ts +6 -2
  63. package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.d.ts.map +1 -1
  64. package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.js +12 -8
  65. package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.js.map +1 -1
  66. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts.map +1 -1
  67. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js +32 -4
  68. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js.map +1 -1
  69. package/dist/backend/backend/src/controllers/payment/payment.controller.d.ts +16 -5
  70. package/dist/backend/backend/src/controllers/payment/payment.controller.d.ts.map +1 -1
  71. package/dist/backend/backend/src/controllers/payment/payment.controller.js +6 -6
  72. package/dist/backend/backend/src/controllers/payment/payment.controller.js.map +1 -1
  73. package/dist/backend/backend/src/controllers/payment/payment.routes.d.ts +6 -2
  74. package/dist/backend/backend/src/controllers/payment/payment.routes.d.ts.map +1 -1
  75. package/dist/backend/backend/src/controllers/payment/payment.routes.js +22 -8
  76. package/dist/backend/backend/src/controllers/payment/payment.routes.js.map +1 -1
  77. package/dist/backend/backend/src/controllers/payment/payment.types.d.ts +1 -1
  78. package/dist/backend/backend/src/controllers/payment/payment.types.d.ts.map +1 -1
  79. package/dist/backend/backend/src/controllers/payment/payment.types.js +1 -1
  80. package/dist/backend/backend/src/controllers/payment/payment.types.js.map +1 -1
  81. package/dist/backend/backend/src/controllers/request-types.d.ts +2 -2
  82. package/dist/backend/backend/src/controllers/request-types.d.ts.map +1 -1
  83. package/dist/backend/backend/src/controllers/system/scheduler.controller.d.ts +19 -0
  84. package/dist/backend/backend/src/controllers/system/scheduler.controller.d.ts.map +1 -1
  85. package/dist/backend/backend/src/controllers/system/scheduler.controller.js +51 -0
  86. package/dist/backend/backend/src/controllers/system/scheduler.controller.js.map +1 -1
  87. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  88. package/dist/backend/backend/src/controllers/team/team.controller.js +13 -5
  89. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  90. package/dist/backend/backend/src/controllers/template/template.controller.d.ts.map +1 -1
  91. package/dist/backend/backend/src/controllers/template/template.controller.js +2 -2
  92. package/dist/backend/backend/src/controllers/template/template.controller.js.map +1 -1
  93. package/dist/backend/backend/src/index.d.ts.map +1 -1
  94. package/dist/backend/backend/src/index.js +31 -30
  95. package/dist/backend/backend/src/index.js.map +1 -1
  96. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  97. package/dist/backend/backend/src/routes/api.routes.js +4 -12
  98. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  99. package/dist/backend/backend/src/routes/modules/log-rotation.routes.d.ts +8 -0
  100. package/dist/backend/backend/src/routes/modules/log-rotation.routes.d.ts.map +1 -0
  101. package/dist/backend/backend/src/routes/modules/log-rotation.routes.js +62 -0
  102. package/dist/backend/backend/src/routes/modules/log-rotation.routes.js.map +1 -0
  103. package/dist/backend/backend/src/routes/modules/scheduler.routes.d.ts.map +1 -1
  104. package/dist/backend/backend/src/routes/modules/scheduler.routes.js +2 -0
  105. package/dist/backend/backend/src/routes/modules/scheduler.routes.js.map +1 -1
  106. package/dist/backend/backend/src/scripts/run-log-rotation.d.ts +3 -0
  107. package/dist/backend/backend/src/scripts/run-log-rotation.d.ts.map +1 -0
  108. package/dist/backend/backend/src/scripts/run-log-rotation.js +31 -0
  109. package/dist/backend/backend/src/scripts/run-log-rotation.js.map +1 -0
  110. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +10 -0
  111. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  112. package/dist/backend/backend/src/services/agent/agent-registration.service.js +85 -1
  113. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  114. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.d.ts +150 -0
  115. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.d.ts.map +1 -0
  116. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.js +307 -0
  117. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.js.map +1 -0
  118. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +105 -0
  119. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +1 -0
  120. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +199 -0
  121. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +1 -0
  122. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.d.ts +68 -0
  123. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.d.ts.map +1 -0
  124. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.js +131 -0
  125. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.js.map +1 -0
  126. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts +29 -0
  127. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts.map +1 -0
  128. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js +229 -0
  129. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js.map +1 -0
  130. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts +127 -0
  131. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts.map +1 -0
  132. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js +242 -0
  133. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js.map +1 -0
  134. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts +95 -0
  135. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts.map +1 -0
  136. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.js +130 -0
  137. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.js.map +1 -0
  138. package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts +14 -0
  139. package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts.map +1 -0
  140. package/dist/backend/backend/src/services/agent/crewly-agent/index.js +14 -0
  141. package/dist/backend/backend/src/services/agent/crewly-agent/index.js.map +1 -0
  142. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts +57 -0
  143. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts.map +1 -0
  144. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js +93 -0
  145. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js.map +1 -0
  146. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.d.ts +13 -0
  147. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.d.ts.map +1 -0
  148. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.js +91 -0
  149. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.js.map +1 -0
  150. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts +29 -0
  151. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts.map +1 -0
  152. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js +519 -0
  153. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js.map +1 -0
  154. package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts +159 -0
  155. package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts.map +1 -0
  156. package/dist/backend/backend/src/services/agent/crewly-agent/types.js +63 -0
  157. package/dist/backend/backend/src/services/agent/crewly-agent/types.js.map +1 -0
  158. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts +56 -1
  159. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  160. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +273 -215
  161. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  162. package/dist/backend/backend/src/services/agent/runtime-service.factory.js +8 -8
  163. package/dist/backend/backend/src/services/agent/runtime-service.factory.js.map +1 -1
  164. package/dist/backend/backend/src/services/chat/chat.service.d.ts +7 -1
  165. package/dist/backend/backend/src/services/chat/chat.service.d.ts.map +1 -1
  166. package/dist/backend/backend/src/services/chat/chat.service.js +14 -5
  167. package/dist/backend/backend/src/services/chat/chat.service.js.map +1 -1
  168. package/dist/backend/backend/src/services/cloud/admin-seed.service.d.ts +18 -0
  169. package/dist/backend/backend/src/services/cloud/admin-seed.service.d.ts.map +1 -0
  170. package/dist/backend/backend/src/services/cloud/admin-seed.service.js +50 -0
  171. package/dist/backend/backend/src/services/cloud/admin-seed.service.js.map +1 -0
  172. package/dist/backend/backend/src/services/cloud/cloud-features.d.ts +19 -0
  173. package/dist/backend/backend/src/services/cloud/cloud-features.d.ts.map +1 -0
  174. package/dist/backend/backend/src/services/cloud/cloud-features.js +23 -0
  175. package/dist/backend/backend/src/services/cloud/cloud-features.js.map +1 -0
  176. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.d.ts +3 -3
  177. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.d.ts.map +1 -1
  178. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.js +10 -6
  179. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.js.map +1 -1
  180. package/dist/backend/backend/src/services/cloud/mongodb.service.d.ts +45 -0
  181. package/dist/backend/backend/src/services/cloud/mongodb.service.d.ts.map +1 -0
  182. package/dist/backend/backend/src/services/cloud/mongodb.service.js +76 -0
  183. package/dist/backend/backend/src/services/cloud/mongodb.service.js.map +1 -0
  184. package/dist/backend/backend/src/services/cloud/relay-server.service.d.ts +0 -2
  185. package/dist/backend/backend/src/services/cloud/relay-server.service.d.ts.map +1 -1
  186. package/dist/backend/backend/src/services/cloud/relay-server.service.js +7 -36
  187. package/dist/backend/backend/src/services/cloud/relay-server.service.js.map +1 -1
  188. package/dist/backend/backend/src/services/continuation/continuation.service.d.ts.map +1 -1
  189. package/dist/backend/backend/src/services/continuation/continuation.service.js +5 -10
  190. package/dist/backend/backend/src/services/continuation/continuation.service.js.map +1 -1
  191. package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts +10 -2
  192. package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts.map +1 -1
  193. package/dist/backend/backend/src/services/event-bus/event-bus.service.js +47 -12
  194. package/dist/backend/backend/src/services/event-bus/event-bus.service.js.map +1 -1
  195. package/dist/backend/backend/src/services/mcp-server.js +1 -1
  196. package/dist/backend/backend/src/services/mcp-server.js.map +1 -1
  197. package/dist/backend/backend/src/services/messaging/message-queue.service.d.ts.map +1 -1
  198. package/dist/backend/backend/src/services/messaging/message-queue.service.js +1 -0
  199. package/dist/backend/backend/src/services/messaging/message-queue.service.js.map +1 -1
  200. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  201. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +22 -4
  202. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  203. package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.d.ts.map +1 -1
  204. package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.js +6 -0
  205. package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.js.map +1 -1
  206. package/dist/backend/backend/src/services/payment/stripe.service.d.ts +4 -43
  207. package/dist/backend/backend/src/services/payment/stripe.service.d.ts.map +1 -1
  208. package/dist/backend/backend/src/services/payment/stripe.service.js +56 -180
  209. package/dist/backend/backend/src/services/payment/stripe.service.js.map +1 -1
  210. package/dist/backend/backend/src/services/session/index.d.ts +2 -0
  211. package/dist/backend/backend/src/services/session/index.d.ts.map +1 -1
  212. package/dist/backend/backend/src/services/session/index.js +2 -0
  213. package/dist/backend/backend/src/services/session/index.js.map +1 -1
  214. package/dist/backend/backend/src/services/session/log-rotation.service.d.ts +163 -0
  215. package/dist/backend/backend/src/services/session/log-rotation.service.d.ts.map +1 -0
  216. package/dist/backend/backend/src/services/session/log-rotation.service.js +362 -0
  217. package/dist/backend/backend/src/services/session/log-rotation.service.js.map +1 -0
  218. package/dist/backend/backend/src/services/settings/settings.service.js +1 -1
  219. package/dist/backend/backend/src/services/settings/settings.service.js.map +1 -1
  220. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +11 -0
  221. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  222. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +83 -1
  223. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  224. package/dist/backend/backend/src/services/template/template.service.d.ts +9 -44
  225. package/dist/backend/backend/src/services/template/template.service.d.ts.map +1 -1
  226. package/dist/backend/backend/src/services/template/template.service.js +7 -80
  227. package/dist/backend/backend/src/services/template/template.service.js.map +1 -1
  228. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts +35 -0
  229. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts.map +1 -1
  230. package/dist/backend/backend/src/services/workflow/scheduler.service.js +133 -0
  231. package/dist/backend/backend/src/services/workflow/scheduler.service.js.map +1 -1
  232. package/dist/backend/backend/src/types/chat.types.d.ts +1 -1
  233. package/dist/backend/backend/src/types/chat.types.d.ts.map +1 -1
  234. package/dist/backend/backend/src/types/chat.types.js +21 -17
  235. package/dist/backend/backend/src/types/chat.types.js.map +1 -1
  236. package/dist/backend/backend/src/types/event-bus.types.d.ts +31 -0
  237. package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
  238. package/dist/backend/backend/src/types/event-bus.types.js +50 -0
  239. package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
  240. package/dist/backend/backend/src/types/index.d.ts +1 -1
  241. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  242. package/dist/backend/backend/src/types/messaging.types.d.ts +4 -0
  243. package/dist/backend/backend/src/types/messaging.types.d.ts.map +1 -1
  244. package/dist/backend/backend/src/types/messaging.types.js.map +1 -1
  245. package/dist/backend/backend/src/types/settings.types.d.ts +1 -1
  246. package/dist/backend/backend/src/types/settings.types.d.ts.map +1 -1
  247. package/dist/backend/backend/src/types/settings.types.js +4 -4
  248. package/dist/backend/backend/src/types/settings.types.js.map +1 -1
  249. package/dist/backend/backend/src/types/team-template.types.d.ts +2 -2
  250. package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
  251. package/dist/backend/backend/src/types/team-template.types.js +1 -1
  252. package/dist/backend/backend/src/types/team-template.types.js.map +1 -1
  253. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts +4 -4
  254. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts.map +1 -1
  255. package/dist/backend/backend/src/websocket/terminal.gateway.js +9 -6
  256. package/dist/backend/backend/src/websocket/terminal.gateway.js.map +1 -1
  257. package/dist/backend/config/constants.d.ts +4 -2
  258. package/dist/backend/config/constants.d.ts.map +1 -1
  259. package/dist/backend/config/constants.js +4 -2
  260. package/dist/backend/config/constants.js.map +1 -1
  261. package/dist/cli/backend/src/constants.d.ts +53 -13
  262. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  263. package/dist/cli/backend/src/constants.js +54 -16
  264. package/dist/cli/backend/src/constants.js.map +1 -1
  265. package/dist/cli/backend/src/services/mcp-server.js +1 -1
  266. package/dist/cli/backend/src/services/mcp-server.js.map +1 -1
  267. package/dist/cli/backend/src/types/chat.types.d.ts +1 -1
  268. package/dist/cli/backend/src/types/chat.types.d.ts.map +1 -1
  269. package/dist/cli/backend/src/types/chat.types.js +21 -17
  270. package/dist/cli/backend/src/types/chat.types.js.map +1 -1
  271. package/dist/cli/backend/src/types/index.d.ts +1 -1
  272. package/dist/cli/backend/src/types/index.d.ts.map +1 -1
  273. package/dist/cli/backend/src/types/settings.types.d.ts +1 -1
  274. package/dist/cli/backend/src/types/settings.types.d.ts.map +1 -1
  275. package/dist/cli/backend/src/types/settings.types.js +4 -4
  276. package/dist/cli/backend/src/types/settings.types.js.map +1 -1
  277. package/dist/cli/config/constants.d.ts +4 -2
  278. package/dist/cli/config/constants.d.ts.map +1 -1
  279. package/dist/cli/config/constants.js +4 -2
  280. package/dist/cli/config/constants.js.map +1 -1
  281. package/frontend/dist/assets/index-3558d1a2.js +4919 -0
  282. package/frontend/dist/assets/index-4c4dcc31.css +33 -0
  283. package/frontend/dist/index.html +2 -2
  284. package/package.json +15 -9
  285. package/frontend/dist/assets/index-510ab719.css +0 -33
  286. package/frontend/dist/assets/index-935cd846.js +0 -4961
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../backend/src/controllers/cloud/admin/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -8,7 +8,7 @@
8
8
  * - POST /login — authenticate (via Supabase)
9
9
  * - POST /refresh — refresh token (via Supabase)
10
10
  *
11
- * Protected endpoints (requireSupabaseAuth middleware):
11
+ * Protected endpoints (requireCloudConnection middleware):
12
12
  * - GET /me — get profile
13
13
  * - PUT /me — update profile
14
14
  * - GET /license — check license status
@@ -8,7 +8,7 @@
8
8
  * - POST /login — authenticate (via Supabase)
9
9
  * - POST /refresh — refresh token (via Supabase)
10
10
  *
11
- * Protected endpoints (requireSupabaseAuth middleware):
11
+ * Protected endpoints (requireCloudConnection middleware):
12
12
  * - GET /me — get profile
13
13
  * - PUT /me — update profile
14
14
  * - GET /license — check license status
@@ -17,7 +17,7 @@
17
17
  */
18
18
  import { Router } from 'express';
19
19
  import { register, login, refresh, getProfile, updateProfile, getLicense, } from './auth.controller.js';
20
- import { requireSupabaseAuth } from '../../../services/cloud/auth/supabase-auth.middleware.js';
20
+ import { requireCloudConnection } from '../../../services/cloud/cloud-auth.middleware.js';
21
21
  /**
22
22
  * Creates the auth router with all account management endpoints.
23
23
  *
@@ -30,9 +30,9 @@ export function createAuthRouter() {
30
30
  router.post('/login', login);
31
31
  router.post('/refresh', refresh);
32
32
  // Protected endpoints (require valid Supabase JWT)
33
- router.get('/me', requireSupabaseAuth, getProfile);
34
- router.put('/me', requireSupabaseAuth, updateProfile);
35
- router.get('/license', requireSupabaseAuth, getLicense);
33
+ router.get('/me', requireCloudConnection, getProfile);
34
+ router.put('/me', requireCloudConnection, updateProfile);
35
+ router.get('/license', requireCloudConnection, getLicense);
36
36
  return router;
37
37
  }
38
38
  //# sourceMappingURL=auth.routes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.routes.js","sourceRoot":"","sources":["../../../../../../../backend/src/controllers/cloud/auth/auth.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EACL,QAAQ,EACR,KAAK,EACL,OAAO,EACP,UAAU,EACV,aAAa,EACb,UAAU,GACX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,0DAA0D,CAAC;AAE/F;;;;GAIG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,mBAAmB;IACnB,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACnC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC7B,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAEjC,mDAAmD;IACnD,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,mBAAmB,EAAE,UAAU,CAAC,CAAC;IACnD,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,mBAAmB,EAAE,aAAa,CAAC,CAAC;IACtD,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,mBAAmB,EAAE,UAAU,CAAC,CAAC;IAExD,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"auth.routes.js","sourceRoot":"","sources":["../../../../../../../backend/src/controllers/cloud/auth/auth.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EACL,QAAQ,EACR,KAAK,EACL,OAAO,EACP,UAAU,EACV,aAAa,EACb,UAAU,GACX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kDAAkD,CAAC;AAE1F;;;;GAIG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,mBAAmB;IACnB,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACnC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC7B,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAEjC,mDAAmD;IACnD,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,sBAAsB,EAAE,UAAU,CAAC,CAAC;IACtD,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,sBAAsB,EAAE,aAAa,CAAC,CAAC;IACzD,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,sBAAsB,EAAE,UAAU,CAAC,CAAC;IAE3D,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cloud.routes.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/cloud.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AASjC;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAY1C"}
1
+ {"version":3,"file":"cloud.routes.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/cloud.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAOjC;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAS1C"}
@@ -13,7 +13,6 @@
13
13
  */
14
14
  import { Router } from 'express';
15
15
  import { connectToCloud, disconnectFromCloud, getCloudStatus, getCloudTemplates, } from './cloud.controller.js';
16
- import { createCloudAuthRouter } from './cloud-auth.routes.js';
17
16
  /**
18
17
  * Creates the cloud router with all CrewlyAI Cloud endpoints.
19
18
  *
@@ -25,8 +24,6 @@ export function createCloudRouter() {
25
24
  router.post('/disconnect', disconnectFromCloud);
26
25
  router.get('/status', getCloudStatus);
27
26
  router.get('/templates', getCloudTemplates);
28
- // Supabase-backed cloud auth endpoints (register, login, logout, session, license)
29
- router.use('/', createCloudAuthRouter());
30
27
  return router;
31
28
  }
32
29
  //# sourceMappingURL=cloud.routes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloud.routes.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/cloud.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAE/D;;;;GAIG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IACxC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;IAChD,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACtC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;IAE5C,mFAAmF;IACnF,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAEzC,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"cloud.routes.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/cloud.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B;;;;GAIG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IACxC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;IAChD,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACtC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;IAE5C,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -6,9 +6,4 @@
6
6
  export { createCloudRouter } from './cloud.routes.js';
7
7
  export { createRelayRouter } from './relay.routes.js';
8
8
  export { createAuthRouter } from './auth/auth.routes.js';
9
- export { createCloudAuthRouter } from './cloud-auth.routes.js';
10
- export { createCloudTasksRouter } from './tasks/index.js';
11
- export { createCloudFilesRouter } from './files/index.js';
12
- export { createH5EntryRouter } from './h5/index.js';
13
- export { createMagicMomentRouter } from './magic-moment/index.js';
14
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -6,9 +6,4 @@
6
6
  export { createCloudRouter } from './cloud.routes.js';
7
7
  export { createRelayRouter } from './relay.routes.js';
8
8
  export { createAuthRouter } from './auth/auth.routes.js';
9
- export { createCloudAuthRouter } from './cloud-auth.routes.js';
10
- export { createCloudTasksRouter } from './tasks/index.js';
11
- export { createCloudFilesRouter } from './files/index.js';
12
- export { createH5EntryRouter } from './h5/index.js';
13
- export { createMagicMomentRouter } from './magic-moment/index.js';
14
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,12 +1,9 @@
1
1
  /**
2
- * Relay REST Controller
2
+ * Relay REST Controller (Client-side only)
3
3
  *
4
- * Handles HTTP requests for both the WebSocket Relay server management
5
- * and the relay client lifecycle (connecting to a remote relay).
6
- *
7
- * Server-side endpoints:
8
- * - POST /relay/register — register a local instance as a relay node
9
- * - GET /relay/status — get relay server status and active sessions
4
+ * Handles HTTP requests for the relay client lifecycle (connecting
5
+ * to a remote relay server). Server-side relay management has been
6
+ * moved to the cloud services repository.
10
7
  *
11
8
  * Client-side endpoints:
12
9
  * - POST /relay/connect — connect to a remote relay server
@@ -17,28 +14,6 @@
17
14
  * @module controllers/cloud/relay.controller
18
15
  */
19
16
  import type { Request, Response, NextFunction } from 'express';
20
- /**
21
- * POST /relay/register
22
- *
23
- * Register a local Crewly instance as a relay node. Returns a session ID
24
- * and the WebSocket URL to connect to for relay communication.
25
- *
26
- * @param req - Request with body: { role, pairingCode }
27
- * @param res - Response returning RelayRegisterResponse
28
- * @param next - Next function for error propagation
29
- */
30
- export declare function registerRelayNode(req: Request, res: Response, next: NextFunction): Promise<void>;
31
- /**
32
- * GET /relay/status
33
- *
34
- * Get the current relay server status, including whether it's running,
35
- * the number of connected clients, and active session details.
36
- *
37
- * @param req - Express request (no params required)
38
- * @param res - Response returning relay status object
39
- * @param next - Next function for error propagation
40
- */
41
- export declare function getRelayStatus(req: Request, res: Response, next: NextFunction): Promise<void>;
42
17
  /**
43
18
  * POST /relay/connect
44
19
  *
@@ -64,8 +39,8 @@ export declare function disconnectFromRelay(req: Request, res: Response, next: N
64
39
  /**
65
40
  * GET /relay/devices
66
41
  *
67
- * List connected devices visible through the relay. Returns both the local
68
- * relay client state and the relay server sessions (if a local server is running).
42
+ * List connected devices visible through the relay. Returns the local
43
+ * relay client state.
69
44
  *
70
45
  * @param req - Express request (no params required)
71
46
  * @param res - Response with device list
@@ -84,18 +59,4 @@ export declare function getRelayDevices(req: Request, res: Response, next: NextF
84
59
  * @param next - Next function for error propagation
85
60
  */
86
61
  export declare function sendRelayMessage(req: Request, res: Response, next: NextFunction): Promise<void>;
87
- /**
88
- * POST /relay/auto-connect
89
- *
90
- * Magic Connection endpoint: uses the authenticated Supabase user_id as
91
- * the pairingCode, auto-determines the role (orchestrator if no other
92
- * device for this user, agent otherwise), and returns connection details.
93
- *
94
- * The frontend calls this single endpoint after login — zero manual config.
95
- *
96
- * @param req - Authenticated request (Supabase JWT)
97
- * @param res - Response with { pairingCode, role, wsUrl, hostname }
98
- * @param next - Next function for error propagation
99
- */
100
- export declare function autoConnectRelay(req: Request, res: Response, next: NextFunction): Promise<void>;
101
62
  //# sourceMappingURL=relay.controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"relay.controller.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/relay.controller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAkB/D;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAkDtG;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBnG;AAeD;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDnG;AAED;;;;;;;;;GASG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBxG;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAiCpG;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAuCrG;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAqDrG"}
1
+ {"version":3,"file":"relay.controller.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/relay.controller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAyB/D;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDnG;AAED;;;;;;;;;GASG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBxG;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBpG;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAuCrG"}
@@ -1,12 +1,9 @@
1
1
  /**
2
- * Relay REST Controller
2
+ * Relay REST Controller (Client-side only)
3
3
  *
4
- * Handles HTTP requests for both the WebSocket Relay server management
5
- * and the relay client lifecycle (connecting to a remote relay).
6
- *
7
- * Server-side endpoints:
8
- * - POST /relay/register — register a local instance as a relay node
9
- * - GET /relay/status — get relay server status and active sessions
4
+ * Handles HTTP requests for the relay client lifecycle (connecting
5
+ * to a remote relay server). Server-side relay management has been
6
+ * moved to the cloud services repository.
10
7
  *
11
8
  * Client-side endpoints:
12
9
  * - POST /relay/connect — connect to a remote relay server
@@ -16,96 +13,11 @@
16
13
  *
17
14
  * @module controllers/cloud/relay.controller
18
15
  */
19
- import { RelayServerService } from '../../services/cloud/relay-server.service.js';
20
16
  import { RelayClientService } from '../../services/cloud/relay-client.service.js';
21
17
  import { LoggerService } from '../../services/core/logger.service.js';
22
18
  const logger = LoggerService.getInstance().createComponentLogger('RelayController');
23
19
  /** Valid relay node roles for request validation. */
24
20
  const VALID_ROLES = new Set(['orchestrator', 'agent']);
25
- /**
26
- * POST /relay/register
27
- *
28
- * Register a local Crewly instance as a relay node. Returns a session ID
29
- * and the WebSocket URL to connect to for relay communication.
30
- *
31
- * @param req - Request with body: { role, pairingCode }
32
- * @param res - Response returning RelayRegisterResponse
33
- * @param next - Next function for error propagation
34
- */
35
- export async function registerRelayNode(req, res, next) {
36
- try {
37
- const { role, pairingCode } = req.body;
38
- if (!role || !pairingCode) {
39
- res.status(400).json({
40
- success: false,
41
- error: 'Missing required parameters: role, pairingCode',
42
- });
43
- return;
44
- }
45
- if (!VALID_ROLES.has(role)) {
46
- res.status(400).json({
47
- success: false,
48
- error: `Invalid role: "${role}". Must be "orchestrator" or "agent".`,
49
- });
50
- return;
51
- }
52
- const relay = RelayServerService.getInstance();
53
- if (!relay.isRunning()) {
54
- res.status(503).json({
55
- success: false,
56
- error: 'Relay server is not running. Start it first.',
57
- });
58
- return;
59
- }
60
- // Build the WebSocket URL from the request
61
- const protocol = req.secure ? 'wss' : 'ws';
62
- const host = req.get('host') ?? 'localhost';
63
- const wsUrl = `${protocol}://${host}/relay`;
64
- // Generate a session ID (the actual WS registration happens on connect)
65
- const response = {
66
- success: true,
67
- sessionId: `pending-${Date.now()}`,
68
- wsUrl,
69
- };
70
- logger.info('Relay node registration via REST', { role, pairingCode });
71
- res.json(response);
72
- }
73
- catch (error) {
74
- logger.error('Failed to register relay node', {
75
- error: error instanceof Error ? error.message : String(error),
76
- });
77
- next(error);
78
- }
79
- }
80
- /**
81
- * GET /relay/status
82
- *
83
- * Get the current relay server status, including whether it's running,
84
- * the number of connected clients, and active session details.
85
- *
86
- * @param req - Express request (no params required)
87
- * @param res - Response returning relay status object
88
- * @param next - Next function for error propagation
89
- */
90
- export async function getRelayStatus(req, res, next) {
91
- try {
92
- const relay = RelayServerService.getInstance();
93
- res.json({
94
- success: true,
95
- data: {
96
- running: relay.isRunning(),
97
- clientCount: relay.getClientCount(),
98
- sessions: relay.getSessions(),
99
- },
100
- });
101
- }
102
- catch (error) {
103
- logger.error('Failed to get relay status', {
104
- error: error instanceof Error ? error.message : String(error),
105
- });
106
- next(error);
107
- }
108
- }
109
21
  /**
110
22
  * POST /relay/connect
111
23
  *
@@ -195,8 +107,8 @@ export async function disconnectFromRelay(req, res, next) {
195
107
  /**
196
108
  * GET /relay/devices
197
109
  *
198
- * List connected devices visible through the relay. Returns both the local
199
- * relay client state and the relay server sessions (if a local server is running).
110
+ * List connected devices visible through the relay. Returns the local
111
+ * relay client state.
200
112
  *
201
113
  * @param req - Express request (no params required)
202
114
  * @param res - Response with device list
@@ -205,25 +117,14 @@ export async function disconnectFromRelay(req, res, next) {
205
117
  export async function getRelayDevices(req, res, next) {
206
118
  try {
207
119
  const client = RelayClientService.getInstance();
208
- const server = RelayServerService.getInstance();
209
120
  const clientInfo = {
210
121
  state: client.getState(),
211
122
  sessionId: client.getSessionId(),
212
123
  };
213
- const serverSessions = server.isRunning() ? server.getSessions() : [];
214
124
  res.json({
215
125
  success: true,
216
126
  data: {
217
127
  client: clientInfo,
218
- serverRunning: server.isRunning(),
219
- devices: serverSessions.map((session) => ({
220
- sessionId: session.sessionId,
221
- role: session.role,
222
- state: session.state,
223
- pairedWith: session.pairedWith,
224
- registeredAt: session.registeredAt,
225
- lastHeartbeatAt: session.lastHeartbeatAt,
226
- })),
227
128
  },
228
129
  });
229
130
  }
@@ -280,64 +181,4 @@ export async function sendRelayMessage(req, res, next) {
280
181
  next(error);
281
182
  }
282
183
  }
283
- // ---------------------------------------------------------------------------
284
- // Magic Connection (auto-pair via Supabase user_id)
285
- // ---------------------------------------------------------------------------
286
- /**
287
- * POST /relay/auto-connect
288
- *
289
- * Magic Connection endpoint: uses the authenticated Supabase user_id as
290
- * the pairingCode, auto-determines the role (orchestrator if no other
291
- * device for this user, agent otherwise), and returns connection details.
292
- *
293
- * The frontend calls this single endpoint after login — zero manual config.
294
- *
295
- * @param req - Authenticated request (Supabase JWT)
296
- * @param res - Response with { pairingCode, role, wsUrl, hostname }
297
- * @param next - Next function for error propagation
298
- */
299
- export async function autoConnectRelay(req, res, next) {
300
- try {
301
- const userId = req.user.userId;
302
- const relay = RelayServerService.getInstance();
303
- if (!relay.isRunning()) {
304
- res.status(503).json({
305
- success: false,
306
- error: 'Relay server is not running.',
307
- });
308
- return;
309
- }
310
- // Use Supabase user_id as the pairing code (devices auto-find each other)
311
- const pairingCode = userId;
312
- // Auto-determine role: if another device with this pairingCode is already
313
- // connected as orchestrator, join as agent; otherwise become orchestrator
314
- const sessions = relay.getSessions();
315
- const existingForUser = sessions.filter((s) => s.pairingCode === pairingCode);
316
- const hasOrchestrator = existingForUser.some((s) => s.role === 'orchestrator');
317
- const role = hasOrchestrator ? 'agent' : 'orchestrator';
318
- // Build WebSocket URL
319
- const protocol = req.secure ? 'wss' : 'ws';
320
- const host = req.get('host') ?? 'localhost';
321
- const wsUrl = `${protocol}://${host}/relay`;
322
- // Hostname for device identification
323
- const hostname = req.get('X-Device-Name') ?? 'Unknown Device';
324
- logger.info('Auto-connect relay', { userId, pairingCode, role, hostname });
325
- res.json({
326
- success: true,
327
- data: {
328
- pairingCode,
329
- role,
330
- wsUrl,
331
- hostname,
332
- existingDevices: existingForUser.length,
333
- },
334
- });
335
- }
336
- catch (error) {
337
- logger.error('Failed to auto-connect relay', {
338
- error: error instanceof Error ? error.message : String(error),
339
- });
340
- next(error);
341
- }
342
- }
343
184
  //# sourceMappingURL=relay.controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"relay.controller.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/relay.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relay.controller.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/relay.controller.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,10 @@
1
1
  /**
2
2
  * Relay REST Routes
3
3
  *
4
- * Router configuration for WebSocket Relay server and client endpoints.
4
+ * Router configuration for relay client endpoints.
5
+ * Server-side relay management has been moved to the cloud services repository.
5
6
  *
6
- * Server-side endpoints (public):
7
- * - POST /register - Register a local instance as a relay node
8
- * - GET /status - Get relay server status and active sessions
9
- *
10
- * Client-side endpoints (require Supabase auth + Pro plan):
7
+ * Client-side endpoints (require cloud connection + Pro plan):
11
8
  * - POST /connect - Connect to a remote relay server
12
9
  * - POST /disconnect - Disconnect from the relay server
13
10
  * - GET /devices - List paired/connected devices
@@ -17,10 +14,9 @@
17
14
  */
18
15
  import { Router } from 'express';
19
16
  /**
20
- * Creates the relay router with all relay management endpoints.
17
+ * Creates the relay router with client-side relay endpoints.
21
18
  *
22
- * Server-side endpoints are public (used by the relay server itself).
23
- * Client-side endpoints require Supabase authentication and a Pro plan,
19
+ * All endpoints require a cloud connection and a Pro plan,
24
20
  * since Cloud Relay is a paid feature.
25
21
  *
26
22
  * @returns Express router configured with relay routes
@@ -1 +1 @@
1
- {"version":3,"file":"relay.routes.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/relay.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAejC;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAiB1C"}
1
+ {"version":3,"file":"relay.routes.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/relay.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AASjC;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAS1C"}
@@ -1,13 +1,10 @@
1
1
  /**
2
2
  * Relay REST Routes
3
3
  *
4
- * Router configuration for WebSocket Relay server and client endpoints.
4
+ * Router configuration for relay client endpoints.
5
+ * Server-side relay management has been moved to the cloud services repository.
5
6
  *
6
- * Server-side endpoints (public):
7
- * - POST /register - Register a local instance as a relay node
8
- * - GET /status - Get relay server status and active sessions
9
- *
10
- * Client-side endpoints (require Supabase auth + Pro plan):
7
+ * Client-side endpoints (require cloud connection + Pro plan):
11
8
  * - POST /connect - Connect to a remote relay server
12
9
  * - POST /disconnect - Disconnect from the relay server
13
10
  * - GET /devices - List paired/connected devices
@@ -16,29 +13,22 @@
16
13
  * @module controllers/cloud/relay.routes
17
14
  */
18
15
  import { Router } from 'express';
19
- import { registerRelayNode, getRelayStatus, connectToRelay, disconnectFromRelay, getRelayDevices, sendRelayMessage, autoConnectRelay, } from './relay.controller.js';
20
- import { requireSupabaseAuth, requireSupabasePlan, } from '../../services/cloud/auth/supabase-auth.middleware.js';
16
+ import { connectToRelay, disconnectFromRelay, getRelayDevices, sendRelayMessage, } from './relay.controller.js';
17
+ import { requireCloudConnection, requireTier } from '../../services/cloud/cloud-auth.middleware.js';
21
18
  /**
22
- * Creates the relay router with all relay management endpoints.
19
+ * Creates the relay router with client-side relay endpoints.
23
20
  *
24
- * Server-side endpoints are public (used by the relay server itself).
25
- * Client-side endpoints require Supabase authentication and a Pro plan,
21
+ * All endpoints require a cloud connection and a Pro plan,
26
22
  * since Cloud Relay is a paid feature.
27
23
  *
28
24
  * @returns Express router configured with relay routes
29
25
  */
30
26
  export function createRelayRouter() {
31
27
  const router = Router();
32
- // Server-side endpoints (public — used by relay infrastructure)
33
- router.post('/register', registerRelayNode);
34
- router.get('/status', getRelayStatus);
35
- // Client-side endpoints (require Supabase auth + Pro plan)
36
- router.post('/connect', requireSupabaseAuth, requireSupabasePlan('pro'), connectToRelay);
37
- router.post('/disconnect', requireSupabaseAuth, requireSupabasePlan('pro'), disconnectFromRelay);
38
- router.get('/devices', requireSupabaseAuth, requireSupabasePlan('pro'), getRelayDevices);
39
- router.post('/send', requireSupabaseAuth, requireSupabasePlan('pro'), sendRelayMessage);
40
- // Magic Connection — auto-pair using Supabase user_id (zero-config)
41
- router.post('/auto-connect', requireSupabaseAuth, requireSupabasePlan('pro'), autoConnectRelay);
28
+ router.post('/connect', requireCloudConnection, requireTier('pro'), connectToRelay);
29
+ router.post('/disconnect', requireCloudConnection, requireTier('pro'), disconnectFromRelay);
30
+ router.get('/devices', requireCloudConnection, requireTier('pro'), getRelayDevices);
31
+ router.post('/send', requireCloudConnection, requireTier('pro'), sendRelayMessage);
42
32
  return router;
43
33
  }
44
34
  //# sourceMappingURL=relay.routes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"relay.routes.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/relay.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,uDAAuD,CAAC;AAE/D;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,gEAAgE;IAChE,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAEtC,2DAA2D;IAC3D,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,CAAC;IACzF,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,mBAAmB,CAAC,CAAC;IACjG,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC,CAAC;IACzF,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAExF,oEAAoE;IACpE,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAEhG,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"relay.routes.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/cloud/relay.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAEpG;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,sBAAsB,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,CAAC;IACpF,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,sBAAsB,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,mBAAmB,CAAC,CAAC;IAC5F,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,sBAAsB,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC,CAAC;IACpF,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,sBAAsB,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAEnF,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,7 +1,10 @@
1
1
  /**
2
- * Cloud tasks controller barrel export.
2
+ * Cloud tasks types barrel export.
3
+ *
4
+ * Note: Task controller and routes have been migrated to services/tasks/.
5
+ * Only type definitions remain here (used by H5 controller).
3
6
  *
4
7
  * @module controllers/cloud/tasks
5
8
  */
6
- export { createCloudTasksRouter } from './cloud-task.routes.js';
9
+ export { CLOUD_TASK_STATUSES, CLOUD_TASK_TYPES, type CloudTask, type CloudTaskStatus, type CloudTaskType, type CreateCloudTaskBody, type ListCloudTasksQuery, isValidCloudTaskType, isValidCloudTaskStatus, } from './cloud-task.types.js';
7
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/controllers/cloud/tasks/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/controllers/cloud/tasks/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,oBAAoB,EACpB,sBAAsB,GACtB,MAAM,uBAAuB,CAAC"}
@@ -1,7 +1,10 @@
1
1
  /**
2
- * Cloud tasks controller barrel export.
2
+ * Cloud tasks types barrel export.
3
+ *
4
+ * Note: Task controller and routes have been migrated to services/tasks/.
5
+ * Only type definitions remain here (used by H5 controller).
3
6
  *
4
7
  * @module controllers/cloud/tasks
5
8
  */
6
- export { createCloudTasksRouter } from './cloud-task.routes.js';
9
+ export { CLOUD_TASK_STATUSES, CLOUD_TASK_TYPES, isValidCloudTaskType, isValidCloudTaskStatus, } from './cloud-task.types.js';
7
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../backend/src/controllers/cloud/tasks/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../backend/src/controllers/cloud/tasks/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAMhB,oBAAoB,EACpB,sBAAsB,GACtB,MAAM,uBAAuB,CAAC"}
@@ -7,7 +7,11 @@
7
7
  *
8
8
  * Read endpoints (list, get, versions) are public — anyone can browse.
9
9
  * Write endpoints (create, update, archive, add version, publish)
10
- * require Supabase authentication.
10
+ * require authentication.
11
+ *
12
+ * Note: Supabase auth middleware was removed when cloud services were
13
+ * deleted. Write endpoints currently use a pass-through placeholder
14
+ * that must be replaced with a real auth middleware before production.
11
15
  *
12
16
  * @module controllers/marketplace/template-marketplace.routes
13
17
  */
@@ -20,7 +24,7 @@ import { Router } from 'express';
20
24
  * - GET /:id - Get template details
21
25
  * - GET /:id/versions - List template versions
22
26
  *
23
- * Protected endpoints (require Supabase auth):
27
+ * Protected endpoints (require auth):
24
28
  * - POST / - Create a new template
25
29
  * - PUT /:id - Update template metadata
26
30
  * - DELETE /:id - Archive template (soft delete)
@@ -1 +1 @@
1
- {"version":3,"file":"template-marketplace.routes.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/marketplace/template-marketplace.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAajC;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,CAoBxD"}
1
+ {"version":3,"file":"template-marketplace.routes.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/marketplace/template-marketplace.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAajC;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,CAoBxD"}