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.
- package/LICENSE +1 -1
- package/config/constants.ts +4 -2
- package/config/roles/auditor/prompt.md +84 -0
- package/config/roles/orchestrator/prompt.md +62 -7
- package/config/runtime_scripts/runtime-config.json +5 -5
- package/config/skills/orchestrator/cancel-all-schedules/execute.sh +24 -0
- package/config/skills/orchestrator/cancel-all-schedules/instructions.md +23 -0
- package/config/skills/orchestrator/cancel-all-schedules/skill.json +17 -0
- package/config/skills/orchestrator/list-schedules/execute.sh +19 -0
- package/config/skills/orchestrator/list-schedules/instructions.md +24 -0
- package/config/skills/orchestrator/list-schedules/skill.json +12 -0
- package/dist/backend/backend/src/constants.d.ts +77 -13
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +78 -16
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/auditor/auditor.controller.d.ts +37 -0
- package/dist/backend/backend/src/controllers/auditor/auditor.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/auditor/auditor.controller.js +64 -0
- package/dist/backend/backend/src/controllers/auditor/auditor.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/auditor/auditor.routes.d.ts +15 -0
- package/dist/backend/backend/src/controllers/auditor/auditor.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/auditor/auditor.routes.js +23 -0
- package/dist/backend/backend/src/controllers/auditor/auditor.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.d.ts +23 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.js +42 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.js.map +1 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.d.ts +56 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.js +173 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.d.ts +22 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.js +33 -0
- package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/cloud/admin/index.d.ts +7 -0
- package/dist/backend/backend/src/controllers/cloud/admin/index.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/cloud/admin/index.js +7 -0
- package/dist/backend/backend/src/controllers/cloud/admin/index.js.map +1 -0
- package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.d.ts +1 -1
- package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.js +5 -5
- package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/cloud.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/cloud.routes.js +0 -3
- package/dist/backend/backend/src/controllers/cloud/cloud.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/index.d.ts +0 -5
- package/dist/backend/backend/src/controllers/cloud/index.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/index.js +0 -5
- package/dist/backend/backend/src/controllers/cloud/index.js.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/relay.controller.d.ts +6 -45
- package/dist/backend/backend/src/controllers/cloud/relay.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/relay.controller.js +6 -165
- package/dist/backend/backend/src/controllers/cloud/relay.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/relay.routes.d.ts +5 -9
- package/dist/backend/backend/src/controllers/cloud/relay.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/relay.routes.js +11 -21
- package/dist/backend/backend/src/controllers/cloud/relay.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/tasks/index.d.ts +5 -2
- package/dist/backend/backend/src/controllers/cloud/tasks/index.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/tasks/index.js +5 -2
- package/dist/backend/backend/src/controllers/cloud/tasks/index.js.map +1 -1
- package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.d.ts +6 -2
- package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.js +12 -8
- package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/messaging/messenger.routes.d.ts +7 -0
- package/dist/backend/backend/src/controllers/messaging/messenger.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/messaging/messenger.routes.js +64 -3
- package/dist/backend/backend/src/controllers/messaging/messenger.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js +32 -4
- package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.controller.d.ts +16 -5
- package/dist/backend/backend/src/controllers/payment/payment.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.controller.js +6 -6
- package/dist/backend/backend/src/controllers/payment/payment.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.routes.d.ts +6 -2
- package/dist/backend/backend/src/controllers/payment/payment.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.routes.js +22 -8
- package/dist/backend/backend/src/controllers/payment/payment.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.types.d.ts +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.types.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.types.js +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.types.js.map +1 -1
- package/dist/backend/backend/src/controllers/request-types.d.ts +2 -2
- package/dist/backend/backend/src/controllers/request-types.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/system/scheduler.controller.d.ts +19 -0
- package/dist/backend/backend/src/controllers/system/scheduler.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/system/scheduler.controller.js +51 -0
- package/dist/backend/backend/src/controllers/system/scheduler.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/team/team.controller.js +13 -5
- package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/template/template.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/template/template.controller.js +2 -2
- package/dist/backend/backend/src/controllers/template/template.controller.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +33 -30
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.js +4 -12
- package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
- package/dist/backend/backend/src/routes/modules/log-rotation.routes.d.ts +8 -0
- package/dist/backend/backend/src/routes/modules/log-rotation.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/routes/modules/log-rotation.routes.js +62 -0
- package/dist/backend/backend/src/routes/modules/log-rotation.routes.js.map +1 -0
- package/dist/backend/backend/src/routes/modules/scheduler.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/routes/modules/scheduler.routes.js +2 -0
- package/dist/backend/backend/src/routes/modules/scheduler.routes.js.map +1 -1
- package/dist/backend/backend/src/scripts/run-log-rotation.d.ts +3 -0
- package/dist/backend/backend/src/scripts/run-log-rotation.d.ts.map +1 -0
- package/dist/backend/backend/src/scripts/run-log-rotation.js +31 -0
- package/dist/backend/backend/src/scripts/run-log-rotation.js.map +1 -0
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +10 -0
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.js +85 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/auditor-scheduler.service.d.ts +150 -0
- package/dist/backend/backend/src/services/agent/auditor-scheduler.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/auditor-scheduler.service.js +307 -0
- package/dist/backend/backend/src/services/agent/auditor-scheduler.service.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +105 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +199 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/api-client.d.ts +68 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/api-client.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/api-client.js +131 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/api-client.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts +29 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js +229 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts +127 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js +242 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts +95 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.js +130 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts +14 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/index.js +14 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/index.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts +57 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js +93 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.d.ts +13 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.js +91 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts +29 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js +519 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts +159 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/types.js +63 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/types.js.map +1 -0
- package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts +56 -1
- package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +273 -215
- package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-service.factory.js +8 -8
- package/dist/backend/backend/src/services/agent/runtime-service.factory.js.map +1 -1
- package/dist/backend/backend/src/services/chat/chat.service.d.ts +7 -1
- package/dist/backend/backend/src/services/chat/chat.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/chat/chat.service.js +14 -5
- package/dist/backend/backend/src/services/chat/chat.service.js.map +1 -1
- package/dist/backend/backend/src/services/cloud/admin-seed.service.d.ts +18 -0
- package/dist/backend/backend/src/services/cloud/admin-seed.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/cloud/admin-seed.service.js +50 -0
- package/dist/backend/backend/src/services/cloud/admin-seed.service.js.map +1 -0
- package/dist/backend/backend/src/services/cloud/cloud-features.d.ts +19 -0
- package/dist/backend/backend/src/services/cloud/cloud-features.d.ts.map +1 -0
- package/dist/backend/backend/src/services/cloud/cloud-features.js +23 -0
- package/dist/backend/backend/src/services/cloud/cloud-features.js.map +1 -0
- package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.d.ts +3 -3
- package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.js +10 -6
- package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.js.map +1 -1
- package/dist/backend/backend/src/services/cloud/mongodb.service.d.ts +45 -0
- package/dist/backend/backend/src/services/cloud/mongodb.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/cloud/mongodb.service.js +76 -0
- package/dist/backend/backend/src/services/cloud/mongodb.service.js.map +1 -0
- package/dist/backend/backend/src/services/cloud/relay-server.service.d.ts +0 -2
- package/dist/backend/backend/src/services/cloud/relay-server.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/cloud/relay-server.service.js +7 -36
- package/dist/backend/backend/src/services/cloud/relay-server.service.js.map +1 -1
- package/dist/backend/backend/src/services/continuation/continuation.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/continuation/continuation.service.js +5 -10
- package/dist/backend/backend/src/services/continuation/continuation.service.js.map +1 -1
- package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts +10 -2
- package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/event-bus/event-bus.service.js +47 -12
- package/dist/backend/backend/src/services/event-bus/event-bus.service.js.map +1 -1
- package/dist/backend/backend/src/services/mcp-server.js +1 -1
- package/dist/backend/backend/src/services/mcp-server.js.map +1 -1
- package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.d.ts +95 -22
- package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.d.ts.map +1 -1
- package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.js +284 -60
- package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.js.map +1 -1
- package/dist/backend/backend/src/services/messaging/message-queue.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/messaging/message-queue.service.js +2 -1
- package/dist/backend/backend/src/services/messaging/message-queue.service.js.map +1 -1
- package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/messaging/queue-processor.service.js +22 -4
- package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
- package/dist/backend/backend/src/services/messaging/response-router.service.d.ts +8 -0
- package/dist/backend/backend/src/services/messaging/response-router.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/messaging/response-router.service.js +42 -0
- package/dist/backend/backend/src/services/messaging/response-router.service.js.map +1 -1
- package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.js +6 -0
- package/dist/backend/backend/src/services/orchestrator/orchestrator-restart.service.js.map +1 -1
- package/dist/backend/backend/src/services/payment/stripe.service.d.ts +4 -43
- package/dist/backend/backend/src/services/payment/stripe.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/payment/stripe.service.js +56 -180
- package/dist/backend/backend/src/services/payment/stripe.service.js.map +1 -1
- package/dist/backend/backend/src/services/session/index.d.ts +2 -0
- package/dist/backend/backend/src/services/session/index.d.ts.map +1 -1
- package/dist/backend/backend/src/services/session/index.js +2 -0
- package/dist/backend/backend/src/services/session/index.js.map +1 -1
- package/dist/backend/backend/src/services/session/log-rotation.service.d.ts +163 -0
- package/dist/backend/backend/src/services/session/log-rotation.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/session/log-rotation.service.js +362 -0
- package/dist/backend/backend/src/services/session/log-rotation.service.js.map +1 -0
- package/dist/backend/backend/src/services/settings/settings.service.js +1 -1
- package/dist/backend/backend/src/services/settings/settings.service.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +11 -0
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +83 -1
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
- package/dist/backend/backend/src/services/template/template.service.d.ts +9 -44
- package/dist/backend/backend/src/services/template/template.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/template/template.service.js +7 -80
- package/dist/backend/backend/src/services/template/template.service.js.map +1 -1
- package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts +35 -0
- package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/workflow/scheduler.service.js +133 -0
- package/dist/backend/backend/src/services/workflow/scheduler.service.js.map +1 -1
- package/dist/backend/backend/src/types/chat.types.d.ts +1 -1
- package/dist/backend/backend/src/types/chat.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/chat.types.js +21 -17
- package/dist/backend/backend/src/types/chat.types.js.map +1 -1
- package/dist/backend/backend/src/types/event-bus.types.d.ts +31 -0
- package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/event-bus.types.js +50 -0
- package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
- package/dist/backend/backend/src/types/index.d.ts +1 -1
- package/dist/backend/backend/src/types/index.d.ts.map +1 -1
- package/dist/backend/backend/src/types/messaging.types.d.ts +4 -0
- package/dist/backend/backend/src/types/messaging.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/messaging.types.js.map +1 -1
- package/dist/backend/backend/src/types/settings.types.d.ts +1 -1
- package/dist/backend/backend/src/types/settings.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/settings.types.js +4 -4
- package/dist/backend/backend/src/types/settings.types.js.map +1 -1
- package/dist/backend/backend/src/types/team-template.types.d.ts +2 -2
- package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/team-template.types.js +1 -1
- package/dist/backend/backend/src/types/team-template.types.js.map +1 -1
- package/dist/backend/backend/src/websocket/terminal.gateway.d.ts +4 -4
- package/dist/backend/backend/src/websocket/terminal.gateway.d.ts.map +1 -1
- package/dist/backend/backend/src/websocket/terminal.gateway.js +9 -6
- package/dist/backend/backend/src/websocket/terminal.gateway.js.map +1 -1
- package/dist/backend/config/constants.d.ts +4 -2
- package/dist/backend/config/constants.d.ts.map +1 -1
- package/dist/backend/config/constants.js +4 -2
- package/dist/backend/config/constants.js.map +1 -1
- package/dist/cli/backend/src/constants.d.ts +77 -13
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +78 -16
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/mcp-server.js +1 -1
- package/dist/cli/backend/src/services/mcp-server.js.map +1 -1
- package/dist/cli/backend/src/types/chat.types.d.ts +1 -1
- package/dist/cli/backend/src/types/chat.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/chat.types.js +21 -17
- package/dist/cli/backend/src/types/chat.types.js.map +1 -1
- package/dist/cli/backend/src/types/index.d.ts +1 -1
- package/dist/cli/backend/src/types/index.d.ts.map +1 -1
- package/dist/cli/backend/src/types/settings.types.d.ts +1 -1
- package/dist/cli/backend/src/types/settings.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/settings.types.js +4 -4
- package/dist/cli/backend/src/types/settings.types.js.map +1 -1
- package/dist/cli/config/constants.d.ts +4 -2
- package/dist/cli/config/constants.d.ts.map +1 -1
- package/dist/cli/config/constants.js +4 -2
- package/dist/cli/config/constants.js.map +1 -1
- package/frontend/dist/assets/index-5cf8820f.js +4919 -0
- package/frontend/dist/assets/index-dee3a3a9.css +33 -0
- package/frontend/dist/index.html +2 -2
- package/package.json +15 -9
- package/frontend/dist/assets/index-510ab719.css +0 -33
- package/frontend/dist/assets/index-935cd846.js +0 -4961
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Relay REST Controller
|
|
2
|
+
* Relay REST Controller (Client-side only)
|
|
3
3
|
*
|
|
4
|
-
* Handles HTTP requests for
|
|
5
|
-
*
|
|
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
|
|
199
|
-
* relay client state
|
|
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":"AAAA
|
|
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
|
|
4
|
+
* Router configuration for relay client endpoints.
|
|
5
|
+
* Server-side relay management has been moved to the cloud services repository.
|
|
5
6
|
*
|
|
6
|
-
*
|
|
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
|
|
17
|
+
* Creates the relay router with client-side relay endpoints.
|
|
21
18
|
*
|
|
22
|
-
*
|
|
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
|
|
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
|
|
4
|
+
* Router configuration for relay client endpoints.
|
|
5
|
+
* Server-side relay management has been moved to the cloud services repository.
|
|
5
6
|
*
|
|
6
|
-
*
|
|
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 {
|
|
20
|
-
import {
|
|
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
|
|
19
|
+
* Creates the relay router with client-side relay endpoints.
|
|
23
20
|
*
|
|
24
|
-
*
|
|
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
|
-
|
|
33
|
-
router.post('/
|
|
34
|
-
router.get('/
|
|
35
|
-
|
|
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
|
|
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
|
|
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 {
|
|
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
|
|
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
|
|
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 {
|
|
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
|
|
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
|
|
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
|
|
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)
|
package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template-marketplace.routes.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/marketplace/template-marketplace.routes.ts"],"names":[],"mappings":"AAAA
|
|
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"}
|
|
@@ -7,13 +7,17 @@
|
|
|
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
|
|
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
|
*/
|
|
14
18
|
import { Router } from 'express';
|
|
15
19
|
import { handleCreateTemplate, handleListTemplates, handleGetTemplate, handleUpdateTemplate, handleArchiveTemplate, handleAddVersion, handleListVersions, handlePublishTemplate, } from './template-marketplace.controller.js';
|
|
16
|
-
import {
|
|
20
|
+
import { requireCloudConnection } from '../../services/cloud/cloud-auth.middleware.js';
|
|
17
21
|
/**
|
|
18
22
|
* Creates the template marketplace router with all template endpoints.
|
|
19
23
|
*
|
|
@@ -22,7 +26,7 @@ import { requireSupabaseAuth } from '../../services/cloud/auth/supabase-auth.mid
|
|
|
22
26
|
* - GET /:id - Get template details
|
|
23
27
|
* - GET /:id/versions - List template versions
|
|
24
28
|
*
|
|
25
|
-
* Protected endpoints (require
|
|
29
|
+
* Protected endpoints (require auth):
|
|
26
30
|
* - POST / - Create a new template
|
|
27
31
|
* - PUT /:id - Update template metadata
|
|
28
32
|
* - DELETE /:id - Archive template (soft delete)
|
|
@@ -36,15 +40,15 @@ export function createTemplateMarketplaceRouter() {
|
|
|
36
40
|
// Public collection routes (browse marketplace)
|
|
37
41
|
router.get('/', handleListTemplates);
|
|
38
42
|
// Protected collection routes (require auth to create)
|
|
39
|
-
router.post('/',
|
|
43
|
+
router.post('/', requireCloudConnection, handleCreateTemplate);
|
|
40
44
|
// Public item routes (browse details)
|
|
41
45
|
router.get('/:id', handleGetTemplate);
|
|
42
46
|
router.get('/:id/versions', handleListVersions);
|
|
43
47
|
// Protected item routes (require auth to modify)
|
|
44
|
-
router.put('/:id',
|
|
45
|
-
router.delete('/:id',
|
|
46
|
-
router.post('/:id/versions',
|
|
47
|
-
router.post('/:id/publish',
|
|
48
|
+
router.put('/:id', requireCloudConnection, handleUpdateTemplate);
|
|
49
|
+
router.delete('/:id', requireCloudConnection, handleArchiveTemplate);
|
|
50
|
+
router.post('/:id/versions', requireCloudConnection, handleAddVersion);
|
|
51
|
+
router.post('/:id/publish', requireCloudConnection, handlePublishTemplate);
|
|
48
52
|
return router;
|
|
49
53
|
}
|
|
50
54
|
//# sourceMappingURL=template-marketplace.routes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template-marketplace.routes.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/marketplace/template-marketplace.routes.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"template-marketplace.routes.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/marketplace/template-marketplace.routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EACN,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,GACrB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AAEvF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,+BAA+B;IAC9C,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,gDAAgD;IAChD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IAErC,uDAAuD;IACvD,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;IAE/D,sCAAsC;IACtC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACtC,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC;IAEhD,iDAAiD;IACjD,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;IACjE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,EAAE,qBAAqB,CAAC,CAAC;IACrE,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,sBAAsB,EAAE,gBAAgB,CAAC,CAAC;IACvE,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,sBAAsB,EAAE,qBAAqB,CAAC,CAAC;IAE3E,OAAO,MAAM,CAAC;AACf,CAAC"}
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
import { Router } from 'express';
|
|
2
|
+
import type { MessageQueueService } from '../../services/messaging/message-queue.service.js';
|
|
3
|
+
/**
|
|
4
|
+
* Set the message queue service for Google Chat Pub/Sub incoming message handling.
|
|
5
|
+
*
|
|
6
|
+
* @param service - The MessageQueueService instance
|
|
7
|
+
*/
|
|
8
|
+
export declare function setMessengerRouterQueueService(service: MessageQueueService): void;
|
|
2
9
|
/**
|
|
3
10
|
* Create the messenger API router.
|
|
4
11
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messenger.routes.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/messaging/messenger.routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAmC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"messenger.routes.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/messaging/messenger.routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAmC,MAAM,SAAS,CAAC;AAUlE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AAS7F;;;;GAIG;AACH,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAEjF;AAkFD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CA4F9C"}
|
|
@@ -2,7 +2,7 @@ import { Router } from 'express';
|
|
|
2
2
|
import { promises as fs } from 'fs';
|
|
3
3
|
import path from 'path';
|
|
4
4
|
import os from 'os';
|
|
5
|
-
import { CREWLY_CONSTANTS } from '../../constants.js';
|
|
5
|
+
import { CREWLY_CONSTANTS, MESSAGE_SOURCES } from '../../constants.js';
|
|
6
6
|
import { MessengerRegistryService } from '../../services/messaging/messenger-registry.service.js';
|
|
7
7
|
import { SlackMessengerAdapter } from '../../services/messaging/adapters/slack-messenger.adapter.js';
|
|
8
8
|
import { TelegramMessengerAdapter } from '../../services/messaging/adapters/telegram-messenger.adapter.js';
|
|
@@ -10,6 +10,16 @@ import { DiscordMessengerAdapter } from '../../services/messaging/adapters/disco
|
|
|
10
10
|
import { GoogleChatMessengerAdapter } from '../../services/messaging/adapters/google-chat-messenger.adapter.js';
|
|
11
11
|
/** Known messenger platforms for input validation. */
|
|
12
12
|
const VALID_PLATFORMS = new Set(['slack', 'telegram', 'discord', 'google-chat']);
|
|
13
|
+
/** Module-level reference to the message queue service, set externally. */
|
|
14
|
+
let messageQueueService = null;
|
|
15
|
+
/**
|
|
16
|
+
* Set the message queue service for Google Chat Pub/Sub incoming message handling.
|
|
17
|
+
*
|
|
18
|
+
* @param service - The MessageQueueService instance
|
|
19
|
+
*/
|
|
20
|
+
export function setMessengerRouterQueueService(service) {
|
|
21
|
+
messageQueueService = service;
|
|
22
|
+
}
|
|
13
23
|
/**
|
|
14
24
|
* Validate that a string is a known messenger platform.
|
|
15
25
|
*
|
|
@@ -43,6 +53,49 @@ function registerDefaultAdapters(registry) {
|
|
|
43
53
|
if (!registry.get('google-chat'))
|
|
44
54
|
registry.register(new GoogleChatMessengerAdapter());
|
|
45
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* Create an incoming message callback for Google Chat Pub/Sub mode.
|
|
58
|
+
*
|
|
59
|
+
* When a message arrives from the Pub/Sub subscription, this callback enqueues
|
|
60
|
+
* it into the MessageQueueService with source 'google_chat'. The queue processor
|
|
61
|
+
* will deliver it to the orchestrator, and the response router will resolve
|
|
62
|
+
* the reply back to Google Chat via the adapter.
|
|
63
|
+
*
|
|
64
|
+
* Thread tracking: the threadId from the incoming message is stored in
|
|
65
|
+
* sourceMetadata so the response can be posted back to the same Chat thread.
|
|
66
|
+
*
|
|
67
|
+
* @param queueService - The message queue service to enqueue into
|
|
68
|
+
* @param adapter - The Google Chat adapter for sending replies
|
|
69
|
+
* @returns Callback function for incoming messages
|
|
70
|
+
*/
|
|
71
|
+
function createGoogleChatIncomingCallback(queueService, adapter) {
|
|
72
|
+
return (msg) => {
|
|
73
|
+
// Create a resolve callback that sends the reply back to the Chat thread
|
|
74
|
+
const replyPromise = new Promise((resolve) => {
|
|
75
|
+
const sourceMetadata = {
|
|
76
|
+
channelId: msg.channelId,
|
|
77
|
+
userId: msg.userId,
|
|
78
|
+
threadId: msg.threadId,
|
|
79
|
+
googleChatResolve: resolve,
|
|
80
|
+
};
|
|
81
|
+
queueService.enqueue({
|
|
82
|
+
content: msg.text,
|
|
83
|
+
conversationId: msg.conversationId,
|
|
84
|
+
source: MESSAGE_SOURCES.GOOGLE_CHAT,
|
|
85
|
+
sourceMetadata,
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
// When the orchestrator responds, send it back to the same Chat thread
|
|
89
|
+
replyPromise.then(async (response) => {
|
|
90
|
+
try {
|
|
91
|
+
await adapter.sendMessage(msg.channelId, response, { threadId: msg.threadId });
|
|
92
|
+
}
|
|
93
|
+
catch {
|
|
94
|
+
// Reply send failure is logged by the adapter — no further action needed
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
};
|
|
98
|
+
}
|
|
46
99
|
/**
|
|
47
100
|
* Create the messenger API router.
|
|
48
101
|
*
|
|
@@ -70,10 +123,18 @@ export function createMessengerRouter() {
|
|
|
70
123
|
res.status(404).json({ success: false, error: `Unsupported platform: ${platform}` });
|
|
71
124
|
return;
|
|
72
125
|
}
|
|
73
|
-
|
|
126
|
+
const config = { ...(req.body || {}) };
|
|
127
|
+
// For Google Chat Pub/Sub mode, inject the incoming message callback
|
|
128
|
+
if (platform === 'google-chat' && config.subscriptionName && config.projectId && messageQueueService) {
|
|
129
|
+
const gchatAdapter = adapter;
|
|
130
|
+
config.onIncomingMessage = createGoogleChatIncomingCallback(messageQueueService, gchatAdapter);
|
|
131
|
+
}
|
|
132
|
+
await adapter.initialize(config);
|
|
133
|
+
// Persist credentials (excluding the callback function)
|
|
134
|
+
const credentialsToSave = { ...(req.body || {}) };
|
|
74
135
|
const crewlyDir = path.join(os.homedir(), CREWLY_CONSTANTS.PATHS.CREWLY_HOME);
|
|
75
136
|
await fs.mkdir(crewlyDir, { recursive: true });
|
|
76
|
-
await fs.writeFile(getCredentialPath(platform), JSON.stringify(
|
|
137
|
+
await fs.writeFile(getCredentialPath(platform), JSON.stringify(credentialsToSave, null, 2) + '\n', 'utf8');
|
|
77
138
|
res.json({ success: true, data: adapter.getStatus(), message: `${platform} connected` });
|
|
78
139
|
}
|
|
79
140
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messenger.routes.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/messaging/messenger.routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAmC,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"messenger.routes.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/messaging/messenger.routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.controller.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/monitoring/terminal.controller.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAa5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"terminal.controller.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/monitoring/terminal.controller.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAa5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAS9C;;;;;;;;;;GAUG;AACH,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBrF;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA6C9E;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA+EhF;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA0J/E;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAsFlF;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAqFhF;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAwD5E;AAiCD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA8JjG;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA8D/E"}
|