crewly 1.2.4 → 1.2.7

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 (298) 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 +77 -13
  13. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  14. package/dist/backend/backend/src/constants.js +78 -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/messaging/messenger.routes.d.ts +7 -0
  67. package/dist/backend/backend/src/controllers/messaging/messenger.routes.d.ts.map +1 -1
  68. package/dist/backend/backend/src/controllers/messaging/messenger.routes.js +64 -3
  69. package/dist/backend/backend/src/controllers/messaging/messenger.routes.js.map +1 -1
  70. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts.map +1 -1
  71. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js +32 -4
  72. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js.map +1 -1
  73. package/dist/backend/backend/src/controllers/payment/payment.controller.d.ts +16 -5
  74. package/dist/backend/backend/src/controllers/payment/payment.controller.d.ts.map +1 -1
  75. package/dist/backend/backend/src/controllers/payment/payment.controller.js +6 -6
  76. package/dist/backend/backend/src/controllers/payment/payment.controller.js.map +1 -1
  77. package/dist/backend/backend/src/controllers/payment/payment.routes.d.ts +6 -2
  78. package/dist/backend/backend/src/controllers/payment/payment.routes.d.ts.map +1 -1
  79. package/dist/backend/backend/src/controllers/payment/payment.routes.js +22 -8
  80. package/dist/backend/backend/src/controllers/payment/payment.routes.js.map +1 -1
  81. package/dist/backend/backend/src/controllers/payment/payment.types.d.ts +1 -1
  82. package/dist/backend/backend/src/controllers/payment/payment.types.d.ts.map +1 -1
  83. package/dist/backend/backend/src/controllers/payment/payment.types.js +1 -1
  84. package/dist/backend/backend/src/controllers/payment/payment.types.js.map +1 -1
  85. package/dist/backend/backend/src/controllers/request-types.d.ts +2 -2
  86. package/dist/backend/backend/src/controllers/request-types.d.ts.map +1 -1
  87. package/dist/backend/backend/src/controllers/system/scheduler.controller.d.ts +19 -0
  88. package/dist/backend/backend/src/controllers/system/scheduler.controller.d.ts.map +1 -1
  89. package/dist/backend/backend/src/controllers/system/scheduler.controller.js +51 -0
  90. package/dist/backend/backend/src/controllers/system/scheduler.controller.js.map +1 -1
  91. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  92. package/dist/backend/backend/src/controllers/team/team.controller.js +13 -5
  93. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  94. package/dist/backend/backend/src/controllers/template/template.controller.d.ts.map +1 -1
  95. package/dist/backend/backend/src/controllers/template/template.controller.js +2 -2
  96. package/dist/backend/backend/src/controllers/template/template.controller.js.map +1 -1
  97. package/dist/backend/backend/src/index.d.ts.map +1 -1
  98. package/dist/backend/backend/src/index.js +33 -30
  99. package/dist/backend/backend/src/index.js.map +1 -1
  100. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  101. package/dist/backend/backend/src/routes/api.routes.js +4 -12
  102. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  103. package/dist/backend/backend/src/routes/modules/log-rotation.routes.d.ts +8 -0
  104. package/dist/backend/backend/src/routes/modules/log-rotation.routes.d.ts.map +1 -0
  105. package/dist/backend/backend/src/routes/modules/log-rotation.routes.js +62 -0
  106. package/dist/backend/backend/src/routes/modules/log-rotation.routes.js.map +1 -0
  107. package/dist/backend/backend/src/routes/modules/scheduler.routes.d.ts.map +1 -1
  108. package/dist/backend/backend/src/routes/modules/scheduler.routes.js +2 -0
  109. package/dist/backend/backend/src/routes/modules/scheduler.routes.js.map +1 -1
  110. package/dist/backend/backend/src/scripts/run-log-rotation.d.ts +3 -0
  111. package/dist/backend/backend/src/scripts/run-log-rotation.d.ts.map +1 -0
  112. package/dist/backend/backend/src/scripts/run-log-rotation.js +31 -0
  113. package/dist/backend/backend/src/scripts/run-log-rotation.js.map +1 -0
  114. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +10 -0
  115. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  116. package/dist/backend/backend/src/services/agent/agent-registration.service.js +85 -1
  117. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  118. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.d.ts +150 -0
  119. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.d.ts.map +1 -0
  120. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.js +307 -0
  121. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.js.map +1 -0
  122. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +105 -0
  123. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +1 -0
  124. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +199 -0
  125. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +1 -0
  126. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.d.ts +68 -0
  127. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.d.ts.map +1 -0
  128. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.js +131 -0
  129. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.js.map +1 -0
  130. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts +29 -0
  131. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts.map +1 -0
  132. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js +229 -0
  133. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js.map +1 -0
  134. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts +127 -0
  135. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts.map +1 -0
  136. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js +242 -0
  137. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js.map +1 -0
  138. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts +95 -0
  139. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts.map +1 -0
  140. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.js +130 -0
  141. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.js.map +1 -0
  142. package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts +14 -0
  143. package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts.map +1 -0
  144. package/dist/backend/backend/src/services/agent/crewly-agent/index.js +14 -0
  145. package/dist/backend/backend/src/services/agent/crewly-agent/index.js.map +1 -0
  146. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts +57 -0
  147. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts.map +1 -0
  148. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js +93 -0
  149. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js.map +1 -0
  150. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.d.ts +13 -0
  151. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.d.ts.map +1 -0
  152. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.js +91 -0
  153. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.js.map +1 -0
  154. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts +29 -0
  155. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts.map +1 -0
  156. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js +519 -0
  157. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js.map +1 -0
  158. package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts +159 -0
  159. package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts.map +1 -0
  160. package/dist/backend/backend/src/services/agent/crewly-agent/types.js +63 -0
  161. package/dist/backend/backend/src/services/agent/crewly-agent/types.js.map +1 -0
  162. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts +56 -1
  163. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  164. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +273 -215
  165. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  166. package/dist/backend/backend/src/services/agent/runtime-service.factory.js +8 -8
  167. package/dist/backend/backend/src/services/agent/runtime-service.factory.js.map +1 -1
  168. package/dist/backend/backend/src/services/chat/chat.service.d.ts +7 -1
  169. package/dist/backend/backend/src/services/chat/chat.service.d.ts.map +1 -1
  170. package/dist/backend/backend/src/services/chat/chat.service.js +14 -5
  171. package/dist/backend/backend/src/services/chat/chat.service.js.map +1 -1
  172. package/dist/backend/backend/src/services/cloud/admin-seed.service.d.ts +18 -0
  173. package/dist/backend/backend/src/services/cloud/admin-seed.service.d.ts.map +1 -0
  174. package/dist/backend/backend/src/services/cloud/admin-seed.service.js +50 -0
  175. package/dist/backend/backend/src/services/cloud/admin-seed.service.js.map +1 -0
  176. package/dist/backend/backend/src/services/cloud/cloud-features.d.ts +19 -0
  177. package/dist/backend/backend/src/services/cloud/cloud-features.d.ts.map +1 -0
  178. package/dist/backend/backend/src/services/cloud/cloud-features.js +23 -0
  179. package/dist/backend/backend/src/services/cloud/cloud-features.js.map +1 -0
  180. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.d.ts +3 -3
  181. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.d.ts.map +1 -1
  182. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.js +10 -6
  183. package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.js.map +1 -1
  184. package/dist/backend/backend/src/services/cloud/mongodb.service.d.ts +45 -0
  185. package/dist/backend/backend/src/services/cloud/mongodb.service.d.ts.map +1 -0
  186. package/dist/backend/backend/src/services/cloud/mongodb.service.js +76 -0
  187. package/dist/backend/backend/src/services/cloud/mongodb.service.js.map +1 -0
  188. package/dist/backend/backend/src/services/cloud/relay-server.service.d.ts +0 -2
  189. package/dist/backend/backend/src/services/cloud/relay-server.service.d.ts.map +1 -1
  190. package/dist/backend/backend/src/services/cloud/relay-server.service.js +7 -36
  191. package/dist/backend/backend/src/services/cloud/relay-server.service.js.map +1 -1
  192. package/dist/backend/backend/src/services/continuation/continuation.service.d.ts.map +1 -1
  193. package/dist/backend/backend/src/services/continuation/continuation.service.js +5 -10
  194. package/dist/backend/backend/src/services/continuation/continuation.service.js.map +1 -1
  195. package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts +10 -2
  196. package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts.map +1 -1
  197. package/dist/backend/backend/src/services/event-bus/event-bus.service.js +47 -12
  198. package/dist/backend/backend/src/services/event-bus/event-bus.service.js.map +1 -1
  199. package/dist/backend/backend/src/services/mcp-server.js +1 -1
  200. package/dist/backend/backend/src/services/mcp-server.js.map +1 -1
  201. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.d.ts +95 -22
  202. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.d.ts.map +1 -1
  203. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.js +284 -60
  204. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.js.map +1 -1
  205. package/dist/backend/backend/src/services/messaging/message-queue.service.d.ts.map +1 -1
  206. package/dist/backend/backend/src/services/messaging/message-queue.service.js +2 -1
  207. package/dist/backend/backend/src/services/messaging/message-queue.service.js.map +1 -1
  208. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  209. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +22 -4
  210. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  211. package/dist/backend/backend/src/services/messaging/response-router.service.d.ts +8 -0
  212. package/dist/backend/backend/src/services/messaging/response-router.service.d.ts.map +1 -1
  213. package/dist/backend/backend/src/services/messaging/response-router.service.js +42 -0
  214. package/dist/backend/backend/src/services/messaging/response-router.service.js.map +1 -1
  215. package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.d.ts.map +1 -1
  216. package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.js +6 -0
  217. package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.js.map +1 -1
  218. package/dist/backend/backend/src/services/payment/stripe.service.d.ts +4 -43
  219. package/dist/backend/backend/src/services/payment/stripe.service.d.ts.map +1 -1
  220. package/dist/backend/backend/src/services/payment/stripe.service.js +56 -180
  221. package/dist/backend/backend/src/services/payment/stripe.service.js.map +1 -1
  222. package/dist/backend/backend/src/services/session/index.d.ts +2 -0
  223. package/dist/backend/backend/src/services/session/index.d.ts.map +1 -1
  224. package/dist/backend/backend/src/services/session/index.js +2 -0
  225. package/dist/backend/backend/src/services/session/index.js.map +1 -1
  226. package/dist/backend/backend/src/services/session/log-rotation.service.d.ts +163 -0
  227. package/dist/backend/backend/src/services/session/log-rotation.service.d.ts.map +1 -0
  228. package/dist/backend/backend/src/services/session/log-rotation.service.js +362 -0
  229. package/dist/backend/backend/src/services/session/log-rotation.service.js.map +1 -0
  230. package/dist/backend/backend/src/services/settings/settings.service.js +1 -1
  231. package/dist/backend/backend/src/services/settings/settings.service.js.map +1 -1
  232. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +11 -0
  233. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  234. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +83 -1
  235. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  236. package/dist/backend/backend/src/services/template/template.service.d.ts +9 -44
  237. package/dist/backend/backend/src/services/template/template.service.d.ts.map +1 -1
  238. package/dist/backend/backend/src/services/template/template.service.js +7 -80
  239. package/dist/backend/backend/src/services/template/template.service.js.map +1 -1
  240. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts +35 -0
  241. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts.map +1 -1
  242. package/dist/backend/backend/src/services/workflow/scheduler.service.js +133 -0
  243. package/dist/backend/backend/src/services/workflow/scheduler.service.js.map +1 -1
  244. package/dist/backend/backend/src/types/chat.types.d.ts +1 -1
  245. package/dist/backend/backend/src/types/chat.types.d.ts.map +1 -1
  246. package/dist/backend/backend/src/types/chat.types.js +21 -17
  247. package/dist/backend/backend/src/types/chat.types.js.map +1 -1
  248. package/dist/backend/backend/src/types/event-bus.types.d.ts +31 -0
  249. package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
  250. package/dist/backend/backend/src/types/event-bus.types.js +50 -0
  251. package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
  252. package/dist/backend/backend/src/types/index.d.ts +1 -1
  253. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  254. package/dist/backend/backend/src/types/messaging.types.d.ts +4 -0
  255. package/dist/backend/backend/src/types/messaging.types.d.ts.map +1 -1
  256. package/dist/backend/backend/src/types/messaging.types.js.map +1 -1
  257. package/dist/backend/backend/src/types/settings.types.d.ts +1 -1
  258. package/dist/backend/backend/src/types/settings.types.d.ts.map +1 -1
  259. package/dist/backend/backend/src/types/settings.types.js +4 -4
  260. package/dist/backend/backend/src/types/settings.types.js.map +1 -1
  261. package/dist/backend/backend/src/types/team-template.types.d.ts +2 -2
  262. package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
  263. package/dist/backend/backend/src/types/team-template.types.js +1 -1
  264. package/dist/backend/backend/src/types/team-template.types.js.map +1 -1
  265. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts +4 -4
  266. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts.map +1 -1
  267. package/dist/backend/backend/src/websocket/terminal.gateway.js +9 -6
  268. package/dist/backend/backend/src/websocket/terminal.gateway.js.map +1 -1
  269. package/dist/backend/config/constants.d.ts +4 -2
  270. package/dist/backend/config/constants.d.ts.map +1 -1
  271. package/dist/backend/config/constants.js +4 -2
  272. package/dist/backend/config/constants.js.map +1 -1
  273. package/dist/cli/backend/src/constants.d.ts +77 -13
  274. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  275. package/dist/cli/backend/src/constants.js +78 -16
  276. package/dist/cli/backend/src/constants.js.map +1 -1
  277. package/dist/cli/backend/src/services/mcp-server.js +1 -1
  278. package/dist/cli/backend/src/services/mcp-server.js.map +1 -1
  279. package/dist/cli/backend/src/types/chat.types.d.ts +1 -1
  280. package/dist/cli/backend/src/types/chat.types.d.ts.map +1 -1
  281. package/dist/cli/backend/src/types/chat.types.js +21 -17
  282. package/dist/cli/backend/src/types/chat.types.js.map +1 -1
  283. package/dist/cli/backend/src/types/index.d.ts +1 -1
  284. package/dist/cli/backend/src/types/index.d.ts.map +1 -1
  285. package/dist/cli/backend/src/types/settings.types.d.ts +1 -1
  286. package/dist/cli/backend/src/types/settings.types.d.ts.map +1 -1
  287. package/dist/cli/backend/src/types/settings.types.js +4 -4
  288. package/dist/cli/backend/src/types/settings.types.js.map +1 -1
  289. package/dist/cli/config/constants.d.ts +4 -2
  290. package/dist/cli/config/constants.d.ts.map +1 -1
  291. package/dist/cli/config/constants.js +4 -2
  292. package/dist/cli/config/constants.js.map +1 -1
  293. package/frontend/dist/assets/index-5cf8820f.js +4919 -0
  294. package/frontend/dist/assets/index-dee3a3a9.css +33 -0
  295. package/frontend/dist/index.html +2 -2
  296. package/package.json +15 -9
  297. package/frontend/dist/assets/index-510ab719.css +0 -33
  298. package/frontend/dist/assets/index-935cd846.js +0 -4961
