crewly 1.20.191 → 1.20.193

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 (541) hide show
  1. package/config/constants.ts +11 -0
  2. package/config/hooks/subagent-guard/subagent.sh +113 -0
  3. package/config/roles/architect/prompt.md +1 -1
  4. package/config/roles/auditor/prompt.md +1 -1
  5. package/config/roles/backend-developer/prompt.md +1 -1
  6. package/config/roles/content-strategist/prompt.md +2 -2
  7. package/config/roles/designer/prompt.md +1 -1
  8. package/config/roles/developer/prompt.md +2 -2
  9. package/config/roles/frontend-developer/prompt.md +1 -1
  10. package/config/roles/fullstack-dev/prompt.md +1 -1
  11. package/config/roles/generalist/prompt.md +1 -1
  12. package/config/roles/ops/prompt.md +1 -1
  13. package/config/roles/orchestrator/prompt.md +2 -2
  14. package/config/roles/product-manager/prompt.md +1 -1
  15. package/config/roles/qa/prompt.md +1 -1
  16. package/config/roles/qa-engineer/prompt.md +1 -1
  17. package/config/roles/researcher/prompt.md +1 -1
  18. package/config/roles/sales/prompt.md +1 -1
  19. package/config/roles/support/prompt.md +1 -1
  20. package/config/roles/team-leader/prompt.md +1 -1
  21. package/config/roles/tpm/prompt.md +1 -1
  22. package/config/roles/ux-designer/prompt.md +1 -1
  23. package/config/skills/_common/complete-body-shape.test.sh +17 -0
  24. package/config/skills/agent/core/complete-task/SKILL.md +27 -4
  25. package/config/skills/agent/core/complete-task/execute.sh +23 -3
  26. package/config/skills/agent/core/complete-task/execute.test.sh +34 -0
  27. package/config/skills/agent/core/handoff-task/execute.sh +1 -1
  28. package/config/skills/agent/core/report-status/SKILL.md +27 -4
  29. package/config/skills/agent/core/report-status/execute.sh +104 -4
  30. package/config/skills/agent/core/send-message/SKILL.md +6 -0
  31. package/config/skills/agent/core/send-message/execute.sh +17 -1
  32. package/config/skills/agent/core/send-message/execute.test.sh +81 -0
  33. package/config/skills/agent/core/todo-add/SKILL.md +16 -2
  34. package/config/skills/agent/core/todo-add/execute.sh +21 -5
  35. package/config/skills/agent/core/todo-add/execute.test.sh +14 -0
  36. package/config/skills/agent/core/todo-tasks/SKILL.md +4 -3
  37. package/config/skills/agent/core/todo-update/SKILL.md +13 -2
  38. package/config/skills/agent/core/todo-update/execute.sh +41 -3
  39. package/config/skills/agent/core/todo-update/execute.test.sh +7 -0
  40. package/config/skills/marketplace-registry.ts +4 -4
  41. package/config/skills/orchestrator/complete-task/SKILL.md +13 -6
  42. package/config/skills/orchestrator/complete-task/execute.sh +22 -3
  43. package/config/skills/orchestrator/delegate-task/execute.sh +2 -2
  44. package/config/skills/orchestrator/harness-login/SKILL.md +9 -1
  45. package/config/skills/orchestrator/harness-login/execute.sh +12 -4
  46. package/config/skills/orchestrator/harness-login/execute.test.sh +7 -0
  47. package/config/skills/team-leader/delegate-task/execute.sh +1 -1
  48. package/config/skills/team-leader/verify-output/SKILL.md +18 -1
  49. package/config/skills/team-leader/verify-output/execute.sh +28 -0
  50. package/config/skills/team-leader/verify-output/execute.test.sh +27 -0
  51. package/dist/backend/backend/src/constants.d.ts +181 -2
  52. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  53. package/dist/backend/backend/src/constants.js +183 -2
  54. package/dist/backend/backend/src/constants.js.map +1 -1
  55. package/dist/backend/backend/src/controllers/canva/canva.controller.d.ts +6 -0
  56. package/dist/backend/backend/src/controllers/canva/canva.controller.d.ts.map +1 -1
  57. package/dist/backend/backend/src/controllers/canva/canva.controller.js +15 -4
  58. package/dist/backend/backend/src/controllers/canva/canva.controller.js.map +1 -1
  59. package/dist/backend/backend/src/controllers/canva/canva.routes.d.ts.map +1 -1
  60. package/dist/backend/backend/src/controllers/canva/canva.routes.js +3 -1
  61. package/dist/backend/backend/src/controllers/canva/canva.routes.js.map +1 -1
  62. package/dist/backend/backend/src/controllers/cloud/cloud-device-pairing.controller.d.ts +1 -1
  63. package/dist/backend/backend/src/controllers/cloud/cloud-device-pairing.controller.js +1 -1
  64. package/dist/backend/backend/src/controllers/cloud/cloud.controller.d.ts.map +1 -1
  65. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js +4 -1
  66. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js.map +1 -1
  67. package/dist/backend/backend/src/controllers/connector/connector.controller.d.ts +4 -0
  68. package/dist/backend/backend/src/controllers/connector/connector.controller.d.ts.map +1 -1
  69. package/dist/backend/backend/src/controllers/connector/connector.controller.js +32 -3
  70. package/dist/backend/backend/src/controllers/connector/connector.controller.js.map +1 -1
  71. package/dist/backend/backend/src/controllers/connector/grant-sharing.handler.d.ts +41 -0
  72. package/dist/backend/backend/src/controllers/connector/grant-sharing.handler.d.ts.map +1 -0
  73. package/dist/backend/backend/src/controllers/connector/grant-sharing.handler.js +75 -0
  74. package/dist/backend/backend/src/controllers/connector/grant-sharing.handler.js.map +1 -0
  75. package/dist/backend/backend/src/controllers/google/google.controller.d.ts +6 -0
  76. package/dist/backend/backend/src/controllers/google/google.controller.d.ts.map +1 -1
  77. package/dist/backend/backend/src/controllers/google/google.controller.js +21 -2
  78. package/dist/backend/backend/src/controllers/google/google.controller.js.map +1 -1
  79. package/dist/backend/backend/src/controllers/google/google.routes.d.ts.map +1 -1
  80. package/dist/backend/backend/src/controllers/google/google.routes.js +3 -1
  81. package/dist/backend/backend/src/controllers/google/google.routes.js.map +1 -1
  82. package/dist/backend/backend/src/controllers/harness/owner-login.controller.d.ts.map +1 -1
  83. package/dist/backend/backend/src/controllers/harness/owner-login.controller.js +22 -3
  84. package/dist/backend/backend/src/controllers/harness/owner-login.controller.js.map +1 -1
  85. package/dist/backend/backend/src/controllers/microsoft/microsoft-todo.controller.d.ts +19 -2
  86. package/dist/backend/backend/src/controllers/microsoft/microsoft-todo.controller.d.ts.map +1 -1
  87. package/dist/backend/backend/src/controllers/microsoft/microsoft-todo.controller.js +39 -6
  88. package/dist/backend/backend/src/controllers/microsoft/microsoft-todo.controller.js.map +1 -1
  89. package/dist/backend/backend/src/controllers/microsoft/microsoft-todo.routes.d.ts.map +1 -1
  90. package/dist/backend/backend/src/controllers/microsoft/microsoft-todo.routes.js +3 -1
  91. package/dist/backend/backend/src/controllers/microsoft/microsoft-todo.routes.js.map +1 -1
  92. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts +9 -0
  93. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts.map +1 -1
  94. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js +71 -2
  95. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js.map +1 -1
  96. package/dist/backend/backend/src/controllers/people/people.routes.d.ts +25 -0
  97. package/dist/backend/backend/src/controllers/people/people.routes.d.ts.map +1 -0
  98. package/dist/backend/backend/src/controllers/people/people.routes.js +90 -0
  99. package/dist/backend/backend/src/controllers/people/people.routes.js.map +1 -0
  100. package/dist/backend/backend/src/controllers/request-types.d.ts +2 -0
  101. package/dist/backend/backend/src/controllers/request-types.d.ts.map +1 -1
  102. package/dist/backend/backend/src/controllers/security/approvals.controller.d.ts +26 -0
  103. package/dist/backend/backend/src/controllers/security/approvals.controller.d.ts.map +1 -0
  104. package/dist/backend/backend/src/controllers/security/approvals.controller.js +73 -0
  105. package/dist/backend/backend/src/controllers/security/approvals.controller.js.map +1 -0
  106. package/dist/backend/backend/src/controllers/session/session.controller.d.ts.map +1 -1
  107. package/dist/backend/backend/src/controllers/session/session.controller.js +9 -0
  108. package/dist/backend/backend/src/controllers/session/session.controller.js.map +1 -1
  109. package/dist/backend/backend/src/controllers/slack/slack.controller.js +1 -1
  110. package/dist/backend/backend/src/controllers/slack/slack.controller.js.map +1 -1
  111. package/dist/backend/backend/src/controllers/system/runtime-fallback.controller.d.ts +22 -1
  112. package/dist/backend/backend/src/controllers/system/runtime-fallback.controller.d.ts.map +1 -1
  113. package/dist/backend/backend/src/controllers/system/runtime-fallback.controller.js +143 -3
  114. package/dist/backend/backend/src/controllers/system/runtime-fallback.controller.js.map +1 -1
  115. package/dist/backend/backend/src/controllers/system/usage.controller.d.ts +3 -3
  116. package/dist/backend/backend/src/controllers/system/usage.controller.js +3 -3
  117. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts +25 -3
  118. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts.map +1 -1
  119. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js +125 -19
  120. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js.map +1 -1
  121. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  122. package/dist/backend/backend/src/controllers/team/team.controller.js +14 -0
  123. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  124. package/dist/backend/backend/src/index.d.ts.map +1 -1
  125. package/dist/backend/backend/src/index.js +44 -1
  126. package/dist/backend/backend/src/index.js.map +1 -1
  127. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  128. package/dist/backend/backend/src/routes/api.routes.js +3 -0
  129. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  130. package/dist/backend/backend/src/routes/modules/system.routes.d.ts.map +1 -1
  131. package/dist/backend/backend/src/routes/modules/system.routes.js +3 -0
  132. package/dist/backend/backend/src/routes/modules/system.routes.js.map +1 -1
  133. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +13 -0
  134. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  135. package/dist/backend/backend/src/services/agent/agent-registration.service.js +28 -3
  136. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  137. package/dist/backend/backend/src/services/agent/control-plane-guard.service.d.ts +3 -2
  138. package/dist/backend/backend/src/services/agent/control-plane-guard.service.d.ts.map +1 -1
  139. package/dist/backend/backend/src/services/agent/control-plane-guard.service.js +14 -3
  140. package/dist/backend/backend/src/services/agent/control-plane-guard.service.js.map +1 -1
  141. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.d.ts +28 -1
  142. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.d.ts.map +1 -1
  143. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js +48 -4
  144. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js.map +1 -1
  145. package/dist/backend/backend/src/services/agent/idle-detection.service.js +1 -1
  146. package/dist/backend/backend/src/services/agent/idle-detection.service.js.map +1 -1
  147. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts +2 -1
  148. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts.map +1 -1
  149. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js +17 -4
  150. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
  151. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts +14 -0
  152. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  153. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +38 -0
  154. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  155. package/dist/backend/backend/src/services/agent/runtime-session-recovery.d.ts +34 -0
  156. package/dist/backend/backend/src/services/agent/runtime-session-recovery.d.ts.map +1 -1
  157. package/dist/backend/backend/src/services/agent/runtime-session-recovery.js +49 -5
  158. package/dist/backend/backend/src/services/agent/runtime-session-recovery.js.map +1 -1
  159. package/dist/backend/backend/src/services/ai/prompt-modules/communication.module.d.ts.map +1 -1
  160. package/dist/backend/backend/src/services/ai/prompt-modules/communication.module.js +8 -1
  161. package/dist/backend/backend/src/services/ai/prompt-modules/communication.module.js.map +1 -1
  162. package/dist/backend/backend/src/services/ai/prompt-modules/lazy-anti-patterns.module.js +1 -1
  163. package/dist/backend/backend/src/services/ai/prompt-modules/lazy-anti-patterns.module.js.map +1 -1
  164. package/dist/backend/backend/src/services/browser/browser-approval.service.d.ts +8 -0
  165. package/dist/backend/backend/src/services/browser/browser-approval.service.d.ts.map +1 -1
  166. package/dist/backend/backend/src/services/browser/browser-approval.service.js +10 -0
  167. package/dist/backend/backend/src/services/browser/browser-approval.service.js.map +1 -1
  168. package/dist/backend/backend/src/services/canva/canva-token.service.d.ts +17 -4
  169. package/dist/backend/backend/src/services/canva/canva-token.service.d.ts.map +1 -1
  170. package/dist/backend/backend/src/services/canva/canva-token.service.js +49 -17
  171. package/dist/backend/backend/src/services/canva/canva-token.service.js.map +1 -1
  172. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +55 -0
  173. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
  174. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +80 -0
  175. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
  176. package/dist/backend/backend/src/services/cloud/cloud-device-pairing.client.d.ts +1 -1
  177. package/dist/backend/backend/src/services/cloud/cloud-device-pairing.client.js +1 -1
  178. package/dist/backend/backend/src/services/cloud/cloud-device-pairing.service.d.ts +1 -1
  179. package/dist/backend/backend/src/services/cloud/cloud-device-pairing.service.js +1 -1
  180. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.service.d.ts +17 -2
  181. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.service.d.ts.map +1 -1
  182. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.service.js +30 -6
  183. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.service.js.map +1 -1
  184. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.utils.d.ts +38 -2
  185. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.utils.d.ts.map +1 -1
  186. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.utils.js +63 -1
  187. package/dist/backend/backend/src/services/cloud/cloud-disconnect-notice.utils.js.map +1 -1
  188. package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts +74 -4
  189. package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts.map +1 -1
  190. package/dist/backend/backend/src/services/cloud/cloud-sync.service.js +204 -56
  191. package/dist/backend/backend/src/services/cloud/cloud-sync.service.js.map +1 -1
  192. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts +19 -0
  193. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts.map +1 -1
  194. package/dist/backend/backend/src/services/cloud/cloud-sync.types.js.map +1 -1
  195. package/dist/backend/backend/src/services/decisions/decision.service.d.ts +9 -0
  196. package/dist/backend/backend/src/services/decisions/decision.service.d.ts.map +1 -1
  197. package/dist/backend/backend/src/services/decisions/decision.service.js +11 -0
  198. package/dist/backend/backend/src/services/decisions/decision.service.js.map +1 -1
  199. package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.d.ts.map +1 -1
  200. package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.js +3 -0
  201. package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.js.map +1 -1
  202. package/dist/backend/backend/src/services/google/google-workspace-token.service.d.ts +25 -2
  203. package/dist/backend/backend/src/services/google/google-workspace-token.service.d.ts.map +1 -1
  204. package/dist/backend/backend/src/services/google/google-workspace-token.service.js +48 -7
  205. package/dist/backend/backend/src/services/google/google-workspace-token.service.js.map +1 -1
  206. package/dist/backend/backend/src/services/harness/claude-accounts.d.ts +207 -0
  207. package/dist/backend/backend/src/services/harness/claude-accounts.d.ts.map +1 -0
  208. package/dist/backend/backend/src/services/harness/claude-accounts.js +306 -0
  209. package/dist/backend/backend/src/services/harness/claude-accounts.js.map +1 -0
  210. package/dist/backend/backend/src/services/harness/harness-credentials.store.d.ts +35 -0
  211. package/dist/backend/backend/src/services/harness/harness-credentials.store.d.ts.map +1 -1
  212. package/dist/backend/backend/src/services/harness/harness-credentials.store.js +48 -0
  213. package/dist/backend/backend/src/services/harness/harness-credentials.store.js.map +1 -1
  214. package/dist/backend/backend/src/services/harness/harness-relogin.service.d.ts +70 -1
  215. package/dist/backend/backend/src/services/harness/harness-relogin.service.d.ts.map +1 -1
  216. package/dist/backend/backend/src/services/harness/harness-relogin.service.js +156 -19
  217. package/dist/backend/backend/src/services/harness/harness-relogin.service.js.map +1 -1
  218. package/dist/backend/backend/src/services/harness/harness.types.d.ts +2 -0
  219. package/dist/backend/backend/src/services/harness/harness.types.d.ts.map +1 -1
  220. package/dist/backend/backend/src/services/harness/harness.types.js.map +1 -1
  221. package/dist/backend/backend/src/services/harness/login-broker.service.d.ts +19 -4
  222. package/dist/backend/backend/src/services/harness/login-broker.service.d.ts.map +1 -1
  223. package/dist/backend/backend/src/services/harness/login-broker.service.js +46 -7
  224. package/dist/backend/backend/src/services/harness/login-broker.service.js.map +1 -1
  225. package/dist/backend/backend/src/services/harness/owner-login-request.d.ts +18 -2
  226. package/dist/backend/backend/src/services/harness/owner-login-request.d.ts.map +1 -1
  227. package/dist/backend/backend/src/services/harness/owner-login-request.js +31 -7
  228. package/dist/backend/backend/src/services/harness/owner-login-request.js.map +1 -1
  229. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.d.ts +21 -0
  230. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.d.ts.map +1 -1
  231. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.js +39 -1
  232. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.js.map +1 -1
  233. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts +11 -0
  234. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  235. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +29 -0
  236. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  237. package/dist/backend/backend/src/services/messaging/spend-capped-delivery.d.ts +54 -0
  238. package/dist/backend/backend/src/services/messaging/spend-capped-delivery.d.ts.map +1 -0
  239. package/dist/backend/backend/src/services/messaging/spend-capped-delivery.js +65 -0
  240. package/dist/backend/backend/src/services/messaging/spend-capped-delivery.js.map +1 -0
  241. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.d.ts +5 -0
  242. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.d.ts.map +1 -1
  243. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.js +13 -0
  244. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.js.map +1 -1
  245. package/dist/backend/backend/src/services/microsoft/microsoft-todo.service.d.ts +87 -5
  246. package/dist/backend/backend/src/services/microsoft/microsoft-todo.service.d.ts.map +1 -1
  247. package/dist/backend/backend/src/services/microsoft/microsoft-todo.service.js +151 -12
  248. package/dist/backend/backend/src/services/microsoft/microsoft-todo.service.js.map +1 -1
  249. package/dist/backend/backend/src/services/microsoft/microsoft-token.service.d.ts +17 -4
  250. package/dist/backend/backend/src/services/microsoft/microsoft-token.service.d.ts.map +1 -1
  251. package/dist/backend/backend/src/services/microsoft/microsoft-token.service.js +45 -17
  252. package/dist/backend/backend/src/services/microsoft/microsoft-token.service.js.map +1 -1
  253. package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.d.ts +118 -2
  254. package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.d.ts.map +1 -1
  255. package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.js +213 -45
  256. package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.js.map +1 -1
  257. package/dist/backend/backend/src/services/monitoring/claude-transcript-sync.service.d.ts +53 -1
  258. package/dist/backend/backend/src/services/monitoring/claude-transcript-sync.service.d.ts.map +1 -1
  259. package/dist/backend/backend/src/services/monitoring/claude-transcript-sync.service.js +137 -60
  260. package/dist/backend/backend/src/services/monitoring/claude-transcript-sync.service.js.map +1 -1
  261. package/dist/backend/backend/src/services/monitoring/model-pricing.d.ts +2 -1
  262. package/dist/backend/backend/src/services/monitoring/model-pricing.d.ts.map +1 -1
  263. package/dist/backend/backend/src/services/monitoring/model-pricing.js +13 -0
  264. package/dist/backend/backend/src/services/monitoring/model-pricing.js.map +1 -1
  265. package/dist/backend/backend/src/services/monitoring/token-usage.service.d.ts +9 -0
  266. package/dist/backend/backend/src/services/monitoring/token-usage.service.d.ts.map +1 -1
  267. package/dist/backend/backend/src/services/monitoring/token-usage.service.js +32 -3
  268. package/dist/backend/backend/src/services/monitoring/token-usage.service.js.map +1 -1
  269. package/dist/backend/backend/src/services/people/acting-for.service.d.ts +151 -0
  270. package/dist/backend/backend/src/services/people/acting-for.service.d.ts.map +1 -0
  271. package/dist/backend/backend/src/services/people/acting-for.service.js +224 -0
  272. package/dist/backend/backend/src/services/people/acting-for.service.js.map +1 -0
  273. package/dist/backend/backend/src/services/people/dedicated-agent.d.ts +89 -0
  274. package/dist/backend/backend/src/services/people/dedicated-agent.d.ts.map +1 -0
  275. package/dist/backend/backend/src/services/people/dedicated-agent.js +113 -0
  276. package/dist/backend/backend/src/services/people/dedicated-agent.js.map +1 -0
  277. package/dist/backend/backend/src/services/people/grant-sharing.d.ts +79 -0
  278. package/dist/backend/backend/src/services/people/grant-sharing.d.ts.map +1 -0
  279. package/dist/backend/backend/src/services/people/grant-sharing.js +135 -0
  280. package/dist/backend/backend/src/services/people/grant-sharing.js.map +1 -0
  281. package/dist/backend/backend/src/services/people/people-directory.service.d.ts +181 -0
  282. package/dist/backend/backend/src/services/people/people-directory.service.d.ts.map +1 -0
  283. package/dist/backend/backend/src/services/people/people-directory.service.js +317 -0
  284. package/dist/backend/backend/src/services/people/people-directory.service.js.map +1 -0
  285. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js.map +1 -1
  286. package/dist/backend/backend/src/services/runtime-fallback/effective-runtime.d.ts +29 -1
  287. package/dist/backend/backend/src/services/runtime-fallback/effective-runtime.d.ts.map +1 -1
  288. package/dist/backend/backend/src/services/runtime-fallback/effective-runtime.js +40 -0
  289. package/dist/backend/backend/src/services/runtime-fallback/effective-runtime.js.map +1 -1
  290. package/dist/backend/backend/src/services/runtime-fallback/runtime-availability.d.ts +8 -1
  291. package/dist/backend/backend/src/services/runtime-fallback/runtime-availability.d.ts.map +1 -1
  292. package/dist/backend/backend/src/services/runtime-fallback/runtime-availability.js +16 -2
  293. package/dist/backend/backend/src/services/runtime-fallback/runtime-availability.js.map +1 -1
  294. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.d.ts +60 -1
  295. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.d.ts.map +1 -1
  296. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.js +140 -8
  297. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.js.map +1 -1
  298. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.store.js +1 -1
  299. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.store.js.map +1 -1
  300. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.types.d.ts +20 -7
  301. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.types.d.ts.map +1 -1
  302. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.types.js +24 -7
  303. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.types.js.map +1 -1
  304. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.wiring.d.ts.map +1 -1
  305. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.wiring.js +12 -2
  306. package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.wiring.js.map +1 -1
  307. package/dist/backend/backend/src/services/runtime-fallback/runtime-usage-probe.d.ts +7 -1
  308. package/dist/backend/backend/src/services/runtime-fallback/runtime-usage-probe.d.ts.map +1 -1
  309. package/dist/backend/backend/src/services/runtime-fallback/runtime-usage-probe.js +18 -3
  310. package/dist/backend/backend/src/services/runtime-fallback/runtime-usage-probe.js.map +1 -1
  311. package/dist/backend/backend/src/services/security/approval-activity.service.d.ts +203 -0
  312. package/dist/backend/backend/src/services/security/approval-activity.service.d.ts.map +1 -0
  313. package/dist/backend/backend/src/services/security/approval-activity.service.js +279 -0
  314. package/dist/backend/backend/src/services/security/approval-activity.service.js.map +1 -0
  315. package/dist/backend/backend/src/services/skill/skill.service.d.ts.map +1 -1
  316. package/dist/backend/backend/src/services/skill/skill.service.js +14 -3
  317. package/dist/backend/backend/src/services/skill/skill.service.js.map +1 -1
  318. package/dist/backend/backend/src/services/slack/slack-agent-dm.service.d.ts.map +1 -1
  319. package/dist/backend/backend/src/services/slack/slack-agent-dm.service.js +3 -0
  320. package/dist/backend/backend/src/services/slack/slack-agent-dm.service.js.map +1 -1
  321. package/dist/backend/backend/src/services/slack/slack-mention-resolver.d.ts +22 -0
  322. package/dist/backend/backend/src/services/slack/slack-mention-resolver.d.ts.map +1 -1
  323. package/dist/backend/backend/src/services/slack/slack-mention-resolver.js +50 -0
  324. package/dist/backend/backend/src/services/slack/slack-mention-resolver.js.map +1 -1
  325. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +10 -0
  326. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  327. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +51 -0
  328. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  329. package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts +54 -1
  330. package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  331. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js +260 -20
  332. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  333. package/dist/backend/backend/src/services/spend/spend-cap-command.js +1 -1
  334. package/dist/backend/backend/src/services/spend/spend-cap-command.js.map +1 -1
  335. package/dist/backend/backend/src/services/spend/spend-cap.service.d.ts +48 -1
  336. package/dist/backend/backend/src/services/spend/spend-cap.service.d.ts.map +1 -1
  337. package/dist/backend/backend/src/services/spend/spend-cap.service.js +85 -2
  338. package/dist/backend/backend/src/services/spend/spend-cap.service.js.map +1 -1
  339. package/dist/backend/backend/src/services/task-pool/completion-evidence.service.d.ts +105 -0
  340. package/dist/backend/backend/src/services/task-pool/completion-evidence.service.d.ts.map +1 -0
  341. package/dist/backend/backend/src/services/task-pool/completion-evidence.service.js +238 -0
  342. package/dist/backend/backend/src/services/task-pool/completion-evidence.service.js.map +1 -0
  343. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  344. package/dist/backend/backend/src/services/task-pool/task-pool.service.js +4 -0
  345. package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  346. package/dist/backend/backend/src/services/usage/usage-stats.service.d.ts +101 -14
  347. package/dist/backend/backend/src/services/usage/usage-stats.service.d.ts.map +1 -1
  348. package/dist/backend/backend/src/services/usage/usage-stats.service.js +183 -61
  349. package/dist/backend/backend/src/services/usage/usage-stats.service.js.map +1 -1
  350. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.d.ts +2 -0
  351. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.d.ts.map +1 -1
  352. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.js +9 -0
  353. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.js.map +1 -1
  354. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts +10 -0
  355. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts.map +1 -1
  356. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js +45 -2
  357. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js.map +1 -1
  358. package/dist/backend/backend/src/types/index.d.ts +12 -1
  359. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  360. package/dist/backend/backend/src/types/index.js.map +1 -1
  361. package/dist/backend/backend/src/types/messaging.types.d.ts +5 -0
  362. package/dist/backend/backend/src/types/messaging.types.d.ts.map +1 -1
  363. package/dist/backend/backend/src/types/messaging.types.js.map +1 -1
  364. package/dist/backend/backend/src/types/v2/completion-evidence.types.d.ts +77 -0
  365. package/dist/backend/backend/src/types/v2/completion-evidence.types.d.ts.map +1 -0
  366. package/dist/backend/backend/src/types/v2/completion-evidence.types.js +119 -0
  367. package/dist/backend/backend/src/types/v2/completion-evidence.types.js.map +1 -0
  368. package/dist/backend/backend/src/types/v2/work-item.types.d.ts +13 -0
  369. package/dist/backend/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  370. package/dist/backend/backend/src/types/v2/work-item.types.js.map +1 -1
  371. package/dist/backend/build-info.json +2 -2
  372. package/dist/backend/config/constants.d.ts +11 -0
  373. package/dist/backend/config/constants.d.ts.map +1 -1
  374. package/dist/backend/config/constants.js +11 -0
  375. package/dist/backend/config/constants.js.map +1 -1
  376. package/dist/cli/backend/src/constants.d.ts +181 -2
  377. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  378. package/dist/cli/backend/src/constants.js +183 -2
  379. package/dist/cli/backend/src/constants.js.map +1 -1
  380. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +13 -0
  381. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  382. package/dist/cli/backend/src/services/agent/agent-registration.service.js +28 -3
  383. package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
  384. package/dist/cli/backend/src/services/agent/control-plane-guard.service.d.ts +3 -2
  385. package/dist/cli/backend/src/services/agent/control-plane-guard.service.d.ts.map +1 -1
  386. package/dist/cli/backend/src/services/agent/control-plane-guard.service.js +14 -3
  387. package/dist/cli/backend/src/services/agent/control-plane-guard.service.js.map +1 -1
  388. package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.d.ts +28 -1
  389. package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.d.ts.map +1 -1
  390. package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.js +48 -4
  391. package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.js.map +1 -1
  392. package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.d.ts +2 -1
  393. package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.d.ts.map +1 -1
  394. package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.js +17 -4
  395. package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
  396. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.d.ts +14 -0
  397. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  398. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js +38 -0
  399. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  400. package/dist/cli/backend/src/services/agent/runtime-session-recovery.d.ts +34 -0
  401. package/dist/cli/backend/src/services/agent/runtime-session-recovery.d.ts.map +1 -1
  402. package/dist/cli/backend/src/services/agent/runtime-session-recovery.js +49 -5
  403. package/dist/cli/backend/src/services/agent/runtime-session-recovery.js.map +1 -1
  404. package/dist/cli/backend/src/services/ai/prompt-modules/communication.module.d.ts.map +1 -1
  405. package/dist/cli/backend/src/services/ai/prompt-modules/communication.module.js +8 -1
  406. package/dist/cli/backend/src/services/ai/prompt-modules/communication.module.js.map +1 -1
  407. package/dist/cli/backend/src/services/ai/prompt-modules/lazy-anti-patterns.module.js +1 -1
  408. package/dist/cli/backend/src/services/ai/prompt-modules/lazy-anti-patterns.module.js.map +1 -1
  409. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +55 -0
  410. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
  411. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +80 -0
  412. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
  413. package/dist/cli/backend/src/services/cloud/cloud-device-pairing.client.d.ts +1 -1
  414. package/dist/cli/backend/src/services/cloud/cloud-device-pairing.client.js +1 -1
  415. package/dist/cli/backend/src/services/cloud/cloud-sync.service.d.ts +74 -4
  416. package/dist/cli/backend/src/services/cloud/cloud-sync.service.d.ts.map +1 -1
  417. package/dist/cli/backend/src/services/cloud/cloud-sync.service.js +204 -56
  418. package/dist/cli/backend/src/services/cloud/cloud-sync.service.js.map +1 -1
  419. package/dist/cli/backend/src/services/cloud/cloud-sync.types.d.ts +19 -0
  420. package/dist/cli/backend/src/services/cloud/cloud-sync.types.d.ts.map +1 -1
  421. package/dist/cli/backend/src/services/cloud/cloud-sync.types.js.map +1 -1
  422. package/dist/cli/backend/src/services/decisions/decision.service.d.ts +9 -0
  423. package/dist/cli/backend/src/services/decisions/decision.service.d.ts.map +1 -1
  424. package/dist/cli/backend/src/services/decisions/decision.service.js +11 -0
  425. package/dist/cli/backend/src/services/decisions/decision.service.js.map +1 -1
  426. package/dist/cli/backend/src/services/harness/claude-accounts.d.ts +207 -0
  427. package/dist/cli/backend/src/services/harness/claude-accounts.d.ts.map +1 -0
  428. package/dist/cli/backend/src/services/harness/claude-accounts.js +306 -0
  429. package/dist/cli/backend/src/services/harness/claude-accounts.js.map +1 -0
  430. package/dist/cli/backend/src/services/harness/harness-credentials.store.d.ts +35 -0
  431. package/dist/cli/backend/src/services/harness/harness-credentials.store.d.ts.map +1 -1
  432. package/dist/cli/backend/src/services/harness/harness-credentials.store.js +48 -0
  433. package/dist/cli/backend/src/services/harness/harness-credentials.store.js.map +1 -1
  434. package/dist/cli/backend/src/services/harness/harness-relogin.service.d.ts +70 -1
  435. package/dist/cli/backend/src/services/harness/harness-relogin.service.d.ts.map +1 -1
  436. package/dist/cli/backend/src/services/harness/harness-relogin.service.js +156 -19
  437. package/dist/cli/backend/src/services/harness/harness-relogin.service.js.map +1 -1
  438. package/dist/cli/backend/src/services/harness/harness.types.d.ts +2 -0
  439. package/dist/cli/backend/src/services/harness/harness.types.d.ts.map +1 -1
  440. package/dist/cli/backend/src/services/harness/harness.types.js.map +1 -1
  441. package/dist/cli/backend/src/services/harness/login-broker.service.d.ts +19 -4
  442. package/dist/cli/backend/src/services/harness/login-broker.service.d.ts.map +1 -1
  443. package/dist/cli/backend/src/services/harness/login-broker.service.js +46 -7
  444. package/dist/cli/backend/src/services/harness/login-broker.service.js.map +1 -1
  445. package/dist/cli/backend/src/services/harness/owner-login-request.d.ts +18 -2
  446. package/dist/cli/backend/src/services/harness/owner-login-request.d.ts.map +1 -1
  447. package/dist/cli/backend/src/services/harness/owner-login-request.js +31 -7
  448. package/dist/cli/backend/src/services/harness/owner-login-request.js.map +1 -1
  449. package/dist/cli/backend/src/services/marketplace/marketplace-installer.service.d.ts +21 -0
  450. package/dist/cli/backend/src/services/marketplace/marketplace-installer.service.d.ts.map +1 -1
  451. package/dist/cli/backend/src/services/marketplace/marketplace-installer.service.js +39 -1
  452. package/dist/cli/backend/src/services/marketplace/marketplace-installer.service.js.map +1 -1
  453. package/dist/cli/backend/src/services/messaging/queue-processor.service.d.ts +11 -0
  454. package/dist/cli/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  455. package/dist/cli/backend/src/services/messaging/queue-processor.service.js +29 -0
  456. package/dist/cli/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  457. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.d.ts +5 -0
  458. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.d.ts.map +1 -1
  459. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.js +13 -0
  460. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.js.map +1 -1
  461. package/dist/cli/backend/src/services/monitoring/claude-session-tokens.service.d.ts +197 -0
  462. package/dist/cli/backend/src/services/monitoring/claude-session-tokens.service.d.ts.map +1 -0
  463. package/dist/cli/backend/src/services/monitoring/claude-session-tokens.service.js +455 -0
  464. package/dist/cli/backend/src/services/monitoring/claude-session-tokens.service.js.map +1 -0
  465. package/dist/cli/backend/src/services/monitoring/model-pricing.d.ts +2 -1
  466. package/dist/cli/backend/src/services/monitoring/model-pricing.d.ts.map +1 -1
  467. package/dist/cli/backend/src/services/monitoring/model-pricing.js +13 -0
  468. package/dist/cli/backend/src/services/monitoring/model-pricing.js.map +1 -1
  469. package/dist/cli/backend/src/services/monitoring/token-usage.service.d.ts +9 -0
  470. package/dist/cli/backend/src/services/monitoring/token-usage.service.d.ts.map +1 -1
  471. package/dist/cli/backend/src/services/monitoring/token-usage.service.js +32 -3
  472. package/dist/cli/backend/src/services/monitoring/token-usage.service.js.map +1 -1
  473. package/dist/cli/backend/src/services/people/acting-for.service.d.ts +151 -0
  474. package/dist/cli/backend/src/services/people/acting-for.service.d.ts.map +1 -0
  475. package/dist/cli/backend/src/services/people/acting-for.service.js +224 -0
  476. package/dist/cli/backend/src/services/people/acting-for.service.js.map +1 -0
  477. package/dist/cli/backend/src/services/people/dedicated-agent.d.ts +89 -0
  478. package/dist/cli/backend/src/services/people/dedicated-agent.d.ts.map +1 -0
  479. package/dist/cli/backend/src/services/people/dedicated-agent.js +113 -0
  480. package/dist/cli/backend/src/services/people/dedicated-agent.js.map +1 -0
  481. package/dist/cli/backend/src/services/people/people-directory.service.d.ts +181 -0
  482. package/dist/cli/backend/src/services/people/people-directory.service.d.ts.map +1 -0
  483. package/dist/cli/backend/src/services/people/people-directory.service.js +317 -0
  484. package/dist/cli/backend/src/services/people/people-directory.service.js.map +1 -0
  485. package/dist/cli/backend/src/services/runtime-fallback/effective-runtime.d.ts +29 -1
  486. package/dist/cli/backend/src/services/runtime-fallback/effective-runtime.d.ts.map +1 -1
  487. package/dist/cli/backend/src/services/runtime-fallback/effective-runtime.js +40 -0
  488. package/dist/cli/backend/src/services/runtime-fallback/effective-runtime.js.map +1 -1
  489. package/dist/cli/backend/src/services/runtime-fallback/runtime-fallback.types.d.ts +20 -7
  490. package/dist/cli/backend/src/services/runtime-fallback/runtime-fallback.types.d.ts.map +1 -1
  491. package/dist/cli/backend/src/services/runtime-fallback/runtime-fallback.types.js +24 -7
  492. package/dist/cli/backend/src/services/runtime-fallback/runtime-fallback.types.js.map +1 -1
  493. package/dist/cli/backend/src/services/skill/skill.service.d.ts.map +1 -1
  494. package/dist/cli/backend/src/services/skill/skill.service.js +14 -3
  495. package/dist/cli/backend/src/services/skill/skill.service.js.map +1 -1
  496. package/dist/cli/backend/src/services/slack/slack-agent-dm.service.d.ts.map +1 -1
  497. package/dist/cli/backend/src/services/slack/slack-agent-dm.service.js +3 -0
  498. package/dist/cli/backend/src/services/slack/slack-agent-dm.service.js.map +1 -1
  499. package/dist/cli/backend/src/services/slack/slack-mention-resolver.d.ts +22 -0
  500. package/dist/cli/backend/src/services/slack/slack-mention-resolver.d.ts.map +1 -1
  501. package/dist/cli/backend/src/services/slack/slack-mention-resolver.js +50 -0
  502. package/dist/cli/backend/src/services/slack/slack-mention-resolver.js.map +1 -1
  503. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.d.ts +10 -0
  504. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  505. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.js +51 -0
  506. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  507. package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts +54 -1
  508. package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  509. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js +260 -20
  510. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  511. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  512. package/dist/cli/backend/src/services/task-pool/task-pool.service.js +4 -0
  513. package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  514. package/dist/cli/backend/src/types/index.d.ts +12 -1
  515. package/dist/cli/backend/src/types/index.d.ts.map +1 -1
  516. package/dist/cli/backend/src/types/index.js.map +1 -1
  517. package/dist/cli/backend/src/types/messaging.types.d.ts +5 -0
  518. package/dist/cli/backend/src/types/messaging.types.d.ts.map +1 -1
  519. package/dist/cli/backend/src/types/messaging.types.js.map +1 -1
  520. package/dist/cli/backend/src/types/v2/work-item.types.d.ts +13 -0
  521. package/dist/cli/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  522. package/dist/cli/backend/src/types/v2/work-item.types.js.map +1 -1
  523. package/dist/cli/cli/src/utils/marketplace.d.ts +21 -0
  524. package/dist/cli/cli/src/utils/marketplace.d.ts.map +1 -1
  525. package/dist/cli/cli/src/utils/marketplace.js +35 -1
  526. package/dist/cli/cli/src/utils/marketplace.js.map +1 -1
  527. package/dist/cli/config/constants.d.ts +11 -0
  528. package/dist/cli/config/constants.d.ts.map +1 -1
  529. package/dist/cli/config/constants.js +11 -0
  530. package/dist/cli/config/constants.js.map +1 -1
  531. package/dist/cli/config/skills/marketplace-registry.d.ts +4 -4
  532. package/dist/cli/config/skills/marketplace-registry.js +4 -4
  533. package/frontend/dist/assets/index-465d1f8f.js +4955 -0
  534. package/frontend/dist/assets/index-5e967795.css +42 -0
  535. package/frontend/dist/index.html +2 -2
  536. package/package.json +1 -1
  537. package/packages/crewly-agent/src/runtime/tool-registry.test.ts +45 -0
  538. package/packages/crewly-agent/src/runtime/tool-registry.ts +40 -5
  539. package/packages/crewly-agent/src/test/isolated-home.test.ts +24 -0
  540. package/frontend/dist/assets/index-20a67829.css +0 -42
  541. package/frontend/dist/assets/index-49f50b45.js +0 -4952
