crewly 1.3.30 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (673) hide show
  1. package/config/constants.ts +18 -3
  2. package/config/hooks/install-hooks.sh +88 -0
  3. package/config/hooks/pre-commit +104 -0
  4. package/config/orchestrator_tasks/prompts/orchestrator-prompt.md +17 -24
  5. package/config/roles/auditor/role.json +13 -0
  6. package/config/roles/orchestrator/prompt.md +25 -0
  7. package/config/roles/product-manager/prompt.md +18 -1
  8. package/config/roles/researcher/prompt.md +110 -0
  9. package/config/roles/team-leader/prompt.md +31 -8
  10. package/config/roles/team-leader/tl-addon.md +40 -9
  11. package/config/roles/ux-designer/prompt.md +111 -0
  12. package/config/skills/_common/lib.sh +33 -0
  13. package/config/skills/agent/browse-stealth/{instructions.md → SKILL.md} +40 -0
  14. package/config/skills/agent/chrome-attach/SKILL.md +84 -0
  15. package/config/skills/agent/chrome-attach/execute.sh +279 -0
  16. package/config/skills/agent/competitor-content-tracker/{instructions.md → SKILL.md} +34 -0
  17. package/config/skills/agent/computer-use/{instructions.md → SKILL.md} +43 -0
  18. package/config/skills/agent/content-calendar/{instructions.md → SKILL.md} +32 -0
  19. package/config/skills/agent/content-repurposer/{instructions.md → SKILL.md} +38 -0
  20. package/config/skills/agent/content-writer/{instructions.md → SKILL.md} +38 -0
  21. package/config/skills/agent/core/accept-task/{instructions.md → SKILL.md} +37 -0
  22. package/config/skills/agent/core/block-task/{instructions.md → SKILL.md} +37 -0
  23. package/config/skills/agent/core/check-quality-gates/{instructions.md → SKILL.md} +40 -0
  24. package/config/skills/agent/core/complete-task/{instructions.md → SKILL.md} +37 -0
  25. package/config/skills/agent/core/complete-task/execute.sh +15 -0
  26. package/config/skills/agent/core/generate-pdf/{instructions.md → SKILL.md} +42 -0
  27. package/config/skills/agent/core/get-my-context/{instructions.md → SKILL.md} +38 -0
  28. package/config/skills/agent/core/get-sops/{instructions.md → SKILL.md} +38 -0
  29. package/config/skills/agent/core/get-team-norms/execute.sh +106 -0
  30. package/config/skills/agent/core/get-team-status/SKILL.md +55 -0
  31. package/config/skills/agent/core/handoff-task/execute.sh +150 -0
  32. package/config/skills/agent/core/heartbeat/{instructions.md → SKILL.md} +27 -0
  33. package/config/skills/agent/core/marketplace-search/{instructions.md → SKILL.md} +41 -0
  34. package/config/skills/agent/core/query-knowledge/{instructions.md → SKILL.md} +40 -0
  35. package/config/skills/agent/core/read-task/SKILL.md +56 -0
  36. package/config/skills/agent/core/recall/{instructions.md → SKILL.md} +38 -0
  37. package/config/skills/agent/core/record-learning/{instructions.md → SKILL.md} +38 -0
  38. package/config/skills/agent/core/register-self/SKILL.md +54 -0
  39. package/config/skills/agent/core/remember/{instructions.md → SKILL.md} +37 -0
  40. package/config/skills/agent/core/remember/execute.sh +6 -0
  41. package/config/skills/agent/core/reply-chat/{instructions.md → SKILL.md} +37 -0
  42. package/config/skills/agent/core/report-progress/{instructions.md → SKILL.md} +38 -0
  43. package/config/skills/agent/core/report-status/{instructions.md → SKILL.md} +39 -0
  44. package/config/skills/agent/core/send-chat-response/{instructions.md → SKILL.md} +37 -0
  45. package/config/skills/agent/core/send-message/SKILL.md +58 -0
  46. package/config/skills/agent/core/update-team-norm/execute.sh +115 -0
  47. package/config/skills/agent/desktop-app-control/{instructions.md → SKILL.md} +42 -0
  48. package/config/skills/agent/trend-monitor/{instructions.md → SKILL.md} +34 -0
  49. package/config/skills/agent/vnc-browser/{instructions.md → SKILL.md} +38 -0
  50. package/config/skills/auditor/score-task/SKILL.md +28 -0
  51. package/config/skills/auditor/score-task/execute.sh +21 -0
  52. package/config/skills/examples/enterprise-skill-example.json +22 -0
  53. package/config/skills/examples/premium-skill-example.json +22 -0
  54. package/config/skills/orchestrator/assign-task/SKILL.md +41 -0
  55. package/config/skills/orchestrator/assign-team-to-project/{instructions.md → SKILL.md} +25 -0
  56. package/config/skills/orchestrator/broadcast/{instructions.md → SKILL.md} +24 -0
  57. package/config/skills/orchestrator/broadcast-to-org/{instructions.md → SKILL.md} +25 -0
  58. package/config/skills/orchestrator/cancel-all-schedules/{instructions.md → SKILL.md} +5 -0
  59. package/config/skills/orchestrator/cancel-schedule/SKILL.md +43 -0
  60. package/config/skills/orchestrator/complete-task/SKILL.md +41 -0
  61. package/config/skills/orchestrator/create-project/{instructions.md → SKILL.md} +24 -0
  62. package/config/skills/orchestrator/create-team/{instructions.md → SKILL.md} +24 -0
  63. package/config/skills/orchestrator/delegate-task/{instructions.md → SKILL.md} +27 -0
  64. package/config/skills/orchestrator/delegate-task/execute.sh +31 -2
  65. package/config/skills/orchestrator/get-agent-logs/{instructions.md → SKILL.md} +25 -0
  66. package/config/skills/orchestrator/get-agent-status/{instructions.md → SKILL.md} +24 -0
  67. package/config/skills/orchestrator/get-project-overview/SKILL.md +41 -0
  68. package/config/skills/orchestrator/get-tasks/SKILL.md +41 -0
  69. package/config/skills/orchestrator/get-team-status/SKILL.md +43 -0
  70. package/config/skills/orchestrator/handle-agent-failure/{instructions.md → SKILL.md} +27 -0
  71. package/config/skills/orchestrator/heartbeat/{instructions.md → SKILL.md} +24 -0
  72. package/config/skills/orchestrator/list-schedules/{instructions.md → SKILL.md} +5 -0
  73. package/config/skills/orchestrator/list-subscriptions/SKILL.md +41 -0
  74. package/config/skills/orchestrator/query-knowledge/{instructions.md → SKILL.md} +28 -0
  75. package/config/skills/orchestrator/read-session-logs/{instructions.md → SKILL.md} +26 -0
  76. package/config/skills/orchestrator/read-system-logs/{instructions.md → SKILL.md} +25 -0
  77. package/config/skills/orchestrator/recall/{instructions.md → SKILL.md} +24 -0
  78. package/config/skills/orchestrator/record-failure/{instructions.md → SKILL.md} +27 -0
  79. package/config/skills/orchestrator/record-learning/{instructions.md → SKILL.md} +24 -0
  80. package/config/skills/orchestrator/record-success/{instructions.md → SKILL.md} +26 -0
  81. package/config/skills/orchestrator/register-self/{instructions.md → SKILL.md} +24 -0
  82. package/config/skills/orchestrator/remember/{instructions.md → SKILL.md} +24 -0
  83. package/config/skills/orchestrator/reply-chat/{instructions.md → SKILL.md} +25 -0
  84. package/config/skills/orchestrator/reply-chat/execute.sh +0 -13
  85. package/config/skills/orchestrator/reply-gchat/{instructions.md → SKILL.md} +25 -0
  86. package/config/skills/orchestrator/reply-gchat/execute.sh +0 -18
  87. package/config/skills/orchestrator/reply-slack/{instructions.md → SKILL.md} +24 -0
  88. package/config/skills/orchestrator/reply-slack/execute.sh +18 -31
  89. package/config/skills/orchestrator/report-bug/{instructions.md → SKILL.md} +26 -0
  90. package/config/skills/orchestrator/restart-crewly/{instructions.md → SKILL.md} +26 -0
  91. package/config/skills/orchestrator/resume-session/{instructions.md → SKILL.md} +24 -0
  92. package/config/skills/orchestrator/schedule-check/{instructions.md → SKILL.md} +24 -0
  93. package/config/skills/orchestrator/send-key/{instructions.md → SKILL.md} +26 -0
  94. package/config/skills/orchestrator/send-message/{instructions.md → SKILL.md} +24 -0
  95. package/config/skills/orchestrator/send-pdf-to-slack/{instructions.md → SKILL.md} +27 -0
  96. package/config/skills/orchestrator/set-goal/{instructions.md → SKILL.md} +26 -0
  97. package/config/skills/orchestrator/start-agent/{instructions.md → SKILL.md} +24 -0
  98. package/config/skills/orchestrator/start-team/{instructions.md → SKILL.md} +24 -0
  99. package/config/skills/orchestrator/stop-agent/{instructions.md → SKILL.md} +24 -0
  100. package/config/skills/orchestrator/stop-team/SKILL.md +43 -0
  101. package/config/skills/orchestrator/subscribe-event/{instructions.md → SKILL.md} +24 -0
  102. package/config/skills/orchestrator/terminate-agent/{instructions.md → SKILL.md} +24 -0
  103. package/config/skills/orchestrator/unsubscribe-event/SKILL.md +42 -0
  104. package/config/skills/orchestrator/update-focus/{instructions.md → SKILL.md} +26 -0
  105. package/config/skills/orchestrator/update-team/{instructions.md → SKILL.md} +24 -0
  106. package/config/skills/team-leader/aggregate-results/{instructions.md → SKILL.md} +26 -0
  107. package/config/skills/team-leader/decompose-goal/{instructions.md → SKILL.md} +26 -0
  108. package/config/skills/team-leader/delegate-task/{instructions.md → SKILL.md} +26 -0
  109. package/config/skills/team-leader/delegate-task/execute.sh +14 -6
  110. package/config/skills/team-leader/delegate-task/execute.test.sh +401 -0
  111. package/config/skills/team-leader/handle-failure/{instructions.md → SKILL.md} +27 -0
  112. package/config/skills/team-leader/schedule-check/{instructions.md → SKILL.md} +26 -0
  113. package/config/skills/team-leader/start-agent/{instructions.md → SKILL.md} +26 -0
  114. package/config/skills/team-leader/stop-agent/{instructions.md → SKILL.md} +26 -0
  115. package/config/skills/team-leader/verify-output/{instructions.md → SKILL.md} +27 -0
  116. package/config/templates/agent-agents-md.md +35 -0
  117. package/config/templates/agent-gemini-md.md +35 -0
  118. package/config/templates/code-review-team/team-config.json +7 -0
  119. package/config/templates/content-generation-team/norms/brand-guidelines.md +64 -0
  120. package/config/templates/content-generation-team/norms/content-review.md +66 -0
  121. package/config/templates/content-generation-team/norms/publish-checklist.md +58 -0
  122. package/config/templates/content-generation-team/team-config.json +8 -0
  123. package/config/templates/dev-fullstack/norms/code-commit-sop.md +40 -0
  124. package/config/templates/dev-fullstack/norms/quality-gates.md +35 -0
  125. package/config/templates/dev-fullstack/template.json +17 -1
  126. package/config/templates/education-smb/template.json +10 -1
  127. package/config/templates/insurance-smb/template.json +10 -1
  128. package/config/templates/research-analysis/norms/research-methodology.md +36 -0
  129. package/config/templates/research-analysis/norms/source-citation.md +33 -0
  130. package/config/templates/research-analysis/template.json +17 -1
  131. package/config/templates/security-audit-team.json +67 -0
  132. package/config/templates/social-media-ops/norms/engagement-rules.md +35 -0
  133. package/config/templates/social-media-ops/norms/posting-schedule.md +43 -0
  134. package/config/templates/social-media-ops/template.json +17 -1
  135. package/config/templates/video-production/template.json +10 -1
  136. package/dist/backend/backend/src/constants.d.ts +80 -11
  137. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  138. package/dist/backend/backend/src/constants.js +85 -11
  139. package/dist/backend/backend/src/constants.js.map +1 -1
  140. package/dist/backend/backend/src/controllers/approvals/approvals.controller.d.ts +99 -0
  141. package/dist/backend/backend/src/controllers/approvals/approvals.controller.d.ts.map +1 -0
  142. package/dist/backend/backend/src/controllers/approvals/approvals.controller.js +183 -0
  143. package/dist/backend/backend/src/controllers/approvals/approvals.controller.js.map +1 -0
  144. package/dist/backend/backend/src/controllers/approvals/approvals.routes.d.ts +15 -0
  145. package/dist/backend/backend/src/controllers/approvals/approvals.routes.d.ts.map +1 -0
  146. package/dist/backend/backend/src/controllers/approvals/approvals.routes.js +27 -0
  147. package/dist/backend/backend/src/controllers/approvals/approvals.routes.js.map +1 -0
  148. package/dist/backend/backend/src/controllers/cloud/cloud-google-auth.controller.d.ts +70 -0
  149. package/dist/backend/backend/src/controllers/cloud/cloud-google-auth.controller.d.ts.map +1 -0
  150. package/dist/backend/backend/src/controllers/cloud/cloud-google-auth.controller.js +368 -0
  151. package/dist/backend/backend/src/controllers/cloud/cloud-google-auth.controller.js.map +1 -0
  152. package/dist/backend/backend/src/controllers/cloud/cloud.controller.d.ts +24 -0
  153. package/dist/backend/backend/src/controllers/cloud/cloud.controller.d.ts.map +1 -1
  154. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js +195 -3
  155. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js.map +1 -1
  156. package/dist/backend/backend/src/controllers/cloud/cloud.routes.d.ts +9 -4
  157. package/dist/backend/backend/src/controllers/cloud/cloud.routes.d.ts.map +1 -1
  158. package/dist/backend/backend/src/controllers/cloud/cloud.routes.js +19 -5
  159. package/dist/backend/backend/src/controllers/cloud/cloud.routes.js.map +1 -1
  160. package/dist/backend/backend/src/controllers/cloud/index.d.ts +1 -0
  161. package/dist/backend/backend/src/controllers/cloud/index.d.ts.map +1 -1
  162. package/dist/backend/backend/src/controllers/cloud/index.js +1 -0
  163. package/dist/backend/backend/src/controllers/cloud/index.js.map +1 -1
  164. package/dist/backend/backend/src/controllers/index.d.ts.map +1 -1
  165. package/dist/backend/backend/src/controllers/index.js +2 -0
  166. package/dist/backend/backend/src/controllers/index.js.map +1 -1
  167. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.js +1 -1
  168. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.js.map +1 -1
  169. package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.d.ts +3 -3
  170. package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.js +9 -9
  171. package/dist/backend/backend/src/controllers/marketplace/template-marketplace.routes.js.map +1 -1
  172. package/dist/backend/backend/src/controllers/memory/memory.controller.js +6 -6
  173. package/dist/backend/backend/src/controllers/memory/memory.controller.js.map +1 -1
  174. package/dist/backend/backend/src/controllers/messaging/messenger.routes.d.ts +0 -7
  175. package/dist/backend/backend/src/controllers/messaging/messenger.routes.d.ts.map +1 -1
  176. package/dist/backend/backend/src/controllers/messaging/messenger.routes.js +2 -135
  177. package/dist/backend/backend/src/controllers/messaging/messenger.routes.js.map +1 -1
  178. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts +14 -0
  179. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts.map +1 -1
  180. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js +106 -3
  181. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js.map +1 -1
  182. package/dist/backend/backend/src/controllers/oauth/oauth.routes.d.ts.map +1 -1
  183. package/dist/backend/backend/src/controllers/oauth/oauth.routes.js +8 -1
  184. package/dist/backend/backend/src/controllers/oauth/oauth.routes.js.map +1 -1
  185. package/dist/backend/backend/src/controllers/payment/payment.controller.js +2 -2
  186. package/dist/backend/backend/src/controllers/payment/payment.controller.js.map +1 -1
  187. package/dist/backend/backend/src/controllers/payment/payment.routes.d.ts +3 -3
  188. package/dist/backend/backend/src/controllers/payment/payment.routes.d.ts.map +1 -1
  189. package/dist/backend/backend/src/controllers/payment/payment.routes.js +4 -14
  190. package/dist/backend/backend/src/controllers/payment/payment.routes.js.map +1 -1
  191. package/dist/backend/backend/src/controllers/payment/payment.types.d.ts +15 -94
  192. package/dist/backend/backend/src/controllers/payment/payment.types.d.ts.map +1 -1
  193. package/dist/backend/backend/src/controllers/payment/payment.types.js +11 -35
  194. package/dist/backend/backend/src/controllers/payment/payment.types.js.map +1 -1
  195. package/dist/backend/backend/src/controllers/pr-review/pr-review.controller.d.ts +49 -0
  196. package/dist/backend/backend/src/controllers/pr-review/pr-review.controller.d.ts.map +1 -0
  197. package/dist/backend/backend/src/controllers/pr-review/pr-review.controller.js +138 -0
  198. package/dist/backend/backend/src/controllers/pr-review/pr-review.controller.js.map +1 -0
  199. package/dist/backend/backend/src/controllers/pr-review/pr-review.routes.d.ts +20 -0
  200. package/dist/backend/backend/src/controllers/pr-review/pr-review.routes.d.ts.map +1 -0
  201. package/dist/backend/backend/src/controllers/pr-review/pr-review.routes.js +30 -0
  202. package/dist/backend/backend/src/controllers/pr-review/pr-review.routes.js.map +1 -0
  203. package/dist/backend/backend/src/controllers/quality-gate/quality-gate.controller.d.ts +12 -0
  204. package/dist/backend/backend/src/controllers/quality-gate/quality-gate.controller.d.ts.map +1 -1
  205. package/dist/backend/backend/src/controllers/quality-gate/quality-gate.controller.js +107 -0
  206. package/dist/backend/backend/src/controllers/quality-gate/quality-gate.controller.js.map +1 -1
  207. package/dist/backend/backend/src/controllers/request-types.d.ts +20 -1
  208. package/dist/backend/backend/src/controllers/request-types.d.ts.map +1 -1
  209. package/dist/backend/backend/src/controllers/slack/slack.controller.d.ts.map +1 -1
  210. package/dist/backend/backend/src/controllers/slack/slack.controller.js +11 -5
  211. package/dist/backend/backend/src/controllers/slack/slack.controller.js.map +1 -1
  212. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts +46 -0
  213. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts.map +1 -1
  214. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js +598 -326
  215. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js.map +1 -1
  216. package/dist/backend/backend/src/controllers/team/team.controller.d.ts +12 -0
  217. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  218. package/dist/backend/backend/src/controllers/team/team.controller.js +178 -49
  219. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  220. package/dist/backend/backend/src/controllers/team/team.routes.d.ts.map +1 -1
  221. package/dist/backend/backend/src/controllers/team/team.routes.js +2 -1
  222. package/dist/backend/backend/src/controllers/team/team.routes.js.map +1 -1
  223. package/dist/backend/backend/src/controllers/template/template.controller.d.ts +11 -0
  224. package/dist/backend/backend/src/controllers/template/template.controller.d.ts.map +1 -1
  225. package/dist/backend/backend/src/controllers/template/template.controller.js +59 -0
  226. package/dist/backend/backend/src/controllers/template/template.controller.js.map +1 -1
  227. package/dist/backend/backend/src/controllers/template/template.routes.d.ts.map +1 -1
  228. package/dist/backend/backend/src/controllers/template/template.routes.js +2 -1
  229. package/dist/backend/backend/src/controllers/template/template.routes.js.map +1 -1
  230. package/dist/backend/backend/src/controllers/workspace/workspace.controller.d.ts +39 -0
  231. package/dist/backend/backend/src/controllers/workspace/workspace.controller.d.ts.map +1 -0
  232. package/dist/backend/backend/src/controllers/workspace/workspace.controller.js +120 -0
  233. package/dist/backend/backend/src/controllers/workspace/workspace.controller.js.map +1 -0
  234. package/dist/backend/backend/src/controllers/workspace/workspace.routes.d.ts +18 -0
  235. package/dist/backend/backend/src/controllers/workspace/workspace.routes.d.ts.map +1 -0
  236. package/dist/backend/backend/src/controllers/workspace/workspace.routes.js +27 -0
  237. package/dist/backend/backend/src/controllers/workspace/workspace.routes.js.map +1 -0
  238. package/dist/backend/backend/src/index.d.ts.map +1 -1
  239. package/dist/backend/backend/src/index.js +108 -15
  240. package/dist/backend/backend/src/index.js.map +1 -1
  241. package/dist/backend/backend/src/middleware/require-auth.middleware.d.ts +20 -0
  242. package/dist/backend/backend/src/middleware/require-auth.middleware.d.ts.map +1 -0
  243. package/dist/backend/backend/src/middleware/require-auth.middleware.js +21 -0
  244. package/dist/backend/backend/src/middleware/require-auth.middleware.js.map +1 -0
  245. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  246. package/dist/backend/backend/src/routes/api.routes.js +18 -5
  247. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  248. package/dist/backend/backend/src/routes/modules/quality-gate.routes.d.ts +2 -1
  249. package/dist/backend/backend/src/routes/modules/quality-gate.routes.d.ts.map +1 -1
  250. package/dist/backend/backend/src/routes/modules/quality-gate.routes.js +4 -2
  251. package/dist/backend/backend/src/routes/modules/quality-gate.routes.js.map +1 -1
  252. package/dist/backend/backend/src/routes/modules/task-management.routes.d.ts.map +1 -1
  253. package/dist/backend/backend/src/routes/modules/task-management.routes.js +8 -0
  254. package/dist/backend/backend/src/routes/modules/task-management.routes.js.map +1 -1
  255. package/dist/backend/backend/src/routes/modules/terminal.routes.d.ts.map +1 -1
  256. package/dist/backend/backend/src/routes/modules/terminal.routes.js +4 -0
  257. package/dist/backend/backend/src/routes/modules/terminal.routes.js.map +1 -1
  258. package/dist/backend/backend/src/services/agent/adaptive-heartbeat.service.d.ts +149 -0
  259. package/dist/backend/backend/src/services/agent/adaptive-heartbeat.service.d.ts.map +1 -0
  260. package/dist/backend/backend/src/services/agent/adaptive-heartbeat.service.js +200 -0
  261. package/dist/backend/backend/src/services/agent/adaptive-heartbeat.service.js.map +1 -0
  262. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts +13 -0
  263. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts.map +1 -1
  264. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js +65 -6
  265. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js.map +1 -1
  266. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +57 -0
  267. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  268. package/dist/backend/backend/src/services/agent/agent-registration.service.js +259 -67
  269. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  270. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.d.ts +66 -20
  271. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.d.ts.map +1 -1
  272. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.js +261 -60
  273. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.js.map +1 -1
  274. package/dist/backend/backend/src/services/agent/claude-runtime.service.d.ts +19 -0
  275. package/dist/backend/backend/src/services/agent/claude-runtime.service.d.ts.map +1 -1
  276. package/dist/backend/backend/src/services/agent/claude-runtime.service.js +80 -0
  277. package/dist/backend/backend/src/services/agent/claude-runtime.service.js.map +1 -1
  278. package/dist/backend/backend/src/services/agent/context-window-monitor.service.d.ts +11 -0
  279. package/dist/backend/backend/src/services/agent/context-window-monitor.service.d.ts.map +1 -1
  280. package/dist/backend/backend/src/services/agent/context-window-monitor.service.js +49 -1
  281. package/dist/backend/backend/src/services/agent/context-window-monitor.service.js.map +1 -1
  282. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +150 -5
  283. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +1 -1
  284. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +426 -18
  285. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +1 -1
  286. package/dist/backend/backend/src/services/agent/crewly-agent/approval-queue.service.d.ts +161 -0
  287. package/dist/backend/backend/src/services/agent/crewly-agent/approval-queue.service.d.ts.map +1 -0
  288. package/dist/backend/backend/src/services/agent/crewly-agent/approval-queue.service.js +237 -0
  289. package/dist/backend/backend/src/services/agent/crewly-agent/approval-queue.service.js.map +1 -0
  290. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.d.ts +74 -0
  291. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.d.ts.map +1 -0
  292. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.js +140 -0
  293. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.js.map +1 -0
  294. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts.map +1 -1
  295. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js +50 -2
  296. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js.map +1 -1
  297. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts +16 -1
  298. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts.map +1 -1
  299. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js +46 -5
  300. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js.map +1 -1
  301. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts +23 -1
  302. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.d.ts.map +1 -1
  303. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.js +37 -8
  304. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-log-buffer.js.map +1 -1
  305. package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts +3 -1
  306. package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts.map +1 -1
  307. package/dist/backend/backend/src/services/agent/crewly-agent/index.js +3 -1
  308. package/dist/backend/backend/src/services/agent/crewly-agent/index.js.map +1 -1
  309. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.d.ts +135 -0
  310. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.d.ts.map +1 -0
  311. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.js +185 -0
  312. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.js.map +1 -0
  313. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts +10 -2
  314. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts.map +1 -1
  315. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js +27 -9
  316. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js.map +1 -1
  317. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.d.ts +143 -0
  318. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.d.ts.map +1 -0
  319. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.js +264 -0
  320. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.js.map +1 -0
  321. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.js +2 -2
  322. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts +64 -2
  323. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts.map +1 -1
  324. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js +927 -39
  325. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js.map +1 -1
  326. package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts +166 -3
  327. package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts.map +1 -1
  328. package/dist/backend/backend/src/services/agent/crewly-agent/types.js +55 -1
  329. package/dist/backend/backend/src/services/agent/crewly-agent/types.js.map +1 -1
  330. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  331. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +17 -2
  332. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  333. package/dist/backend/backend/src/services/ai/prompt-builder.service.d.ts +37 -0
  334. package/dist/backend/backend/src/services/ai/prompt-builder.service.d.ts.map +1 -1
  335. package/dist/backend/backend/src/services/ai/prompt-builder.service.js +170 -3
  336. package/dist/backend/backend/src/services/ai/prompt-builder.service.js.map +1 -1
  337. package/dist/backend/backend/src/services/browser/chrome-discovery.service.d.ts +108 -0
  338. package/dist/backend/backend/src/services/browser/chrome-discovery.service.d.ts.map +1 -0
  339. package/dist/backend/backend/src/services/browser/chrome-discovery.service.js +251 -0
  340. package/dist/backend/backend/src/services/browser/chrome-discovery.service.js.map +1 -0
  341. package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts +12 -0
  342. package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts.map +1 -1
  343. package/dist/backend/backend/src/services/cloud/cloud-client.service.js +19 -0
  344. package/dist/backend/backend/src/services/cloud/cloud-client.service.js.map +1 -1
  345. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.d.ts +191 -0
  346. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.d.ts.map +1 -0
  347. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.js +415 -0
  348. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.js.map +1 -0
  349. package/dist/backend/backend/src/services/cloud/device-identity.service.d.ts +89 -0
  350. package/dist/backend/backend/src/services/cloud/device-identity.service.d.ts.map +1 -0
  351. package/dist/backend/backend/src/services/cloud/device-identity.service.js +148 -0
  352. package/dist/backend/backend/src/services/cloud/device-identity.service.js.map +1 -0
  353. package/dist/backend/backend/src/services/core/tracing.service.d.ts +127 -0
  354. package/dist/backend/backend/src/services/core/tracing.service.d.ts.map +1 -0
  355. package/dist/backend/backend/src/services/core/tracing.service.js +238 -0
  356. package/dist/backend/backend/src/services/core/tracing.service.js.map +1 -0
  357. package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts.map +1 -1
  358. package/dist/backend/backend/src/services/event-bus/event-bus.service.js +11 -3
  359. package/dist/backend/backend/src/services/event-bus/event-bus.service.js.map +1 -1
  360. package/dist/backend/backend/src/services/index.d.ts +1 -0
  361. package/dist/backend/backend/src/services/index.d.ts.map +1 -1
  362. package/dist/backend/backend/src/services/index.js +1 -0
  363. package/dist/backend/backend/src/services/index.js.map +1 -1
  364. package/dist/backend/backend/src/services/knowledge/embedding-provider.d.ts +78 -0
  365. package/dist/backend/backend/src/services/knowledge/embedding-provider.d.ts.map +1 -0
  366. package/dist/backend/backend/src/services/knowledge/embedding-provider.js +164 -0
  367. package/dist/backend/backend/src/services/knowledge/embedding-provider.js.map +1 -0
  368. package/dist/backend/backend/src/services/knowledge/index.d.ts +1 -0
  369. package/dist/backend/backend/src/services/knowledge/index.d.ts.map +1 -1
  370. package/dist/backend/backend/src/services/knowledge/index.js +1 -0
  371. package/dist/backend/backend/src/services/knowledge/index.js.map +1 -1
  372. package/dist/backend/backend/src/services/knowledge/knowledge-search.service.d.ts +91 -11
  373. package/dist/backend/backend/src/services/knowledge/knowledge-search.service.d.ts.map +1 -1
  374. package/dist/backend/backend/src/services/knowledge/knowledge-search.service.js +244 -15
  375. package/dist/backend/backend/src/services/knowledge/knowledge-search.service.js.map +1 -1
  376. package/dist/backend/backend/src/services/knowledge/vector-store.service.d.ts +331 -0
  377. package/dist/backend/backend/src/services/knowledge/vector-store.service.d.ts.map +1 -0
  378. package/dist/backend/backend/src/services/knowledge/vector-store.service.js +814 -0
  379. package/dist/backend/backend/src/services/knowledge/vector-store.service.js.map +1 -0
  380. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.d.ts.map +1 -1
  381. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.js +8 -11
  382. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.js.map +1 -1
  383. package/dist/backend/backend/src/services/marketplace/marketplace.service.d.ts.map +1 -1
  384. package/dist/backend/backend/src/services/marketplace/marketplace.service.js +1 -0
  385. package/dist/backend/backend/src/services/marketplace/marketplace.service.js.map +1 -1
  386. package/dist/backend/backend/src/services/memory/context-flush.service.d.ts +73 -0
  387. package/dist/backend/backend/src/services/memory/context-flush.service.d.ts.map +1 -0
  388. package/dist/backend/backend/src/services/memory/context-flush.service.js +131 -0
  389. package/dist/backend/backend/src/services/memory/context-flush.service.js.map +1 -0
  390. package/dist/backend/backend/src/services/memory/learning-accumulation.service.d.ts +23 -2
  391. package/dist/backend/backend/src/services/memory/learning-accumulation.service.d.ts.map +1 -1
  392. package/dist/backend/backend/src/services/memory/learning-accumulation.service.js +78 -16
  393. package/dist/backend/backend/src/services/memory/learning-accumulation.service.js.map +1 -1
  394. package/dist/backend/backend/src/services/memory/memory.service.d.ts +38 -0
  395. package/dist/backend/backend/src/services/memory/memory.service.d.ts.map +1 -1
  396. package/dist/backend/backend/src/services/memory/memory.service.js +121 -2
  397. package/dist/backend/backend/src/services/memory/memory.service.js.map +1 -1
  398. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.d.ts +29 -207
  399. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.d.ts.map +1 -1
  400. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.js +97 -683
  401. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.js.map +1 -1
  402. package/dist/backend/backend/src/services/messaging/google-chat-initializer.d.ts.map +1 -1
  403. package/dist/backend/backend/src/services/messaging/google-chat-initializer.js +13 -12
  404. package/dist/backend/backend/src/services/messaging/google-chat-initializer.js.map +1 -1
  405. package/dist/backend/backend/src/services/messaging/messenger-adapter.interface.d.ts +2 -0
  406. package/dist/backend/backend/src/services/messaging/messenger-adapter.interface.d.ts.map +1 -1
  407. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts +6 -23
  408. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  409. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +48 -184
  410. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  411. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts.map +1 -1
  412. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js +51 -5
  413. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js.map +1 -1
  414. package/dist/backend/backend/src/services/orchestrator/index.d.ts +1 -1
  415. package/dist/backend/backend/src/services/orchestrator/index.d.ts.map +1 -1
  416. package/dist/backend/backend/src/services/orchestrator/index.js +1 -1
  417. package/dist/backend/backend/src/services/orchestrator/index.js.map +1 -1
  418. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.d.ts +65 -0
  419. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.d.ts.map +1 -1
  420. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.js +165 -2
  421. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.js.map +1 -1
  422. package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.d.ts +8 -0
  423. package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.d.ts.map +1 -1
  424. package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.js +23 -0
  425. package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.js.map +1 -1
  426. package/dist/backend/backend/src/services/payment/stripe.service.d.ts +95 -43
  427. package/dist/backend/backend/src/services/payment/stripe.service.d.ts.map +1 -1
  428. package/dist/backend/backend/src/services/payment/stripe.service.js +229 -190
  429. package/dist/backend/backend/src/services/payment/stripe.service.js.map +1 -1
  430. package/dist/backend/backend/src/services/pr-review/pr-review.service.d.ts +181 -0
  431. package/dist/backend/backend/src/services/pr-review/pr-review.service.d.ts.map +1 -0
  432. package/dist/backend/backend/src/services/pr-review/pr-review.service.js +336 -0
  433. package/dist/backend/backend/src/services/pr-review/pr-review.service.js.map +1 -0
  434. package/dist/backend/backend/src/services/project/task-tracking.service.d.ts +23 -0
  435. package/dist/backend/backend/src/services/project/task-tracking.service.d.ts.map +1 -1
  436. package/dist/backend/backend/src/services/project/task-tracking.service.js +88 -0
  437. package/dist/backend/backend/src/services/project/task-tracking.service.js.map +1 -1
  438. package/dist/backend/backend/src/services/session/index.d.ts +2 -0
  439. package/dist/backend/backend/src/services/session/index.d.ts.map +1 -1
  440. package/dist/backend/backend/src/services/session/index.js +2 -0
  441. package/dist/backend/backend/src/services/session/index.js.map +1 -1
  442. package/dist/backend/backend/src/services/session/session-handoff.service.d.ts +260 -0
  443. package/dist/backend/backend/src/services/session/session-handoff.service.d.ts.map +1 -0
  444. package/dist/backend/backend/src/services/session/session-handoff.service.js +565 -0
  445. package/dist/backend/backend/src/services/session/session-handoff.service.js.map +1 -0
  446. package/dist/backend/backend/src/services/skill/index.d.ts +1 -0
  447. package/dist/backend/backend/src/services/skill/index.d.ts.map +1 -1
  448. package/dist/backend/backend/src/services/skill/index.js +1 -0
  449. package/dist/backend/backend/src/services/skill/index.js.map +1 -1
  450. package/dist/backend/backend/src/services/skill/skill-catalog.service.d.ts +25 -6
  451. package/dist/backend/backend/src/services/skill/skill-catalog.service.d.ts.map +1 -1
  452. package/dist/backend/backend/src/services/skill/skill-catalog.service.js +78 -20
  453. package/dist/backend/backend/src/services/skill/skill-catalog.service.js.map +1 -1
  454. package/dist/backend/backend/src/services/skill/skill-tier.service.d.ts +116 -0
  455. package/dist/backend/backend/src/services/skill/skill-tier.service.d.ts.map +1 -0
  456. package/dist/backend/backend/src/services/skill/skill-tier.service.js +155 -0
  457. package/dist/backend/backend/src/services/skill/skill-tier.service.js.map +1 -0
  458. package/dist/backend/backend/src/services/skill/skill.service.d.ts +35 -7
  459. package/dist/backend/backend/src/services/skill/skill.service.d.ts.map +1 -1
  460. package/dist/backend/backend/src/services/skill/skill.service.js +128 -35
  461. package/dist/backend/backend/src/services/skill/skill.service.js.map +1 -1
  462. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +50 -47
  463. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  464. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +267 -202
  465. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  466. package/dist/backend/backend/src/services/slack/slack.service.d.ts +28 -2
  467. package/dist/backend/backend/src/services/slack/slack.service.d.ts.map +1 -1
  468. package/dist/backend/backend/src/services/slack/slack.service.js +69 -3
  469. package/dist/backend/backend/src/services/slack/slack.service.js.map +1 -1
  470. package/dist/backend/backend/src/services/template/template.service.d.ts +19 -1
  471. package/dist/backend/backend/src/services/template/template.service.d.ts.map +1 -1
  472. package/dist/backend/backend/src/services/template/template.service.js +110 -3
  473. package/dist/backend/backend/src/services/template/template.service.js.map +1 -1
  474. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.d.ts +11 -0
  475. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.d.ts.map +1 -1
  476. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js +57 -3
  477. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js.map +1 -1
  478. package/dist/backend/backend/src/services/workflow/message-scheduler.service.d.ts.map +1 -1
  479. package/dist/backend/backend/src/services/workflow/message-scheduler.service.js +6 -0
  480. package/dist/backend/backend/src/services/workflow/message-scheduler.service.js.map +1 -1
  481. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts +52 -0
  482. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts.map +1 -1
  483. package/dist/backend/backend/src/services/workflow/scheduler.service.js +319 -6
  484. package/dist/backend/backend/src/services/workflow/scheduler.service.js.map +1 -1
  485. package/dist/backend/backend/src/types/chat.types.d.ts +2 -2
  486. package/dist/backend/backend/src/types/chat.types.d.ts.map +1 -1
  487. package/dist/backend/backend/src/types/chat.types.js +18 -22
  488. package/dist/backend/backend/src/types/chat.types.js.map +1 -1
  489. package/dist/backend/backend/src/types/index.d.ts +38 -1
  490. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  491. package/dist/backend/backend/src/types/index.js.map +1 -1
  492. package/dist/backend/backend/src/types/marketplace.types.d.ts +1 -1
  493. package/dist/backend/backend/src/types/marketplace.types.d.ts.map +1 -1
  494. package/dist/backend/backend/src/types/scheduler.types.d.ts +4 -0
  495. package/dist/backend/backend/src/types/scheduler.types.d.ts.map +1 -1
  496. package/dist/backend/backend/src/types/scheduler.types.js.map +1 -1
  497. package/dist/backend/backend/src/types/skill.types.d.ts +4 -0
  498. package/dist/backend/backend/src/types/skill.types.d.ts.map +1 -1
  499. package/dist/backend/backend/src/types/skill.types.js.map +1 -1
  500. package/dist/backend/backend/src/types/task-tracking.types.d.ts +6 -0
  501. package/dist/backend/backend/src/types/task-tracking.types.d.ts.map +1 -1
  502. package/dist/backend/backend/src/types/task-tracking.types.js.map +1 -1
  503. package/dist/backend/backend/src/types/team-template.types.d.ts +2 -0
  504. package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
  505. package/dist/backend/backend/src/types/team-template.types.js.map +1 -1
  506. package/dist/backend/backend/src/utils/skill-md-parser.d.ts +38 -0
  507. package/dist/backend/backend/src/utils/skill-md-parser.d.ts.map +1 -0
  508. package/dist/backend/backend/src/utils/skill-md-parser.js +47 -0
  509. package/dist/backend/backend/src/utils/skill-md-parser.js.map +1 -0
  510. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts +49 -139
  511. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts.map +1 -1
  512. package/dist/backend/backend/src/websocket/terminal.gateway.js +143 -502
  513. package/dist/backend/backend/src/websocket/terminal.gateway.js.map +1 -1
  514. package/dist/backend/config/constants.d.ts +18 -3
  515. package/dist/backend/config/constants.d.ts.map +1 -1
  516. package/dist/backend/config/constants.js +18 -3
  517. package/dist/backend/config/constants.js.map +1 -1
  518. package/dist/cli/backend/src/constants.d.ts +80 -11
  519. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  520. package/dist/cli/backend/src/constants.js +85 -11
  521. package/dist/cli/backend/src/constants.js.map +1 -1
  522. package/dist/cli/backend/src/services/knowledge/embedding-provider.d.ts +78 -0
  523. package/dist/cli/backend/src/services/knowledge/embedding-provider.d.ts.map +1 -0
  524. package/dist/cli/backend/src/services/knowledge/embedding-provider.js +164 -0
  525. package/dist/cli/backend/src/services/knowledge/embedding-provider.js.map +1 -0
  526. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.d.ts +91 -11
  527. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.d.ts.map +1 -1
  528. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.js +244 -15
  529. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.js.map +1 -1
  530. package/dist/cli/backend/src/services/knowledge/vector-store.service.d.ts +331 -0
  531. package/dist/cli/backend/src/services/knowledge/vector-store.service.d.ts.map +1 -0
  532. package/dist/cli/backend/src/services/knowledge/vector-store.service.js +814 -0
  533. package/dist/cli/backend/src/services/knowledge/vector-store.service.js.map +1 -0
  534. package/dist/cli/backend/src/services/memory/memory.service.d.ts +38 -0
  535. package/dist/cli/backend/src/services/memory/memory.service.d.ts.map +1 -1
  536. package/dist/cli/backend/src/services/memory/memory.service.js +121 -2
  537. package/dist/cli/backend/src/services/memory/memory.service.js.map +1 -1
  538. package/dist/cli/backend/src/types/chat.types.d.ts +2 -2
  539. package/dist/cli/backend/src/types/chat.types.d.ts.map +1 -1
  540. package/dist/cli/backend/src/types/chat.types.js +18 -22
  541. package/dist/cli/backend/src/types/chat.types.js.map +1 -1
  542. package/dist/cli/backend/src/types/index.d.ts +38 -1
  543. package/dist/cli/backend/src/types/index.d.ts.map +1 -1
  544. package/dist/cli/backend/src/types/index.js.map +1 -1
  545. package/dist/cli/backend/src/types/scheduler.types.d.ts +4 -0
  546. package/dist/cli/backend/src/types/scheduler.types.d.ts.map +1 -1
  547. package/dist/cli/backend/src/types/scheduler.types.js.map +1 -1
  548. package/dist/cli/backend/src/types/skill.types.d.ts +4 -0
  549. package/dist/cli/backend/src/types/skill.types.d.ts.map +1 -1
  550. package/dist/cli/backend/src/types/skill.types.js.map +1 -1
  551. package/dist/cli/cli/src/commands/onboard.d.ts +19 -2
  552. package/dist/cli/cli/src/commands/onboard.d.ts.map +1 -1
  553. package/dist/cli/cli/src/commands/onboard.js +58 -15
  554. package/dist/cli/cli/src/commands/onboard.js.map +1 -1
  555. package/dist/cli/cli/src/commands/pair.d.ts +46 -0
  556. package/dist/cli/cli/src/commands/pair.d.ts.map +1 -0
  557. package/dist/cli/cli/src/commands/pair.js +258 -0
  558. package/dist/cli/cli/src/commands/pair.js.map +1 -0
  559. package/dist/cli/cli/src/commands/service.d.ts +86 -0
  560. package/dist/cli/cli/src/commands/service.d.ts.map +1 -0
  561. package/dist/cli/cli/src/commands/service.js +687 -0
  562. package/dist/cli/cli/src/commands/service.js.map +1 -0
  563. package/dist/cli/cli/src/index.js +17 -0
  564. package/dist/cli/cli/src/index.js.map +1 -1
  565. package/dist/cli/config/constants.d.ts +18 -3
  566. package/dist/cli/config/constants.d.ts.map +1 -1
  567. package/dist/cli/config/constants.js +18 -3
  568. package/dist/cli/config/constants.js.map +1 -1
  569. package/frontend/dist/assets/index-1d23cce8.js +4919 -0
  570. package/frontend/dist/assets/index-60a9e4ea.css +33 -0
  571. package/frontend/dist/index.html +2 -2
  572. package/package.json +22 -9
  573. package/config/skills/agent/browse-stealth/skill.json +0 -20
  574. package/config/skills/agent/competitor-content-tracker/skill.json +0 -22
  575. package/config/skills/agent/computer-use/skill.json +0 -29
  576. package/config/skills/agent/content-calendar/skill.json +0 -22
  577. package/config/skills/agent/content-repurposer/skill.json +0 -22
  578. package/config/skills/agent/content-writer/skill.json +0 -22
  579. package/config/skills/agent/core/accept-task/skill.json +0 -20
  580. package/config/skills/agent/core/block-task/skill.json +0 -20
  581. package/config/skills/agent/core/check-quality-gates/skill.json +0 -20
  582. package/config/skills/agent/core/complete-task/skill.json +0 -20
  583. package/config/skills/agent/core/generate-pdf/skill.json +0 -20
  584. package/config/skills/agent/core/get-my-context/skill.json +0 -20
  585. package/config/skills/agent/core/get-sops/skill.json +0 -20
  586. package/config/skills/agent/core/get-team-status/instructions.md +0 -17
  587. package/config/skills/agent/core/get-team-status/skill.json +0 -20
  588. package/config/skills/agent/core/heartbeat/skill.json +0 -20
  589. package/config/skills/agent/core/marketplace-search/skill.json +0 -20
  590. package/config/skills/agent/core/query-knowledge/skill.json +0 -20
  591. package/config/skills/agent/core/read-task/instructions.md +0 -19
  592. package/config/skills/agent/core/read-task/skill.json +0 -20
  593. package/config/skills/agent/core/recall/skill.json +0 -20
  594. package/config/skills/agent/core/record-learning/skill.json +0 -20
  595. package/config/skills/agent/core/register-self/instructions.md +0 -18
  596. package/config/skills/agent/core/register-self/skill.json +0 -20
  597. package/config/skills/agent/core/remember/skill.json +0 -20
  598. package/config/skills/agent/core/reply-chat/skill.json +0 -20
  599. package/config/skills/agent/core/report-progress/skill.json +0 -20
  600. package/config/skills/agent/core/report-status/skill.json +0 -20
  601. package/config/skills/agent/core/send-chat-response/skill.json +0 -20
  602. package/config/skills/agent/core/send-message/instructions.md +0 -20
  603. package/config/skills/agent/core/send-message/skill.json +0 -20
  604. package/config/skills/agent/desktop-app-control/skill.json +0 -33
  605. package/config/skills/agent/trend-monitor/skill.json +0 -22
  606. package/config/skills/agent/vnc-browser/skill.json +0 -20
  607. package/config/skills/orchestrator/assign-task/instructions.md +0 -17
  608. package/config/skills/orchestrator/assign-task/skill.json +0 -20
  609. package/config/skills/orchestrator/assign-team-to-project/skill.json +0 -20
  610. package/config/skills/orchestrator/broadcast/skill.json +0 -20
  611. package/config/skills/orchestrator/broadcast-to-org/skill.json +0 -20
  612. package/config/skills/orchestrator/cancel-all-schedules/skill.json +0 -17
  613. package/config/skills/orchestrator/cancel-schedule/instructions.md +0 -19
  614. package/config/skills/orchestrator/cancel-schedule/skill.json +0 -20
  615. package/config/skills/orchestrator/complete-task/instructions.md +0 -17
  616. package/config/skills/orchestrator/complete-task/skill.json +0 -20
  617. package/config/skills/orchestrator/create-project/skill.json +0 -20
  618. package/config/skills/orchestrator/create-team/skill.json +0 -20
  619. package/config/skills/orchestrator/delegate-task/skill.json +0 -20
  620. package/config/skills/orchestrator/get-agent-logs/skill.json +0 -20
  621. package/config/skills/orchestrator/get-agent-status/skill.json +0 -20
  622. package/config/skills/orchestrator/get-project-overview/instructions.md +0 -17
  623. package/config/skills/orchestrator/get-project-overview/skill.json +0 -20
  624. package/config/skills/orchestrator/get-tasks/instructions.md +0 -17
  625. package/config/skills/orchestrator/get-tasks/skill.json +0 -20
  626. package/config/skills/orchestrator/get-team-status/instructions.md +0 -17
  627. package/config/skills/orchestrator/get-team-status/skill.json +0 -20
  628. package/config/skills/orchestrator/handle-agent-failure/skill.json +0 -20
  629. package/config/skills/orchestrator/heartbeat/skill.json +0 -20
  630. package/config/skills/orchestrator/list-schedules/skill.json +0 -12
  631. package/config/skills/orchestrator/list-subscriptions/instructions.md +0 -17
  632. package/config/skills/orchestrator/list-subscriptions/skill.json +0 -20
  633. package/config/skills/orchestrator/query-knowledge/skill.json +0 -20
  634. package/config/skills/orchestrator/read-session-logs/skill.json +0 -20
  635. package/config/skills/orchestrator/read-system-logs/skill.json +0 -20
  636. package/config/skills/orchestrator/recall/skill.json +0 -20
  637. package/config/skills/orchestrator/record-failure/skill.json +0 -20
  638. package/config/skills/orchestrator/record-learning/skill.json +0 -20
  639. package/config/skills/orchestrator/record-success/skill.json +0 -20
  640. package/config/skills/orchestrator/register-self/skill.json +0 -20
  641. package/config/skills/orchestrator/remember/skill.json +0 -20
  642. package/config/skills/orchestrator/reply-chat/skill.json +0 -20
  643. package/config/skills/orchestrator/reply-gchat/skill.json +0 -20
  644. package/config/skills/orchestrator/reply-slack/skill.json +0 -20
  645. package/config/skills/orchestrator/report-bug/skill.json +0 -20
  646. package/config/skills/orchestrator/restart-crewly/skill.json +0 -20
  647. package/config/skills/orchestrator/resume-session/skill.json +0 -20
  648. package/config/skills/orchestrator/schedule-check/skill.json +0 -20
  649. package/config/skills/orchestrator/send-key/skill.json +0 -20
  650. package/config/skills/orchestrator/send-message/skill.json +0 -20
  651. package/config/skills/orchestrator/send-pdf-to-slack/skill.json +0 -20
  652. package/config/skills/orchestrator/set-goal/skill.json +0 -20
  653. package/config/skills/orchestrator/start-agent/skill.json +0 -20
  654. package/config/skills/orchestrator/start-team/skill.json +0 -20
  655. package/config/skills/orchestrator/stop-agent/skill.json +0 -20
  656. package/config/skills/orchestrator/stop-team/instructions.md +0 -19
  657. package/config/skills/orchestrator/stop-team/skill.json +0 -20
  658. package/config/skills/orchestrator/subscribe-event/skill.json +0 -20
  659. package/config/skills/orchestrator/terminate-agent/skill.json +0 -20
  660. package/config/skills/orchestrator/unsubscribe-event/instructions.md +0 -19
  661. package/config/skills/orchestrator/unsubscribe-event/skill.json +0 -20
  662. package/config/skills/orchestrator/update-focus/skill.json +0 -20
  663. package/config/skills/orchestrator/update-team/skill.json +0 -20
  664. package/config/skills/team-leader/aggregate-results/skill.json +0 -20
  665. package/config/skills/team-leader/decompose-goal/skill.json +0 -20
  666. package/config/skills/team-leader/delegate-task/skill.json +0 -20
  667. package/config/skills/team-leader/handle-failure/skill.json +0 -20
  668. package/config/skills/team-leader/schedule-check/skill.json +0 -20
  669. package/config/skills/team-leader/start-agent/skill.json +0 -20
  670. package/config/skills/team-leader/stop-agent/skill.json +0 -20
  671. package/config/skills/team-leader/verify-output/skill.json +0 -20
  672. package/frontend/dist/assets/index-0e5673b0.css +0 -33
  673. package/frontend/dist/assets/index-adae9eb6.js +0 -5213
