crewly 1.0.7 → 1.0.8
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/README.md +50 -3
- package/config/roles/architect/prompt.md +11 -0
- package/config/roles/backend-developer/prompt.md +11 -0
- package/config/roles/designer/prompt.md +11 -0
- package/config/roles/developer/prompt.md +18 -4
- package/config/roles/frontend-developer/prompt.md +11 -0
- package/config/roles/fullstack-dev/prompt.md +11 -0
- package/config/roles/generalist/prompt.md +11 -0
- package/config/roles/orchestrator/prompt.md +27 -0
- package/config/roles/product-manager/prompt.md +18 -4
- package/config/roles/qa/prompt.md +11 -0
- package/config/roles/qa-engineer/prompt.md +11 -0
- package/config/roles/sales/prompt.md +11 -0
- package/config/roles/support/prompt.md +11 -0
- package/config/roles/tpm/prompt.md +11 -0
- package/config/skills/orchestrator/complete-task/execute.sh +1 -0
- package/config/templates/agent-claude-md.md +16 -0
- package/config/templates/research-team.json +22 -0
- package/config/templates/startup-team.json +22 -0
- package/config/templates/web-dev-team.json +22 -0
- package/dist/backend/backend/src/constants.d.ts +61 -1
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +65 -7
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts +7 -0
- package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/task-management/task-management.controller.js +174 -4
- package/dist/backend/backend/src/controllers/task-management/task-management.controller.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +34 -0
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/routes/modules/task-management.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/routes/modules/task-management.routes.js +2 -0
- package/dist/backend/backend/src/routes/modules/task-management.routes.js.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +8 -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 +75 -17
- package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/context-window-monitor.service.d.ts +222 -0
- package/dist/backend/backend/src/services/agent/context-window-monitor.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/context-window-monitor.service.js +621 -0
- package/dist/backend/backend/src/services/agent/context-window-monitor.service.js.map +1 -0
- package/dist/backend/backend/src/services/index.d.ts +3 -0
- package/dist/backend/backend/src/services/index.d.ts.map +1 -1
- package/dist/backend/backend/src/services/index.js +5 -0
- package/dist/backend/backend/src/services/index.js.map +1 -1
- package/dist/backend/backend/src/services/mcp-client.d.ts +233 -0
- package/dist/backend/backend/src/services/mcp-client.d.ts.map +1 -0
- package/dist/backend/backend/src/services/mcp-client.js +297 -0
- package/dist/backend/backend/src/services/mcp-client.js.map +1 -0
- package/dist/backend/backend/src/services/mcp-server.d.ts +167 -0
- package/dist/backend/backend/src/services/mcp-server.d.ts.map +1 -0
- package/dist/backend/backend/src/services/mcp-server.js +586 -0
- package/dist/backend/backend/src/services/mcp-server.js.map +1 -0
- package/dist/backend/backend/src/services/messaging/message-queue.service.d.ts +2 -0
- 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 +6 -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 +10 -0
- 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 +94 -38
- package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
- package/dist/backend/backend/src/services/quality/index.d.ts +1 -0
- package/dist/backend/backend/src/services/quality/index.d.ts.map +1 -1
- package/dist/backend/backend/src/services/quality/index.js +1 -0
- package/dist/backend/backend/src/services/quality/index.js.map +1 -1
- package/dist/backend/backend/src/services/quality/task-output-validator.service.d.ts +84 -0
- package/dist/backend/backend/src/services/quality/task-output-validator.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/quality/task-output-validator.service.js +163 -0
- package/dist/backend/backend/src/services/quality/task-output-validator.service.js.map +1 -0
- package/dist/backend/backend/src/services/runtime-adapter.d.ts +234 -0
- package/dist/backend/backend/src/services/runtime-adapter.d.ts.map +1 -0
- package/dist/backend/backend/src/services/runtime-adapter.js +180 -0
- package/dist/backend/backend/src/services/runtime-adapter.js.map +1 -0
- package/dist/backend/backend/src/types/event-bus.types.d.ts +2 -2
- package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/event-bus.types.js +2 -0
- package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
- package/dist/backend/backend/src/types/index.d.ts +1 -0
- package/dist/backend/backend/src/types/index.d.ts.map +1 -1
- package/dist/backend/backend/src/types/index.js +2 -0
- package/dist/backend/backend/src/types/index.js.map +1 -1
- package/dist/backend/backend/src/types/messaging.types.d.ts +9 -6
- package/dist/backend/backend/src/types/messaging.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/messaging.types.js +10 -3
- package/dist/backend/backend/src/types/messaging.types.js.map +1 -1
- package/dist/backend/backend/src/types/task-output.types.d.ts +78 -0
- package/dist/backend/backend/src/types/task-output.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/task-output.types.js +27 -0
- package/dist/backend/backend/src/types/task-output.types.js.map +1 -0
- package/dist/backend/backend/src/websocket/terminal.gateway.d.ts +13 -0
- package/dist/backend/backend/src/websocket/terminal.gateway.d.ts.map +1 -1
- package/dist/backend/backend/src/websocket/terminal.gateway.js +12 -0
- package/dist/backend/backend/src/websocket/terminal.gateway.js.map +1 -1
- package/dist/cli/backend/src/constants.d.ts +751 -0
- package/dist/cli/backend/src/constants.d.ts.map +1 -0
- package/dist/cli/backend/src/constants.js +550 -0
- package/dist/cli/backend/src/constants.js.map +1 -0
- package/dist/cli/backend/src/models/Project.d.ts +18 -0
- package/dist/cli/backend/src/models/Project.d.ts.map +1 -0
- package/dist/cli/backend/src/models/Project.js +70 -0
- package/dist/cli/backend/src/models/Project.js.map +1 -0
- package/dist/cli/backend/src/models/ScheduledMessage.d.ts +27 -0
- package/dist/cli/backend/src/models/ScheduledMessage.d.ts.map +1 -0
- package/dist/cli/backend/src/models/ScheduledMessage.js +50 -0
- package/dist/cli/backend/src/models/ScheduledMessage.js.map +1 -0
- package/dist/cli/backend/src/models/Team.d.ts +20 -0
- package/dist/cli/backend/src/models/Team.d.ts.map +1 -0
- package/dist/cli/backend/src/models/Team.js +120 -0
- package/dist/cli/backend/src/models/Team.js.map +1 -0
- package/dist/cli/backend/src/models/Ticket.d.ts +24 -0
- package/dist/cli/backend/src/models/Ticket.d.ts.map +1 -0
- package/dist/cli/backend/src/models/Ticket.js +102 -0
- package/dist/cli/backend/src/models/Ticket.js.map +1 -0
- package/dist/cli/backend/src/models/index.d.ts +5 -0
- package/dist/cli/backend/src/models/index.d.ts.map +1 -0
- package/dist/cli/backend/src/models/index.js +5 -0
- package/dist/cli/backend/src/models/index.js.map +1 -0
- package/dist/cli/backend/src/services/core/config.service.d.ts +91 -0
- package/dist/cli/backend/src/services/core/config.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/core/config.service.js +246 -0
- package/dist/cli/backend/src/services/core/config.service.js.map +1 -0
- package/dist/cli/backend/src/services/core/logger.service.d.ts +70 -0
- package/dist/cli/backend/src/services/core/logger.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/core/logger.service.js +350 -0
- package/dist/cli/backend/src/services/core/logger.service.js.map +1 -0
- package/dist/cli/backend/src/services/core/storage.service.d.ts +269 -0
- package/dist/cli/backend/src/services/core/storage.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/core/storage.service.js +1406 -0
- package/dist/cli/backend/src/services/core/storage.service.js.map +1 -0
- package/dist/cli/backend/src/services/core/teams-backup.service.d.ts +92 -0
- package/dist/cli/backend/src/services/core/teams-backup.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/core/teams-backup.service.js +120 -0
- package/dist/cli/backend/src/services/core/teams-backup.service.js.map +1 -0
- package/dist/cli/backend/src/services/knowledge/knowledge-search.service.d.ts +125 -0
- package/dist/cli/backend/src/services/knowledge/knowledge-search.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/knowledge/knowledge-search.service.js +247 -0
- package/dist/cli/backend/src/services/knowledge/knowledge-search.service.js.map +1 -0
- package/dist/cli/backend/src/services/knowledge/knowledge.service.d.ts +153 -0
- package/dist/cli/backend/src/services/knowledge/knowledge.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/knowledge/knowledge.service.js +409 -0
- package/dist/cli/backend/src/services/knowledge/knowledge.service.js.map +1 -0
- package/dist/cli/backend/src/services/mcp-server.d.ts +167 -0
- package/dist/cli/backend/src/services/mcp-server.d.ts.map +1 -0
- package/dist/cli/backend/src/services/mcp-server.js +586 -0
- package/dist/cli/backend/src/services/mcp-server.js.map +1 -0
- package/dist/cli/backend/src/services/memory/agent-memory.service.d.ts +259 -0
- package/dist/cli/backend/src/services/memory/agent-memory.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/memory/agent-memory.service.js +539 -0
- package/dist/cli/backend/src/services/memory/agent-memory.service.js.map +1 -0
- package/dist/cli/backend/src/services/memory/memory.service.d.ts +306 -0
- package/dist/cli/backend/src/services/memory/memory.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/memory/memory.service.js +517 -0
- package/dist/cli/backend/src/services/memory/memory.service.js.map +1 -0
- package/dist/cli/backend/src/services/memory/project-memory.service.d.ts +252 -0
- package/dist/cli/backend/src/services/memory/project-memory.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/memory/project-memory.service.js +600 -0
- package/dist/cli/backend/src/services/memory/project-memory.service.js.map +1 -0
- package/dist/cli/backend/src/types/auto-assign.types.d.ts +271 -0
- package/dist/cli/backend/src/types/auto-assign.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/auto-assign.types.js +136 -0
- package/dist/cli/backend/src/types/auto-assign.types.js.map +1 -0
- package/dist/cli/backend/src/types/budget.types.d.ts +217 -0
- package/dist/cli/backend/src/types/budget.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/budget.types.js +82 -0
- package/dist/cli/backend/src/types/budget.types.js.map +1 -0
- package/dist/cli/backend/src/types/chat.types.d.ts +550 -0
- package/dist/cli/backend/src/types/chat.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/chat.types.js +743 -0
- package/dist/cli/backend/src/types/chat.types.js.map +1 -0
- package/dist/cli/backend/src/types/continuation.types.d.ts +237 -0
- package/dist/cli/backend/src/types/continuation.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/continuation.types.js +10 -0
- package/dist/cli/backend/src/types/continuation.types.js.map +1 -0
- package/dist/cli/backend/src/types/index.d.ts +164 -0
- package/dist/cli/backend/src/types/index.d.ts.map +1 -0
- package/dist/cli/backend/src/types/index.js +25 -0
- package/dist/cli/backend/src/types/index.js.map +1 -0
- package/dist/cli/backend/src/types/knowledge.types.d.ts +195 -0
- package/dist/cli/backend/src/types/knowledge.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/knowledge.types.js +38 -0
- package/dist/cli/backend/src/types/knowledge.types.js.map +1 -0
- package/dist/cli/backend/src/types/memory.types.d.ts +587 -0
- package/dist/cli/backend/src/types/memory.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/memory.types.js +47 -0
- package/dist/cli/backend/src/types/memory.types.js.map +1 -0
- package/dist/cli/backend/src/types/quality-gate.types.d.ts +171 -0
- package/dist/cli/backend/src/types/quality-gate.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/quality-gate.types.js +42 -0
- package/dist/cli/backend/src/types/quality-gate.types.js.map +1 -0
- package/dist/cli/backend/src/types/role.types.d.ts +260 -0
- package/dist/cli/backend/src/types/role.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/role.types.js +238 -0
- package/dist/cli/backend/src/types/role.types.js.map +1 -0
- package/dist/cli/backend/src/types/scheduler.types.d.ts +254 -0
- package/dist/cli/backend/src/types/scheduler.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/scheduler.types.js +32 -0
- package/dist/cli/backend/src/types/scheduler.types.js.map +1 -0
- package/dist/cli/backend/src/types/settings.types.d.ts +178 -0
- package/dist/cli/backend/src/types/settings.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/settings.types.js +206 -0
- package/dist/cli/backend/src/types/settings.types.js.map +1 -0
- package/dist/cli/backend/src/types/skill.types.d.ts +515 -0
- package/dist/cli/backend/src/types/skill.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/skill.types.js +481 -0
- package/dist/cli/backend/src/types/skill.types.js.map +1 -0
- package/dist/cli/backend/src/types/sop.types.d.ts +224 -0
- package/dist/cli/backend/src/types/sop.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/sop.types.js +85 -0
- package/dist/cli/backend/src/types/sop.types.js.map +1 -0
- package/dist/cli/backend/src/types/task-output.types.d.ts +78 -0
- package/dist/cli/backend/src/types/task-output.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/task-output.types.js +27 -0
- package/dist/cli/backend/src/types/task-output.types.js.map +1 -0
- package/dist/cli/backend/src/utils/file-io.utils.d.ts +102 -0
- package/dist/cli/backend/src/utils/file-io.utils.d.ts.map +1 -0
- package/dist/cli/backend/src/utils/file-io.utils.js +214 -0
- package/dist/cli/backend/src/utils/file-io.utils.js.map +1 -0
- package/dist/cli/backend/src/utils/terminal-output.utils.d.ts +54 -0
- package/dist/cli/backend/src/utils/terminal-output.utils.d.ts.map +1 -0
- package/dist/cli/backend/src/utils/terminal-output.utils.js +97 -0
- package/dist/cli/backend/src/utils/terminal-output.utils.js.map +1 -0
- package/dist/cli/cli/src/commands/mcp-server.d.ts +38 -0
- package/dist/cli/cli/src/commands/mcp-server.d.ts.map +1 -0
- package/dist/cli/cli/src/commands/mcp-server.js +49 -0
- package/dist/cli/cli/src/commands/mcp-server.js.map +1 -0
- package/dist/cli/cli/src/commands/onboard.d.ts +61 -7
- package/dist/cli/cli/src/commands/onboard.d.ts.map +1 -1
- package/dist/cli/cli/src/commands/onboard.js +192 -19
- package/dist/cli/cli/src/commands/onboard.js.map +1 -1
- package/dist/cli/cli/src/commands/publish.d.ts +27 -0
- package/dist/cli/cli/src/commands/publish.d.ts.map +1 -0
- package/dist/cli/cli/src/commands/publish.js +69 -0
- package/dist/cli/cli/src/commands/publish.js.map +1 -0
- package/dist/cli/cli/src/index.js +14 -0
- package/dist/cli/cli/src/index.js.map +1 -1
- package/dist/cli/cli/src/utils/archive-creator.d.ts +82 -0
- package/dist/cli/cli/src/utils/archive-creator.d.ts.map +1 -0
- package/dist/cli/cli/src/utils/archive-creator.js +105 -0
- package/dist/cli/cli/src/utils/archive-creator.js.map +1 -0
- package/dist/cli/cli/src/utils/package-validator.d.ts +62 -0
- package/dist/cli/cli/src/utils/package-validator.d.ts.map +1 -0
- package/dist/cli/cli/src/utils/package-validator.js +122 -0
- package/dist/cli/cli/src/utils/package-validator.js.map +1 -0
- package/dist/cli/cli/src/utils/templates.d.ts +71 -0
- package/dist/cli/cli/src/utils/templates.d.ts.map +1 -0
- package/dist/cli/cli/src/utils/templates.js +91 -0
- package/dist/cli/cli/src/utils/templates.js.map +1 -0
- package/frontend/dist/assets/{index-523c7fce.js → index-68d1eb5a.js} +71 -71
- package/frontend/dist/assets/{index-4c050f52.css → index-c5043a83.css} +1 -1
- package/frontend/dist/assets/nunito-cyrillic-400-normal-e44e669f.woff2 +0 -0
- package/frontend/dist/assets/nunito-cyrillic-400-normal-ff8e8bdd.woff +0 -0
- package/frontend/dist/assets/nunito-cyrillic-500-normal-2159679b.woff +0 -0
- package/frontend/dist/assets/nunito-cyrillic-500-normal-61a3b80e.woff2 +0 -0
- package/frontend/dist/assets/nunito-cyrillic-600-normal-ac046097.woff +0 -0
- package/frontend/dist/assets/nunito-cyrillic-600-normal-e61eb97b.woff2 +0 -0
- package/frontend/dist/assets/nunito-cyrillic-700-normal-8fcefcc9.woff2 +0 -0
- package/frontend/dist/assets/nunito-cyrillic-700-normal-b9684104.woff +0 -0
- package/frontend/dist/assets/nunito-cyrillic-800-normal-40253beb.woff +0 -0
- package/frontend/dist/assets/nunito-cyrillic-800-normal-d80292de.woff2 +0 -0
- package/frontend/dist/assets/nunito-cyrillic-ext-400-normal-20d73ae7.woff2 +0 -0
- package/frontend/dist/assets/nunito-cyrillic-ext-400-normal-d48c37c9.woff +0 -0
- package/frontend/dist/assets/nunito-cyrillic-ext-500-normal-16197abd.woff +0 -0
- package/frontend/dist/assets/nunito-cyrillic-ext-500-normal-9dcfe9b5.woff2 +0 -0
- package/frontend/dist/assets/nunito-cyrillic-ext-600-normal-d53e9851.woff2 +0 -0
- package/frontend/dist/assets/nunito-cyrillic-ext-600-normal-e3d0201f.woff +0 -0
- package/frontend/dist/assets/nunito-cyrillic-ext-700-normal-5936f6ac.woff2 +0 -0
- package/frontend/dist/assets/nunito-cyrillic-ext-700-normal-c8c02775.woff +0 -0
- package/frontend/dist/assets/nunito-cyrillic-ext-800-normal-217b8f51.woff +0 -0
- package/frontend/dist/assets/nunito-cyrillic-ext-800-normal-796cf7bd.woff2 +0 -0
- package/frontend/dist/assets/nunito-latin-400-normal-a5906e15.woff2 +0 -0
- package/frontend/dist/assets/nunito-latin-400-normal-b51e7635.woff +0 -0
- package/frontend/dist/assets/nunito-latin-500-normal-23ae3083.woff2 +0 -0
- package/frontend/dist/assets/nunito-latin-500-normal-be14dbc6.woff +0 -0
- package/frontend/dist/assets/nunito-latin-600-normal-06a9c8b3.woff +0 -0
- package/frontend/dist/assets/nunito-latin-600-normal-45f437de.woff2 +0 -0
- package/frontend/dist/assets/nunito-latin-700-normal-ce9107dc.woff +0 -0
- package/frontend/dist/assets/nunito-latin-700-normal-fa89300b.woff2 +0 -0
- package/frontend/dist/assets/nunito-latin-800-normal-0ca02785.woff +0 -0
- package/frontend/dist/assets/nunito-latin-800-normal-2363d3ed.woff2 +0 -0
- package/frontend/dist/assets/nunito-latin-ext-400-normal-67250a41.woff2 +0 -0
- package/frontend/dist/assets/nunito-latin-ext-400-normal-d7e2415e.woff +0 -0
- package/frontend/dist/assets/nunito-latin-ext-500-normal-06f35d1c.woff +0 -0
- package/frontend/dist/assets/nunito-latin-ext-500-normal-343e7adc.woff2 +0 -0
- package/frontend/dist/assets/nunito-latin-ext-600-normal-5a8efd17.woff +0 -0
- package/frontend/dist/assets/nunito-latin-ext-600-normal-a7ba5f4f.woff2 +0 -0
- package/frontend/dist/assets/nunito-latin-ext-700-normal-0a4e4a02.woff2 +0 -0
- package/frontend/dist/assets/nunito-latin-ext-700-normal-0c607961.woff +0 -0
- package/frontend/dist/assets/nunito-latin-ext-800-normal-39f54b55.woff2 +0 -0
- package/frontend/dist/assets/nunito-latin-ext-800-normal-466d0211.woff +0 -0
- package/frontend/dist/assets/nunito-vietnamese-400-normal-2a755616.woff2 +0 -0
- package/frontend/dist/assets/nunito-vietnamese-400-normal-9c01ea9f.woff +0 -0
- package/frontend/dist/assets/nunito-vietnamese-500-normal-452e5e08.woff +0 -0
- package/frontend/dist/assets/nunito-vietnamese-500-normal-dc98d965.woff2 +0 -0
- package/frontend/dist/assets/nunito-vietnamese-600-normal-2ffbb85f.woff +0 -0
- package/frontend/dist/assets/nunito-vietnamese-600-normal-cf95b95d.woff2 +0 -0
- package/frontend/dist/assets/nunito-vietnamese-700-normal-0e29c28c.woff2 +0 -0
- package/frontend/dist/assets/nunito-vietnamese-700-normal-7793b75e.woff +0 -0
- package/frontend/dist/assets/nunito-vietnamese-800-normal-5baf507e.woff +0 -0
- package/frontend/dist/assets/nunito-vietnamese-800-normal-fac6740e.woff2 +0 -0
- package/frontend/dist/index.html +2 -2
- package/package.json +15 -5
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime Adapter Layer
|
|
3
|
+
*
|
|
4
|
+
* Provides a unified, pluggable interface for managing AI runtime sessions.
|
|
5
|
+
* Each adapter encapsulates the full lifecycle of a specific runtime (Claude Code,
|
|
6
|
+
* Gemini CLI, Codex): starting a session, writing input, reading output, and stopping.
|
|
7
|
+
*
|
|
8
|
+
* This replaces the need to coordinate between ISessionBackend, SessionCommandHelper,
|
|
9
|
+
* and RuntimeAgentService manually — the adapter handles it all.
|
|
10
|
+
*
|
|
11
|
+
* @module services/runtime-adapter
|
|
12
|
+
*/
|
|
13
|
+
import { type RuntimeType } from '../constants.js';
|
|
14
|
+
import { RuntimeAgentService } from './agent/runtime-agent.service.abstract.js';
|
|
15
|
+
import { type ISessionBackend, type SessionCommandHelper } from './session/index.js';
|
|
16
|
+
/**
|
|
17
|
+
* Configuration for starting a new agent session via a runtime adapter.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* const config: RuntimeAdapterConfig = {
|
|
22
|
+
* sessionName: 'dev-agent-1',
|
|
23
|
+
* projectPath: '/home/user/my-project',
|
|
24
|
+
* runtimeFlags: ['--chrome'],
|
|
25
|
+
* promptFilePath: '/tmp/prompt.md',
|
|
26
|
+
* };
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export interface RuntimeAdapterConfig {
|
|
30
|
+
/** Unique name for the PTY session */
|
|
31
|
+
sessionName: string;
|
|
32
|
+
/** Working directory for the agent */
|
|
33
|
+
projectPath: string;
|
|
34
|
+
/** Optional CLI flags injected before --dangerously-skip-permissions */
|
|
35
|
+
runtimeFlags?: string[];
|
|
36
|
+
/** Optional path to a system prompt file */
|
|
37
|
+
promptFilePath?: string;
|
|
38
|
+
/** Optional environment variables to set in the session shell */
|
|
39
|
+
env?: Record<string, string>;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Unified interface for AI runtime adapters.
|
|
43
|
+
*
|
|
44
|
+
* Each implementation wraps a specific runtime CLI (Claude Code, Gemini CLI, Codex)
|
|
45
|
+
* and provides a consistent API for managing agent sessions. Adapters handle the
|
|
46
|
+
* full lifecycle: session creation, runtime initialization, I/O, and teardown.
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```typescript
|
|
50
|
+
* const adapter = getRuntimeAdapter('claude-code');
|
|
51
|
+
*
|
|
52
|
+
* await adapter.start({ sessionName: 'agent-1', projectPath: '/project' });
|
|
53
|
+
* await adapter.write('agent-1', 'Hello, build a REST API');
|
|
54
|
+
* const output = await adapter.getOutput('agent-1');
|
|
55
|
+
* await adapter.stop('agent-1');
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
export interface RuntimeAdapter {
|
|
59
|
+
/** The runtime type this adapter handles */
|
|
60
|
+
readonly runtimeType: RuntimeType;
|
|
61
|
+
/** Human-readable display name for this runtime */
|
|
62
|
+
readonly displayName: string;
|
|
63
|
+
/**
|
|
64
|
+
* Start a new agent session.
|
|
65
|
+
*
|
|
66
|
+
* Creates a PTY session, sets environment variables, and launches the
|
|
67
|
+
* runtime CLI with the specified configuration.
|
|
68
|
+
*
|
|
69
|
+
* @param config - Session configuration
|
|
70
|
+
* @throws Error if session creation or runtime initialization fails
|
|
71
|
+
*/
|
|
72
|
+
start(config: RuntimeAdapterConfig): Promise<void>;
|
|
73
|
+
/**
|
|
74
|
+
* Stop an agent session and clean up resources.
|
|
75
|
+
*
|
|
76
|
+
* @param sessionName - Name of the session to stop
|
|
77
|
+
* @throws Error if session does not exist
|
|
78
|
+
*/
|
|
79
|
+
stop(sessionName: string): Promise<void>;
|
|
80
|
+
/**
|
|
81
|
+
* Write data to an agent session's stdin.
|
|
82
|
+
*
|
|
83
|
+
* @param sessionName - Name of the target session
|
|
84
|
+
* @param data - Data to write (sent via the session's shell)
|
|
85
|
+
* @throws Error if session does not exist
|
|
86
|
+
*/
|
|
87
|
+
write(sessionName: string, data: string): Promise<void>;
|
|
88
|
+
/**
|
|
89
|
+
* Get recent output from an agent session.
|
|
90
|
+
*
|
|
91
|
+
* @param sessionName - Name of the target session
|
|
92
|
+
* @param lines - Number of recent lines to capture (default: 50)
|
|
93
|
+
* @returns Captured terminal output as a string
|
|
94
|
+
* @throws Error if session does not exist
|
|
95
|
+
*/
|
|
96
|
+
getOutput(sessionName: string, lines?: number): Promise<string>;
|
|
97
|
+
/**
|
|
98
|
+
* Check if a session is currently running.
|
|
99
|
+
*
|
|
100
|
+
* @param sessionName - Name of the session to check
|
|
101
|
+
* @returns True if the session exists and is active
|
|
102
|
+
*/
|
|
103
|
+
isRunning(sessionName: string): boolean;
|
|
104
|
+
/**
|
|
105
|
+
* Wait for the runtime CLI to become ready after initialization.
|
|
106
|
+
*
|
|
107
|
+
* Polls the session output for runtime-specific ready patterns.
|
|
108
|
+
*
|
|
109
|
+
* @param sessionName - Name of the session to monitor
|
|
110
|
+
* @param timeout - Maximum wait time in milliseconds (default: 60000)
|
|
111
|
+
* @returns True if runtime became ready within timeout, false otherwise
|
|
112
|
+
*/
|
|
113
|
+
waitForReady(sessionName: string, timeout?: number): Promise<boolean>;
|
|
114
|
+
/**
|
|
115
|
+
* Detect if the runtime CLI is currently active in a session.
|
|
116
|
+
*
|
|
117
|
+
* Uses runtime-specific detection strategies (e.g., sending '/' to trigger
|
|
118
|
+
* a command palette and checking for output changes).
|
|
119
|
+
*
|
|
120
|
+
* @param sessionName - Name of the session to check
|
|
121
|
+
* @returns True if the runtime is detected as running
|
|
122
|
+
*/
|
|
123
|
+
detectRuntime(sessionName: string): Promise<boolean>;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Base adapter that delegates to the existing RuntimeAgentService and ISessionBackend.
|
|
127
|
+
*
|
|
128
|
+
* Concrete adapters extend this class and provide their runtime type.
|
|
129
|
+
* The base handles all common operations — subclasses only need to override
|
|
130
|
+
* behavior that differs from the default.
|
|
131
|
+
*/
|
|
132
|
+
declare abstract class BaseRuntimeAdapter implements RuntimeAdapter {
|
|
133
|
+
abstract readonly runtimeType: RuntimeType;
|
|
134
|
+
abstract readonly displayName: string;
|
|
135
|
+
protected sessionBackend: ISessionBackend;
|
|
136
|
+
protected sessionHelper: SessionCommandHelper;
|
|
137
|
+
protected runtimeService: RuntimeAgentService;
|
|
138
|
+
constructor(sessionBackend: ISessionBackend, sessionHelper: SessionCommandHelper, runtimeService: RuntimeAgentService);
|
|
139
|
+
/**
|
|
140
|
+
* Start a new agent session with the runtime CLI.
|
|
141
|
+
*
|
|
142
|
+
* Creates a PTY shell, sets environment variables, and executes the
|
|
143
|
+
* runtime initialization script.
|
|
144
|
+
*
|
|
145
|
+
* @param config - Session start configuration
|
|
146
|
+
*/
|
|
147
|
+
start(config: RuntimeAdapterConfig): Promise<void>;
|
|
148
|
+
/** @inheritdoc */
|
|
149
|
+
stop(sessionName: string): Promise<void>;
|
|
150
|
+
/** @inheritdoc */
|
|
151
|
+
write(sessionName: string, data: string): Promise<void>;
|
|
152
|
+
/** @inheritdoc */
|
|
153
|
+
getOutput(sessionName: string, lines?: number): Promise<string>;
|
|
154
|
+
/** @inheritdoc */
|
|
155
|
+
isRunning(sessionName: string): boolean;
|
|
156
|
+
/** @inheritdoc */
|
|
157
|
+
waitForReady(sessionName: string, timeout?: number): Promise<boolean>;
|
|
158
|
+
/** @inheritdoc */
|
|
159
|
+
detectRuntime(sessionName: string): Promise<boolean>;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Adapter for Anthropic's Claude Code CLI.
|
|
163
|
+
*
|
|
164
|
+
* Full implementation — Claude Code is the default runtime.
|
|
165
|
+
* Handles Claude-specific initialization, detection (slash command palette),
|
|
166
|
+
* and MCP configuration.
|
|
167
|
+
*/
|
|
168
|
+
export declare class ClaudeCodeAdapter extends BaseRuntimeAdapter {
|
|
169
|
+
readonly runtimeType: "claude-code";
|
|
170
|
+
readonly displayName = "Claude Code";
|
|
171
|
+
/**
|
|
172
|
+
* Start a Claude Code session.
|
|
173
|
+
*
|
|
174
|
+
* Extends the base start with Claude-specific post-initialization
|
|
175
|
+
* (MCP server configuration).
|
|
176
|
+
*
|
|
177
|
+
* @param config - Session start configuration
|
|
178
|
+
*/
|
|
179
|
+
start(config: RuntimeAdapterConfig): Promise<void>;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Adapter for Google's Gemini CLI.
|
|
183
|
+
*
|
|
184
|
+
* Stub implementation — basic structure in place for future development.
|
|
185
|
+
* Uses the base adapter behavior which delegates to GeminiRuntimeService.
|
|
186
|
+
*/
|
|
187
|
+
export declare class GeminiCliAdapter extends BaseRuntimeAdapter {
|
|
188
|
+
readonly runtimeType: "gemini-cli";
|
|
189
|
+
readonly displayName = "Gemini CLI";
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Adapter for OpenAI's Codex CLI.
|
|
193
|
+
*
|
|
194
|
+
* Stub implementation — basic structure in place for future development.
|
|
195
|
+
* Uses the base adapter behavior which delegates to CodexRuntimeService.
|
|
196
|
+
*/
|
|
197
|
+
export declare class CodexAdapter extends BaseRuntimeAdapter {
|
|
198
|
+
readonly runtimeType: "codex-cli";
|
|
199
|
+
readonly displayName = "OpenAI Codex";
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Creates a RuntimeAdapter for the specified runtime type.
|
|
203
|
+
*
|
|
204
|
+
* Uses the existing RuntimeServiceFactory and session backend to construct
|
|
205
|
+
* the appropriate adapter. Requires the session backend to be initialized
|
|
206
|
+
* first (via createSessionBackend()).
|
|
207
|
+
*
|
|
208
|
+
* @param runtimeType - The runtime type ('claude-code', 'gemini-cli', 'codex-cli')
|
|
209
|
+
* @param projectRoot - The project root directory (for runtime config resolution)
|
|
210
|
+
* @returns A RuntimeAdapter instance for the specified runtime
|
|
211
|
+
* @throws Error if session backend is not initialized or runtime type is unknown
|
|
212
|
+
*
|
|
213
|
+
* @example
|
|
214
|
+
* ```typescript
|
|
215
|
+
* const adapter = getRuntimeAdapter('claude-code', '/home/user/project');
|
|
216
|
+
* await adapter.start({ sessionName: 'agent-1', projectPath: '/project' });
|
|
217
|
+
* ```
|
|
218
|
+
*/
|
|
219
|
+
export declare function getRuntimeAdapter(runtimeType: RuntimeType, projectRoot: string): RuntimeAdapter;
|
|
220
|
+
/**
|
|
221
|
+
* Returns the list of all supported runtime types.
|
|
222
|
+
*
|
|
223
|
+
* @returns Array of RuntimeType values
|
|
224
|
+
*/
|
|
225
|
+
export declare function getSupportedRuntimeTypes(): RuntimeType[];
|
|
226
|
+
/**
|
|
227
|
+
* Checks whether a given string is a supported runtime type.
|
|
228
|
+
*
|
|
229
|
+
* @param value - The string to check
|
|
230
|
+
* @returns True if the value is a valid RuntimeType
|
|
231
|
+
*/
|
|
232
|
+
export declare function isSupportedRuntime(value: string): value is RuntimeType;
|
|
233
|
+
export {};
|
|
234
|
+
//# sourceMappingURL=runtime-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-adapter.d.ts","sourceRoot":"","sources":["../../../../../backend/src/services/runtime-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime Adapter Layer
|
|
3
|
+
*
|
|
4
|
+
* Provides a unified, pluggable interface for managing AI runtime sessions.
|
|
5
|
+
* Each adapter encapsulates the full lifecycle of a specific runtime (Claude Code,
|
|
6
|
+
* Gemini CLI, Codex): starting a session, writing input, reading output, and stopping.
|
|
7
|
+
*
|
|
8
|
+
* This replaces the need to coordinate between ISessionBackend, SessionCommandHelper,
|
|
9
|
+
* and RuntimeAgentService manually — the adapter handles it all.
|
|
10
|
+
*
|
|
11
|
+
* @module services/runtime-adapter
|
|
12
|
+
*/
|
|
13
|
+
import { RUNTIME_TYPES } from '../constants.js';
|
|
14
|
+
import { RuntimeServiceFactory } from './agent/runtime-service.factory.js';
|
|
15
|
+
import { getSessionBackendSync, createSessionCommandHelper, } from './session/index.js';
|
|
16
|
+
// ========================= Base Adapter =========================
|
|
17
|
+
/**
|
|
18
|
+
* Base adapter that delegates to the existing RuntimeAgentService and ISessionBackend.
|
|
19
|
+
*
|
|
20
|
+
* Concrete adapters extend this class and provide their runtime type.
|
|
21
|
+
* The base handles all common operations — subclasses only need to override
|
|
22
|
+
* behavior that differs from the default.
|
|
23
|
+
*/
|
|
24
|
+
class BaseRuntimeAdapter {
|
|
25
|
+
sessionBackend;
|
|
26
|
+
sessionHelper;
|
|
27
|
+
runtimeService;
|
|
28
|
+
constructor(sessionBackend, sessionHelper, runtimeService) {
|
|
29
|
+
this.sessionBackend = sessionBackend;
|
|
30
|
+
this.sessionHelper = sessionHelper;
|
|
31
|
+
this.runtimeService = runtimeService;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Start a new agent session with the runtime CLI.
|
|
35
|
+
*
|
|
36
|
+
* Creates a PTY shell, sets environment variables, and executes the
|
|
37
|
+
* runtime initialization script.
|
|
38
|
+
*
|
|
39
|
+
* @param config - Session start configuration
|
|
40
|
+
*/
|
|
41
|
+
async start(config) {
|
|
42
|
+
const { sessionName, projectPath, runtimeFlags, promptFilePath, env } = config;
|
|
43
|
+
// Create PTY session
|
|
44
|
+
await this.sessionHelper.createSession(sessionName, projectPath);
|
|
45
|
+
// Set environment variables
|
|
46
|
+
if (env) {
|
|
47
|
+
for (const [key, value] of Object.entries(env)) {
|
|
48
|
+
await this.sessionHelper.setEnvironmentVariable(sessionName, key, value);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
// Execute runtime-specific initialization
|
|
52
|
+
await this.runtimeService.executeRuntimeInitScript(sessionName, projectPath, runtimeFlags, promptFilePath);
|
|
53
|
+
}
|
|
54
|
+
/** @inheritdoc */
|
|
55
|
+
async stop(sessionName) {
|
|
56
|
+
await this.sessionBackend.killSession(sessionName);
|
|
57
|
+
}
|
|
58
|
+
/** @inheritdoc */
|
|
59
|
+
async write(sessionName, data) {
|
|
60
|
+
await this.sessionHelper.sendMessage(sessionName, data);
|
|
61
|
+
}
|
|
62
|
+
/** @inheritdoc */
|
|
63
|
+
async getOutput(sessionName, lines) {
|
|
64
|
+
return this.sessionHelper.capturePane(sessionName, lines);
|
|
65
|
+
}
|
|
66
|
+
/** @inheritdoc */
|
|
67
|
+
isRunning(sessionName) {
|
|
68
|
+
return this.sessionBackend.sessionExists(sessionName);
|
|
69
|
+
}
|
|
70
|
+
/** @inheritdoc */
|
|
71
|
+
async waitForReady(sessionName, timeout = 60000) {
|
|
72
|
+
return this.runtimeService.waitForRuntimeReady(sessionName, timeout);
|
|
73
|
+
}
|
|
74
|
+
/** @inheritdoc */
|
|
75
|
+
async detectRuntime(sessionName) {
|
|
76
|
+
return this.runtimeService.detectRuntimeWithCommand(sessionName, true);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
// ========================= Concrete Adapters =========================
|
|
80
|
+
/**
|
|
81
|
+
* Adapter for Anthropic's Claude Code CLI.
|
|
82
|
+
*
|
|
83
|
+
* Full implementation — Claude Code is the default runtime.
|
|
84
|
+
* Handles Claude-specific initialization, detection (slash command palette),
|
|
85
|
+
* and MCP configuration.
|
|
86
|
+
*/
|
|
87
|
+
export class ClaudeCodeAdapter extends BaseRuntimeAdapter {
|
|
88
|
+
runtimeType = RUNTIME_TYPES.CLAUDE_CODE;
|
|
89
|
+
displayName = 'Claude Code';
|
|
90
|
+
/**
|
|
91
|
+
* Start a Claude Code session.
|
|
92
|
+
*
|
|
93
|
+
* Extends the base start with Claude-specific post-initialization
|
|
94
|
+
* (MCP server configuration).
|
|
95
|
+
*
|
|
96
|
+
* @param config - Session start configuration
|
|
97
|
+
*/
|
|
98
|
+
async start(config) {
|
|
99
|
+
await super.start(config);
|
|
100
|
+
await this.runtimeService.postInitialize(config.sessionName, config.projectPath);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Adapter for Google's Gemini CLI.
|
|
105
|
+
*
|
|
106
|
+
* Stub implementation — basic structure in place for future development.
|
|
107
|
+
* Uses the base adapter behavior which delegates to GeminiRuntimeService.
|
|
108
|
+
*/
|
|
109
|
+
export class GeminiCliAdapter extends BaseRuntimeAdapter {
|
|
110
|
+
runtimeType = RUNTIME_TYPES.GEMINI_CLI;
|
|
111
|
+
displayName = 'Gemini CLI';
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Adapter for OpenAI's Codex CLI.
|
|
115
|
+
*
|
|
116
|
+
* Stub implementation — basic structure in place for future development.
|
|
117
|
+
* Uses the base adapter behavior which delegates to CodexRuntimeService.
|
|
118
|
+
*/
|
|
119
|
+
export class CodexAdapter extends BaseRuntimeAdapter {
|
|
120
|
+
runtimeType = RUNTIME_TYPES.CODEX_CLI;
|
|
121
|
+
displayName = 'OpenAI Codex';
|
|
122
|
+
}
|
|
123
|
+
// ========================= Factory =========================
|
|
124
|
+
/**
|
|
125
|
+
* Creates a RuntimeAdapter for the specified runtime type.
|
|
126
|
+
*
|
|
127
|
+
* Uses the existing RuntimeServiceFactory and session backend to construct
|
|
128
|
+
* the appropriate adapter. Requires the session backend to be initialized
|
|
129
|
+
* first (via createSessionBackend()).
|
|
130
|
+
*
|
|
131
|
+
* @param runtimeType - The runtime type ('claude-code', 'gemini-cli', 'codex-cli')
|
|
132
|
+
* @param projectRoot - The project root directory (for runtime config resolution)
|
|
133
|
+
* @returns A RuntimeAdapter instance for the specified runtime
|
|
134
|
+
* @throws Error if session backend is not initialized or runtime type is unknown
|
|
135
|
+
*
|
|
136
|
+
* @example
|
|
137
|
+
* ```typescript
|
|
138
|
+
* const adapter = getRuntimeAdapter('claude-code', '/home/user/project');
|
|
139
|
+
* await adapter.start({ sessionName: 'agent-1', projectPath: '/project' });
|
|
140
|
+
* ```
|
|
141
|
+
*/
|
|
142
|
+
export function getRuntimeAdapter(runtimeType, projectRoot) {
|
|
143
|
+
const backend = getSessionBackendSync();
|
|
144
|
+
if (!backend) {
|
|
145
|
+
throw new Error('Session backend not initialized. Call createSessionBackend() before getRuntimeAdapter().');
|
|
146
|
+
}
|
|
147
|
+
const sessionHelper = createSessionCommandHelper(backend);
|
|
148
|
+
const runtimeService = RuntimeServiceFactory.createWithHelper(runtimeType, sessionHelper, projectRoot);
|
|
149
|
+
switch (runtimeType) {
|
|
150
|
+
case RUNTIME_TYPES.CLAUDE_CODE:
|
|
151
|
+
return new ClaudeCodeAdapter(backend, sessionHelper, runtimeService);
|
|
152
|
+
case RUNTIME_TYPES.GEMINI_CLI:
|
|
153
|
+
return new GeminiCliAdapter(backend, sessionHelper, runtimeService);
|
|
154
|
+
case RUNTIME_TYPES.CODEX_CLI:
|
|
155
|
+
return new CodexAdapter(backend, sessionHelper, runtimeService);
|
|
156
|
+
default: {
|
|
157
|
+
// Fallback to Claude Code for unrecognized types
|
|
158
|
+
const fallbackService = RuntimeServiceFactory.createWithHelper(RUNTIME_TYPES.CLAUDE_CODE, sessionHelper, projectRoot);
|
|
159
|
+
return new ClaudeCodeAdapter(backend, sessionHelper, fallbackService);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Returns the list of all supported runtime types.
|
|
165
|
+
*
|
|
166
|
+
* @returns Array of RuntimeType values
|
|
167
|
+
*/
|
|
168
|
+
export function getSupportedRuntimeTypes() {
|
|
169
|
+
return RuntimeServiceFactory.getAvailableRuntimeTypes();
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Checks whether a given string is a supported runtime type.
|
|
173
|
+
*
|
|
174
|
+
* @param value - The string to check
|
|
175
|
+
* @returns True if the value is a valid RuntimeType
|
|
176
|
+
*/
|
|
177
|
+
export function isSupportedRuntime(value) {
|
|
178
|
+
return RuntimeServiceFactory.isRuntimeTypeSupported(value);
|
|
179
|
+
}
|
|
180
|
+
//# sourceMappingURL=runtime-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-adapter.js","sourceRoot":"","sources":["../../../../../backend/src/services/runtime-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
/**
|
|
11
11
|
* Valid agent lifecycle event types
|
|
12
12
|
*/
|
|
13
|
-
export declare const EVENT_TYPES: readonly ["agent:status_changed", "agent:idle", "agent:busy", "agent:active", "agent:inactive"];
|
|
13
|
+
export declare const EVENT_TYPES: readonly ["agent:status_changed", "agent:idle", "agent:busy", "agent:active", "agent:inactive", "agent:context_warning", "agent:context_critical"];
|
|
14
14
|
/**
|
|
15
15
|
* An agent lifecycle event type
|
|
16
16
|
*/
|
|
@@ -18,7 +18,7 @@ export type EventType = (typeof EVENT_TYPES)[number];
|
|
|
18
18
|
/**
|
|
19
19
|
* Fields that can trigger events when changed
|
|
20
20
|
*/
|
|
21
|
-
export type ChangedField = 'agentStatus' | 'workingStatus';
|
|
21
|
+
export type ChangedField = 'agentStatus' | 'workingStatus' | 'contextUsage';
|
|
22
22
|
/**
|
|
23
23
|
* An agent lifecycle event published to the event bus
|
|
24
24
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-bus.types.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/event-bus.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH;;GAEG;AACH,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"event-bus.types.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/event-bus.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH;;GAEG;AACH,eAAO,MAAM,WAAW,oJAQd,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,aAAa,GAAG,eAAe,GAAG,cAAc,CAAC;AAM5E;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,sBAAsB;IACtB,EAAE,EAAE,MAAM,CAAC;IAEX,oBAAoB;IACpB,IAAI,EAAE,SAAS,CAAC;IAEhB,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAElB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IAEf,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IAEjB,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IAEjB,iCAAiC;IACjC,UAAU,EAAE,MAAM,CAAC;IAEnB,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IAEpB,2BAA2B;IAC3B,aAAa,EAAE,MAAM,CAAC;IAEtB,sBAAsB;IACtB,QAAQ,EAAE,MAAM,CAAC;IAEjB,gDAAgD;IAChD,YAAY,EAAE,YAAY,CAAC;CAC5B;AAMD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,+CAA+C;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,6BAA6B;IAC7B,EAAE,EAAE,MAAM,CAAC;IAEX,oCAAoC;IACpC,SAAS,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAEnC,0CAA0C;IAC1C,MAAM,EAAE,WAAW,CAAC;IAEpB,yDAAyD;IACzD,OAAO,EAAE,OAAO,CAAC;IAEjB,kEAAkE;IAClE,iBAAiB,EAAE,MAAM,CAAC;IAE1B,kDAAkD;IAClD,SAAS,EAAE,MAAM,CAAC;IAElB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,qDAAqD;IACrD,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,oCAAoC;IACpC,SAAS,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;IAEnC,0CAA0C;IAC1C,MAAM,EAAE,WAAW,CAAC;IAEpB,yEAAyE;IACzE,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,qCAAqC;IACrC,iBAAiB,EAAE,MAAM,CAAC;IAE1B,qDAAqD;IACrD,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAMD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,SAAS,CAEnE;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,uBAAuB,CA+C/F"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-bus.types.js","sourceRoot":"","sources":["../../../../../backend/src/types/event-bus.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,sBAAsB;IACtB,YAAY;IACZ,YAAY;IACZ,cAAc;IACd,gBAAgB;
|
|
1
|
+
{"version":3,"file":"event-bus.types.js","sourceRoot":"","sources":["../../../../../backend/src/types/event-bus.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,sBAAsB;IACtB,YAAY;IACZ,YAAY;IACZ,cAAc;IACd,gBAAgB;IAChB,uBAAuB;IACvB,wBAAwB;CAChB,CAAC;AA4HX,gFAAgF;AAChF,cAAc;AACd,gFAAgF;AAEhF;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAkB,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B,CAAC,KAAc;IAC3D,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,KAAK,GAAG,KAAgC,CAAC;IAE/C,wDAAwD;IACxD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;SAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,kBAAkB;IAClB,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACtD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,6BAA6B;IAC7B,IAAI,OAAO,KAAK,CAAC,iBAAiB,KAAK,QAAQ,IAAI,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/F,OAAO,KAAK,CAAC;IACf,CAAC;IAED,+BAA+B;IAC/B,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACnC,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;YAClE,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,oCAAoC;IACpC,IAAI,KAAK,CAAC,eAAe,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;QACrF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../backend/src/types/index.ts"],"names":[],"mappings":"AA6KA,yBAAyB;AACzB,cAAc,mBAAmB,CAAC;AAElC,+BAA+B;AAC/B,cAAc,yBAAyB,CAAC;AAExC,+BAA+B;AAC/B,cAAc,yBAAyB,CAAC;AAExC,sBAAsB;AACtB,cAAc,gBAAgB,CAAC;AAE/B,kCAAkC;AAClC,cAAc,wBAAwB,CAAC;AAEvC,yBAAyB;AACzB,cAAc,mBAAmB,CAAC;AAElC,4BAA4B;AAC5B,cAAc,sBAAsB,CAAC;AAErC,uBAAuB;AACvB,cAAc,iBAAiB,CAAC;AAEhC,2BAA2B;AAC3B,cAAc,qBAAqB,CAAC;AAEpC,wBAAwB;AACxB,cAAc,kBAAkB,CAAC;AAEjC,uBAAuB;AACvB,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../backend/src/types/index.ts"],"names":[],"mappings":"AA6KA,yBAAyB;AACzB,cAAc,mBAAmB,CAAC;AAElC,+BAA+B;AAC/B,cAAc,yBAAyB,CAAC;AAExC,+BAA+B;AAC/B,cAAc,yBAAyB,CAAC;AAExC,sBAAsB;AACtB,cAAc,gBAAgB,CAAC;AAE/B,kCAAkC;AAClC,cAAc,wBAAwB,CAAC;AAEvC,yBAAyB;AACzB,cAAc,mBAAmB,CAAC;AAElC,4BAA4B;AAC5B,cAAc,sBAAsB,CAAC;AAErC,uBAAuB;AACvB,cAAc,iBAAiB,CAAC;AAEhC,2BAA2B;AAC3B,cAAc,qBAAqB,CAAC;AAEpC,wBAAwB;AACxB,cAAc,kBAAkB,CAAC;AAEjC,uBAAuB;AACvB,cAAc,iBAAiB,CAAC;AAEhC,8BAA8B;AAC9B,cAAc,wBAAwB,CAAC"}
|
|
@@ -8,18 +8,17 @@
|
|
|
8
8
|
*
|
|
9
9
|
* @module types/messaging
|
|
10
10
|
*/
|
|
11
|
+
import { MESSAGE_SOURCES, type MessageSource } from '../constants.js';
|
|
12
|
+
export { MESSAGE_SOURCES, type MessageSource };
|
|
11
13
|
/**
|
|
12
|
-
* Valid message
|
|
14
|
+
* Valid message source values as a tuple (for .includes() validation).
|
|
15
|
+
* Derived from the canonical MESSAGE_SOURCES object in constants.ts.
|
|
13
16
|
*/
|
|
14
|
-
export declare const
|
|
17
|
+
export declare const MESSAGE_SOURCE_VALUES: readonly MessageSource[];
|
|
15
18
|
/**
|
|
16
19
|
* Valid queue message statuses
|
|
17
20
|
*/
|
|
18
21
|
export declare const QUEUE_MESSAGE_STATUSES: readonly ["pending", "processing", "completed", "failed", "cancelled"];
|
|
19
|
-
/**
|
|
20
|
-
* Source of an enqueued message
|
|
21
|
-
*/
|
|
22
|
-
export type MessageSource = (typeof MESSAGE_SOURCES)[number];
|
|
23
22
|
/**
|
|
24
23
|
* Status of a message in the queue
|
|
25
24
|
*/
|
|
@@ -79,6 +78,8 @@ export interface QueuedMessage {
|
|
|
79
78
|
response?: string;
|
|
80
79
|
/** Number of times this message has been re-queued due to agent-not-ready */
|
|
81
80
|
retryCount?: number;
|
|
81
|
+
/** ISO timestamp when the message was delivered to the orchestrator terminal */
|
|
82
|
+
deliveredAt?: string;
|
|
82
83
|
}
|
|
83
84
|
/**
|
|
84
85
|
* Queue status summary for monitoring
|
|
@@ -143,6 +144,8 @@ export interface PersistedMessage {
|
|
|
143
144
|
response?: string;
|
|
144
145
|
/** Number of times this message has been re-queued due to agent-not-ready */
|
|
145
146
|
retryCount?: number;
|
|
147
|
+
/** ISO timestamp when the message was delivered to the orchestrator terminal */
|
|
148
|
+
deliveredAt?: string;
|
|
146
149
|
}
|
|
147
150
|
/**
|
|
148
151
|
* Full persisted state of the message queue, written to disk after every mutation.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messaging.types.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/messaging.types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"messaging.types.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/messaging.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,13 +8,17 @@
|
|
|
8
8
|
*
|
|
9
9
|
* @module types/messaging
|
|
10
10
|
*/
|
|
11
|
+
import { MESSAGE_SOURCES } from '../constants.js';
|
|
12
|
+
// Re-export for backwards compatibility
|
|
13
|
+
export { MESSAGE_SOURCES };
|
|
11
14
|
// =============================================================================
|
|
12
15
|
// Enums and Constants
|
|
13
16
|
// =============================================================================
|
|
14
17
|
/**
|
|
15
|
-
* Valid message
|
|
18
|
+
* Valid message source values as a tuple (for .includes() validation).
|
|
19
|
+
* Derived from the canonical MESSAGE_SOURCES object in constants.ts.
|
|
16
20
|
*/
|
|
17
|
-
export const
|
|
21
|
+
export const MESSAGE_SOURCE_VALUES = Object.values(MESSAGE_SOURCES);
|
|
18
22
|
/**
|
|
19
23
|
* Valid queue message statuses
|
|
20
24
|
*/
|
|
@@ -58,6 +62,9 @@ export function toPersistedMessage(msg) {
|
|
|
58
62
|
if (msg.retryCount !== undefined && msg.retryCount > 0) {
|
|
59
63
|
persisted.retryCount = msg.retryCount;
|
|
60
64
|
}
|
|
65
|
+
if (msg.deliveredAt !== undefined) {
|
|
66
|
+
persisted.deliveredAt = msg.deliveredAt;
|
|
67
|
+
}
|
|
61
68
|
if (msg.sourceMetadata) {
|
|
62
69
|
const cleaned = {};
|
|
63
70
|
let hasEntries = false;
|
|
@@ -83,7 +90,7 @@ export function toPersistedMessage(msg) {
|
|
|
83
90
|
* @returns True if value is a valid MessageSource
|
|
84
91
|
*/
|
|
85
92
|
export function isValidMessageSource(value) {
|
|
86
|
-
return typeof value === 'string' &&
|
|
93
|
+
return typeof value === 'string' && MESSAGE_SOURCE_VALUES.includes(value);
|
|
87
94
|
}
|
|
88
95
|
/**
|
|
89
96
|
* Check if a value is a valid queue message status
|