@@ -0,0 +1,317 @@
1
+ /**
2
+ * People directory — the humans who use this Crewly instance, keyed by their
3
+ * Slack user id, with a role (issue #968).
4
+ *
5
+ * - **owner**: the instance owner (the Slack user who installed Crewly's
6
+ * Slack app). Always shown, always `owner`, never removable. When their
7
+ * Slack id is not known the owner is the id `owner` (dashboard, terminal).
8
+ * - **member**: a person in the workspace. A Slack user who messages an agent
9
+ * is added as a member automatically.
10
+ * - **guest**: someone the owner marked as a guest. Guests are not included
11
+ * when a connector is shared with "all members".
12
+ *
13
+ * Stored in `<CREWLY_HOME>/people.json`. Writes are atomic.
14
+ *
15
+ * specs/per-person-access.md
16
+ *
17
+ * @module services/people/people-directory.service
18
+ */
19
+ import * as fs from 'fs';
20
+ import * as path from 'path';
21
+ import { PEOPLE_CONSTANTS } from '../../constants.js';
22
+ import { getCrewlyHomePath } from '../core/crewly-home.utils.js';
23
+ /** An invalid edit. */
24
+ export class PeopleDirectoryError extends Error {
25
+ }
26
+ /**
27
+ * Whether a value is a valid role.
28
+ *
29
+ * @param value - Candidate
30
+ * @returns True for owner / member / guest
31
+ */
32
+ export function isPersonRole(value) {
33
+ return typeof value === 'string' && PEOPLE_CONSTANTS.ROLES.includes(value);
34
+ }
35
+ /**
36
+ * Whether a value is a person id this directory accepts: a Slack user id, or
37
+ * the owner placeholder.
38
+ *
39
+ * @param value - Candidate
40
+ * @returns True when valid
41
+ */
42
+ export function isPersonId(value) {
43
+ return typeof value === 'string' && (value === PEOPLE_CONSTANTS.OWNER_ID || PEOPLE_CONSTANTS.SLACK_USER_ID_PATTERN.test(value));
44
+ }
45
+ /** The people directory. */
46
+ export class PeopleDirectoryService {
47
+ filePathOverride;
48
+ ownerSlackUserId;
49
+ now;
50
+ /**
51
+ * @param deps - Store path, owner lookup, clock
52
+ */
53
+ constructor(deps = {}) {
54
+ this.filePathOverride = deps.filePath;
55
+ this.ownerSlackUserId = () => {
56
+ try {
57
+ const id = deps.getOwnerSlackUserId?.();
58
+ return typeof id === 'string' && id.trim() ? id.trim() : null;
59
+ }
60
+ catch {
61
+ return null;
62
+ }
63
+ };
64
+ this.now = deps.now ?? (() => Date.now());
65
+ }
66
+ /** @returns Store path (resolved per call so CREWLY_HOME changes apply) */
67
+ filePath() {
68
+ return this.filePathOverride ?? path.join(getCrewlyHomePath(), PEOPLE_CONSTANTS.STORE_FILE);
69
+ }
70
+ /**
71
+ * The owner's person id: their Slack user id when known, else `owner`.
72
+ *
73
+ * @returns Person id
74
+ */
75
+ ownerId() {
76
+ return this.ownerSlackUserId() ?? PEOPLE_CONSTANTS.OWNER_ID;
77
+ }
78
+ /**
79
+ * Whether a person id is the instance owner.
80
+ *
81
+ * @param id - Person id
82
+ * @returns True for the owner's Slack id or the `owner` placeholder
83
+ */
84
+ isOwner(id) {
85
+ if (!id)
86
+ return false;
87
+ return id === PEOPLE_CONSTANTS.OWNER_ID || id === this.ownerSlackUserId();
88
+ }
89
+ /**
90
+ * Everyone, owner first, then by name.
91
+ *
92
+ * @returns People (copies)
93
+ */
94
+ list() {
95
+ const stored = this.read().people;
96
+ const ownerId = this.ownerId();
97
+ const iso = new Date(this.now()).toISOString();
98
+ const owner = stored.find((p) => p.id === ownerId) ?? stored.find((p) => p.id === PEOPLE_CONSTANTS.OWNER_ID);
99
+ const out = [{ ...(owner ?? { source: 'owner', createdAt: iso, updatedAt: iso }), id: ownerId, role: 'owner' }];
100
+ const others = stored
101
+ .filter((p) => p.id !== ownerId && p.id !== PEOPLE_CONSTANTS.OWNER_ID)
102
+ .map((p) => ({ ...p, role: p.role === 'owner' ? 'member' : p.role }))
103
+ .sort((a, b) => (a.name ?? a.id).localeCompare(b.name ?? b.id));
104
+ return [...out, ...others];
105
+ }
106
+ /**
107
+ * One person.
108
+ *
109
+ * @param id - Person id
110
+ * @returns The person, or null when unknown
111
+ */
112
+ get(id) {
113
+ const ownerId = this.ownerId();
114
+ const key = id === PEOPLE_CONSTANTS.OWNER_ID ? ownerId : id;
115
+ return this.list().find((p) => p.id === key) ?? null;
116
+ }
117
+ /**
118
+ * A person's role. Unknown people are members (the default for a Slack
119
+ * user in the workspace).
120
+ *
121
+ * @param id - Person id
122
+ * @returns Role
123
+ */
124
+ roleOf(id) {
125
+ if (this.isOwner(id))
126
+ return 'owner';
127
+ const found = this.read().people.find((p) => p.id === id);
128
+ if (!found)
129
+ return PEOPLE_CONSTANTS.DEFAULT_ROLE;
130
+ return found.role === 'owner' ? 'member' : found.role;
131
+ }
132
+ /**
133
+ * How to name a person to others.
134
+ *
135
+ * @param id - Person id
136
+ * @returns Their name, "the owner" for an owner without one, else the id
137
+ */
138
+ displayName(id) {
139
+ const person = this.get(id);
140
+ if (person?.name)
141
+ return person.name;
142
+ return this.isOwner(id) ? 'the owner' : id;
143
+ }
144
+ /**
145
+ * Record a Slack user who messaged an agent (added as a member the first
146
+ * time; a missing name is filled in). Never changes a role.
147
+ *
148
+ * @param id - Slack user id
149
+ * @param name - Their display name, when known
150
+ */
151
+ noteSeen(id, name) {
152
+ if (!PEOPLE_CONSTANTS.SLACK_USER_ID_PATTERN.test(id))
153
+ return;
154
+ const file = this.read();
155
+ const existing = file.people.find((p) => p.id === id);
156
+ const cleanName = cleanPersonName(name);
157
+ if (existing) {
158
+ if (cleanName && !existing.name) {
159
+ existing.name = cleanName;
160
+ existing.updatedAt = new Date(this.now()).toISOString();
161
+ this.write(file);
162
+ }
163
+ return;
164
+ }
165
+ const iso = new Date(this.now()).toISOString();
166
+ file.people.push({
167
+ id,
168
+ ...(cleanName ? { name: cleanName } : {}),
169
+ role: this.isOwner(id) ? 'owner' : PEOPLE_CONSTANTS.DEFAULT_ROLE,
170
+ source: 'auto',
171
+ createdAt: iso,
172
+ updatedAt: iso,
173
+ });
174
+ this.write(file);
175
+ }
176
+ /**
177
+ * Add or edit a person (owner action).
178
+ *
179
+ * @param id - Slack user id
180
+ * @param patch - Name and/or role
181
+ * @returns The person
182
+ * @throws PeopleDirectoryError on an invalid id or role, or when changing the owner's role
183
+ */
184
+ upsert(id, patch) {
185
+ if (!isPersonId(id))
186
+ throw new PeopleDirectoryError('A person is a Slack user id like U0123ABCD');
187
+ if (patch.role !== undefined && !isPersonRole(patch.role))
188
+ throw new PeopleDirectoryError('role must be owner, member or guest');
189
+ const owner = this.isOwner(id);
190
+ if (owner && patch.role !== undefined && patch.role !== 'owner')
191
+ throw new PeopleDirectoryError("The instance owner's role can't be changed");
192
+ if (!owner && patch.role === 'owner')
193
+ throw new PeopleDirectoryError('There is one owner: the person who installed Crewly in Slack');
194
+ if (patch.name !== undefined && patch.name !== null && typeof patch.name !== 'string')
195
+ throw new PeopleDirectoryError('name must be text');
196
+ const file = this.read();
197
+ const key = owner ? this.ownerId() : id;
198
+ const iso = new Date(this.now()).toISOString();
199
+ let person = file.people.find((p) => p.id === key);
200
+ if (!person) {
201
+ person = { id: key, role: owner ? 'owner' : PEOPLE_CONSTANTS.DEFAULT_ROLE, source: 'owner', createdAt: iso, updatedAt: iso };
202
+ file.people.push(person);
203
+ }
204
+ if (patch.name !== undefined) {
205
+ const name = cleanPersonName(patch.name);
206
+ if (name)
207
+ person.name = name;
208
+ else
209
+ delete person.name;
210
+ }
211
+ if (patch.role !== undefined)
212
+ person.role = patch.role;
213
+ person.source = 'owner';
214
+ person.updatedAt = iso;
215
+ this.write(file);
216
+ return this.get(key);
217
+ }
218
+ /**
219
+ * Remove a person (they come back as a member if they message an agent again).
220
+ *
221
+ * @param id - Person id
222
+ * @returns True when removed
223
+ * @throws PeopleDirectoryError for the owner
224
+ */
225
+ remove(id) {
226
+ if (this.isOwner(id))
227
+ throw new PeopleDirectoryError("The instance owner can't be removed");
228
+ const file = this.read();
229
+ const before = file.people.length;
230
+ file.people = file.people.filter((p) => p.id !== id);
231
+ if (file.people.length === before)
232
+ return false;
233
+ this.write(file);
234
+ return true;
235
+ }
236
+ /** @returns The stored file (empty when missing or unreadable) */
237
+ read() {
238
+ try {
239
+ const raw = JSON.parse(fs.readFileSync(this.filePath(), 'utf-8'));
240
+ const people = raw && typeof raw === 'object' && Array.isArray(raw.people) ? raw.people : [];
241
+ return {
242
+ version: 1,
243
+ people: people.filter((p) => !!p && isPersonId(p.id) && isPersonRole(p.role)),
244
+ };
245
+ }
246
+ catch {
247
+ return { version: 1, people: [] };
248
+ }
249
+ }
250
+ /**
251
+ * Write atomically.
252
+ *
253
+ * @param file - Contents
254
+ */
255
+ write(file) {
256
+ const target = this.filePath();
257
+ fs.mkdirSync(path.dirname(target), { recursive: true });
258
+ const tmp = `${target}.${process.pid}.tmp`;
259
+ fs.writeFileSync(tmp, `${JSON.stringify(file, null, 2)}\n`, 'utf-8');
260
+ fs.renameSync(tmp, target);
261
+ }
262
+ }
263
+ /**
264
+ * Trim and bound a display name.
265
+ *
266
+ * @param name - Raw name
267
+ * @returns Clean name, or undefined when empty
268
+ */
269
+ export function cleanPersonName(name) {
270
+ if (typeof name !== 'string')
271
+ return undefined;
272
+ const trimmed = name.replace(/\s+/g, ' ').trim().slice(0, PEOPLE_CONSTANTS.MAX_NAME_LENGTH);
273
+ return trimmed || undefined;
274
+ }
275
+ /**
276
+ * Record a Slack user who messaged an agent, with their name (best effort,
277
+ * never throws).
278
+ *
279
+ * @param slackUserId - Slack user id
280
+ * @param name - Display name, when known
281
+ */
282
+ export function notePerson(slackUserId, name) {
283
+ try {
284
+ getPeopleDirectory().noteSeen(slackUserId, name ?? undefined);
285
+ }
286
+ catch {
287
+ // the directory is a convenience here
288
+ }
289
+ }
290
+ let instance = null;
291
+ let ownerLookup = null;
292
+ /**
293
+ * Tell the directory how to find the owner's Slack id (wired once Slack is up).
294
+ *
295
+ * @param lookup - Lookup, or null
296
+ */
297
+ export function setPeopleOwnerLookup(lookup) {
298
+ ownerLookup = lookup;
299
+ }
300
+ /**
301
+ * The backend's people directory.
302
+ *
303
+ * @returns Singleton
304
+ */
305
+ export function getPeopleDirectory() {
306
+ instance ??= new PeopleDirectoryService({ getOwnerSlackUserId: () => ownerLookup?.() ?? null });
307
+ return instance;
308
+ }
309
+ /**
310
+ * Replace the singleton (tests).
311
+ *
312
+ * @param service - Instance, or null to reset
313
+ */
314
+ export function setPeopleDirectoryForTesting(service) {
315
+ instance = service;
316
+ }
317
+ //# sourceMappingURL=people-directory.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"people-directory.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/people/people-directory.service.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,8 @@ export interface LaunchRuntimeDecision {
23
23
  overridden: boolean;