@@ -0,0 +1,173 @@
1
+ /**
2
+ * Cloud Admin Controller
3
+ *
4
+ * CRUD operations for managing users directly in MongoDB.
5
+ * Protected by X-Admin-Secret header.
6
+ *
7
+ * Endpoints:
8
+ * - POST /api/cloud/admin/users — Create user
9
+ * - GET /api/cloud/admin/users — List all users
10
+ * - PATCH /api/cloud/admin/users/:id — Update user plan
11
+ * - DELETE /api/cloud/admin/users/:id — Delete user
12
+ *
13
+ * @module controllers/cloud/admin/admin.controller
14
+ */
15
+ import { MongoDBService } from '../../../services/cloud/mongodb.service.js';
16
+ import { LoggerService } from '../../../services/core/logger.service.js';
17
+ const logger = LoggerService.getInstance().createComponentLogger('AdminController');
18
+ /** Valid plan values. */
19
+ const VALID_PLANS = ['free', 'pro', 'team'];
20
+ /**
21
+ * POST /api/cloud/admin/users
22
+ *
23
+ * Create a test user directly in MongoDB (no Google OAuth needed).
24
+ *
25
+ * @param req - Request with body: { email, name, plan? }
26
+ * @param res - Response with created user
27
+ * @param next - Next function for error propagation
28
+ */
29
+ export async function adminCreateUser(req, res, next) {
30
+ try {
31
+ const { email, name, plan } = req.body;
32
+ if (!email) {
33
+ res.status(400).json({ success: false, error: 'Missing required field: email' });
34
+ return;
35
+ }
36
+ if (!name) {
37
+ res.status(400).json({ success: false, error: 'Missing required field: name' });
38
+ return;
39
+ }
40
+ const userPlan = plan || 'free';
41
+ if (!VALID_PLANS.includes(userPlan)) {
42
+ res.status(400).json({ success: false, error: `Invalid plan. Must be one of: ${VALID_PLANS.join(', ')}` });
43
+ return;
44
+ }
45
+ const mongo = MongoDBService.getInstance();
46
+ const users = await mongo.users();
47
+ // Check if user already exists
48
+ const existing = await users.findOne({ email });
49
+ if (existing) {
50
+ res.status(409).json({ success: false, error: 'User with this email already exists' });
51
+ return;
52
+ }
53
+ const now = new Date().toISOString();
54
+ const googleId = `admin-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
55
+ const doc = {
56
+ googleId,
57
+ email,
58
+ name,
59
+ avatar: '',
60
+ plan: userPlan,
61
+ createdAt: now,
62
+ updatedAt: now,
63
+ };
64
+ await users.insertOne(doc);
65
+ logger.info('Admin created user', { email, plan: userPlan });
66
+ res.status(201).json({ success: true, data: doc });
67
+ }
68
+ catch (error) {
69
+ logger.error('Admin create user failed', { error: error instanceof Error ? error.message : String(error) });
70
+ next(error);
71
+ }
72
+ }
73
+ /**
74
+ * GET /api/cloud/admin/users
75
+ *
76
+ * List all registered users.
77
+ *
78
+ * @param req - Express request
79
+ * @param res - Response with user array
80
+ * @param next - Next function for error propagation
81
+ */
82
+ export async function adminListUsers(req, res, next) {
83
+ try {
84
+ const mongo = MongoDBService.getInstance();
85
+ const users = await mongo.users();
86
+ const allUsers = await users.find({}).toArray();
87
+ res.json({ success: true, data: allUsers, count: allUsers.length });
88
+ }
89
+ catch (error) {
90
+ logger.error('Admin list users failed', { error: error instanceof Error ? error.message : String(error) });
91
+ next(error);
92
+ }
93
+ }
94
+ /**
95
+ * PATCH /api/cloud/admin/users/:id
96
+ *
97
+ * Update a user's plan.
98
+ *
99
+ * @param req - Request with params.id (googleId) and body: { plan, name?, email? }
100
+ * @param res - Response with updated user
101
+ * @param next - Next function for error propagation
102
+ */
103
+ export async function adminUpdateUser(req, res, next) {
104
+ try {
105
+ const { id } = req.params;
106
+ const { plan, name, email } = req.body;
107
+ if (!id) {
108
+ res.status(400).json({ success: false, error: 'Missing user ID' });
109
+ return;
110
+ }
111
+ // Build update fields
112
+ const updateFields = { updatedAt: new Date().toISOString() };
113
+ if (plan) {
114
+ if (!VALID_PLANS.includes(plan)) {
115
+ res.status(400).json({ success: false, error: `Invalid plan. Must be one of: ${VALID_PLANS.join(', ')}` });
116
+ return;
117
+ }
118
+ updateFields['plan'] = plan;
119
+ }
120
+ if (name)
121
+ updateFields['name'] = name;
122
+ if (email)
123
+ updateFields['email'] = email;
124
+ const mongo = MongoDBService.getInstance();
125
+ const users = await mongo.users();
126
+ const result = await users.findOneAndUpdate({ googleId: id }, { $set: updateFields }, { returnDocument: 'after' });
127
+ if (!result) {
128
+ res.status(404).json({ success: false, error: 'User not found' });
129
+ return;
130
+ }
131
+ logger.info('Admin updated user', { id, fields: Object.keys(updateFields) });
132
+ res.json({ success: true, data: result });
133
+ }
134
+ catch (error) {
135
+ logger.error('Admin update user failed', { error: error instanceof Error ? error.message : String(error) });
136
+ next(error);
137
+ }
138
+ }
139
+ /**
140
+ * DELETE /api/cloud/admin/users/:id
141
+ *
142
+ * Remove a user and their sessions from MongoDB.
143
+ *
144
+ * @param req - Request with params.id (googleId)
145
+ * @param res - Response with deletion confirmation
146
+ * @param next - Next function for error propagation
147
+ */
148
+ export async function adminDeleteUser(req, res, next) {
149
+ try {
150
+ const { id } = req.params;
151
+ if (!id) {
152
+ res.status(400).json({ success: false, error: 'Missing user ID' });
153
+ return;
154
+ }
155
+ const mongo = MongoDBService.getInstance();
156
+ const users = await mongo.users();
157
+ const sessions = await mongo.sessions();
158
+ const result = await users.deleteOne({ googleId: id });
159
+ if (result.deletedCount === 0) {
160
+ res.status(404).json({ success: false, error: 'User not found' });
161
+ return;
162
+ }
163
+ // Also clean up sessions
164
+ const sessionsResult = await sessions.deleteMany({ userId: id });
165
+ logger.info('Admin deleted user', { id, sessionsRemoved: sessionsResult.deletedCount });
166
+ res.json({ success: true, data: { deleted: true, sessionsRemoved: sessionsResult.deletedCount } });
167
+ }
168
+ catch (error) {
169
+ logger.error('Admin delete user failed', { error: error instanceof Error ? error.message : String(error) });
170
+ next(error);
171
+ }
172
+ }
173
+ //# sourceMappingURL=admin.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin.controller.js","sourceRoot":"","sources":["../../../../../../../backend/src/controllers/cloud/admin/admin.controller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Cloud Admin Routes
3
+ *
4
+ * Router for admin user management endpoints.
5
+ * All routes are protected by requireAdminAuth middleware.
6
+ *
7
+ * Endpoints:
8
+ * - POST /users — Create user
9
+ * - GET /users — List all users
10
+ * - PATCH /users/:id — Update user
11
+ * - DELETE /users/:id — Delete user
12
+ *
13
+ * @module controllers/cloud/admin/admin.routes
14
+ */
15
+ import { Router } from 'express';
16
+ /**
17
+ * Creates the admin router with user management endpoints.
18
+ *
19
+ * @returns Express router configured with admin routes
20
+ */
21
+ export declare function createAdminRouter(): Router;
22
+ //# sourceMappingURL=admin.routes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin.routes.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/controllers/cloud/admin/admin.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AASjC;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAY1C"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Cloud Admin Routes
3
+ *
4
+ * Router for admin user management endpoints.
5
+ * All routes are protected by requireAdminAuth middleware.
6
+ *
7
+ * Endpoints:
8
+ * - POST /users — Create user
9
+ * - GET /users — List all users
10
+ * - PATCH /users/:id — Update user
11
+ * - DELETE /users/:id — Delete user
12
+ *
13
+ * @module controllers/cloud/admin/admin.routes
14
+ */
15
+ import { Router } from 'express';
16
+ import { requireAdminAuth } from './admin-auth.middleware.js';
17
+ import { adminCreateUser, adminListUsers, adminUpdateUser, adminDeleteUser, } from './admin.controller.js';
18
+ /**
19
+ * Creates the admin router with user management endpoints.
20
+ *
21
+ * @returns Express router configured with admin routes
22
+ */
23
+ export function createAdminRouter() {
24
+ const router = Router();
25
+ // All admin routes require the X-Admin-Secret header
26
+ router.use(requireAdminAuth);
27
+ router.post('/users', adminCreateUser);
28
+ router.get('/users', adminListUsers);
29
+ router.patch('/users/:id', adminUpdateUser);
30
+ router.delete('/users/:id', adminDeleteUser);
31
+ return router;
32
+ }
33
+ //# sourceMappingURL=admin.routes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin.routes.js","sourceRoot":"","sources":["../../../../../../../backend/src/controllers/cloud/admin/admin.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EACL,eAAe,EACf,cAAc,EACd,eAAe,EACf,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B;;;;GAIG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,qDAAqD;IACrD,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAE7B,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IACvC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACrC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IAC5C,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IAE7C,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Cloud Admin barrel export.
3
+ *
4
+ * @module controllers/cloud/admin
5
+ */
6
+ export { createAdminRouter } from './admin.routes.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/controllers/cloud/admin/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Cloud Admin barrel export.
3
+ *
4
+ * @module controllers/cloud/admin
5
+ */
6
+ export { createAdminRouter } from './admin.routes.js';
7
+ //# sourceMappingURL=index.js.map
@@ -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"}