crewly 1.3.31 → 1.4.1

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 +202 -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 +96 -1
  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/orchestrator/orchestrator.controller.d.ts +16 -0
  186. package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.d.ts.map +1 -1
  187. package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.js +124 -13
  188. package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.js.map +1 -1
  189. package/dist/backend/backend/src/controllers/payment/payment.controller.js +2 -2
  190. package/dist/backend/backend/src/controllers/payment/payment.controller.js.map +1 -1
  191. package/dist/backend/backend/src/controllers/payment/payment.routes.d.ts +3 -3
  192. package/dist/backend/backend/src/controllers/payment/payment.routes.d.ts.map +1 -1
  193. package/dist/backend/backend/src/controllers/payment/payment.routes.js +4 -14
  194. package/dist/backend/backend/src/controllers/payment/payment.routes.js.map +1 -1
  195. package/dist/backend/backend/src/controllers/payment/payment.types.d.ts +15 -94
  196. package/dist/backend/backend/src/controllers/payment/payment.types.d.ts.map +1 -1
  197. package/dist/backend/backend/src/controllers/payment/payment.types.js +11 -35
  198. package/dist/backend/backend/src/controllers/payment/payment.types.js.map +1 -1
  199. package/dist/backend/backend/src/controllers/pr-review/pr-review.controller.d.ts +49 -0
  200. package/dist/backend/backend/src/controllers/pr-review/pr-review.controller.d.ts.map +1 -0
  201. package/dist/backend/backend/src/controllers/pr-review/pr-review.controller.js +138 -0
  202. package/dist/backend/backend/src/controllers/pr-review/pr-review.controller.js.map +1 -0
  203. package/dist/backend/backend/src/controllers/pr-review/pr-review.routes.d.ts +20 -0
  204. package/dist/backend/backend/src/controllers/pr-review/pr-review.routes.d.ts.map +1 -0
  205. package/dist/backend/backend/src/controllers/pr-review/pr-review.routes.js +30 -0
  206. package/dist/backend/backend/src/controllers/pr-review/pr-review.routes.js.map +1 -0
  207. package/dist/backend/backend/src/controllers/quality-gate/quality-gate.controller.d.ts +12 -0
  208. package/dist/backend/backend/src/controllers/quality-gate/quality-gate.controller.d.ts.map +1 -1
  209. package/dist/backend/backend/src/controllers/quality-gate/quality-gate.controller.js +107 -0
  210. package/dist/backend/backend/src/controllers/quality-gate/quality-gate.controller.js.map +1 -1
  211. package/dist/backend/backend/src/controllers/request-types.d.ts +20 -1
  212. package/dist/backend/backend/src/controllers/request-types.d.ts.map +1 -1
  213. package/dist/backend/backend/src/controllers/slack/slack.controller.d.ts.map +1 -1
  214. package/dist/backend/backend/src/controllers/slack/slack.controller.js +11 -5
  215. package/dist/backend/backend/src/controllers/slack/slack.controller.js.map +1 -1
  216. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts +46 -0
  217. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts.map +1 -1
  218. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js +598 -326
  219. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js.map +1 -1
  220. package/dist/backend/backend/src/controllers/team/team.controller.d.ts +12 -0
  221. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  222. package/dist/backend/backend/src/controllers/team/team.controller.js +105 -36
  223. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  224. package/dist/backend/backend/src/controllers/team/team.routes.d.ts.map +1 -1
  225. package/dist/backend/backend/src/controllers/team/team.routes.js +2 -1
  226. package/dist/backend/backend/src/controllers/team/team.routes.js.map +1 -1
  227. package/dist/backend/backend/src/controllers/template/template.controller.d.ts +11 -0
  228. package/dist/backend/backend/src/controllers/template/template.controller.d.ts.map +1 -1
  229. package/dist/backend/backend/src/controllers/template/template.controller.js +59 -0
  230. package/dist/backend/backend/src/controllers/template/template.controller.js.map +1 -1
  231. package/dist/backend/backend/src/controllers/template/template.routes.d.ts.map +1 -1
  232. package/dist/backend/backend/src/controllers/template/template.routes.js +2 -1
  233. package/dist/backend/backend/src/controllers/template/template.routes.js.map +1 -1
  234. package/dist/backend/backend/src/controllers/workspace/workspace.controller.d.ts +39 -0
  235. package/dist/backend/backend/src/controllers/workspace/workspace.controller.d.ts.map +1 -0
  236. package/dist/backend/backend/src/controllers/workspace/workspace.controller.js +120 -0
  237. package/dist/backend/backend/src/controllers/workspace/workspace.controller.js.map +1 -0
  238. package/dist/backend/backend/src/controllers/workspace/workspace.routes.d.ts +18 -0
  239. package/dist/backend/backend/src/controllers/workspace/workspace.routes.d.ts.map +1 -0
  240. package/dist/backend/backend/src/controllers/workspace/workspace.routes.js +27 -0
  241. package/dist/backend/backend/src/controllers/workspace/workspace.routes.js.map +1 -0
  242. package/dist/backend/backend/src/index.d.ts.map +1 -1
  243. package/dist/backend/backend/src/index.js +108 -15
  244. package/dist/backend/backend/src/index.js.map +1 -1
  245. package/dist/backend/backend/src/middleware/require-auth.middleware.d.ts +20 -0
  246. package/dist/backend/backend/src/middleware/require-auth.middleware.d.ts.map +1 -0
  247. package/dist/backend/backend/src/middleware/require-auth.middleware.js +21 -0
  248. package/dist/backend/backend/src/middleware/require-auth.middleware.js.map +1 -0
  249. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  250. package/dist/backend/backend/src/routes/api.routes.js +18 -5
  251. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  252. package/dist/backend/backend/src/routes/modules/quality-gate.routes.d.ts +2 -1
  253. package/dist/backend/backend/src/routes/modules/quality-gate.routes.d.ts.map +1 -1
  254. package/dist/backend/backend/src/routes/modules/quality-gate.routes.js +4 -2
  255. package/dist/backend/backend/src/routes/modules/quality-gate.routes.js.map +1 -1
  256. package/dist/backend/backend/src/routes/modules/task-management.routes.d.ts.map +1 -1
  257. package/dist/backend/backend/src/routes/modules/task-management.routes.js +8 -0
  258. package/dist/backend/backend/src/routes/modules/task-management.routes.js.map +1 -1
  259. package/dist/backend/backend/src/routes/modules/terminal.routes.d.ts.map +1 -1
  260. package/dist/backend/backend/src/routes/modules/terminal.routes.js +4 -0
  261. package/dist/backend/backend/src/routes/modules/terminal.routes.js.map +1 -1
  262. package/dist/backend/backend/src/services/agent/adaptive-heartbeat.service.d.ts +149 -0
  263. package/dist/backend/backend/src/services/agent/adaptive-heartbeat.service.d.ts.map +1 -0
  264. package/dist/backend/backend/src/services/agent/adaptive-heartbeat.service.js +200 -0
  265. package/dist/backend/backend/src/services/agent/adaptive-heartbeat.service.js.map +1 -0
  266. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts +13 -0
  267. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts.map +1 -1
  268. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js +65 -6
  269. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js.map +1 -1
  270. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +36 -0
  271. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  272. package/dist/backend/backend/src/services/agent/agent-registration.service.js +174 -52
  273. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  274. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.d.ts +66 -20
  275. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.d.ts.map +1 -1
  276. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.js +261 -60
  277. package/dist/backend/backend/src/services/agent/auditor-scheduler.service.js.map +1 -1
  278. package/dist/backend/backend/src/services/agent/claude-runtime.service.d.ts +19 -0
  279. package/dist/backend/backend/src/services/agent/claude-runtime.service.d.ts.map +1 -1
  280. package/dist/backend/backend/src/services/agent/claude-runtime.service.js +80 -0
  281. package/dist/backend/backend/src/services/agent/claude-runtime.service.js.map +1 -1
  282. package/dist/backend/backend/src/services/agent/context-window-monitor.service.d.ts +11 -0
  283. package/dist/backend/backend/src/services/agent/context-window-monitor.service.d.ts.map +1 -1
  284. package/dist/backend/backend/src/services/agent/context-window-monitor.service.js +49 -1
  285. package/dist/backend/backend/src/services/agent/context-window-monitor.service.js.map +1 -1
  286. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +74 -3
  287. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +1 -1
  288. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +248 -18
  289. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +1 -1
  290. package/dist/backend/backend/src/services/agent/crewly-agent/approval-queue.service.d.ts +161 -0
  291. package/dist/backend/backend/src/services/agent/crewly-agent/approval-queue.service.d.ts.map +1 -0
  292. package/dist/backend/backend/src/services/agent/crewly-agent/approval-queue.service.js +237 -0
  293. package/dist/backend/backend/src/services/agent/crewly-agent/approval-queue.service.js.map +1 -0
  294. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.d.ts +74 -0
  295. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.d.ts.map +1 -0
  296. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.js +140 -0
  297. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.js.map +1 -0
  298. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts.map +1 -1
  299. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js +50 -2
  300. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js.map +1 -1
  301. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts +16 -1
  302. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts.map +1 -1
  303. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js +45 -5
  304. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.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 +22 -2
  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 +55 -1
  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 +660 -45
  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 +75 -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 +49 -2
  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-auth.middleware.js +1 -1
  342. package/dist/backend/backend/src/services/cloud/cloud-auth.middleware.js.map +1 -1
  343. package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts +12 -0
  344. package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts.map +1 -1
  345. package/dist/backend/backend/src/services/cloud/cloud-client.service.js +19 -0
  346. package/dist/backend/backend/src/services/cloud/cloud-client.service.js.map +1 -1
  347. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.d.ts +191 -0
  348. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.d.ts.map +1 -0
  349. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.js +415 -0
  350. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.js.map +1 -0
  351. package/dist/backend/backend/src/services/cloud/device-identity.service.d.ts +89 -0
  352. package/dist/backend/backend/src/services/cloud/device-identity.service.d.ts.map +1 -0
  353. package/dist/backend/backend/src/services/cloud/device-identity.service.js +148 -0
  354. package/dist/backend/backend/src/services/cloud/device-identity.service.js.map +1 -0
  355. package/dist/backend/backend/src/services/cloud/relay-client.service.d.ts.map +1 -1
  356. package/dist/backend/backend/src/services/cloud/relay-client.service.js +5 -3
  357. package/dist/backend/backend/src/services/cloud/relay-client.service.js.map +1 -1
  358. package/dist/backend/backend/src/services/core/tracing.service.d.ts +127 -0
  359. package/dist/backend/backend/src/services/core/tracing.service.d.ts.map +1 -0
  360. package/dist/backend/backend/src/services/core/tracing.service.js +238 -0
  361. package/dist/backend/backend/src/services/core/tracing.service.js.map +1 -0
  362. package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts.map +1 -1
  363. package/dist/backend/backend/src/services/event-bus/event-bus.service.js +11 -3
  364. package/dist/backend/backend/src/services/event-bus/event-bus.service.js.map +1 -1
  365. package/dist/backend/backend/src/services/index.d.ts +1 -0
  366. package/dist/backend/backend/src/services/index.d.ts.map +1 -1
  367. package/dist/backend/backend/src/services/index.js +1 -0
  368. package/dist/backend/backend/src/services/index.js.map +1 -1
  369. package/dist/backend/backend/src/services/knowledge/embedding-provider.d.ts +78 -0
  370. package/dist/backend/backend/src/services/knowledge/embedding-provider.d.ts.map +1 -0
  371. package/dist/backend/backend/src/services/knowledge/embedding-provider.js +164 -0
  372. package/dist/backend/backend/src/services/knowledge/embedding-provider.js.map +1 -0
  373. package/dist/backend/backend/src/services/knowledge/knowledge-search.service.d.ts +39 -13
  374. package/dist/backend/backend/src/services/knowledge/knowledge-search.service.d.ts.map +1 -1
  375. package/dist/backend/backend/src/services/knowledge/knowledge-search.service.js +114 -17
  376. package/dist/backend/backend/src/services/knowledge/knowledge-search.service.js.map +1 -1
  377. package/dist/backend/backend/src/services/knowledge/vector-store.service.d.ts +170 -23
  378. package/dist/backend/backend/src/services/knowledge/vector-store.service.d.ts.map +1 -1
  379. package/dist/backend/backend/src/services/knowledge/vector-store.service.js +565 -73
  380. package/dist/backend/backend/src/services/knowledge/vector-store.service.js.map +1 -1
  381. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.d.ts.map +1 -1
  382. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.js +8 -11
  383. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.js.map +1 -1
  384. package/dist/backend/backend/src/services/marketplace/marketplace.service.d.ts.map +1 -1
  385. package/dist/backend/backend/src/services/marketplace/marketplace.service.js +1 -0
  386. package/dist/backend/backend/src/services/marketplace/marketplace.service.js.map +1 -1
  387. package/dist/backend/backend/src/services/memory/context-flush.service.d.ts +73 -0
  388. package/dist/backend/backend/src/services/memory/context-flush.service.d.ts.map +1 -0
  389. package/dist/backend/backend/src/services/memory/context-flush.service.js +131 -0
  390. package/dist/backend/backend/src/services/memory/context-flush.service.js.map +1 -0
  391. package/dist/backend/backend/src/services/memory/learning-accumulation.service.d.ts +23 -2
  392. package/dist/backend/backend/src/services/memory/learning-accumulation.service.d.ts.map +1 -1
  393. package/dist/backend/backend/src/services/memory/learning-accumulation.service.js +78 -16
  394. package/dist/backend/backend/src/services/memory/learning-accumulation.service.js.map +1 -1
  395. package/dist/backend/backend/src/services/memory/memory.service.d.ts +38 -0
  396. package/dist/backend/backend/src/services/memory/memory.service.d.ts.map +1 -1
  397. package/dist/backend/backend/src/services/memory/memory.service.js +121 -2
  398. package/dist/backend/backend/src/services/memory/memory.service.js.map +1 -1
  399. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.d.ts +29 -207
  400. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.d.ts.map +1 -1
  401. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.js +97 -683
  402. package/dist/backend/backend/src/services/messaging/adapters/google-chat-messenger.adapter.js.map +1 -1
  403. package/dist/backend/backend/src/services/messaging/google-chat-initializer.d.ts.map +1 -1
  404. package/dist/backend/backend/src/services/messaging/google-chat-initializer.js +13 -12
  405. package/dist/backend/backend/src/services/messaging/google-chat-initializer.js.map +1 -1
  406. package/dist/backend/backend/src/services/messaging/messenger-adapter.interface.d.ts +2 -0
  407. package/dist/backend/backend/src/services/messaging/messenger-adapter.interface.d.ts.map +1 -1
  408. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts +6 -23
  409. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  410. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +48 -184
  411. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  412. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts.map +1 -1
  413. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js +51 -5
  414. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js.map +1 -1
  415. package/dist/backend/backend/src/services/orchestrator/index.d.ts +1 -1
  416. package/dist/backend/backend/src/services/orchestrator/index.d.ts.map +1 -1
  417. package/dist/backend/backend/src/services/orchestrator/index.js +1 -1
  418. package/dist/backend/backend/src/services/orchestrator/index.js.map +1 -1
  419. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.d.ts +65 -0
  420. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.d.ts.map +1 -1
  421. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.js +165 -2
  422. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.js.map +1 -1
  423. package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.d.ts +8 -0
  424. package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.d.ts.map +1 -1
  425. package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.js +23 -0
  426. package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.js.map +1 -1
  427. package/dist/backend/backend/src/services/payment/stripe.service.d.ts +95 -43
  428. package/dist/backend/backend/src/services/payment/stripe.service.d.ts.map +1 -1
  429. package/dist/backend/backend/src/services/payment/stripe.service.js +229 -190
  430. package/dist/backend/backend/src/services/payment/stripe.service.js.map +1 -1
  431. package/dist/backend/backend/src/services/pr-review/pr-review.service.d.ts +181 -0
  432. package/dist/backend/backend/src/services/pr-review/pr-review.service.d.ts.map +1 -0
  433. package/dist/backend/backend/src/services/pr-review/pr-review.service.js +336 -0
  434. package/dist/backend/backend/src/services/pr-review/pr-review.service.js.map +1 -0
  435. package/dist/backend/backend/src/services/project/task-tracking.service.d.ts +23 -0
  436. package/dist/backend/backend/src/services/project/task-tracking.service.d.ts.map +1 -1
  437. package/dist/backend/backend/src/services/project/task-tracking.service.js +88 -0
  438. package/dist/backend/backend/src/services/project/task-tracking.service.js.map +1 -1
  439. package/dist/backend/backend/src/services/session/index.d.ts +2 -0
  440. package/dist/backend/backend/src/services/session/index.d.ts.map +1 -1
  441. package/dist/backend/backend/src/services/session/index.js +2 -0
  442. package/dist/backend/backend/src/services/session/index.js.map +1 -1
  443. package/dist/backend/backend/src/services/session/session-handoff.service.d.ts +294 -0
  444. package/dist/backend/backend/src/services/session/session-handoff.service.d.ts.map +1 -0
  445. package/dist/backend/backend/src/services/session/session-handoff.service.js +674 -0
  446. package/dist/backend/backend/src/services/session/session-handoff.service.js.map +1 -0
  447. package/dist/backend/backend/src/services/skill/index.d.ts +1 -0
  448. package/dist/backend/backend/src/services/skill/index.d.ts.map +1 -1
  449. package/dist/backend/backend/src/services/skill/index.js +1 -0
  450. package/dist/backend/backend/src/services/skill/index.js.map +1 -1
  451. package/dist/backend/backend/src/services/skill/skill-catalog.service.d.ts +25 -6
  452. package/dist/backend/backend/src/services/skill/skill-catalog.service.d.ts.map +1 -1
  453. package/dist/backend/backend/src/services/skill/skill-catalog.service.js +78 -20
  454. package/dist/backend/backend/src/services/skill/skill-catalog.service.js.map +1 -1
  455. package/dist/backend/backend/src/services/skill/skill-tier.service.d.ts +116 -0
  456. package/dist/backend/backend/src/services/skill/skill-tier.service.d.ts.map +1 -0
  457. package/dist/backend/backend/src/services/skill/skill-tier.service.js +155 -0
  458. package/dist/backend/backend/src/services/skill/skill-tier.service.js.map +1 -0
  459. package/dist/backend/backend/src/services/skill/skill.service.d.ts +35 -7
  460. package/dist/backend/backend/src/services/skill/skill.service.d.ts.map +1 -1
  461. package/dist/backend/backend/src/services/skill/skill.service.js +128 -35
  462. package/dist/backend/backend/src/services/skill/skill.service.js.map +1 -1
  463. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +50 -47
  464. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  465. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +267 -202
  466. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  467. package/dist/backend/backend/src/services/slack/slack.service.d.ts +28 -2
  468. package/dist/backend/backend/src/services/slack/slack.service.d.ts.map +1 -1
  469. package/dist/backend/backend/src/services/slack/slack.service.js +69 -3
  470. package/dist/backend/backend/src/services/slack/slack.service.js.map +1 -1
  471. package/dist/backend/backend/src/services/template/template.service.d.ts +19 -1
  472. package/dist/backend/backend/src/services/template/template.service.d.ts.map +1 -1
  473. package/dist/backend/backend/src/services/template/template.service.js +110 -3
  474. package/dist/backend/backend/src/services/template/template.service.js.map +1 -1
  475. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.d.ts +11 -0
  476. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.d.ts.map +1 -1
  477. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js +57 -3
  478. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js.map +1 -1
  479. package/dist/backend/backend/src/services/workflow/message-scheduler.service.d.ts.map +1 -1
  480. package/dist/backend/backend/src/services/workflow/message-scheduler.service.js +6 -0
  481. package/dist/backend/backend/src/services/workflow/message-scheduler.service.js.map +1 -1
  482. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts +52 -0
  483. package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts.map +1 -1
  484. package/dist/backend/backend/src/services/workflow/scheduler.service.js +319 -6
  485. package/dist/backend/backend/src/services/workflow/scheduler.service.js.map +1 -1
  486. package/dist/backend/backend/src/types/chat.types.d.ts +2 -2
  487. package/dist/backend/backend/src/types/chat.types.d.ts.map +1 -1
  488. package/dist/backend/backend/src/types/chat.types.js +18 -22
  489. package/dist/backend/backend/src/types/chat.types.js.map +1 -1
  490. package/dist/backend/backend/src/types/index.d.ts +37 -0
  491. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  492. package/dist/backend/backend/src/types/index.js.map +1 -1
  493. package/dist/backend/backend/src/types/marketplace.types.d.ts +1 -1
  494. package/dist/backend/backend/src/types/marketplace.types.d.ts.map +1 -1
  495. package/dist/backend/backend/src/types/scheduler.types.d.ts +4 -0
  496. package/dist/backend/backend/src/types/scheduler.types.d.ts.map +1 -1
  497. package/dist/backend/backend/src/types/scheduler.types.js.map +1 -1
  498. package/dist/backend/backend/src/types/skill.types.d.ts +4 -0
  499. package/dist/backend/backend/src/types/skill.types.d.ts.map +1 -1
  500. package/dist/backend/backend/src/types/skill.types.js.map +1 -1
  501. package/dist/backend/backend/src/types/task-tracking.types.d.ts +6 -0
  502. package/dist/backend/backend/src/types/task-tracking.types.d.ts.map +1 -1
  503. package/dist/backend/backend/src/types/task-tracking.types.js.map +1 -1
  504. package/dist/backend/backend/src/types/team-template.types.d.ts +2 -0
  505. package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
  506. package/dist/backend/backend/src/types/team-template.types.js.map +1 -1
  507. package/dist/backend/backend/src/utils/skill-md-parser.d.ts +38 -0
  508. package/dist/backend/backend/src/utils/skill-md-parser.d.ts.map +1 -0
  509. package/dist/backend/backend/src/utils/skill-md-parser.js +47 -0
  510. package/dist/backend/backend/src/utils/skill-md-parser.js.map +1 -0
  511. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts +0 -154
  512. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts.map +1 -1
  513. package/dist/backend/backend/src/websocket/terminal.gateway.js +0 -515
  514. package/dist/backend/backend/src/websocket/terminal.gateway.js.map +1 -1
  515. package/dist/backend/config/constants.d.ts +18 -3
  516. package/dist/backend/config/constants.d.ts.map +1 -1
  517. package/dist/backend/config/constants.js +18 -3
  518. package/dist/backend/config/constants.js.map +1 -1
  519. package/dist/cli/backend/src/constants.d.ts +80 -11
  520. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  521. package/dist/cli/backend/src/constants.js +85 -11
  522. package/dist/cli/backend/src/constants.js.map +1 -1
  523. package/dist/cli/backend/src/services/knowledge/embedding-provider.d.ts +78 -0
  524. package/dist/cli/backend/src/services/knowledge/embedding-provider.d.ts.map +1 -0
  525. package/dist/cli/backend/src/services/knowledge/embedding-provider.js +164 -0
  526. package/dist/cli/backend/src/services/knowledge/embedding-provider.js.map +1 -0
  527. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.d.ts +39 -13
  528. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.d.ts.map +1 -1
  529. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.js +114 -17
  530. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.js.map +1 -1
  531. package/dist/cli/backend/src/services/knowledge/vector-store.service.d.ts +170 -23
  532. package/dist/cli/backend/src/services/knowledge/vector-store.service.d.ts.map +1 -1
  533. package/dist/cli/backend/src/services/knowledge/vector-store.service.js +565 -73
  534. package/dist/cli/backend/src/services/knowledge/vector-store.service.js.map +1 -1
  535. package/dist/cli/backend/src/services/memory/memory.service.d.ts +38 -0
  536. package/dist/cli/backend/src/services/memory/memory.service.d.ts.map +1 -1
  537. package/dist/cli/backend/src/services/memory/memory.service.js +121 -2
  538. package/dist/cli/backend/src/services/memory/memory.service.js.map +1 -1
  539. package/dist/cli/backend/src/types/chat.types.d.ts +2 -2
  540. package/dist/cli/backend/src/types/chat.types.d.ts.map +1 -1
  541. package/dist/cli/backend/src/types/chat.types.js +18 -22
  542. package/dist/cli/backend/src/types/chat.types.js.map +1 -1
  543. package/dist/cli/backend/src/types/index.d.ts +37 -0
  544. package/dist/cli/backend/src/types/index.d.ts.map +1 -1
  545. package/dist/cli/backend/src/types/index.js.map +1 -1
  546. package/dist/cli/backend/src/types/scheduler.types.d.ts +4 -0
  547. package/dist/cli/backend/src/types/scheduler.types.d.ts.map +1 -1
  548. package/dist/cli/backend/src/types/scheduler.types.js.map +1 -1
  549. package/dist/cli/backend/src/types/skill.types.d.ts +4 -0
  550. package/dist/cli/backend/src/types/skill.types.d.ts.map +1 -1
  551. package/dist/cli/backend/src/types/skill.types.js.map +1 -1
  552. package/dist/cli/cli/src/commands/onboard.d.ts +19 -2
  553. package/dist/cli/cli/src/commands/onboard.d.ts.map +1 -1
  554. package/dist/cli/cli/src/commands/onboard.js +58 -15
  555. package/dist/cli/cli/src/commands/onboard.js.map +1 -1
  556. package/dist/cli/cli/src/commands/pair.d.ts +46 -0
  557. package/dist/cli/cli/src/commands/pair.d.ts.map +1 -0
  558. package/dist/cli/cli/src/commands/pair.js +258 -0
  559. package/dist/cli/cli/src/commands/pair.js.map +1 -0
  560. package/dist/cli/cli/src/commands/service.d.ts +86 -0
  561. package/dist/cli/cli/src/commands/service.d.ts.map +1 -0
  562. package/dist/cli/cli/src/commands/service.js +687 -0
  563. package/dist/cli/cli/src/commands/service.js.map +1 -0
  564. package/dist/cli/cli/src/index.js +17 -0
  565. package/dist/cli/cli/src/index.js.map +1 -1
  566. package/dist/cli/config/constants.d.ts +18 -3
  567. package/dist/cli/config/constants.d.ts.map +1 -1
  568. package/dist/cli/config/constants.js +18 -3
  569. package/dist/cli/config/constants.js.map +1 -1
  570. package/frontend/dist/assets/index-60a9e4ea.css +33 -0
  571. package/frontend/dist/assets/{index-e6d7db4a.js → index-e8162966.js} +353 -353
  572. package/frontend/dist/index.html +2 -2
  573. package/package.json +22 -10
  574. package/config/skills/agent/browse-stealth/skill.json +0 -20
  575. package/config/skills/agent/competitor-content-tracker/skill.json +0 -22
  576. package/config/skills/agent/computer-use/skill.json +0 -29
  577. package/config/skills/agent/content-calendar/skill.json +0 -22
  578. package/config/skills/agent/content-repurposer/skill.json +0 -22
  579. package/config/skills/agent/content-writer/skill.json +0 -22
  580. package/config/skills/agent/core/accept-task/skill.json +0 -20
  581. package/config/skills/agent/core/block-task/skill.json +0 -20
  582. package/config/skills/agent/core/check-quality-gates/skill.json +0 -20
  583. package/config/skills/agent/core/complete-task/skill.json +0 -20
  584. package/config/skills/agent/core/generate-pdf/skill.json +0 -20
  585. package/config/skills/agent/core/get-my-context/skill.json +0 -20
  586. package/config/skills/agent/core/get-sops/skill.json +0 -20
  587. package/config/skills/agent/core/get-team-status/instructions.md +0 -17
  588. package/config/skills/agent/core/get-team-status/skill.json +0 -20
  589. package/config/skills/agent/core/heartbeat/skill.json +0 -20
  590. package/config/skills/agent/core/marketplace-search/skill.json +0 -20
  591. package/config/skills/agent/core/query-knowledge/skill.json +0 -20
  592. package/config/skills/agent/core/read-task/instructions.md +0 -19
  593. package/config/skills/agent/core/read-task/skill.json +0 -20
  594. package/config/skills/agent/core/recall/skill.json +0 -20
  595. package/config/skills/agent/core/record-learning/skill.json +0 -20
  596. package/config/skills/agent/core/register-self/instructions.md +0 -18
  597. package/config/skills/agent/core/register-self/skill.json +0 -20
  598. package/config/skills/agent/core/remember/skill.json +0 -20
  599. package/config/skills/agent/core/reply-chat/skill.json +0 -20
  600. package/config/skills/agent/core/report-progress/skill.json +0 -20
  601. package/config/skills/agent/core/report-status/skill.json +0 -20
  602. package/config/skills/agent/core/send-chat-response/skill.json +0 -20
  603. package/config/skills/agent/core/send-message/instructions.md +0 -20
  604. package/config/skills/agent/core/send-message/skill.json +0 -20
  605. package/config/skills/agent/desktop-app-control/skill.json +0 -33
  606. package/config/skills/agent/trend-monitor/skill.json +0 -22
  607. package/config/skills/agent/vnc-browser/skill.json +0 -20
  608. package/config/skills/orchestrator/assign-task/instructions.md +0 -17
  609. package/config/skills/orchestrator/assign-task/skill.json +0 -20
  610. package/config/skills/orchestrator/assign-team-to-project/skill.json +0 -20
  611. package/config/skills/orchestrator/broadcast/skill.json +0 -20
  612. package/config/skills/orchestrator/broadcast-to-org/skill.json +0 -20
  613. package/config/skills/orchestrator/cancel-all-schedules/skill.json +0 -17
  614. package/config/skills/orchestrator/cancel-schedule/instructions.md +0 -19
  615. package/config/skills/orchestrator/cancel-schedule/skill.json +0 -20
  616. package/config/skills/orchestrator/complete-task/instructions.md +0 -17
  617. package/config/skills/orchestrator/complete-task/skill.json +0 -20
  618. package/config/skills/orchestrator/create-project/skill.json +0 -20
  619. package/config/skills/orchestrator/create-team/skill.json +0 -20
  620. package/config/skills/orchestrator/delegate-task/skill.json +0 -20
  621. package/config/skills/orchestrator/get-agent-logs/skill.json +0 -20
  622. package/config/skills/orchestrator/get-agent-status/skill.json +0 -20
  623. package/config/skills/orchestrator/get-project-overview/instructions.md +0 -17
  624. package/config/skills/orchestrator/get-project-overview/skill.json +0 -20
  625. package/config/skills/orchestrator/get-tasks/instructions.md +0 -17
  626. package/config/skills/orchestrator/get-tasks/skill.json +0 -20
  627. package/config/skills/orchestrator/get-team-status/instructions.md +0 -17
  628. package/config/skills/orchestrator/get-team-status/skill.json +0 -20
  629. package/config/skills/orchestrator/handle-agent-failure/skill.json +0 -20
  630. package/config/skills/orchestrator/heartbeat/skill.json +0 -20
  631. package/config/skills/orchestrator/list-schedules/skill.json +0 -12
  632. package/config/skills/orchestrator/list-subscriptions/instructions.md +0 -17
  633. package/config/skills/orchestrator/list-subscriptions/skill.json +0 -20
  634. package/config/skills/orchestrator/query-knowledge/skill.json +0 -20
  635. package/config/skills/orchestrator/read-session-logs/skill.json +0 -20
  636. package/config/skills/orchestrator/read-system-logs/skill.json +0 -20
  637. package/config/skills/orchestrator/recall/skill.json +0 -20
  638. package/config/skills/orchestrator/record-failure/skill.json +0 -20
  639. package/config/skills/orchestrator/record-learning/skill.json +0 -20
  640. package/config/skills/orchestrator/record-success/skill.json +0 -20
  641. package/config/skills/orchestrator/register-self/skill.json +0 -20
  642. package/config/skills/orchestrator/remember/skill.json +0 -20
  643. package/config/skills/orchestrator/reply-chat/skill.json +0 -20
  644. package/config/skills/orchestrator/reply-gchat/skill.json +0 -20
  645. package/config/skills/orchestrator/reply-slack/skill.json +0 -20
  646. package/config/skills/orchestrator/report-bug/skill.json +0 -20
  647. package/config/skills/orchestrator/restart-crewly/skill.json +0 -20
  648. package/config/skills/orchestrator/resume-session/skill.json +0 -20
  649. package/config/skills/orchestrator/schedule-check/skill.json +0 -20
  650. package/config/skills/orchestrator/send-key/skill.json +0 -20
  651. package/config/skills/orchestrator/send-message/skill.json +0 -20
  652. package/config/skills/orchestrator/send-pdf-to-slack/skill.json +0 -20
  653. package/config/skills/orchestrator/set-goal/skill.json +0 -20
  654. package/config/skills/orchestrator/start-agent/skill.json +0 -20
  655. package/config/skills/orchestrator/start-team/skill.json +0 -20
  656. package/config/skills/orchestrator/stop-agent/skill.json +0 -20
  657. package/config/skills/orchestrator/stop-team/instructions.md +0 -19
  658. package/config/skills/orchestrator/stop-team/skill.json +0 -20
  659. package/config/skills/orchestrator/subscribe-event/skill.json +0 -20
  660. package/config/skills/orchestrator/terminate-agent/skill.json +0 -20
  661. package/config/skills/orchestrator/unsubscribe-event/instructions.md +0 -19
  662. package/config/skills/orchestrator/unsubscribe-event/skill.json +0 -20
  663. package/config/skills/orchestrator/update-focus/skill.json +0 -20
  664. package/config/skills/orchestrator/update-team/skill.json +0 -20
  665. package/config/skills/team-leader/aggregate-results/skill.json +0 -20
  666. package/config/skills/team-leader/decompose-goal/skill.json +0 -20
  667. package/config/skills/team-leader/delegate-task/skill.json +0 -20
  668. package/config/skills/team-leader/handle-failure/skill.json +0 -20
  669. package/config/skills/team-leader/schedule-check/skill.json +0 -20
  670. package/config/skills/team-leader/start-agent/skill.json +0 -20
  671. package/config/skills/team-leader/stop-agent/skill.json +0 -20
  672. package/config/skills/team-leader/verify-output/skill.json +0 -20
  673. package/frontend/dist/assets/index-0e5673b0.css +0 -33