@@ -2,11 +2,11 @@
2
2
  * Auditor Scheduler Service
3
3
  *
4
4
  * Manages the lifecycle and triggering of the Crewly Auditor agent.
5
- * The auditor runs in always-active mode — initialized at server start
5
+ * The auditor runs as a Claude Code PTY session — initialized at server start
6
6
  * and kept alive until the service stops.
7
7
  *
8
8
  * Three trigger layers:
9
- * L1 — Periodic: setInterval every AUDIT_INTERVAL_MS (30 min)
9
+ * L1 — Periodic: setInterval every AUDIT_INTERVAL_MS (15 min)
10
10
  * L2 — Event-driven: EventBus events (agent:inactive, task:failed) with debounce
11
11
  * L3 — API: POST /api/auditor/trigger manual trigger
12
12
  *
@@ -15,20 +15,20 @@
15
15
  * @module services/agent/auditor-scheduler
16
16
  */
17
17
  import { LoggerService } from '../core/logger.service.js';
18
- import { AUDITOR_SCHEDULER_CONSTANTS } from '../../constants.js';
18
+ import { AUDITOR_SCHEDULER_CONSTANTS, RUNTIME_TYPES } from '../../constants.js';
19
19
  import { formatError } from '../../utils/format-error.js';
20
20
  /**
21
- * Scheduler service that orchestrates Auditor agent lifecycle.
21
+ * Scheduler service that orchestrates Auditor agent lifecycle via Claude Code PTY session.
22
22
  *
23
- * Always-active mode: the auditor runtime is initialized at start()
24
- * and remains alive until stop(). Audit runs do NOT shut down the runtime.
23
+ * Always-active mode: the auditor PTY session is created at start()
24
+ * and remains alive until stop(). Audit runs send messages to the existing session.
25
25
  *
26
26
  * Singleton — use AuditorSchedulerService.getInstance().
27
27
  *
28
28
  * @example
29
29
  * ```typescript
30
30
  * const scheduler = AuditorSchedulerService.getInstance();
31
- * scheduler.setAuditorRuntime(runtime);
31
+ * scheduler.setAgentRegistrationService(agentRegService);
32
32
  * scheduler.setEventBusService(eventBus);
33
33
  * scheduler.start();
34
34
  * ```
@@ -38,17 +38,26 @@ export class AuditorSchedulerService {
38
38
  logger;
39
39
  status = 'stopped';
40
40
  // Dependencies
41
- auditorRuntime = null;
41
+ agentRegistrationService = null;
42
42
  eventBusService = null;
43
43
  // L1: Periodic timer
44
44
  periodicTimer = null;
45
45
  // L2: Event-driven debounce
46
46
  eventDebounceTimer = null;
47
47
  eventListenerBound = false;
48
+ // Session recovery timer: scheduled when auditor's own session goes inactive
49
+ sessionRecoveryTimer = null;
48
50
  // Lifecycle: timeout protection
49
51
  auditTimeoutTimer = null;
50
52
  lastAuditStart = 0;
51
53
  auditCount = 0;
54
+ // PTY session tracking
55
+ sessionReady = false;
56
+ sessionInitializing = false;
57
+ sessionRetryCount = 0;
58
+ sessionCooldownUntil = 0;
59
+ // Scheduled audit items for catch-up on restart
60
+ scheduledItems = [];
52
61
  constructor() {
53
62
  this.logger = LoggerService.getInstance().createComponentLogger('AuditorScheduler');
54
63
  }
@@ -73,12 +82,12 @@ export class AuditorSchedulerService {
73
82
  AuditorSchedulerService.instance = null;
74
83
  }
75
84
  /**
76
- * Set the Auditor runtime service for lifecycle management.
85
+ * Set the AgentRegistrationService for PTY session management.
77
86
  *
78
- * @param runtime - The CrewlyAgentRuntimeService configured for the auditor
87
+ * @param service - The AgentRegistrationService instance
79
88
  */