24
24
  /** Model to run when the fallback is the Crewly Agent (provider/model) */
25
25
  crewlyAgentModel?: string;
26
+ /** One of the owner's other Claude Code accounts to run on (issue #942) */
27
+ claudeAccount?: string;
26
28
  }
27
29
  /** Input of a launch decision. */
28
30
  export interface LaunchRuntimeInput {
@@ -35,8 +37,12 @@ export interface LaunchRuntimeInput {
35
37
  }
36
38
  /** Hooks the RuntimeFallbackService provides. */
37
39
  export interface RuntimeFallbackHooks {
38
- /** Runtime a session runs on instead of its configured one, or null */
40
+ /** Runtime a session runs on instead of its configured one, or null (never carries an account) */
39
41
  overrideFor(sessionName: string): string | null;
42
+ /** The owner's other Claude Code account a session runs on, or null (its runtime's default login) */
43
+ accountFor(sessionName: string): string | null;
44
+ /** A session's login expired: true when the fallback owns it (the session runs on another account) */
45
+ reportLoginExpiry(sessionName: string): boolean;
40
46
  /** Runtime to launch a session on (may start a fallback for an exhausted runtime) */
41
47
  resolveLaunch(input: LaunchRuntimeInput): Promise<LaunchRuntimeDecision>;
42
48
  /** Before a message is written into a session: deliver now, or queue it (a switch is running / needed) */
@@ -65,6 +71,28 @@ export declare function setRuntimeFallbackHooks(next: RuntimeFallbackHooks | nul
65
71
  * ```
66
72
  */
67
73
  export declare function effectiveRuntimeType<T extends string>(sessionName: string | undefined | null, configured: T): T;
74
+ /**
75
+ * The owner's other Claude Code account a session runs on (issue #942).
76
+ *
77
+ * @param sessionName - Session name
78
+ * @returns Account name, or null when it runs on its runtime's default login
79
+ *
80
+ * @example
81
+ * ```ts
82
+ * const account = effectiveClaudeAccount(sessionName); // 'work' while on claude-code@work
83
+ * ```
84
+ */
85
+ export declare function effectiveClaudeAccount(sessionName: string | undefined | null): string | null;
86
+ /**
87
+ * Report an expired login of a session. A session on one of the owner's
88
+ * other Claude Code accounts is the fallback's: that account is marked
89
+ * signed out and the agent moves on along its chain; the default login's
90
+ * expiry stays with the re-login flow.
91
+ *
92
+ * @param sessionName - Session whose output showed the expiry
93
+ * @returns True when the fallback handled it (the caller must not start a re-login)
94
+ */
95
+ export declare function reportRuntimeLoginExpiry(sessionName: string | undefined | null): boolean;
68
96
  /**
69
97
  * Decide the runtime to launch a session on.
70
98
  *
@@ -1 +1 @@
1
- {"version":3,"file":"effective-runtime.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/effective-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,4CAA4C;AAC5C,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEhE,iDAAiD;AACjD,MAAM,WAAW,qBAAqB;IACrC,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,UAAU,EAAE,OAAO,CAAC;IACpB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,kCAAkC;AAClC,MAAM,WAAW,kBAAkB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,OAAO,CAAC;CACxB;AAED,iDAAiD;AACjD,MAAM,WAAW,oBAAoB;IACpC,uEAAuE;IACvE,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAChD,qFAAqF;IACrF,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACzE,0GAA0G;IAC1G,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAC1E,0EAA0E;IAC1E,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC;IACvG,8EAA8E;IAC9E,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CACpD;AAID;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI,CAE/E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAO/G;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAOpG;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAOvG;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAO5H;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAO/E"}
1
+ {"version":3,"file":"effective-runtime.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/effective-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,4CAA4C;AAC5C,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEhE,iDAAiD;AACjD,MAAM,WAAW,qBAAqB;IACrC,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,UAAU,EAAE,OAAO,CAAC;IACpB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,2EAA2E;IAC3E,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,kCAAkC;AAClC,MAAM,WAAW,kBAAkB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,OAAO,CAAC;CACxB;AAED,iDAAiD;AACjD,MAAM,WAAW,oBAAoB;IACpC,kGAAkG;IAClG,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAChD,qGAAqG;IACrG,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/C,sGAAsG;IACtG,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IAChD,qFAAqF;IACrF,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACzE,0GAA0G;IAC1G,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAC1E,0EAA0E;IAC1E,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC;IACvG,8EAA8E;IAC9E,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CACpD;AAID;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI,CAE/E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAO/G;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAO5F;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAOxF;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAOpG;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAOvG;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAO5H;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAO/E"}
@@ -44,6 +44,46 @@ export function effectiveRuntimeType(sessionName, configured) {
44
44
  return configured;
45
45
  }
46
46
  }
47
+ /**
48
+ * The owner's other Claude Code account a session runs on (issue #942).
49
+ *
50
+ * @param sessionName - Session name
51
+ * @returns Account name, or null when it runs on its runtime's default login
52
+ *
53
+ * @example
54
+ * ```ts
55
+ * const account = effectiveClaudeAccount(sessionName); // 'work' while on claude-code@work
56
+ * ```
57
+ */
58
+ export function effectiveClaudeAccount(sessionName) {
59
+ if (!hooks || !sessionName)
60
+ return null;
61
+ try {
62
+ return hooks.accountFor(sessionName);
63
+ }
64
+ catch {
65
+ return null;
66
+ }
67
+ }
68
+ /**
69
+ * Report an expired login of a session. A session on one of the owner's
70
+ * other Claude Code accounts is the fallback's: that account is marked
71
+ * signed out and the agent moves on along its chain; the default login's
72
+ * expiry stays with the re-login flow.
73
+ *
74
+ * @param sessionName - Session whose output showed the expiry
75
+ * @returns True when the fallback handled it (the caller must not start a re-login)
76
+ */
77
+ export function reportRuntimeLoginExpiry(sessionName) {
78
+ if (!hooks || !sessionName)
79
+ return false;
80
+ try {
81
+ return hooks.reportLoginExpiry(sessionName);
82
+ }
83
+ catch {
84
+ return false;
85
+ }
86
+ }
47
87
  /**
48
88
  * Decide the runtime to launch a session on.
49
89
  *
@@ -1 +1 @@
1
- {"version":3,"file":"effective-runtime.js","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/effective-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAuCH,IAAI,KAAK,GAAgC,IAAI,CAAC;AAE9C;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAiC;IACxE,KAAK,GAAG,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAmB,WAAsC,EAAE,UAAa;IAC3G,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW;QAAE,OAAO,UAAU,CAAC;IAC9C,IAAI,CAAC;QACJ,OAAQ,KAAK,CAAC,WAAW,CAAC,WAAW,CAAc,IAAI,UAAU,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,UAAU,CAAC;IACnB,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,KAAyB;IACnE,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACpE,IAAI,CAAC;QACJ,OAAO,MAAM,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACzD,CAAC;AACF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,6BAA6B,CAAC,WAAmB,EAAE,OAAe;IACjF,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAAmB,EAAE,OAAe,EAAE,IAAY,EAAE,MAA2B;IAClH,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAClC,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAAC,WAAmB;IAC/D,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"effective-runtime.js","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/effective-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA6CH,IAAI,KAAK,GAAgC,IAAI,CAAC;AAE9C;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAiC;IACxE,KAAK,GAAG,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAmB,WAAsC,EAAE,UAAa;IAC3G,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW;QAAE,OAAO,UAAU,CAAC;IAC9C,IAAI,CAAC;QACJ,OAAQ,KAAK,CAAC,WAAW,CAAC,WAAW,CAAc,IAAI,UAAU,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,UAAU,CAAC;IACnB,CAAC;AACF,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CAAC,WAAsC;IAC5E,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CAAC,WAAsC;IAC9E,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,KAAyB;IACnE,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACpE,IAAI,CAAC;QACJ,OAAO,MAAM,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACzD,CAAC;AACF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,6BAA6B,CAAC,WAAmB,EAAE,OAAe;IACjF,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAAmB,EAAE,OAAe,EAAE,IAAY,EAAE,MAA2B;IAClH,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAClC,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAAC,WAAmB;IAC/D,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,CAAC;QACJ,OAAO,KAAK,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC"}
@@ -7,6 +7,16 @@
7
7
  */
8
8
  /** Every runtime id Crewly knows. */
9
9
  export declare const KNOWN_RUNTIMES: readonly string[];
10
+ /**
11
+ * Whether a chain entry is valid: a known runtime, or one of the owner's
12
+ * Claude Code accounts (`claude-code@<name>`, issue #942).
13
+ *
14
+ * @param target - Chain entry
15
+ * @returns True when valid
16
+ */
17
+ export declare function isKnownRuntimeTarget(target: string): boolean;
18
+ /** Why a runtime target is unusable. */
19
+ export type ExhaustedKind = 'usage_limit' | 'billing' | 'login';
10
20
  /** Why an agent runs on a runtime other than its configured one. */
11
21
  export type RuntimeOverrideReason = 'usage_limit';
12
22
  /**
@@ -14,7 +24,7 @@ export type RuntimeOverrideReason = 'usage_limit';
14
24
  * runtime (`primary`) is never changed.
15
25
  */
16
26
  export interface RuntimeOverride {
17
- /** Runtime the agent runs on now */
27
+ /** Runtime the agent runs on now (a runtime target: `claude-code@work` for another account) */
18
28
  runtime: string;
19
29
  /** The member's configured runtime */
20
30
  primary: string;
@@ -28,8 +38,9 @@ export interface RuntimeOverride {
28
38
  /** The primary is back; revert at the next idle boundary */
29
39
  revertPending?: boolean;
30
40
  }
31
- /** A runtime that is out of usage on this machine (account-wide). */
41
+ /** A runtime (or one Claude Code account) that is out of usage on this machine (account-wide). */
32
42
  export interface ExhaustedRuntime {
43
+ /** Runtime target (`claude-code`, `claude-code@work`, `crewly-agent`, …) */
33
44
  runtime: string;
34
45
  /** ISO time it was detected */
35
46
  since: string;
@@ -38,9 +49,11 @@ export interface ExhaustedRuntime {
38
49
  /**
39
50
  * `usage_limit` (a window that resets) or `billing` (out of money/credit:
40
51
  * no timed retry, probed at most every BILLING_PROBE_INTERVAL_MS).
52
+ * `login`: one of the owner's other Claude Code accounts is signed out
53
+ * (its login expired); it comes back after the owner signs it in again.
41
54
  * Missing = `usage_limit` (state from before the field existed).
42
55
  */
43
- kind?: 'usage_limit' | 'billing';
56
+ kind?: ExhaustedKind;
44
57
  /** Switch-backs that failed (the limit came straight back); backs off the next probe */
45
58
  failedReverts?: number;
46
59
  /** Rule that matched (never contains output) */
@@ -97,16 +110,16 @@ export declare function defaultRuntimeFallbackSettings(): RuntimeFallbackSetting
97
110
  /**
98
111
  * Display name of a runtime.
99
112
  *
100
- * @param runtime - Runtime id
113
+ * @param runtime - Runtime target (`claude-code@work` reads as "Claude Code (work)")
101
114
  * @param crewlyAgentModel - Model a Crewly Agent runs (a DeepSeek model reads as "DeepSeek")
102
- * @returns e.g. "Claude Code", "DeepSeek"
115
+ * @returns e.g. "Claude Code", "DeepSeek", "Claude Code (work)"
103
116
  */
104
117
  export declare function runtimeLabel(runtime: string, crewlyAgentModel?: string): string;
105
118
  /**
106
119
  * Short name of a runtime for "(Claude limit)".
107
120
  *
108
- * @param runtime - Runtime id
109
- * @returns e.g. "Claude"
121
+ * @param runtime - Runtime target
122
+ * @returns e.g. "Claude", "Claude (work)"
110
123
  */
111
124
  export declare function runtimeShortLabel(runtime: string): string;
112
125
  /** A validation failure. */
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-fallback.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/runtime-fallback.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-fallback.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/runtime-fallback.types.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,19 @@
6
6
  * @module services/runtime-fallback/runtime-fallback.types
7
7
  */
8
8
  import { RUNTIME_FALLBACK_CONSTANTS, RUNTIME_TYPES } from '../../constants.js';
9
+ import { isClaudeAccountTarget, parseRuntimeTarget } from '../harness/claude-accounts.js';
9
10
  /** Every runtime id Crewly knows. */
10
11
  export const KNOWN_RUNTIMES = Object.values(RUNTIME_TYPES);
12
+ /**
13
+ * Whether a chain entry is valid: a known runtime, or one of the owner's
14
+ * Claude Code accounts (`claude-code@<name>`, issue #942).
15
+ *
16
+ * @param target - Chain entry
17
+ * @returns True when valid
18
+ */
19
+ export function isKnownRuntimeTarget(target) {
20
+ return KNOWN_RUNTIMES.includes(target) || isClaudeAccountTarget(target);
21
+ }
11
22
  /**
12
23
  * Default settings.
13
24
  *
@@ -26,11 +37,14 @@ export function defaultRuntimeFallbackSettings() {
26
37
  /**
27
38
  * Display name of a runtime.
28
39
  *
29
- * @param runtime - Runtime id
40
+ * @param runtime - Runtime target (`claude-code@work` reads as "Claude Code (work)")
30
41
  * @param crewlyAgentModel - Model a Crewly Agent runs (a DeepSeek model reads as "DeepSeek")
31
- * @returns e.g. "Claude Code", "DeepSeek"
42
+ * @returns e.g. "Claude Code", "DeepSeek", "Claude Code (work)"
32
43
  */
33
44
  export function runtimeLabel(runtime, crewlyAgentModel) {
45
+ const { runtime: base, account } = parseRuntimeTarget(runtime);
46
+ if (account)
47
+ return `${RUNTIME_FALLBACK_CONSTANTS.LABELS[base] ?? base} (${account})`;
34
48
  if (runtime === RUNTIME_TYPES.CREWLY_AGENT && crewlyAgentModel?.toLowerCase().startsWith('deepseek/'))
35
49
  return 'DeepSeek';
36
50
  return RUNTIME_FALLBACK_CONSTANTS.LABELS[runtime] ?? runtime;
@@ -38,17 +52,20 @@ export function runtimeLabel(runtime, crewlyAgentModel) {
38
52
  /**
39
53
  * Short name of a runtime for "(Claude limit)".
40
54
  *
41
- * @param runtime - Runtime id
42
- * @returns e.g. "Claude"
55
+ * @param runtime - Runtime target
56
+ * @returns e.g. "Claude", "Claude (work)"
43
57
  */
44
58
  export function runtimeShortLabel(runtime) {
45
- return RUNTIME_FALLBACK_CONSTANTS.SHORT_LABELS[runtime] ?? runtime;
59
+ const { runtime: base, account } = parseRuntimeTarget(runtime);
60
+ const label = RUNTIME_FALLBACK_CONSTANTS.SHORT_LABELS[base] ?? base;
61
+ return account ? `${label} (${account})` : label;
46
62
  }
47
63
  /** A validation failure. */
48
64
  export class RuntimeFallbackSettingsError extends Error {
49
65
  }
50
66
  /**
51
- * Validate a chain: known runtime ids, no duplicates (later duplicates dropped).
67
+ * Validate a chain: known runtime ids or Claude Code accounts
68
+ * (`claude-code@<name>`), no duplicates (later duplicates dropped).
52
69
  *
53
70
  * @param value - Candidate
54
71
  * @param field - Field name for the error
@@ -60,7 +77,7 @@ function validateChain(value, field) {
60
77
  throw new RuntimeFallbackSettingsError(`${field} must be a list of runtimes`);
61
78
  const out = [];
62
79
  for (const entry of value) {
63
- if (typeof entry !== 'string' || !KNOWN_RUNTIMES.includes(entry)) {
80
+ if (typeof entry !== 'string' || !isKnownRuntimeTarget(entry)) {
64
81
  throw new RuntimeFallbackSettingsError(`${field} has an unknown runtime: ${String(entry)}`);
65
82
  }
66
83
  if (!out.includes(entry))
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-fallback.types.js","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/runtime-fallback.types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,0BAA0B,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAE/E,qCAAqC;AACrC,MAAM,CAAC,MAAM,cAAc,GAAsB,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAyF9E;;;;GAIG;AACH,MAAM,UAAU,8BAA8B;IAC7C,OAAO;QACN,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,CAAC,GAAG,0BAA0B,CAAC,aAAa,CAAC;QACpD,YAAY,EAAE,EAAE;QAChB,UAAU,EAAE,IAAI;QAChB,gBAAgB,EAAE,0BAA0B,CAAC,0BAA0B;QACvE,oBAAoB,EAAE,0BAA0B,CAAC,8BAA8B;KAC/E,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,OAAe,EAAE,gBAAyB;IACtE,IAAI,OAAO,KAAK,aAAa,CAAC,YAAY,IAAI,gBAAgB,EAAE,WAAW,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,UAAU,CAAC;IACzH,OAAO,0BAA0B,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC;AAC9D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAChD,OAAO,0BAA0B,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC;AACpE,CAAC;AAED,4BAA4B;AAC5B,MAAM,OAAO,4BAA6B,SAAQ,KAAK;CAAG;AAE1D;;;;;;;GAOG;AACH,SAAS,aAAa,CAAC,KAAc,EAAE,KAAa;IACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,4BAA4B,CAAC,GAAG,KAAK,6BAA6B,CAAC,CAAC;IACzG,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,4BAA4B,CAAC,GAAG,KAAK,4BAA4B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7F,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAgC,EAAE,KAAc;IAClF,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,4BAA4B,CAAC,4BAA4B,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,CAAC,GAAG,KAAgC,CAAC;IAC3C,MAAM,IAAI,GAA4B,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;IAC3H,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACpB,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,4BAA4B,CAAC,+BAA+B,CAAC,CAAC;QAC5G,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;IAC1B,CAAC;IACD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;QACvB,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,SAAS;YAAE,MAAM,IAAI,4BAA4B,CAAC,kCAAkC,CAAC,CAAC;QAClH,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC;IAChC,CAAC;IACD,IAAI,OAAO,IAAI,CAAC;QAAE,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC/D,IAAI,cAAc,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,CAAC,CAAC,YAAY,CAAC;QAC3B,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,4BAA4B,CAAC,gCAAgC,CAAC,CAAC;QACpI,MAAM,MAAM,GAA6B,EAAE,CAAC;QAC5C,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAA8B,CAAC,EAAE,CAAC;YAChF,0CAA0C;YAC1C,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;gBAAE,SAAS;YAC7E,MAAM,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC,KAAK,EAAE,gBAAgB,QAAQ,EAAE,CAAC,CAAC;QACrE,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;IAC5B,CAAC;IACD,IAAI,kBAAkB,IAAI,CAAC,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,CAAC,gBAAgB,KAAK,QAAQ,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC1G,MAAM,IAAI,4BAA4B,CAAC,gDAAgD,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,gBAAgB,CAAC;IAC5C,CAAC;IACD,IAAI,sBAAsB,IAAI,CAAC,EAAE,CAAC;QACjC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;QACzC,MAAM,EAAE,0BAA0B,EAAE,GAAG,EAAE,0BAA0B,EAAE,GAAG,EAAE,GAAG,0BAA0B,CAAC;QACxG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;YAChD,MAAM,IAAI,4BAA4B,CAAC,oDAAoD,GAAG,OAAO,GAAG,EAAE,CAAC,CAAC;QAC7G,CAAC;QACD,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAY;IAC7C,MAAM,IAAI,GAAG,8BAA8B,EAAE,CAAC;IAC9C,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACjD,IAAI,GAAG,GAAG,IAAI,CAAC;IACf,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAA8B,CAAC,EAAE,CAAC;QAC3E,IAAI,CAAC;YACJ,GAAG,GAAG,kBAAkB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACR,sDAAsD;QACvD,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"runtime-fallback.types.js","sourceRoot":"","sources":["../../../../../../backend/src/services/runtime-fallback/runtime-fallback.types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"skill.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/skill/skill.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/skill/skill.service.ts"],"names":[],"mappings":"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"}