@@ -17,6 +17,7 @@ import { AgentRunnerService } from './agent-runner.service.js';
17
17
  import { RUNTIME_TYPES } from '../../../constants.js';
18
18
  import { CREWLY_AGENT_DEFAULTS } from './types.js';
19
19
  import { InProcessLogBuffer } from './in-process-log-buffer.js';
20
+ import { RateLimiter } from './rate-limiter.js';
20
21
  /**
21
22
  * In-process Crewly Agent runtime powered by AI SDK generateText.
22
23
  *
@@ -38,9 +39,11 @@ export class CrewlyAgentRuntimeService extends RuntimeAgentService {
38
39
  initialized = false;
39
40
  currentSessionName = null;
40
41
  logBuffer;
42
+ rateLimiter;
41
43
  constructor(sessionHelper, projectRoot) {
42
44
  super(sessionHelper, projectRoot);
43
45
  this.logBuffer = InProcessLogBuffer.getInstance();
46
+ this.rateLimiter = new RateLimiter();
44
47
  }
45
48
  // ===== Abstract method implementations =====
46
49
  /**
@@ -131,22 +134,58 @@ export class CrewlyAgentRuntimeService extends RuntimeAgentService {
131
134
  * the PTY write path used by other runtimes.
132
135
  *
133
136
  * @param message - The message to process
137
+ * @param metadata - Optional metadata (e.g. Slack channelId, threadTs)
134
138
  * @returns Agent run result with text response and tool call records
135
139
  * @throws Error if the runtime is not initialized
136
140
  */