80
- setAuditorRuntime(runtime) {
81
- this.auditorRuntime = runtime;
89
+ setAgentRegistrationService(service) {
90
+ this.agentRegistrationService = service;
82
91
  }
83
92
  /**
84
93
  * Set the EventBusService for L2 event-driven triggers.
@@ -89,8 +98,8 @@ export class AuditorSchedulerService {
89
98
  this.eventBusService = eventBus;
90
99
  }
91
100
  /**
92
- * Start all trigger layers and initialize the auditor runtime.
93
- * The auditor is initialized immediately (always-active mode).
101
+ * Start all trigger layers and initialize the auditor PTY session.
102
+ * The auditor session is created immediately (always-active mode).
94
103
  * L1: periodic interval. L2: EventBus listener.
95
104
  */
96
105
  start() {
@@ -99,9 +108,11 @@ export class AuditorSchedulerService {
99
108
  return;
100
109
  }
101
110
  this.status = 'idle';
102
- this.logger.info('AuditorScheduler starting (always-active mode)');
103
- // Initialize auditor runtime immediately (always-active)
104
- void this.initializeAuditorRuntime();
111
+ this.logger.info('AuditorScheduler starting (Claude Code PTY mode)');
112
+ // Initialize auditor PTY session immediately (always-active)
113
+ void this.ensureAuditorSession();
114
+ // Catch up any missed scheduled checks from before shutdown
115
+ void this.catchUpMissedChecks();
105
116
  // L1: Periodic trigger
106
117
  this.periodicTimer = setInterval(() => {
107
118
  void this.trigger('periodic');
@@ -115,7 +126,7 @@ export class AuditorSchedulerService {
115
126
  });
116
127
  }
117
128
  /**
118
- * Stop all trigger layers, clean up timers, and shut down the runtime.
129
+ * Stop all trigger layers, clean up timers, and terminate the PTY session.
119
130
  * Only called when the entire service is shutting down.
120
131
  */
121
132
  stop() {
@@ -131,10 +142,21 @@ export class AuditorSchedulerService {
131
142
  clearTimeout(this.auditTimeoutTimer);
132
143
  this.auditTimeoutTimer = null;
133
144
  }
134
- // Shutdown runtime only on full service stop
135
- if (this.auditorRuntime?.isReady()) {
136
- this.auditorRuntime.shutdown();
145
+ if (this.sessionRecoveryTimer) {
146
+ clearTimeout(this.sessionRecoveryTimer);
147
+ this.sessionRecoveryTimer = null;
137
148
  }
149
+ // Terminate PTY session only on full service stop
150
+ if (this.sessionReady && this.agentRegistrationService) {
151
+ void this.agentRegistrationService.terminateAgentSession(AUDITOR_SCHEDULER_CONSTANTS.AUDITOR_SESSION_NAME).catch((err) => {
152
+ this.logger.error('Failed to terminate auditor session', { error: formatError(err) });
153
+ });
154
+ }
155
+ this.sessionReady = false;
156
+ this.sessionInitializing = false;
157
+ this.sessionRetryCount = 0;
158
+ this.sessionCooldownUntil = 0;
159
+ this.scheduledItems = [];
138
160
  this.eventListenerBound = false;
139
161
  this.status = 'stopped';
140
162
  this.logger.info('AuditorScheduler stopped');
@@ -142,8 +164,8 @@ export class AuditorSchedulerService {
142
164
  /**
143
165
  * Trigger an audit run.
144
166
  *
145
- * Checks if an audit is already running, ensures the auditor is ready,
146
- * sends the audit command, and keeps the runtime alive after completion.
167
+ * Checks if an audit is already running, ensures the auditor session exists,
168
+ * sends the audit command via PTY, and keeps the session alive after completion.
147
169
  *
148
170
  * @param source - What triggered this audit ('periodic', 'event', 'api')
149
171
  * @returns Result indicating whether the audit was triggered
@@ -159,16 +181,16 @@ export class AuditorSchedulerService {
159
181
  if (this.status === 'stopped') {
160
182
  return { triggered: false, reason: 'Scheduler is stopped', source, timestamp };
161
183
  }
162
- // Guard: no runtime
163
- if (!this.auditorRuntime) {
164
- this.logger.warn('No auditor runtime configured');
165
- return { triggered: false, reason: 'No auditor runtime configured', source, timestamp };
184
+ // Guard: no registration service
185
+ if (!this.agentRegistrationService) {
186
+ this.logger.warn('No agent registration service configured');
187
+ return { triggered: false, reason: 'No agent registration service configured', source, timestamp };
166
188
  }
167
189
  this.logger.info('Triggering audit', { source });
168
190
  this.status = 'running_audit';
169
191
  this.lastAuditStart = Date.now();
170
192
  this.auditCount++;
171
- // Start timeout timer to prevent audit from hanging forever (RL5)
193
+ // Start timeout timer to prevent audit from hanging forever
172
194
  this.auditTimeoutTimer = setTimeout(() => {
173
195
  if (this.status === 'running_audit') {
174
196
  this.logger.error('Audit timed out, resetting to idle', {
@@ -179,29 +201,40 @@ export class AuditorSchedulerService {
179
201
  }
180
202
  }, AUDITOR_SCHEDULER_CONSTANTS.AUDIT_TIMEOUT_MS);
181
203
  try {
182
- // Ensure auditor is ready (should already be from start(), defensive check)
183
- if (!this.auditorRuntime.isReady()) {
184
- await this.initializeAuditorRuntime();
204
+ // Ensure auditor session exists
205
+ await this.ensureAuditorSession();
206
+ // Guard: session creation may have failed (retry exhaustion, cooldown, etc.)
207
+ if (!this.sessionReady) {
208
+ this.logger.warn('Auditor session not ready after ensureAuditorSession, skipping trigger', { source });
209
+ this.status = 'idle';
210
+ return { triggered: false, reason: 'Auditor session not ready', source, timestamp };
185
211
  }
186
- // Send audit command
212
+ // Send audit command via PTY
187
213
  const auditCommand = AUDITOR_SCHEDULER_CONSTANTS.AUDIT_COMMAND;
188
- this.logger.info('Sending audit command', { command: auditCommand.substring(0, 80) });
189
- const result = await this.auditorRuntime.handleMessage(auditCommand);
190
- this.logger.info('Audit completed', {
214
+ this.logger.info('Sending audit command via PTY', { command: auditCommand.substring(0, 80) });
215
+ const result = await this.agentRegistrationService.sendMessageToAgent(AUDITOR_SCHEDULER_CONSTANTS.AUDITOR_SESSION_NAME, auditCommand, RUNTIME_TYPES.CLAUDE_CODE);
216
+ if (!result.success) {
217
+ this.logger.error('Failed to send audit command', { error: result.error });
218
+ // Session may be dead — mark not ready so next trigger recreates
219
+ this.sessionReady = false;
220
+ this.status = 'idle';
221
+ return { triggered: false, reason: `Send failed: ${result.error}`, source, timestamp };
222
+ }
223
+ this.logger.info('Audit command sent', {
191
224
  source,
192
- steps: result.steps,
193
- toolCalls: result.toolCalls.length,
194
225
  duration: Date.now() - this.lastAuditStart,
195
226
  });
196
- // Stay idle — do NOT shutdown (always-active mode)
227
+ // Stay idle — do NOT terminate session (always-active mode)
197
228
  this.status = 'idle';
198
229
  return { triggered: true, source, timestamp };
199
230
  }
200
231
  catch (error) {
201
232
  const errMsg = formatError(error);
202
233
  this.logger.error('Audit failed', { source, error: errMsg });
203
- // Stay idle — do NOT shutdown on error (always-active mode)
234
+ // Stay idle — do NOT terminate on error (always-active mode)
204
235
  this.status = 'idle';
236
+ // Mark session as not ready so next trigger attempts to recreate
237
+ this.sessionReady = false;
205
238
  return { triggered: false, reason: `Audit error: ${errMsg}`, source, timestamp };
206
239
  }
207
240
  finally {
@@ -214,7 +247,7 @@ export class AuditorSchedulerService {
214
247
  /**
215
248
  * Handle a user message routed from Slack.
216
249
  *
217
- * Passes the message to the auditor runtime with Slack context
250
+ * Passes the message to the auditor PTY session with Slack context
218
251
  * so the auditor can reply directly via the reply_slack tool.
219
252
  *
220
253
  * @param message - User message text (auditor prefix already stripped)
@@ -223,24 +256,26 @@ export class AuditorSchedulerService {
223
256
  */
224
257
  async handleUserMessage(message, slackContext) {
225
258
  const timestamp = new Date().toISOString();
226
- if (!this.auditorRuntime) {
227
- return { triggered: false, reason: 'No auditor runtime configured', source: 'api', timestamp };
228
- }
229
- // Ensure runtime is ready (always-active should have it ready)
230
- if (!this.auditorRuntime.isReady()) {
231
- await this.initializeAuditorRuntime();
259
+ if (!this.agentRegistrationService) {
260
+ return { triggered: false, reason: 'No agent registration service configured', source: 'api', timestamp };
232
261
  }
233
- if (!this.auditorRuntime.isReady()) {
234
- return { triggered: false, reason: 'Failed to initialize auditor runtime', source: 'api', timestamp };
262
+ // Ensure session is ready
263
+ await this.ensureAuditorSession();
264
+ if (!this.sessionReady) {
265
+ return { triggered: false, reason: 'Failed to initialize auditor session', source: 'api', timestamp };
235
266
  }
236
267
  // Prefix message with Slack context so auditor can use reply_slack
237
268
  const slackPrefix = `[SLACK_CONTEXT:channelId=${slackContext.channelId},threadTs=${slackContext.threadTs}]\n`;
238
269
  try {
239
- this.logger.info('Handling user message via auditor', {
270
+ this.logger.info('Handling user message via auditor PTY', {
240
271
  messageLength: message.length,
241
272
  channelId: slackContext.channelId,
242
273
  });
243
- await this.auditorRuntime.handleMessage(slackPrefix + message);
274
+ const result = await this.agentRegistrationService.sendMessageToAgent(AUDITOR_SCHEDULER_CONSTANTS.AUDITOR_SESSION_NAME, slackPrefix + message, RUNTIME_TYPES.CLAUDE_CODE);
275
+ if (!result.success) {
276
+ this.sessionReady = false;
277
+ return { triggered: false, reason: `Send failed: ${result.error}`, source: 'api', timestamp };
278
+ }
244
279
  return { triggered: true, source: 'api', timestamp };
245
280
  }
246
281
  catch (error) {
@@ -263,42 +298,208 @@ export class AuditorSchedulerService {
263
298
  : null,
264
299
  periodicEnabled: this.periodicTimer !== null,
265
300
  eventListenerBound: this.eventListenerBound,
266
- runtimeReady: this.auditorRuntime?.isReady() ?? false,
301
+ runtimeReady: this.sessionReady,
302
+ };
303
+ }
304
+ /**
305
+ * Add a scheduled audit item for future tracking.
306
+ * Items that are overdue at next startup will be caught up.
307
+ *
308
+ * @param scheduledTime - Unix timestamp when the audit should fire
309
+ * @param source - Trigger source
310
+ * @returns The created ScheduledAuditItem
311
+ */
312
+ addScheduledItem(scheduledTime, source) {
313
+ const item = {
314
+ id: `audit-${Date.now()}-${Math.random().toString(36).substring(2, 8)}`,
315
+ scheduledTime,
316
+ source,
317
+ fired: false,
267
318
  };
319
+ this.scheduledItems.push(item);
320
+ this.logger.debug('Added scheduled audit item', { id: item.id, scheduledTime: new Date(scheduledTime).toISOString(), source });
321
+ return item;
322
+ }
323
+ /**
324
+ * Get all scheduled items (for testing/diagnostics).
325
+ *
326
+ * @returns Copy of the scheduled items array
327
+ */
328
+ getScheduledItems() {
329
+ return [...this.scheduledItems];
330
+ }
331
+ /**
332
+ * Check for scheduled items where scheduledTime < now and status !== fired,
333
+ * then fire them immediately. Called on startup/restore to catch up on any
334
+ * audits that were missed during downtime.
335
+ *
336
+ * @returns Number of missed checks that were caught up
337
+ */
338
+ async catchUpMissedChecks() {
339
+ const now = Date.now();
340
+ const missedItems = this.scheduledItems.filter((item) => item.scheduledTime < now && !item.fired);
341
+ if (missedItems.length === 0) {
342
+ this.logger.debug('No missed scheduled checks to catch up');
343
+ return 0;
344
+ }
345
+ this.logger.info('Catching up missed scheduled checks', {
346
+ missedCount: missedItems.length,
347
+ oldestMs: now - Math.min(...missedItems.map((i) => i.scheduledTime)),
348
+ });
349
+ let firedCount = 0;
350
+ for (const item of missedItems) {
351
+ item.fired = true;
352
+ const result = await this.trigger(item.source);
353
+ if (result.triggered) {
354
+ firedCount++;
355
+ this.logger.info('Caught up missed check', {
356
+ id: item.id,
357
+ originalSchedule: new Date(item.scheduledTime).toISOString(),
358
+ source: item.source,
359
+ });
360
+ }
361
+ }
362
+ this.logger.info('Missed check catch-up complete', {
363
+ totalMissed: missedItems.length,
364
+ successfullyFired: firedCount,
365
+ });
366
+ return firedCount;
268
367
  }
269
368
  // ===== Private helpers =====
270
369
  /**
271
- * Initialize the auditor runtime with the auditor role prompt.
272
- * Called at start() and as defensive fallback in trigger()/handleUserMessage().
370
+ * Ensure the auditor Claude Code PTY session exists.
371
+ * Creates a new session via AgentRegistrationService if not ready.
372
+ * Guards against concurrent initialization and enforces retry limits
373
+ * with exponential backoff to prevent restart loops.
273
374
  */
274
- async initializeAuditorRuntime() {
275
- if (!this.auditorRuntime)
375
+ async ensureAuditorSession() {
376
+ if (this.sessionReady || this.sessionInitializing)
377
+ return;
378
+ if (!this.agentRegistrationService)
379
+ return;
380
+ // Check if in cooldown after max retries exhausted
381
+ if (this.sessionCooldownUntil > Date.now()) {
382
+ const remainingMs = this.sessionCooldownUntil - Date.now();
383
+ this.logger.debug('Auditor session in retry cooldown', {
384
+ remainingMs,
385
+ retryCount: this.sessionRetryCount,
386
+ });
387
+ return;
388
+ }
389
+ // Reset retry count if cooldown has expired
390
+ if (this.sessionCooldownUntil > 0 && Date.now() >= this.sessionCooldownUntil) {
391
+ this.sessionRetryCount = 0;
392
+ this.sessionCooldownUntil = 0;
393
+ this.logger.info('Auditor session retry cooldown expired, resetting retry count');
394
+ }
395
+ // Check retry limit
396
+ if (this.sessionRetryCount >= AUDITOR_SCHEDULER_CONSTANTS.MAX_SESSION_RETRIES) {
397
+ this.sessionCooldownUntil = Date.now() + AUDITOR_SCHEDULER_CONSTANTS.SESSION_RETRY_COOLDOWN_MS;
398
+ this.logger.warn('Auditor session max retries exhausted, entering cooldown', {
399
+ retryCount: this.sessionRetryCount,
400
+ cooldownMs: AUDITOR_SCHEDULER_CONSTANTS.SESSION_RETRY_COOLDOWN_MS,
401
+ });
276
402
  return;
403
+ }
404
+ this.sessionInitializing = true;
277
405
  try {
278
- if (!this.auditorRuntime.isReady()) {
279
- await this.auditorRuntime.initializeInProcess(AUDITOR_SCHEDULER_CONSTANTS.AUDITOR_SESSION_NAME, undefined, 'auditor');
280
- this.logger.info('Auditor runtime initialized (always-active mode)');
406
+ // Exponential backoff between retries
407
+ if (this.sessionRetryCount > 0) {
408
+ const backoffMs = Math.min(AUDITOR_SCHEDULER_CONSTANTS.SESSION_RETRY_INITIAL_BACKOFF_MS *
409
+ Math.pow(AUDITOR_SCHEDULER_CONSTANTS.SESSION_RETRY_BACKOFF_MULTIPLIER, this.sessionRetryCount - 1), AUDITOR_SCHEDULER_CONSTANTS.SESSION_RETRY_COOLDOWN_MS);
410
+ this.logger.info('Waiting before auditor session retry', {
411
+ retry: this.sessionRetryCount,
412
+ backoffMs,
413
+ });
414
+ await new Promise((resolve) => setTimeout(resolve, backoffMs));
415
+ }
416
+ const result = await this.agentRegistrationService.createAgentSession({
417
+ sessionName: AUDITOR_SCHEDULER_CONSTANTS.AUDITOR_SESSION_NAME,
418
+ role: 'auditor',
419
+ runtimeType: RUNTIME_TYPES.CLAUDE_CODE,
420
+ forceRecreate: true,
421
+ });
422
+ if (result.success) {
423
+ this.sessionReady = true;
424
+ this.sessionRetryCount = 0;
425
+ this.sessionCooldownUntil = 0;
426
+ this.logger.info('Auditor PTY session initialized (always-active mode)');
427
+ }
428
+ else {
429
+ this.sessionRetryCount++;
430
+ this.logger.error('Failed to create auditor PTY session', {
431
+ error: result.error,
432
+ retry: this.sessionRetryCount,
433
+ maxRetries: AUDITOR_SCHEDULER_CONSTANTS.MAX_SESSION_RETRIES,
434
+ });
281
435
  }
282
436
  }
283
437
  catch (error) {
284
- this.logger.error('Failed to initialize auditor runtime', {
438
+ this.sessionRetryCount++;
439
+ this.logger.error('Failed to initialize auditor session', {
285
440
  error: formatError(error),
441
+ retry: this.sessionRetryCount,
442
+ maxRetries: AUDITOR_SCHEDULER_CONSTANTS.MAX_SESSION_RETRIES,
286
443
  });
287
444
  }
445
+ finally {
446
+ this.sessionInitializing = false;
447
+ }
288
448
  }
289
449
  /**
290
450
  * Bind the EventBus listener for L2 event-driven triggers.
291
451
  * Listens for agent:inactive and task:failed events with debounce.
452
+ * Uses event_published (fires on ALL published events) instead of
453
+ * event_delivered (only fires when a subscription match exists).
292
454
  */
293
455
  bindEventBusListener() {
294
456
  if (!this.eventBusService || this.eventListenerBound) {
295
457
  return;
296
458
  }
297
459
  const triggerEvents = AUDITOR_SCHEDULER_CONSTANTS.TRIGGER_EVENT_TYPES;
298
- this.eventBusService.on('event_delivered', (payload) => {
460
+ this.eventBusService.on('event_published', (payload) => {
299
461
  if (!triggerEvents.includes(payload.eventType)) {
300
462
  return;
301
463
  }
464
+ // When the auditor's own session goes inactive (e.g., Claude Code exited after
465
+ // context exhaustion), don't trigger a new audit immediately (self-loop).
466
+ // Instead, schedule a delayed recovery that recreates the session and triggers
467
+ // the next audit. Without this, the auditor would stay inactive until the L1
468
+ // periodic timer fires (up to 15 min away).
469
+ if (payload.sessionName === AUDITOR_SCHEDULER_CONSTANTS.AUDITOR_SESSION_NAME) {
470
+ this.logger.info('Auditor session went inactive, scheduling recovery (#185)', {
471
+ eventType: payload.eventType,
472
+ recoveryDelayMs: AUDITOR_SCHEDULER_CONSTANTS.SESSION_RECOVERY_DELAY_MS,
473
+ });
474
+ this.sessionReady = false;
475
+ // #185: Reset retry state so recovery is not blocked by previous failures.
476
+ // Without this, a session that failed earlier could exhaust retries and
477
+ // enter cooldown, preventing recovery after the audit completes normally.
478
+ this.sessionRetryCount = 0;
479
+ this.sessionCooldownUntil = 0;
480
+ // Cancel any existing recovery timer to avoid stacking
481
+ if (this.sessionRecoveryTimer) {
482
+ clearTimeout(this.sessionRecoveryTimer);
483
+ }
484
+ this.sessionRecoveryTimer = setTimeout(() => {
485
+ this.sessionRecoveryTimer = null;
486
+ if (this.status !== 'stopped') {
487
+ this.logger.info('Auditor session recovery: recreating session (#185)');
488
+ // #185: Recreate session first, then trigger audit. Using
489
+ // ensureAuditorSession() directly avoids the running_audit guard
490
+ // in trigger() which would reject if status is still 'running_audit'.
491
+ void this.ensureAuditorSession().then(() => {
492
+ if (this.sessionReady) {
493
+ this.logger.info('Auditor session recovered, triggering audit');
494
+ void this.trigger('event');
495
+ }
496
+ }).catch((err) => {
497
+ this.logger.error('Auditor session recovery failed', { error: formatError(err) });
498
+ });
499
+ }
500
+ }, AUDITOR_SCHEDULER_CONSTANTS.SESSION_RECOVERY_DELAY_MS);
501
+ return;
502
+ }
302
503
  this.logger.debug('Audit-triggering event received, debouncing', {
303
504
  eventType: payload.eventType,
304
505
  });
@@ -1 +1 @@
1
- {"version":3,"file":"auditor-scheduler.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/auditor-scheduler.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auditor-scheduler.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/auditor-scheduler.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,aAAa,EAAmB,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,2BAA2B,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AA6C1D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,uBAAuB;IAC1B,MAAM,CAAC,QAAQ,GAAmC,IAAI,CAAC;IAEvD,MAAM,CAAkB;IACxB,MAAM,GAA2B,SAAS,CAAC;IAEnD,eAAe;IACP,wBAAwB,GAAoC,IAAI,CAAC;IACjE,eAAe,GAA2B,IAAI,CAAC;IAEvD,qBAAqB;IACb,aAAa,GAA0C,IAAI,CAAC;IAEpE,4BAA4B;IACpB,kBAAkB,GAAyC,IAAI,CAAC;IAChE,kBAAkB,GAAG,KAAK,CAAC;IAEnC,6EAA6E;IACrE,oBAAoB,GAAyC,IAAI,CAAC;IAE1E,gCAAgC;IACxB,iBAAiB,GAAyC,IAAI,CAAC;IAC/D,cAAc,GAAW,CAAC,CAAC;IAC3B,UAAU,GAAW,CAAC,CAAC;IAE/B,uBAAuB;IACf,YAAY,GAAG,KAAK,CAAC;IACrB,mBAAmB,GAAG,KAAK,CAAC;IAC5B,iBAAiB,GAAG,CAAC,CAAC;IACtB,oBAAoB,GAAG,CAAC,CAAC;IAEjC,gDAAgD;IACxC,cAAc,GAAyB,EAAE,CAAC;IAElD;QACE,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;IACtF,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,CAAC;YACtC,uBAAuB,CAAC,QAAQ,GAAG,IAAI,uBAAuB,EAAE,CAAC;QACnE,CAAC;QACD,OAAO,uBAAuB,CAAC,QAAQ,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa;QAClB,IAAI,uBAAuB,CAAC,QAAQ,EAAE,CAAC;YACrC,uBAAuB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC1C,CAAC;QACD,uBAAuB,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACH,2BAA2B,CAAC,OAAiC;QAC3D,IAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACH,kBAAkB,CAAC,QAAyB;QAC1C,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QAErE,6DAA6D;QAC7D,KAAK,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAEjC,4DAA4D;QAC5D,KAAK,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAEhC,uBAAuB;QACvB,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;YACpC,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC,EAAE,2BAA2B,CAAC,iBAAiB,CAAC,CAAC;QAElD,wBAAwB;QACxB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;YAC3C,UAAU,EAAE,2BAA2B,CAAC,iBAAiB;YACzD,UAAU,EAAE,2BAA2B,CAAC,iBAAiB;YACzD,SAAS,EAAE,2BAA2B,CAAC,gBAAgB;SACxD,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,IAAI;QACF,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;QACD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACtC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QACjC,CAAC;QACD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACrC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAChC,CAAC;QACD,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACxC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,CAAC;QAED,kDAAkD;QAClD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;YACvD,KAAK,IAAI,CAAC,wBAAwB,CAAC,qBAAqB,CACtD,2BAA2B,CAAC,oBAAoB,CACjD,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACxF,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;QACjC,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,OAAO,CAAC,MAAoC;QAChD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,yBAAyB;QACzB,IAAI,IAAI,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACzE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,2BAA2B,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QACtF,CAAC;QAED,iBAAiB;QACjB,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QACjF,CAAC;QAED,iCAAiC;QACjC,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;YAC7D,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,0CAA0C,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QACrG,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC;QAC9B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,IAAI,CAAC,UAAU,EAAE,CAAC;QAElB,4DAA4D;QAC5D,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,GAAG,EAAE;YACvC,IAAI,IAAI,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;gBACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;oBACtD,MAAM;oBACN,SAAS,EAAE,2BAA2B,CAAC,gBAAgB;iBACxD,CAAC,CAAC;gBACH,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACvB,CAAC;QACH,CAAC,EAAE,2BAA2B,CAAC,gBAAgB,CAAC,CAAC;QAEjD,IAAI,CAAC;YACH,gCAAgC;YAChC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAElC,6EAA6E;YAC7E,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wEAAwE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;gBACvG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,2BAA2B,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;YACtF,CAAC;YAED,6BAA6B;YAC7B,MAAM,YAAY,GAAG,2BAA2B,CAAC,aAAa,CAAC;YAC/D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9F,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,CACnE,2BAA2B,CAAC,oBAAoB,EAChD,YAAY,EACZ,aAAa,CAAC,WAAW,CAC1B,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC3E,iEAAiE;gBACjE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;YACzF,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE;gBACrC,MAAM;gBACN,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc;aAC3C,CAAC,CAAC;YAEH,4DAA4D;YAC5D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YAErB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAChD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAE7D,6DAA6D;YAC7D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YAErB,iEAAiE;YACjE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAE1B,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,MAAM,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QACnF,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBACrC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAChC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,iBAAiB,CACrB,OAAe,EACf,YAA0B;QAE1B,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;YACnC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,0CAA0C,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QAC5G,CAAC;QAED,0BAA0B;QAC1B,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAElC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,sCAAsC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QACxG,CAAC;QAED,mEAAmE;QACnE,MAAM,WAAW,GAAG,4BAA4B,YAAY,CAAC,SAAS,aAAa,YAAY,CAAC,QAAQ,KAAK,CAAC;QAE9G,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;gBACxD,aAAa,EAAE,OAAO,CAAC,MAAM;gBAC7B,SAAS,EAAE,YAAY,CAAC,SAAS;aAClC,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,CACnE,2BAA2B,CAAC,oBAAoB,EAChD,WAAW,GAAG,OAAO,EACrB,aAAa,CAAC,WAAW,CAC1B,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;YAChG,CAAC;YAED,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACpE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QAC5F,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,SAAS;QAQP,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,cAAc,EAAE,IAAI,CAAC,cAAc;gBACjC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE;gBAC7C,CAAC,CAAC,IAAI;YACR,eAAe,EAAE,IAAI,CAAC,aAAa,KAAK,IAAI;YAC5C,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,gBAAgB,CAAC,aAAqB,EAAE,MAAoC;QAC1E,MAAM,IAAI,GAAuB;YAC/B,EAAE,EAAE,SAAS,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;YACvE,aAAa;YACb,MAAM;YACN,KAAK,EAAE,KAAK;SACb,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/H,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,iBAAiB;QACf,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,mBAAmB;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAC5C,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAClD,CAAC;QAEF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC5D,OAAO,CAAC,CAAC;QACX,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qCAAqC,EAAE;YACtD,WAAW,EAAE,WAAW,CAAC,MAAM;YAC/B,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;SACrE,CAAC,CAAC;QAEH,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/C,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACrB,UAAU,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE;oBACzC,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,gBAAgB,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE;oBAC5D,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE;YACjD,WAAW,EAAE,WAAW,CAAC,MAAM;YAC/B,iBAAiB,EAAE,UAAU;SAC9B,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,8BAA8B;IAE9B;;;;;OAKG;IACK,KAAK,CAAC,oBAAoB;QAChC,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,mBAAmB;YAAE,OAAO;QAC1D,IAAI,CAAC,IAAI,CAAC,wBAAwB;YAAE,OAAO;QAE3C,mDAAmD;QACnD,IAAI,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC3D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE;gBACrD,WAAW;gBACX,UAAU,EAAE,IAAI,CAAC,iBAAiB;aACnC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,4CAA4C;QAC5C,IAAI,IAAI,CAAC,oBAAoB,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7E,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;YAC3B,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;QACpF,CAAC;QAED,oBAAoB;QACpB,IAAI,IAAI,CAAC,iBAAiB,IAAI,2BAA2B,CAAC,mBAAmB,EAAE,CAAC;YAC9E,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,2BAA2B,CAAC,yBAAyB,CAAC;YAC/F,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0DAA0D,EAAE;gBAC3E,UAAU,EAAE,IAAI,CAAC,iBAAiB;gBAClC,UAAU,EAAE,2BAA2B,CAAC,yBAAyB;aAClE,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC;YACH,sCAAsC;YACtC,IAAI,IAAI,CAAC,iBAAiB,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,2BAA2B,CAAC,gCAAgC;oBAC1D,IAAI,CAAC,GAAG,CAAC,2BAA2B,CAAC,gCAAgC,EAAE,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,EACpG,2BAA2B,CAAC,yBAAyB,CACtD,CAAC;gBACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE;oBACvD,KAAK,EAAE,IAAI,CAAC,iBAAiB;oBAC7B,SAAS;iBACV,CAAC,CAAC;gBACH,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;YACjE,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,CAAC;gBACpE,WAAW,EAAE,2BAA2B,CAAC,oBAAoB;gBAC7D,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,aAAa,CAAC,WAAW;gBACtC,aAAa,EAAE,IAAI;aACpB,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;gBAC3B,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;gBAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE;oBACxD,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,KAAK,EAAE,IAAI,CAAC,iBAAiB;oBAC7B,UAAU,EAAE,2BAA2B,CAAC,mBAAmB;iBAC5D,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE;gBACxD,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;gBACzB,KAAK,EAAE,IAAI,CAAC,iBAAiB;gBAC7B,UAAU,EAAE,2BAA2B,CAAC,mBAAmB;aAC5D,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;QACnC,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,oBAAoB;QAC1B,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACrD,OAAO;QACT,CAAC;QAED,MAAM,aAAa,GAAG,2BAA2B,CAAC,mBAAmB,CAAC;QAEtE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,OAAoD,EAAE,EAAE;YAClG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC/C,OAAO;YACT,CAAC;YAED,+EAA+E;YAC/E,0EAA0E;YAC1E,+EAA+E;YAC/E,6EAA6E;YAC7E,4CAA4C;YAC5C,IAAI,OAAO,CAAC,WAAW,KAAK,2BAA2B,CAAC,oBAAoB,EAAE,CAAC;gBAC7E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2DAA2D,EAAE;oBAC5E,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,eAAe,EAAE,2BAA2B,CAAC,yBAAyB;iBACvE,CAAC,CAAC;gBACH,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAE1B,2EAA2E;gBAC3E,wEAAwE;gBACxE,0EAA0E;gBAC1E,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;gBAC3B,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;gBAE9B,uDAAuD;gBACvD,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC9B,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBAC1C,CAAC;gBAED,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC1C,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;oBACjC,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;wBAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;wBACxE,0DAA0D;wBAC1D,iEAAiE;wBACjE,sEAAsE;wBACtE,KAAK,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;4BACzC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gCACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;gCAChE,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;4BAC7B,CAAC;wBACH,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;4BACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACpF,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC,EAAE,2BAA2B,CAAC,yBAAyB,CAAC,CAAC;gBAE1D,OAAO;YACT,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE;gBAC/D,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC,CAAC;YAEH,iDAAiD;YACjD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC5B,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACxC,CAAC;YAED,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,GAAG,EAAE;gBACxC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAC/B,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC,EAAE,2BAA2B,CAAC,iBAAiB,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;IAClE,CAAC"}
@@ -12,6 +12,25 @@ export declare class ClaudeRuntimeService extends RuntimeAgentService {
12
12
  * Claude Code specific detection using slash command
13
13
  */
14
14
  protected detectRuntimeSpecific(sessionName: string): Promise<boolean>;
15
+ /**
16
+ * Detect the Claude Code workspace trust prompt in terminal output.
17
+ *
18
+ * Claude Code shows "Is this a project you trust?" on first launch
19
+ * for untrusted workspaces. This blocks agent initialization.
20
+ *
21
+ * @param output - Terminal output text
22
+ * @returns True if trust prompt is detected
23
+ * @see https://github.com/stevehuang0115/crewly/issues/144
24
+ */
25
+ private isClaudeTrustPrompt;
26
+ /**
27
+ * Override waitForRuntimeReady to auto-accept workspace trust prompt (#144).
28
+ *
29
+ * Claude Code shows an interactive trust gate on first launch for
30
+ * untrusted workspaces. Without auto-acceptance, the agent hangs
31
+ * and enters a crash-restart loop.
32
+ */
33
+ waitForRuntimeReady(sessionName: string, timeout: number, checkInterval?: number): Promise<boolean>;
15
34
  /**
16
35
  * Claude Code specific ready patterns
17
36
  */
@@ -1 +1 @@
1
- {"version":3,"file":"claude-runtime.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/claude-runtime.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAChG,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAwC,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAG5F;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,mBAAmB;gBAChD,aAAa,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM;IAIpE,SAAS,CAAC,cAAc,IAAI,WAAW;IAIvC;;OAEG;cACa,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA+B5E;;OAEG;IACH,SAAS,CAAC,uBAAuB,IAAI,MAAM,EAAE;IAa7C;;;;;;;;OAQG;IACH,SAAS,CAAC,sBAAsB,IAAI,MAAM,EAAE;IAU5C;;OAEG;IACH,SAAS,CAAC,uBAAuB,IAAI,MAAM,EAAE;IAK7C;;OAEG;IACG,uBAAuB,IAAI,OAAO,CAAC;QACxC,SAAS,EAAE,OAAO,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KAChB,CAAC;IAqEF;;OAEG;IACG,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;QAC7D,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IAoCF;;;OAGG;IACG,4BAA4B,CACjC,WAAW,EAAE,MAAM,EACnB,YAAY,GAAE,OAAe,GAC3B,OAAO,CAAC,OAAO,CAAC;IAMnB;;OAEG;IACG,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItF;;;;;;;OAOG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM,EAAE,yBAAyB,CAAC,EAAE,MAAM,EAAE,EAAE,yBAAyB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC/J;;;;;;;;OAQG;IACG,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,yBAAyB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC;CAI/G"}
1
+ {"version":3,"file":"claude-runtime.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/claude-runtime.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAChG,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAwC,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAG5F;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,mBAAmB;gBAChD,aAAa,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM;IAIpE,SAAS,CAAC,cAAc,IAAI,WAAW;IAIvC;;OAEG;cACa,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA+B5E;;;;;;;;;OASG;IACH,OAAO,CAAC,mBAAmB;IAW3B;;;;;;OAMG;IACG,mBAAmB,CACxB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,aAAa,GAAE,MAAa,GAC1B,OAAO,CAAC,OAAO,CAAC;IA4DnB;;OAEG;IACH,SAAS,CAAC,uBAAuB,IAAI,MAAM,EAAE;IAa7C;;;;;;;;OAQG;IACH,SAAS,CAAC,sBAAsB,IAAI,MAAM,EAAE;IAU5C;;OAEG;IACH,SAAS,CAAC,uBAAuB,IAAI,MAAM,EAAE;IAK7C;;OAEG;IACG,uBAAuB,IAAI,OAAO,CAAC;QACxC,SAAS,EAAE,OAAO,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KAChB,CAAC;IAqEF;;OAEG;IACG,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;QAC7D,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IAoCF;;;OAGG;IACG,4BAA4B,CACjC,WAAW,EAAE,MAAM,EACnB,YAAY,GAAE,OAAe,GAC3B,OAAO,CAAC,OAAO,CAAC;IAMnB;;OAEG;IACG,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItF;;;;;;;OAOG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM,EAAE,yBAAyB,CAAC,EAAE,MAAM,EAAE,EAAE,yBAAyB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC/J;;;;;;;;OAQG;IACG,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,yBAAyB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC;CAI/G"}