137
- async handleMessage(message) {
141
+ async handleMessage(message, metadata) {
138
142
  if (!this.agentRunner || !this.initialized) {
139
143
  throw new Error('Crewly Agent runtime not initialized. Call initializeInProcess() first.');
140
144
  }
141
145
  const session = this.currentSessionName;
142
- this.logBuffer.append(session, 'info', `← Message received (${message.length} chars)`);
143
- this.logger.debug('Handling message', {
146
+ // Extract conversationId from [CHAT:xxx] or [GCHAT:xxx ...] prefix if present
147
+ let conversationId;
148
+ let cleanMessage = message;
149
+ const chatPrefixMatch = message.match(/^\[(?:G?CHAT):([^\]\s]+)[^\]]*\]\s*/);
150
+ if (chatPrefixMatch) {
151
+ conversationId = chatPrefixMatch[1];
152
+ cleanMessage = message.slice(chatPrefixMatch[0].length);
153
+ this.logger.debug('Extracted conversationId from message prefix', {
154
+ sessionName: session,
155
+ conversationId,
156
+ });
157
+ }
158
+ const queueLen = this.rateLimiter.getQueueLength();
159
+ this.logBuffer.append(session, 'info', `← Message received (${cleanMessage.length} chars${conversationId ? `, conv:${conversationId}` : ''}${queueLen > 0 ? `, queue:${queueLen}` : ''})`);
160
+ this.logger.debug('Handling message via rate limiter', {
144
161
  sessionName: session,
145
- messageLength: message.length,
162
+ messageLength: cleanMessage.length,
146
163
  historyLength: this.agentRunner.getHistoryLength(),
164
+ conversationId,
165
+ queueLength: queueLen,
166
+ requestsInWindow: this.rateLimiter.getRequestCountInWindow(),
147
167
  });
168
+ // Route through rate limiter for throttling, coalescing, and 429 retry
169
+ const result = await this.rateLimiter.enqueue(cleanMessage, metadata, async (msg, meta) => {
170
+ return this.executeMessage(session, msg, conversationId, meta);
171
+ });
172
+ return result;
173
+ }
174
+ /**
175
+ * Execute a single message against the AgentRunner.
176
+ *
177
+ * Separated from handleMessage to allow the rate limiter to wrap this
178
+ * with throttling, coalescing, and 429 retry logic.
179
+ *
180
+ * @param session - Session name
181
+ * @param cleanMessage - Message content (prefix already stripped)
182
+ * @param conversationId - Optional conversation ID
183
+ * @param metadata - Optional metadata
184
+ * @returns Agent run result
185
+ */
186
+ async executeMessage(session, cleanMessage, conversationId, metadata) {
148
187
  try {
149
- const result = await this.agentRunner.run(message);
188
+ const result = await this.agentRunner.run(cleanMessage, conversationId, metadata);
150
189
  // Log tool calls to buffer for frontend visibility
151
190
  for (const tc of result.toolCalls) {
152
191
  const argsPreview = JSON.stringify(tc.args).substring(0, 120);
@@ -209,6 +248,7 @@ export class CrewlyAgentRuntimeService extends RuntimeAgentService {
209
248
  this.logBuffer.append(this.currentSessionName, 'info', 'Crewly Agent shutting down');
210
249
  this.logBuffer.removeSession(this.currentSessionName);
211
250
  }
251
+ this.rateLimiter.reset();
212
252
  this.agentRunner = null;
213
253
  this.initialized = false;
214
254
  this.currentSessionName = null;
@@ -1 +1 @@
1
- {"version":3,"file":"crewly-agent-runtime.service.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crewly-agent-runtime.service.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.ts"],"names":[],"mappings":"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"}
@@ -10,5 +10,7 @@ export { ModelManager } from './model-manager.js';
10
10
  export { InProcessLogBuffer, type LogEntry } from './in-process-log-buffer.js';
11
11
  export { createTools, getToolNames } from './tool-registry.js';
12
12
  export { createAuditorTools, getAuditorToolNames } from './auditor-tools.js';
13
- export { type ModelProvider, type ModelConfig, type ConversationState, type CrewlyAgentConfig, type AgentRunResult, type ToolCallRecord, type ApiCallResult, MODEL_PROVIDERS, CREWLY_AGENT_DEFAULTS, isModelProvider, isModelConfig, } from './types.js';
13
+ export { AuditTrailService } from './audit-trail.service.js';
14
+ export { RateLimiter, RATE_LIMITER_DEFAULTS, type RateLimiterConfig } from './rate-limiter.js';
15
+ export { type ModelProvider, type ModelConfig, type ConversationState, type CrewlyAgentConfig, type AgentRunResult, type ToolCallRecord, type ApiCallResult, type AuditEntry, type SecurityPolicy, type AuditLogFilters, MODEL_PROVIDERS, CREWLY_AGENT_DEFAULTS, WRITE_TOOLS, isModelProvider, isModelConfig, } from './types.js';
14
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,KAAK,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,aAAa,GACd,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,KAAK,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,aAAa,GACd,MAAM,YAAY,CAAC"}
@@ -10,5 +10,7 @@ export { ModelManager } from './model-manager.js';
10
10
  export { InProcessLogBuffer } from './in-process-log-buffer.js';
11
11
  export { createTools, getToolNames } from './tool-registry.js';
12
12
  export { createAuditorTools, getAuditorToolNames } from './auditor-tools.js';
13
- export { MODEL_PROVIDERS, CREWLY_AGENT_DEFAULTS, isModelProvider, isModelConfig, } from './types.js';
13
+ export { AuditTrailService } from './audit-trail.service.js';
14
+ export { RateLimiter, RATE_LIMITER_DEFAULTS } from './rate-limiter.js';
15
+ export { MODEL_PROVIDERS, CREWLY_AGENT_DEFAULTS, WRITE_TOOLS, isModelProvider, isModelConfig, } from './types.js';
14
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAiB,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAQL,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,aAAa,GACd,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAiB,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAA0B,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAWL,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,aAAa,GACd,MAAM,YAAY,CAAC"}
@@ -0,0 +1,135 @@
1
+ /**
2
+ * MCP Tool Bridge
3
+ *
4
+ * Converts external MCP server tools into Crewly Agent ToolDefinitions
5
+ * so they can be used alongside built-in tools during agent execution.
6
+ * All MCP-sourced tools default to 'sensitive' classification for audit
7
+ * purposes unless explicitly overridden.
8
+ *
9
+ * @module services/agent/crewly-agent/mcp-tool-bridge
10
+ */
11
+ import { z } from 'zod';
12
+ import type { McpClientService, McpToolInfo, McpServerConfig } from '../../mcp-client.js';
13
+ import type { ToolDefinition, ToolSensitivity } from './types.js';
14
+ /**
15
+ * Prefix applied to MCP tool names to avoid collisions with built-in tools.
16
+ */
17
+ export declare const MCP_TOOL_PREFIX: "mcp_";
18
+ /**
19
+ * Default sensitivity for MCP-sourced tools.
20
+ * External tools are classified as 'sensitive' because they interact
21
+ * with systems outside the agent's direct control.
22
+ */
23
+ export declare const MCP_DEFAULT_SENSITIVITY: ToolSensitivity;
24
+ /**
25
+ * Configuration for MCP tool sensitivity overrides.
26
+ * Maps `serverName:toolName` or just `toolName` to a sensitivity level.
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * const overrides: McpSensitivityOverrides = {
31
+ * 'filesystem:read_file': 'safe',
32
+ * 'github:create_issue': 'sensitive',
33
+ * 'admin:drop_database': 'destructive',
34
+ * };
35
+ * ```
36
+ */
37
+ export type McpSensitivityOverrides = Record<string, ToolSensitivity>;
38
+ /**
39
+ * Convert a JSON Schema object from an MCP tool into a Zod schema.
40
+ *
41
+ * MCP tools declare their input using JSON Schema. The AI SDK expects
42
+ * Zod schemas. This function creates a z.object({}) passthrough schema
43
+ * that accepts any object — actual validation is done server-side by
44
+ * the MCP server itself.
45
+ *
46
+ * @param inputSchema - JSON Schema from the MCP tool definition
47
+ * @returns A Zod schema that passes through any object
48
+ */
49
+ export declare function jsonSchemaToZodPassthrough(inputSchema: Record<string, unknown>): z.ZodType;
50
+ /**
51
+ * Build the namespaced tool name for an MCP tool.
52
+ *
53
+ * Format: `mcp_{serverName}_{toolName}` to prevent collisions
54
+ * with built-in Crewly tools and tools from other MCP servers.
55
+ *
56
+ * @param serverName - Name of the MCP server
57
+ * @param toolName - Original tool name from the MCP server
58
+ * @returns Namespaced tool name
59
+ */
60
+ export declare function buildMcpToolName(serverName: string, toolName: string): string;
61
+ /**
62
+ * Resolve the sensitivity level for an MCP tool.
63
+ *
64
+ * Checks overrides in order of specificity:
65
+ * 1. `serverName:toolName` (most specific)
66
+ * 2. `toolName` (tool-level default)
67
+ * 3. Falls back to MCP_DEFAULT_SENSITIVITY ('sensitive')
68
+ *
69
+ * @param serverName - Name of the MCP server
70
+ * @param toolName - Original tool name
71
+ * @param overrides - Optional sensitivity overrides map
72
+ * @returns Resolved sensitivity level
73
+ */
74
+ export declare function resolveSensitivity(serverName: string, toolName: string, overrides?: McpSensitivityOverrides): ToolSensitivity;
75
+ /**
76
+ * Convert a single MCP tool into a Crewly ToolDefinition.
77
+ *
78
+ * The resulting tool definition:
79
+ * - Has a namespaced name (`mcp_{server}_{tool}`)
80
+ * - Uses a passthrough Zod schema for input validation
81
+ * - Delegates execution to McpClientService.callTool()
82
+ * - Defaults to 'sensitive' classification for auditing
83
+ *
84
+ * @param mcpClient - The MCP client service for executing tool calls
85
+ * @param toolInfo - Tool metadata from the MCP server
86
+ * @param overrides - Optional sensitivity overrides
87
+ * @returns A ToolDefinition compatible with the Crewly Agent runtime
88
+ */
89
+ export declare function convertMcpTool(mcpClient: McpClientService, toolInfo: McpToolInfo, overrides?: McpSensitivityOverrides): ToolDefinition;
90
+ /**
91
+ * Load all tools from connected MCP servers and convert them to ToolDefinitions.
92
+ *
93
+ * This is the primary entry point for integrating MCP tools into the agent
94
+ * runtime. It queries all connected MCP servers, converts their tools to
95
+ * the Crewly ToolDefinition format, and returns a map ready to merge with
96
+ * the built-in tool registry.
97
+ *
98
+ * @param mcpClient - The MCP client service with active server connections
99
+ * @param overrides - Optional sensitivity overrides
100
+ * @returns Map of namespaced tool name -> ToolDefinition
101
+ *
102
+ * @example
103
+ * ```typescript
104
+ * const mcpClient = new McpClientService();
105
+ * await mcpClient.connectServer('filesystem', config);
106
+ * const mcpTools = loadMcpTools(mcpClient);
107
+ * // mcpTools = { mcp_filesystem_read_file: {...}, mcp_filesystem_write_file: {...} }
108
+ * ```
109
+ */
110
+ export declare function loadMcpTools(mcpClient: McpClientService, overrides?: McpSensitivityOverrides): Record<string, ToolDefinition>;
111
+ /**
112
+ * Connect to MCP servers and load their tools in one step.
113
+ *
114
+ * Convenience function that handles the full lifecycle:
115
+ * 1. Connects to all configured MCP servers (tolerates failures)
116
+ * 2. Loads and converts all available tools
117
+ * 3. Returns tools ready to merge into the agent's tool registry
118
+ *
119
+ * @param mcpClient - The MCP client service instance
120
+ * @param serverConfigs - Map of server name -> server configuration
121
+ * @param overrides - Optional sensitivity overrides
122
+ * @returns Object with loaded tools and any connection errors
123
+ *
124
+ * @example
125
+ * ```typescript
126
+ * const { tools, errors } = await connectAndLoadMcpTools(mcpClient, {
127
+ * filesystem: { command: 'npx', args: ['-y', '@anthropic/mcp-filesystem'] },
128
+ * });
129
+ * ```
130
+ */
131
+ export declare function connectAndLoadMcpTools(mcpClient: McpClientService, serverConfigs: Record<string, McpServerConfig>, overrides?: McpSensitivityOverrides): Promise<{
132
+ tools: Record<string, ToolDefinition>;
133
+ errors: Map<string, Error>;
134
+ }>;
135
+ //# sourceMappingURL=mcp-tool-bridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tool-bridge.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/mcp-tool-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC1F,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,eAAe,EAAG,MAAe,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,eAA6B,CAAC;AAEpE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;AAEtE;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,CAAC,CAAC,OAAO,CAeX;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE7E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,uBAAuB,GAClC,eAAe,CAYjB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,gBAAgB,EAC3B,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,uBAAuB,GAClC,cAAc,CAwChB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,gBAAgB,EAC3B,SAAS,CAAC,EAAE,uBAAuB,GAClC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAUhC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,gBAAgB,EAC3B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAC9C,SAAS,CAAC,EAAE,uBAAuB,GAClC,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;CAAE,CAAC,CAIhF"}
@@ -0,0 +1,185 @@
1
+ /**
2
+ * MCP Tool Bridge
3
+ *
4
+ * Converts external MCP server tools into Crewly Agent ToolDefinitions
5
+ * so they can be used alongside built-in tools during agent execution.
6
+ * All MCP-sourced tools default to 'sensitive' classification for audit
7
+ * purposes unless explicitly overridden.
8
+ *
9
+ * @module services/agent/crewly-agent/mcp-tool-bridge
10
+ */
11
+ import { z } from 'zod';
12
+ /**
13
+ * Prefix applied to MCP tool names to avoid collisions with built-in tools.
14
+ */
15
+ export const MCP_TOOL_PREFIX = 'mcp_';
16
+ /**
17
+ * Default sensitivity for MCP-sourced tools.
18
+ * External tools are classified as 'sensitive' because they interact
19
+ * with systems outside the agent's direct control.
20
+ */
21
+ export const MCP_DEFAULT_SENSITIVITY = 'sensitive';
22
+ /**
23
+ * Convert a JSON Schema object from an MCP tool into a Zod schema.
24
+ *
25
+ * MCP tools declare their input using JSON Schema. The AI SDK expects
26
+ * Zod schemas. This function creates a z.object({}) passthrough schema
27
+ * that accepts any object — actual validation is done server-side by
28
+ * the MCP server itself.
29
+ *
30
+ * @param inputSchema - JSON Schema from the MCP tool definition
31
+ * @returns A Zod schema that passes through any object
32
+ */
33
+ export function jsonSchemaToZodPassthrough(inputSchema) {
34
+ // Extract property names from JSON Schema for documentation,
35
+ // but use a passthrough object since the MCP server validates inputs.
36
+ const properties = inputSchema.properties;
37
+ if (properties && typeof properties === 'object') {
38
+ const shape = {};
39
+ for (const key of Object.keys(properties)) {
40
+ shape[key] = z.unknown().optional().describe(String(properties[key]?.description || key));
41
+ }
42
+ return z.object(shape).passthrough();
43
+ }
44
+ // Fallback: accept any object
45
+ return z.record(z.unknown());
46
+ }
47
+ /**
48
+ * Build the namespaced tool name for an MCP tool.
49
+ *
50
+ * Format: `mcp_{serverName}_{toolName}` to prevent collisions
51
+ * with built-in Crewly tools and tools from other MCP servers.
52
+ *
53
+ * @param serverName - Name of the MCP server
54
+ * @param toolName - Original tool name from the MCP server
55
+ * @returns Namespaced tool name
56
+ */
57
+ export function buildMcpToolName(serverName, toolName) {
58
+ return `${MCP_TOOL_PREFIX}${serverName}_${toolName}`;
59
+ }
60
+ /**
61
+ * Resolve the sensitivity level for an MCP tool.
62
+ *
63
+ * Checks overrides in order of specificity:
64
+ * 1. `serverName:toolName` (most specific)
65
+ * 2. `toolName` (tool-level default)
66
+ * 3. Falls back to MCP_DEFAULT_SENSITIVITY ('sensitive')
67
+ *
68
+ * @param serverName - Name of the MCP server
69
+ * @param toolName - Original tool name
70
+ * @param overrides - Optional sensitivity overrides map
71
+ * @returns Resolved sensitivity level
72
+ */
73
+ export function resolveSensitivity(serverName, toolName, overrides) {
74
+ if (!overrides)
75
+ return MCP_DEFAULT_SENSITIVITY;
76
+ // Check server-specific override first
77
+ const serverSpecific = overrides[`${serverName}:${toolName}`];
78
+ if (serverSpecific)
79
+ return serverSpecific;
80
+ // Check tool-level override
81
+ const toolLevel = overrides[toolName];
82
+ if (toolLevel)
83
+ return toolLevel;
84
+ return MCP_DEFAULT_SENSITIVITY;
85
+ }
86
+ /**
87
+ * Convert a single MCP tool into a Crewly ToolDefinition.
88
+ *
89
+ * The resulting tool definition:
90
+ * - Has a namespaced name (`mcp_{server}_{tool}`)
91
+ * - Uses a passthrough Zod schema for input validation
92
+ * - Delegates execution to McpClientService.callTool()
93
+ * - Defaults to 'sensitive' classification for auditing
94
+ *
95
+ * @param mcpClient - The MCP client service for executing tool calls
96
+ * @param toolInfo - Tool metadata from the MCP server
97
+ * @param overrides - Optional sensitivity overrides
98
+ * @returns A ToolDefinition compatible with the Crewly Agent runtime
99
+ */
100
+ export function convertMcpTool(mcpClient, toolInfo, overrides) {
101
+ const sensitivity = resolveSensitivity(toolInfo.serverName, toolInfo.name, overrides);
102
+ return {
103
+ description: toolInfo.description
104
+ ? `[MCP:${toolInfo.serverName}] ${toolInfo.description}`
105
+ : `[MCP:${toolInfo.serverName}] ${toolInfo.name}`,
106
+ inputSchema: jsonSchemaToZodPassthrough(toolInfo.inputSchema),
107
+ sensitivity,
108
+ execute: async (args) => {
109
+ try {
110
+ const result = await mcpClient.callTool(toolInfo.serverName, toolInfo.name, args);
111
+ // Flatten text content for simpler tool results
112
+ if (!result.isError && result.content.length === 1
113
+ && result.content[0].type === 'text' && 'text' in result.content[0]) {
114
+ return { success: true, text: result.content[0].text };
115
+ }
116
+ return {
117
+ success: !result.isError,
118
+ content: result.content,
119
+ ...(result.isError && { error: 'MCP tool returned an error' }),
120
+ };
121
+ }
122
+ catch (error) {
123
+ return {
124
+ success: false,
125
+ error: `MCP tool call failed: ${error instanceof Error ? error.message : String(error)}`,
126
+ };
127
+ }
128
+ },
129
+ };
130
+ }
131
+ /**
132
+ * Load all tools from connected MCP servers and convert them to ToolDefinitions.
133
+ *
134
+ * This is the primary entry point for integrating MCP tools into the agent
135
+ * runtime. It queries all connected MCP servers, converts their tools to
136
+ * the Crewly ToolDefinition format, and returns a map ready to merge with
137
+ * the built-in tool registry.
138
+ *
139
+ * @param mcpClient - The MCP client service with active server connections
140
+ * @param overrides - Optional sensitivity overrides
141
+ * @returns Map of namespaced tool name -> ToolDefinition
142
+ *
143
+ * @example
144
+ * ```typescript
145
+ * const mcpClient = new McpClientService();
146
+ * await mcpClient.connectServer('filesystem', config);
147
+ * const mcpTools = loadMcpTools(mcpClient);
148
+ * // mcpTools = { mcp_filesystem_read_file: {...}, mcp_filesystem_write_file: {...} }
149
+ * ```
150
+ */
151
+ export function loadMcpTools(mcpClient, overrides) {
152
+ const tools = {};
153
+ const mcpToolInfos = mcpClient.listTools();
154
+ for (const toolInfo of mcpToolInfos) {
155
+ const toolName = buildMcpToolName(toolInfo.serverName, toolInfo.name);
156
+ tools[toolName] = convertMcpTool(mcpClient, toolInfo, overrides);
157
+ }
158
+ return tools;
159
+ }
160
+ /**
161
+ * Connect to MCP servers and load their tools in one step.
162
+ *
163
+ * Convenience function that handles the full lifecycle:
164
+ * 1. Connects to all configured MCP servers (tolerates failures)
165
+ * 2. Loads and converts all available tools
166
+ * 3. Returns tools ready to merge into the agent's tool registry
167
+ *
168
+ * @param mcpClient - The MCP client service instance
169
+ * @param serverConfigs - Map of server name -> server configuration
170
+ * @param overrides - Optional sensitivity overrides
171
+ * @returns Object with loaded tools and any connection errors
172
+ *
173
+ * @example
174
+ * ```typescript
175
+ * const { tools, errors } = await connectAndLoadMcpTools(mcpClient, {
176
+ * filesystem: { command: 'npx', args: ['-y', '@anthropic/mcp-filesystem'] },
177
+ * });
178
+ * ```
179
+ */
180
+ export async function connectAndLoadMcpTools(mcpClient, serverConfigs, overrides) {
181
+ const errors = await mcpClient.connectAll(serverConfigs);
182
+ const tools = loadMcpTools(mcpClient, overrides);
183
+ return { tools, errors };
184
+ }
185
+ //# sourceMappingURL=mcp-tool-bridge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tool-bridge.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/mcp-tool-bridge.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,16 @@
2
2
  * Crewly Agent Model Manager
3
3
  *
4
4
  * Multi-provider model factory that creates AI SDK model instances
5
- * from configuration. Supports Anthropic, OpenAI, and Google providers.
5
+ * from configuration. Supports Anthropic, OpenAI, Google, and Ollama providers.
6
6
  *
7
7
  * API keys are read from environment variables by the provider SDKs:
8
8
  * - ANTHROPIC_API_KEY
9
9
  * - OPENAI_API_KEY
10
10
  * - GOOGLE_GENERATIVE_AI_API_KEY
11
11
  *
12
+ * Ollama runs locally and does not require an API key.
13
+ * Configure the Ollama base URL via OLLAMA_BASE_URL (default: http://localhost:11434).
14
+ *
12
15
  * @module services/agent/crewly-agent/model-manager
13
16
  */
14
17
  import type { LanguageModel } from 'ai';
@@ -53,12 +56,17 @@ export declare class ModelManager {
53
56
  */
54
57
  getAvailableProviders(): Promise<Record<ModelProvider, boolean>>;
55
58
  /**
56
- * Map model provider name to API key provider name
59
+ * Map model provider name to API key provider name.
60
+ * Only applicable for cloud providers (not ollama).
61
+ *
62
+ * @param provider - Cloud model provider (anthropic, openai, or google)
63
+ * @returns Corresponding ApiKeyProvider name
57
64
  */
58
65
  private static providerToApiKeyProvider;
59
66
  /**
60
67
  * Ensure the API key for a provider is available in process.env
61
68
  * by resolving it from settings if not already present.
69
+ * Ollama runs locally and does not require an API key — this is a no-op for 'ollama'.
62
70
  *
63
71
  * @param provider - The model provider
64
72
  */
@@ -1 +1 @@
1
- {"version":3,"file":"model-manager.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/model-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACxC,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,aAAa,EAAyB,MAAM,YAAY,CAAC;AAIzF;;;;;;;;;;;GAWG;AACH,qBAAa,YAAY;IACvB,8DAA8D;IAC9D,OAAO,CAAC,aAAa,CAAgE;IAErF;;;;;;;;;OASG;IACG,QAAQ,CAAC,MAAM,GAAE,WAAiD,GAAG,OAAO,CAAC,aAAa,CAAC;IAQjG;;;;;OAKG;YACW,mBAAmB;IA8BjC;;;;OAIG;IACG,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAiBtE;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,wBAAwB;IAIvC;;;;;OAKG;YACW,iBAAiB;IAsB/B;;OAEG;IACH,UAAU,IAAI,IAAI;CAGnB"}
1
+ {"version":3,"file":"model-manager.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/model-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACxC,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,aAAa,EAAyB,MAAM,YAAY,CAAC;AAIzF;;;;;;;;;;;GAWG;AACH,qBAAa,YAAY;IACvB,8DAA8D;IAC9D,OAAO,CAAC,aAAa,CAAgE;IAErF;;;;;;;;;OASG;IACG,QAAQ,CAAC,MAAM,GAAE,WAAiD,GAAG,OAAO,CAAC,aAAa,CAAC;IAQjG;;;;;OAKG;YACW,mBAAmB;IAuCjC;;;;OAIG;IACG,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAkBtE;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,wBAAwB;IAIvC;;;;;;OAMG;YACW,iBAAiB;IAuB/B;;OAEG;IACH,UAAU,IAAI,IAAI;CAGnB"}
@@ -2,13 +2,16 @@
2
2
  * Crewly Agent Model Manager
3
3
  *
4
4
  * Multi-provider model factory that creates AI SDK model instances
5
- * from configuration. Supports Anthropic, OpenAI, and Google providers.
5
+ * from configuration. Supports Anthropic, OpenAI, Google, and Ollama providers.
6
6
  *
7
7
  * API keys are read from environment variables by the provider SDKs:
8
8
  * - ANTHROPIC_API_KEY
9
9
  * - OPENAI_API_KEY
10
10
  * - GOOGLE_GENERATIVE_AI_API_KEY
11
11
  *
12
+ * Ollama runs locally and does not require an API key.
13
+ * Configure the Ollama base URL via OLLAMA_BASE_URL (default: http://localhost:11434).
14
+ *
12
15
  * @module services/agent/crewly-agent/model-manager
13
16
  */
14
17
  import { CREWLY_AGENT_DEFAULTS } from './types.js';
@@ -71,6 +74,15 @@ export class ModelManager {
71
74
  providerFn = (modelId) => google(modelId);
72
75
  break;
73
76
  }
77
+ case 'ollama': {
78
+ const { createOllama } = await import('ollama-ai-provider');
79
+ const baseURL = process.env.OLLAMA_BASE_URL || CREWLY_AGENT_DEFAULTS.OLLAMA_BASE_URL;
80
+ const ollamaProvider = createOllama({ baseURL });
81
+ // ollama-ai-provider exports LanguageModelV1 which is compatible but
82
+ // doesn't extend the newer LanguageModel union — safe to cast.
83
+ providerFn = (modelId) => ollamaProvider(modelId);
84
+ break;
85
+ }
74
86
  default:
75
87
  throw new Error(`Unknown model provider: ${provider}`);
76
88
  }
@@ -94,10 +106,15 @@ export class ModelManager {
94
106
  anthropic: !!anthropicKey,
95
107
  openai: !!openaiKey,
96
108
  google: !!geminiKey,
109
+ ollama: true, // Ollama runs locally, always "available" if installed
97
110
  };
98
111
  }
99
112
  /**
100
- * Map model provider name to API key provider name
113
+ * Map model provider name to API key provider name.
114
+ * Only applicable for cloud providers (not ollama).
115
+ *
116
+ * @param provider - Cloud model provider (anthropic, openai, or google)
117
+ * @returns Corresponding ApiKeyProvider name
101
118
  */
102
119
  static providerToApiKeyProvider(provider) {
103
120
  return provider === 'google' ? 'gemini' : provider;
@@ -105,10 +122,13 @@ export class ModelManager {
105
122
  /**
106
123
  * Ensure the API key for a provider is available in process.env
107
124
  * by resolving it from settings if not already present.
125
+ * Ollama runs locally and does not require an API key — this is a no-op for 'ollama'.
108
126
  *
109
127
  * @param provider - The model provider
110
128
  */
111
129
  async ensureApiKeyInEnv(provider) {
130
+ if (provider === 'ollama')
131
+ return; // Ollama is local, no API key needed
112
132
  const apiKeyProvider = ModelManager.providerToApiKeyProvider(provider);
113
133
  const settingsService = getSettingsService();
114
134
  const key = await settingsService.getApiKey(apiKeyProvider, { runtime: 'crewly-agent' });
@@ -1 +1 @@
1
- {"version":3,"file":"model-manager.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/model-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-manager.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/model-manager.ts"],"names":[],"mappings":"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"}