crewly 1.0.7 → 1.0.10

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 (468) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +50 -3
  3. package/config/constants.ts +59 -0
  4. package/config/index.ts +2 -0
  5. package/config/roles/architect/prompt.md +17 -5
  6. package/config/roles/backend-developer/prompt.md +35 -5
  7. package/config/roles/designer/prompt.md +17 -5
  8. package/config/roles/developer/prompt.md +43 -9
  9. package/config/roles/frontend-developer/prompt.md +35 -5
  10. package/config/roles/fullstack-dev/prompt.md +35 -5
  11. package/config/roles/generalist/prompt.md +18 -5
  12. package/config/roles/orchestrator/prompt.md +126 -3
  13. package/config/roles/product-manager/prompt.md +24 -9
  14. package/config/roles/qa/prompt.md +35 -5
  15. package/config/roles/qa-engineer/prompt.md +35 -5
  16. package/config/roles/sales/prompt.md +17 -5
  17. package/config/roles/support/prompt.md +17 -5
  18. package/config/roles/tpm/prompt.md +17 -5
  19. package/config/skills/agent/_common/lib.sh +4 -0
  20. package/config/skills/agent/core/accept-task/execute.sh +21 -0
  21. package/config/skills/agent/core/accept-task/instructions.md +20 -0
  22. package/config/skills/agent/core/accept-task/skill.json +20 -0
  23. package/config/skills/agent/core/block-task/execute.sh +26 -0
  24. package/config/skills/agent/core/block-task/instructions.md +22 -0
  25. package/config/skills/agent/core/block-task/skill.json +20 -0
  26. package/config/skills/agent/core/check-quality-gates/execute.sh +20 -0
  27. package/config/skills/agent/core/check-quality-gates/instructions.md +23 -0
  28. package/config/skills/agent/core/check-quality-gates/skill.json +20 -0
  29. package/config/skills/agent/core/complete-task/execute.sh +29 -0
  30. package/config/skills/agent/core/complete-task/instructions.md +53 -0
  31. package/config/skills/agent/core/complete-task/skill.json +20 -0
  32. package/config/skills/agent/core/get-my-context/execute.sh +23 -0
  33. package/config/skills/agent/core/get-my-context/instructions.md +21 -0
  34. package/config/skills/agent/core/get-my-context/skill.json +20 -0
  35. package/config/skills/agent/core/get-sops/execute.sh +24 -0
  36. package/config/skills/agent/core/get-sops/instructions.md +21 -0
  37. package/config/skills/agent/core/get-sops/skill.json +20 -0
  38. package/config/skills/agent/core/get-team-status/execute.sh +8 -0
  39. package/config/skills/agent/core/get-team-status/instructions.md +17 -0
  40. package/config/skills/agent/core/get-team-status/skill.json +20 -0
  41. package/config/skills/agent/core/heartbeat/execute.sh +22 -0
  42. package/config/skills/agent/core/heartbeat/instructions.md +23 -0
  43. package/config/skills/agent/core/heartbeat/skill.json +20 -0
  44. package/config/skills/agent/core/manage-knowledge/execute.sh +60 -0
  45. package/config/skills/agent/core/manage-knowledge/instructions.md +46 -0
  46. package/config/skills/agent/core/marketplace-search/execute.sh +77 -0
  47. package/config/skills/agent/core/marketplace-search/instructions.md +59 -0
  48. package/config/skills/agent/core/marketplace-search/skill.json +20 -0
  49. package/config/skills/agent/core/query-knowledge/execute.sh +30 -0
  50. package/config/skills/agent/core/query-knowledge/instructions.md +47 -0
  51. package/config/skills/agent/core/query-knowledge/skill.json +20 -0
  52. package/config/skills/agent/core/read-task/execute.sh +15 -0
  53. package/config/skills/agent/core/read-task/instructions.md +19 -0
  54. package/config/skills/agent/core/read-task/skill.json +20 -0
  55. package/config/skills/agent/core/recall/execute.sh +24 -0
  56. package/config/skills/agent/core/recall/instructions.md +23 -0
  57. package/config/skills/agent/core/recall/skill.json +20 -0
  58. package/config/skills/agent/core/record-learning/execute.sh +29 -0
  59. package/config/skills/agent/core/record-learning/instructions.md +24 -0
  60. package/config/skills/agent/core/record-learning/skill.json +20 -0
  61. package/config/skills/agent/core/register-self/execute.sh +28 -0
  62. package/config/skills/agent/core/register-self/instructions.md +18 -0
  63. package/config/skills/agent/core/register-self/skill.json +20 -0
  64. package/config/skills/agent/core/remember/execute.sh +29 -0
  65. package/config/skills/agent/core/remember/instructions.md +24 -0
  66. package/config/skills/agent/core/remember/skill.json +20 -0
  67. package/config/skills/agent/core/report-progress/execute.sh +28 -0
  68. package/config/skills/agent/core/report-progress/instructions.md +25 -0
  69. package/config/skills/agent/core/report-progress/skill.json +20 -0
  70. package/config/skills/agent/core/report-status/execute.sh +35 -0
  71. package/config/skills/agent/core/report-status/instructions.md +36 -0
  72. package/config/skills/agent/core/report-status/skill.json +20 -0
  73. package/config/skills/agent/core/send-chat-response/execute.sh +26 -0
  74. package/config/skills/agent/core/send-chat-response/instructions.md +22 -0
  75. package/config/skills/agent/core/send-chat-response/skill.json +20 -0
  76. package/config/skills/agent/core/send-message/execute.sh +17 -0
  77. package/config/skills/agent/core/send-message/instructions.md +20 -0
  78. package/config/skills/agent/core/send-message/skill.json +20 -0
  79. package/config/skills/orchestrator/complete-task/execute.sh +1 -0
  80. package/config/skills/orchestrator/delegate-task/execute.sh +1 -1
  81. package/config/skills/registry.json +850 -0
  82. package/config/templates/agent-claude-md.md +16 -0
  83. package/config/templates/research-team.json +22 -0
  84. package/config/templates/startup-team.json +22 -0
  85. package/config/templates/web-dev-team.json +22 -0
  86. package/dist/backend/backend/src/constants.d.ts +127 -1
  87. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  88. package/dist/backend/backend/src/constants.js +119 -8
  89. package/dist/backend/backend/src/constants.js.map +1 -1
  90. package/dist/backend/backend/src/controllers/marketplace/index.d.ts +1 -1
  91. package/dist/backend/backend/src/controllers/marketplace/index.d.ts.map +1 -1
  92. package/dist/backend/backend/src/controllers/marketplace/index.js +1 -1
  93. package/dist/backend/backend/src/controllers/marketplace/index.js.map +1 -1
  94. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.d.ts +64 -8
  95. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.d.ts.map +1 -1
  96. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.js +194 -96
  97. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.js.map +1 -1
  98. package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.d.ts.map +1 -1
  99. package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.js +7 -2
  100. package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.js.map +1 -1
  101. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts +7 -0
  102. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts.map +1 -1
  103. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js +174 -4
  104. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js.map +1 -1
  105. package/dist/backend/backend/src/index.d.ts.map +1 -1
  106. package/dist/backend/backend/src/index.js +34 -0
  107. package/dist/backend/backend/src/index.js.map +1 -1
  108. package/dist/backend/backend/src/routes/modules/task-management.routes.d.ts.map +1 -1
  109. package/dist/backend/backend/src/routes/modules/task-management.routes.js +2 -0
  110. package/dist/backend/backend/src/routes/modules/task-management.routes.js.map +1 -1
  111. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +8 -0
  112. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  113. package/dist/backend/backend/src/services/agent/agent-registration.service.js +89 -17
  114. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  115. package/dist/backend/backend/src/services/agent/context-window-monitor.service.d.ts +265 -0
  116. package/dist/backend/backend/src/services/agent/context-window-monitor.service.d.ts.map +1 -0
  117. package/dist/backend/backend/src/services/agent/context-window-monitor.service.js +811 -0
  118. package/dist/backend/backend/src/services/agent/context-window-monitor.service.js.map +1 -0
  119. package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts.map +1 -1
  120. package/dist/backend/backend/src/services/agent/idle-detection.service.js +11 -4
  121. package/dist/backend/backend/src/services/agent/idle-detection.service.js.map +1 -1
  122. package/dist/backend/backend/src/services/agent/pty-activity-tracker.service.d.ts +11 -0
  123. package/dist/backend/backend/src/services/agent/pty-activity-tracker.service.d.ts.map +1 -1
  124. package/dist/backend/backend/src/services/agent/pty-activity-tracker.service.js +18 -0
  125. package/dist/backend/backend/src/services/agent/pty-activity-tracker.service.js.map +1 -1
  126. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts +12 -0
  127. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  128. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +51 -1
  129. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  130. package/dist/backend/backend/src/services/continuation/patterns/waiting-patterns.d.ts +6 -0
  131. package/dist/backend/backend/src/services/continuation/patterns/waiting-patterns.d.ts.map +1 -1
  132. package/dist/backend/backend/src/services/continuation/patterns/waiting-patterns.js +10 -0
  133. package/dist/backend/backend/src/services/continuation/patterns/waiting-patterns.js.map +1 -1
  134. package/dist/backend/backend/src/services/index.d.ts +3 -0
  135. package/dist/backend/backend/src/services/index.d.ts.map +1 -1
  136. package/dist/backend/backend/src/services/index.js +5 -0
  137. package/dist/backend/backend/src/services/index.js.map +1 -1
  138. package/dist/backend/backend/src/services/marketplace/index.d.ts +1 -0
  139. package/dist/backend/backend/src/services/marketplace/index.d.ts.map +1 -1
  140. package/dist/backend/backend/src/services/marketplace/index.js +2 -0
  141. package/dist/backend/backend/src/services/marketplace/index.js.map +1 -1
  142. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.d.ts +10 -9
  143. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.d.ts.map +1 -1
  144. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.js +262 -73
  145. package/dist/backend/backend/src/services/marketplace/marketplace-installer.service.js.map +1 -1
  146. package/dist/backend/backend/src/services/marketplace/marketplace-submission.service.d.ts +71 -0
  147. package/dist/backend/backend/src/services/marketplace/marketplace-submission.service.d.ts.map +1 -0
  148. package/dist/backend/backend/src/services/marketplace/marketplace-submission.service.js +339 -0
  149. package/dist/backend/backend/src/services/marketplace/marketplace-submission.service.js.map +1 -0
  150. package/dist/backend/backend/src/services/marketplace/marketplace.service.d.ts +4 -15
  151. package/dist/backend/backend/src/services/marketplace/marketplace.service.d.ts.map +1 -1
  152. package/dist/backend/backend/src/services/marketplace/marketplace.service.js +172 -27
  153. package/dist/backend/backend/src/services/marketplace/marketplace.service.js.map +1 -1
  154. package/dist/backend/backend/src/services/mcp-client.d.ts +233 -0
  155. package/dist/backend/backend/src/services/mcp-client.d.ts.map +1 -0
  156. package/dist/backend/backend/src/services/mcp-client.js +297 -0
  157. package/dist/backend/backend/src/services/mcp-client.js.map +1 -0
  158. package/dist/backend/backend/src/services/mcp-server.d.ts +167 -0
  159. package/dist/backend/backend/src/services/mcp-server.d.ts.map +1 -0
  160. package/dist/backend/backend/src/services/mcp-server.js +586 -0
  161. package/dist/backend/backend/src/services/mcp-server.js.map +1 -0
  162. package/dist/backend/backend/src/services/messaging/message-queue.service.d.ts +32 -2
  163. package/dist/backend/backend/src/services/messaging/message-queue.service.d.ts.map +1 -1
  164. package/dist/backend/backend/src/services/messaging/message-queue.service.js +85 -4
  165. package/dist/backend/backend/src/services/messaging/message-queue.service.js.map +1 -1
  166. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts +10 -0
  167. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  168. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +129 -41
  169. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  170. package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.d.ts.map +1 -1
  171. package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.js +31 -0
  172. package/dist/backend/backend/src/services/orchestrator/orchestrator-status.service.js.map +1 -1
  173. package/dist/backend/backend/src/services/quality/index.d.ts +1 -0
  174. package/dist/backend/backend/src/services/quality/index.d.ts.map +1 -1
  175. package/dist/backend/backend/src/services/quality/index.js +1 -0
  176. package/dist/backend/backend/src/services/quality/index.js.map +1 -1
  177. package/dist/backend/backend/src/services/quality/task-output-validator.service.d.ts +84 -0
  178. package/dist/backend/backend/src/services/quality/task-output-validator.service.d.ts.map +1 -0
  179. package/dist/backend/backend/src/services/quality/task-output-validator.service.js +163 -0
  180. package/dist/backend/backend/src/services/quality/task-output-validator.service.js.map +1 -0
  181. package/dist/backend/backend/src/services/runtime-adapter.d.ts +254 -0
  182. package/dist/backend/backend/src/services/runtime-adapter.d.ts.map +1 -0
  183. package/dist/backend/backend/src/services/runtime-adapter.js +201 -0
  184. package/dist/backend/backend/src/services/runtime-adapter.js.map +1 -0
  185. package/dist/backend/backend/src/services/session/pty/pty-session-backend.d.ts +19 -0
  186. package/dist/backend/backend/src/services/session/pty/pty-session-backend.d.ts.map +1 -1
  187. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js +31 -2
  188. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js.map +1 -1
  189. package/dist/backend/backend/src/services/session/session-backend.interface.d.ts +14 -0
  190. package/dist/backend/backend/src/services/session/session-backend.interface.d.ts.map +1 -1
  191. package/dist/backend/backend/src/services/session/session-backend.interface.js.map +1 -1
  192. package/dist/backend/backend/src/services/session/session-command-helper.d.ts +9 -0
  193. package/dist/backend/backend/src/services/session/session-command-helper.d.ts.map +1 -1
  194. package/dist/backend/backend/src/services/session/session-command-helper.js +24 -1
  195. package/dist/backend/backend/src/services/session/session-command-helper.js.map +1 -1
  196. package/dist/backend/backend/src/services/skill/skill-catalog.service.d.ts +7 -13
  197. package/dist/backend/backend/src/services/skill/skill-catalog.service.d.ts.map +1 -1
  198. package/dist/backend/backend/src/services/skill/skill-catalog.service.js +38 -47
  199. package/dist/backend/backend/src/services/skill/skill-catalog.service.js.map +1 -1
  200. package/dist/backend/backend/src/services/skill/skill.service.d.ts +3 -0
  201. package/dist/backend/backend/src/services/skill/skill.service.d.ts.map +1 -1
  202. package/dist/backend/backend/src/services/skill/skill.service.js +17 -0
  203. package/dist/backend/backend/src/services/skill/skill.service.js.map +1 -1
  204. package/dist/backend/backend/src/types/event-bus.types.d.ts +2 -2
  205. package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
  206. package/dist/backend/backend/src/types/event-bus.types.js +2 -0
  207. package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
  208. package/dist/backend/backend/src/types/index.d.ts +1 -0
  209. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  210. package/dist/backend/backend/src/types/index.js +2 -0
  211. package/dist/backend/backend/src/types/index.js.map +1 -1
  212. package/dist/backend/backend/src/types/marketplace.types.d.ts +37 -0
  213. package/dist/backend/backend/src/types/marketplace.types.d.ts.map +1 -1
  214. package/dist/backend/backend/src/types/messaging.types.d.ts +9 -6
  215. package/dist/backend/backend/src/types/messaging.types.d.ts.map +1 -1
  216. package/dist/backend/backend/src/types/messaging.types.js +10 -3
  217. package/dist/backend/backend/src/types/messaging.types.js.map +1 -1
  218. package/dist/backend/backend/src/types/task-output.types.d.ts +78 -0
  219. package/dist/backend/backend/src/types/task-output.types.d.ts.map +1 -0
  220. package/dist/backend/backend/src/types/task-output.types.js +27 -0
  221. package/dist/backend/backend/src/types/task-output.types.js.map +1 -0
  222. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts +13 -0
  223. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts.map +1 -1
  224. package/dist/backend/backend/src/websocket/terminal.gateway.js +12 -0
  225. package/dist/backend/backend/src/websocket/terminal.gateway.js.map +1 -1
  226. package/dist/backend/config/constants.d.ts +41 -0
  227. package/dist/backend/config/constants.d.ts.map +1 -1
  228. package/dist/backend/config/constants.js +57 -0
  229. package/dist/backend/config/constants.js.map +1 -1
  230. package/dist/backend/config/index.d.ts +2 -2
  231. package/dist/backend/config/index.d.ts.map +1 -1
  232. package/dist/backend/config/index.js +2 -2
  233. package/dist/backend/config/index.js.map +1 -1
  234. package/dist/cli/backend/src/constants.d.ts +817 -0
  235. package/dist/cli/backend/src/constants.d.ts.map +1 -0
  236. package/dist/cli/backend/src/constants.js +603 -0
  237. package/dist/cli/backend/src/constants.js.map +1 -0
  238. package/dist/cli/backend/src/models/Project.d.ts +18 -0
  239. package/dist/cli/backend/src/models/Project.d.ts.map +1 -0
  240. package/dist/cli/backend/src/models/Project.js +70 -0
  241. package/dist/cli/backend/src/models/Project.js.map +1 -0
  242. package/dist/cli/backend/src/models/ScheduledMessage.d.ts +27 -0
  243. package/dist/cli/backend/src/models/ScheduledMessage.d.ts.map +1 -0
  244. package/dist/cli/backend/src/models/ScheduledMessage.js +50 -0
  245. package/dist/cli/backend/src/models/ScheduledMessage.js.map +1 -0
  246. package/dist/cli/backend/src/models/Team.d.ts +20 -0
  247. package/dist/cli/backend/src/models/Team.d.ts.map +1 -0
  248. package/dist/cli/backend/src/models/Team.js +120 -0
  249. package/dist/cli/backend/src/models/Team.js.map +1 -0
  250. package/dist/cli/backend/src/models/Ticket.d.ts +24 -0
  251. package/dist/cli/backend/src/models/Ticket.d.ts.map +1 -0
  252. package/dist/cli/backend/src/models/Ticket.js +102 -0
  253. package/dist/cli/backend/src/models/Ticket.js.map +1 -0
  254. package/dist/cli/backend/src/models/index.d.ts +5 -0
  255. package/dist/cli/backend/src/models/index.d.ts.map +1 -0
  256. package/dist/cli/backend/src/models/index.js +5 -0
  257. package/dist/cli/backend/src/models/index.js.map +1 -0
  258. package/dist/cli/backend/src/services/continuation/patterns/waiting-patterns.d.ts +40 -0
  259. package/dist/cli/backend/src/services/continuation/patterns/waiting-patterns.d.ts.map +1 -0
  260. package/dist/cli/backend/src/services/continuation/patterns/waiting-patterns.js +74 -0
  261. package/dist/cli/backend/src/services/continuation/patterns/waiting-patterns.js.map +1 -0
  262. package/dist/cli/backend/src/services/core/config.service.d.ts +91 -0
  263. package/dist/cli/backend/src/services/core/config.service.d.ts.map +1 -0
  264. package/dist/cli/backend/src/services/core/config.service.js +246 -0
  265. package/dist/cli/backend/src/services/core/config.service.js.map +1 -0
  266. package/dist/cli/backend/src/services/core/logger.service.d.ts +70 -0
  267. package/dist/cli/backend/src/services/core/logger.service.d.ts.map +1 -0
  268. package/dist/cli/backend/src/services/core/logger.service.js +350 -0
  269. package/dist/cli/backend/src/services/core/logger.service.js.map +1 -0
  270. package/dist/cli/backend/src/services/core/storage.service.d.ts +269 -0
  271. package/dist/cli/backend/src/services/core/storage.service.d.ts.map +1 -0
  272. package/dist/cli/backend/src/services/core/storage.service.js +1406 -0
  273. package/dist/cli/backend/src/services/core/storage.service.js.map +1 -0
  274. package/dist/cli/backend/src/services/core/teams-backup.service.d.ts +92 -0
  275. package/dist/cli/backend/src/services/core/teams-backup.service.d.ts.map +1 -0
  276. package/dist/cli/backend/src/services/core/teams-backup.service.js +120 -0
  277. package/dist/cli/backend/src/services/core/teams-backup.service.js.map +1 -0
  278. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.d.ts +125 -0
  279. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.d.ts.map +1 -0
  280. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.js +247 -0
  281. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.js.map +1 -0
  282. package/dist/cli/backend/src/services/knowledge/knowledge.service.d.ts +153 -0
  283. package/dist/cli/backend/src/services/knowledge/knowledge.service.d.ts.map +1 -0
  284. package/dist/cli/backend/src/services/knowledge/knowledge.service.js +409 -0
  285. package/dist/cli/backend/src/services/knowledge/knowledge.service.js.map +1 -0
  286. package/dist/cli/backend/src/services/mcp-server.d.ts +167 -0
  287. package/dist/cli/backend/src/services/mcp-server.d.ts.map +1 -0
  288. package/dist/cli/backend/src/services/mcp-server.js +586 -0
  289. package/dist/cli/backend/src/services/mcp-server.js.map +1 -0
  290. package/dist/cli/backend/src/services/memory/agent-memory.service.d.ts +259 -0
  291. package/dist/cli/backend/src/services/memory/agent-memory.service.d.ts.map +1 -0
  292. package/dist/cli/backend/src/services/memory/agent-memory.service.js +539 -0
  293. package/dist/cli/backend/src/services/memory/agent-memory.service.js.map +1 -0
  294. package/dist/cli/backend/src/services/memory/memory.service.d.ts +306 -0
  295. package/dist/cli/backend/src/services/memory/memory.service.d.ts.map +1 -0
  296. package/dist/cli/backend/src/services/memory/memory.service.js +517 -0
  297. package/dist/cli/backend/src/services/memory/memory.service.js.map +1 -0
  298. package/dist/cli/backend/src/services/memory/project-memory.service.d.ts +252 -0
  299. package/dist/cli/backend/src/services/memory/project-memory.service.d.ts.map +1 -0
  300. package/dist/cli/backend/src/services/memory/project-memory.service.js +600 -0
  301. package/dist/cli/backend/src/services/memory/project-memory.service.js.map +1 -0
  302. package/dist/cli/backend/src/types/auto-assign.types.d.ts +271 -0
  303. package/dist/cli/backend/src/types/auto-assign.types.d.ts.map +1 -0
  304. package/dist/cli/backend/src/types/auto-assign.types.js +136 -0
  305. package/dist/cli/backend/src/types/auto-assign.types.js.map +1 -0
  306. package/dist/cli/backend/src/types/budget.types.d.ts +217 -0
  307. package/dist/cli/backend/src/types/budget.types.d.ts.map +1 -0
  308. package/dist/cli/backend/src/types/budget.types.js +82 -0
  309. package/dist/cli/backend/src/types/budget.types.js.map +1 -0
  310. package/dist/cli/backend/src/types/chat.types.d.ts +550 -0
  311. package/dist/cli/backend/src/types/chat.types.d.ts.map +1 -0
  312. package/dist/cli/backend/src/types/chat.types.js +743 -0
  313. package/dist/cli/backend/src/types/chat.types.js.map +1 -0
  314. package/dist/cli/backend/src/types/continuation.types.d.ts +237 -0
  315. package/dist/cli/backend/src/types/continuation.types.d.ts.map +1 -0
  316. package/dist/cli/backend/src/types/continuation.types.js +10 -0
  317. package/dist/cli/backend/src/types/continuation.types.js.map +1 -0
  318. package/dist/cli/backend/src/types/index.d.ts +164 -0
  319. package/dist/cli/backend/src/types/index.d.ts.map +1 -0
  320. package/dist/cli/backend/src/types/index.js +25 -0
  321. package/dist/cli/backend/src/types/index.js.map +1 -0
  322. package/dist/cli/backend/src/types/knowledge.types.d.ts +195 -0
  323. package/dist/cli/backend/src/types/knowledge.types.d.ts.map +1 -0
  324. package/dist/cli/backend/src/types/knowledge.types.js +38 -0
  325. package/dist/cli/backend/src/types/knowledge.types.js.map +1 -0
  326. package/dist/cli/backend/src/types/memory.types.d.ts +587 -0
  327. package/dist/cli/backend/src/types/memory.types.d.ts.map +1 -0
  328. package/dist/cli/backend/src/types/memory.types.js +47 -0
  329. package/dist/cli/backend/src/types/memory.types.js.map +1 -0
  330. package/dist/cli/backend/src/types/quality-gate.types.d.ts +171 -0
  331. package/dist/cli/backend/src/types/quality-gate.types.d.ts.map +1 -0
  332. package/dist/cli/backend/src/types/quality-gate.types.js +42 -0
  333. package/dist/cli/backend/src/types/quality-gate.types.js.map +1 -0
  334. package/dist/cli/backend/src/types/role.types.d.ts +260 -0
  335. package/dist/cli/backend/src/types/role.types.d.ts.map +1 -0
  336. package/dist/cli/backend/src/types/role.types.js +238 -0
  337. package/dist/cli/backend/src/types/role.types.js.map +1 -0
  338. package/dist/cli/backend/src/types/scheduler.types.d.ts +254 -0
  339. package/dist/cli/backend/src/types/scheduler.types.d.ts.map +1 -0
  340. package/dist/cli/backend/src/types/scheduler.types.js +32 -0
  341. package/dist/cli/backend/src/types/scheduler.types.js.map +1 -0
  342. package/dist/cli/backend/src/types/settings.types.d.ts +178 -0
  343. package/dist/cli/backend/src/types/settings.types.d.ts.map +1 -0
  344. package/dist/cli/backend/src/types/settings.types.js +206 -0
  345. package/dist/cli/backend/src/types/settings.types.js.map +1 -0
  346. package/dist/cli/backend/src/types/skill.types.d.ts +515 -0
  347. package/dist/cli/backend/src/types/skill.types.d.ts.map +1 -0
  348. package/dist/cli/backend/src/types/skill.types.js +481 -0
  349. package/dist/cli/backend/src/types/skill.types.js.map +1 -0
  350. package/dist/cli/backend/src/types/sop.types.d.ts +224 -0
  351. package/dist/cli/backend/src/types/sop.types.d.ts.map +1 -0
  352. package/dist/cli/backend/src/types/sop.types.js +85 -0
  353. package/dist/cli/backend/src/types/sop.types.js.map +1 -0
  354. package/dist/cli/backend/src/types/task-output.types.d.ts +78 -0
  355. package/dist/cli/backend/src/types/task-output.types.d.ts.map +1 -0
  356. package/dist/cli/backend/src/types/task-output.types.js +27 -0
  357. package/dist/cli/backend/src/types/task-output.types.js.map +1 -0
  358. package/dist/cli/backend/src/utils/file-io.utils.d.ts +102 -0
  359. package/dist/cli/backend/src/utils/file-io.utils.d.ts.map +1 -0
  360. package/dist/cli/backend/src/utils/file-io.utils.js +214 -0
  361. package/dist/cli/backend/src/utils/file-io.utils.js.map +1 -0
  362. package/dist/cli/backend/src/utils/terminal-output.utils.d.ts +54 -0
  363. package/dist/cli/backend/src/utils/terminal-output.utils.d.ts.map +1 -0
  364. package/dist/cli/backend/src/utils/terminal-output.utils.js +97 -0
  365. package/dist/cli/backend/src/utils/terminal-output.utils.js.map +1 -0
  366. package/dist/cli/cli/src/commands/mcp-server.d.ts +38 -0
  367. package/dist/cli/cli/src/commands/mcp-server.d.ts.map +1 -0
  368. package/dist/cli/cli/src/commands/mcp-server.js +49 -0
  369. package/dist/cli/cli/src/commands/mcp-server.js.map +1 -0
  370. package/dist/cli/cli/src/commands/onboard.d.ts +72 -8
  371. package/dist/cli/cli/src/commands/onboard.d.ts.map +1 -1
  372. package/dist/cli/cli/src/commands/onboard.js +306 -33
  373. package/dist/cli/cli/src/commands/onboard.js.map +1 -1
  374. package/dist/cli/cli/src/commands/publish.d.ts +35 -0
  375. package/dist/cli/cli/src/commands/publish.d.ts.map +1 -0
  376. package/dist/cli/cli/src/commands/publish.js +93 -0
  377. package/dist/cli/cli/src/commands/publish.js.map +1 -0
  378. package/dist/cli/cli/src/commands/seed-marketplace.d.ts +28 -0
  379. package/dist/cli/cli/src/commands/seed-marketplace.d.ts.map +1 -0
  380. package/dist/cli/cli/src/commands/seed-marketplace.js +148 -0
  381. package/dist/cli/cli/src/commands/seed-marketplace.js.map +1 -0
  382. package/dist/cli/cli/src/index.js +23 -0
  383. package/dist/cli/cli/src/index.js.map +1 -1
  384. package/dist/cli/cli/src/utils/archive-creator.d.ts +82 -0
  385. package/dist/cli/cli/src/utils/archive-creator.d.ts.map +1 -0
  386. package/dist/cli/cli/src/utils/archive-creator.js +105 -0
  387. package/dist/cli/cli/src/utils/archive-creator.js.map +1 -0
  388. package/dist/cli/cli/src/utils/marketplace.d.ts +17 -4
  389. package/dist/cli/cli/src/utils/marketplace.d.ts.map +1 -1
  390. package/dist/cli/cli/src/utils/marketplace.js +172 -58
  391. package/dist/cli/cli/src/utils/marketplace.js.map +1 -1
  392. package/dist/cli/cli/src/utils/package-validator.d.ts +62 -0
  393. package/dist/cli/cli/src/utils/package-validator.d.ts.map +1 -0
  394. package/dist/cli/cli/src/utils/package-validator.js +122 -0
  395. package/dist/cli/cli/src/utils/package-validator.js.map +1 -0
  396. package/dist/cli/cli/src/utils/templates.d.ts +71 -0
  397. package/dist/cli/cli/src/utils/templates.d.ts.map +1 -0
  398. package/dist/cli/cli/src/utils/templates.js +91 -0
  399. package/dist/cli/cli/src/utils/templates.js.map +1 -0
  400. package/dist/cli/config/constants.d.ts +41 -0
  401. package/dist/cli/config/constants.d.ts.map +1 -1
  402. package/dist/cli/config/constants.js +57 -0
  403. package/dist/cli/config/constants.js.map +1 -1
  404. package/dist/cli/config/index.d.ts +2 -2
  405. package/dist/cli/config/index.d.ts.map +1 -1
  406. package/dist/cli/config/index.js +2 -2
  407. package/dist/cli/config/index.js.map +1 -1
  408. package/frontend/dist/assets/{index-523c7fce.js → index-0a245b0d.js} +247 -247
  409. package/frontend/dist/assets/{index-4c050f52.css → index-6972eeee.css} +1 -1
  410. package/frontend/dist/assets/nunito-cyrillic-400-normal-e44e669f.woff2 +0 -0
  411. package/frontend/dist/assets/nunito-cyrillic-400-normal-ff8e8bdd.woff +0 -0
  412. package/frontend/dist/assets/nunito-cyrillic-500-normal-2159679b.woff +0 -0
  413. package/frontend/dist/assets/nunito-cyrillic-500-normal-61a3b80e.woff2 +0 -0
  414. package/frontend/dist/assets/nunito-cyrillic-600-normal-ac046097.woff +0 -0
  415. package/frontend/dist/assets/nunito-cyrillic-600-normal-e61eb97b.woff2 +0 -0
  416. package/frontend/dist/assets/nunito-cyrillic-700-normal-8fcefcc9.woff2 +0 -0
  417. package/frontend/dist/assets/nunito-cyrillic-700-normal-b9684104.woff +0 -0
  418. package/frontend/dist/assets/nunito-cyrillic-800-normal-40253beb.woff +0 -0
  419. package/frontend/dist/assets/nunito-cyrillic-800-normal-d80292de.woff2 +0 -0
  420. package/frontend/dist/assets/nunito-cyrillic-ext-400-normal-20d73ae7.woff2 +0 -0
  421. package/frontend/dist/assets/nunito-cyrillic-ext-400-normal-d48c37c9.woff +0 -0
  422. package/frontend/dist/assets/nunito-cyrillic-ext-500-normal-16197abd.woff +0 -0
  423. package/frontend/dist/assets/nunito-cyrillic-ext-500-normal-9dcfe9b5.woff2 +0 -0
  424. package/frontend/dist/assets/nunito-cyrillic-ext-600-normal-d53e9851.woff2 +0 -0
  425. package/frontend/dist/assets/nunito-cyrillic-ext-600-normal-e3d0201f.woff +0 -0
  426. package/frontend/dist/assets/nunito-cyrillic-ext-700-normal-5936f6ac.woff2 +0 -0
  427. package/frontend/dist/assets/nunito-cyrillic-ext-700-normal-c8c02775.woff +0 -0
  428. package/frontend/dist/assets/nunito-cyrillic-ext-800-normal-217b8f51.woff +0 -0
  429. package/frontend/dist/assets/nunito-cyrillic-ext-800-normal-796cf7bd.woff2 +0 -0
  430. package/frontend/dist/assets/nunito-latin-400-normal-a5906e15.woff2 +0 -0
  431. package/frontend/dist/assets/nunito-latin-400-normal-b51e7635.woff +0 -0
  432. package/frontend/dist/assets/nunito-latin-500-normal-23ae3083.woff2 +0 -0
  433. package/frontend/dist/assets/nunito-latin-500-normal-be14dbc6.woff +0 -0
  434. package/frontend/dist/assets/nunito-latin-600-normal-06a9c8b3.woff +0 -0
  435. package/frontend/dist/assets/nunito-latin-600-normal-45f437de.woff2 +0 -0
  436. package/frontend/dist/assets/nunito-latin-700-normal-ce9107dc.woff +0 -0
  437. package/frontend/dist/assets/nunito-latin-700-normal-fa89300b.woff2 +0 -0
  438. package/frontend/dist/assets/nunito-latin-800-normal-0ca02785.woff +0 -0
  439. package/frontend/dist/assets/nunito-latin-800-normal-2363d3ed.woff2 +0 -0
  440. package/frontend/dist/assets/nunito-latin-ext-400-normal-67250a41.woff2 +0 -0
  441. package/frontend/dist/assets/nunito-latin-ext-400-normal-d7e2415e.woff +0 -0
  442. package/frontend/dist/assets/nunito-latin-ext-500-normal-06f35d1c.woff +0 -0
  443. package/frontend/dist/assets/nunito-latin-ext-500-normal-343e7adc.woff2 +0 -0
  444. package/frontend/dist/assets/nunito-latin-ext-600-normal-5a8efd17.woff +0 -0
  445. package/frontend/dist/assets/nunito-latin-ext-600-normal-a7ba5f4f.woff2 +0 -0
  446. package/frontend/dist/assets/nunito-latin-ext-700-normal-0a4e4a02.woff2 +0 -0
  447. package/frontend/dist/assets/nunito-latin-ext-700-normal-0c607961.woff +0 -0
  448. package/frontend/dist/assets/nunito-latin-ext-800-normal-39f54b55.woff2 +0 -0
  449. package/frontend/dist/assets/nunito-latin-ext-800-normal-466d0211.woff +0 -0
  450. package/frontend/dist/assets/nunito-vietnamese-400-normal-2a755616.woff2 +0 -0
  451. package/frontend/dist/assets/nunito-vietnamese-400-normal-9c01ea9f.woff +0 -0
  452. package/frontend/dist/assets/nunito-vietnamese-500-normal-452e5e08.woff +0 -0
  453. package/frontend/dist/assets/nunito-vietnamese-500-normal-dc98d965.woff2 +0 -0
  454. package/frontend/dist/assets/nunito-vietnamese-600-normal-2ffbb85f.woff +0 -0
  455. package/frontend/dist/assets/nunito-vietnamese-600-normal-cf95b95d.woff2 +0 -0
  456. package/frontend/dist/assets/nunito-vietnamese-700-normal-0e29c28c.woff2 +0 -0
  457. package/frontend/dist/assets/nunito-vietnamese-700-normal-7793b75e.woff +0 -0
  458. package/frontend/dist/assets/nunito-vietnamese-800-normal-5baf507e.woff +0 -0
  459. package/frontend/dist/assets/nunito-vietnamese-800-normal-fac6740e.woff2 +0 -0
  460. package/frontend/dist/index.html +2 -2
  461. package/package.json +16 -6
  462. package/config/skills/chrome-browser/instructions.md +0 -42
  463. package/config/skills/chrome-browser/skill.json +0 -39
  464. package/config/skills/nano-banana-image/generate.sh +0 -73
  465. package/config/skills/nano-banana-image/instructions.md +0 -50
  466. package/config/skills/nano-banana-image/skill.json +0 -39
  467. package/config/skills/playwright-chrome-browser/instructions.md +0 -95
  468. package/config/skills/playwright-chrome-browser/skill.json +0 -44
@@ -0,0 +1,178 @@
1
+ /**
2
+ * Settings Type Definitions
3
+ *
4
+ * Types for managing Crewly application settings including
5
+ * runtime preferences, chat settings, and skill configurations.
6
+ *
7
+ * @module types/settings.types
8
+ */
9
+ /**
10
+ * Available AI runtime options
11
+ */
12
+ export type AIRuntime = 'claude-code' | 'gemini-cli' | 'codex-cli';
13
+ /**
14
+ * Array of all valid AI runtimes
15
+ */
16
+ export declare const AI_RUNTIMES: readonly AIRuntime[];
17
+ /**
18
+ * General application settings
19
+ */
20
+ export interface GeneralSettings {
21
+ /** Default AI runtime for new agents */
22
+ defaultRuntime: AIRuntime;
23
+ /** Whether to auto-start the orchestrator on application launch */
24
+ autoStartOrchestrator: boolean;
25
+ /** Agent check-in interval in minutes */
26
+ checkInIntervalMinutes: number;
27
+ /** Maximum concurrent agents allowed */
28
+ maxConcurrentAgents: number;
29
+ /** Enable verbose logging */
30
+ verboseLogging: boolean;
31
+ /** Whether to auto-resume agent sessions on restart */
32
+ autoResumeOnRestart: boolean;
33
+ /** Per-runtime CLI init commands. Key = runtime type, value = CLI command string */
34
+ runtimeCommands: Record<AIRuntime, string>;
35
+ /** Minutes of inactivity before an agent is automatically suspended (0 = disabled) */
36
+ agentIdleTimeoutMinutes: number;
37
+ }
38
+ /**
39
+ * Chat interface settings
40
+ */
41
+ export interface ChatSettings {
42
+ /** Show raw terminal output in chat messages */
43
+ showRawTerminalOutput: boolean;
44
+ /** Enable typing indicator when agent is processing */
45
+ enableTypingIndicator: boolean;
46
+ /** Maximum number of messages to keep in history */
47
+ maxMessageHistory: number;
48
+ /** Auto-scroll to newest messages */
49
+ autoScrollToBottom: boolean;
50
+ /** Show timestamps on messages */
51
+ showTimestamps: boolean;
52
+ }
53
+ /**
54
+ * Skills system settings
55
+ */
56
+ export interface SkillsSettings {
57
+ /** Custom skills directory path */
58
+ skillsDirectory: string;
59
+ /** Enable browser automation capabilities */
60
+ enableBrowserAutomation: boolean;
61
+ /** Enable script execution */
62
+ enableScriptExecution: boolean;
63
+ /** Timeout for skill execution in milliseconds */
64
+ skillExecutionTimeoutMs: number;
65
+ }
66
+ /**
67
+ * Complete Crewly settings
68
+ */
69
+ export interface CrewlySettings {
70
+ /** General application settings */
71
+ general: GeneralSettings;
72
+ /** Chat interface settings */
73
+ chat: ChatSettings;
74
+ /** Skills system settings */
75
+ skills: SkillsSettings;
76
+ }
77
+ /**
78
+ * Partial settings for updates
79
+ */
80
+ export interface UpdateSettingsInput {
81
+ /** Partial general settings */
82
+ general?: Partial<GeneralSettings>;
83
+ /** Partial chat settings */
84
+ chat?: Partial<ChatSettings>;
85
+ /** Partial skills settings */
86
+ skills?: Partial<SkillsSettings>;
87
+ }
88
+ /**
89
+ * Settings validation result
90
+ */
91
+ export interface SettingsValidationResult {
92
+ /** Whether the settings are valid */
93
+ valid: boolean;
94
+ /** Array of validation error messages */
95
+ errors: string[];
96
+ }
97
+ /**
98
+ * Minimum values for numeric settings
99
+ */
100
+ export declare const SETTINGS_CONSTRAINTS: {
101
+ readonly MIN_CHECK_IN_INTERVAL: 1;
102
+ readonly MIN_MAX_CONCURRENT_AGENTS: 1;
103
+ readonly MIN_MAX_MESSAGE_HISTORY: 10;
104
+ readonly MIN_SKILL_EXECUTION_TIMEOUT: 1000;
105
+ };
106
+ /**
107
+ * Type guard to check if a string is a valid AI runtime
108
+ *
109
+ * @param value - The string to check
110
+ * @returns True if the value is a valid AI runtime
111
+ *
112
+ * @example
113
+ * ```typescript
114
+ * if (isValidAIRuntime(input)) {
115
+ * // input is typed as AIRuntime
116
+ * }
117
+ * ```
118
+ */
119
+ export declare function isValidAIRuntime(value: string): value is AIRuntime;
120
+ /**
121
+ * Get default settings with all sensible values
122
+ *
123
+ * @returns Complete Crewly settings with default values
124
+ *
125
+ * @example
126
+ * ```typescript
127
+ * const defaults = getDefaultSettings();
128
+ * console.log(defaults.general.defaultRuntime); // 'claude-code'
129
+ * ```
130
+ */
131
+ export declare function getDefaultSettings(): CrewlySettings;
132
+ /**
133
+ * Validate settings and return validation result
134
+ *
135
+ * @param settings - The settings to validate
136
+ * @returns Validation result with valid flag and any errors
137
+ *
138
+ * @example
139
+ * ```typescript
140
+ * const result = validateSettings(settings);
141
+ * if (!result.valid) {
142
+ * console.error('Validation errors:', result.errors);
143
+ * }
144
+ * ```
145
+ */
146
+ export declare function validateSettings(settings: CrewlySettings): SettingsValidationResult;
147
+ /**
148
+ * Deep merge settings with partial updates
149
+ *
150
+ * Creates a new settings object without modifying the originals.
151
+ *
152
+ * @param existing - The existing settings
153
+ * @param updates - Partial updates to apply
154
+ * @returns New settings object with updates applied
155
+ *
156
+ * @example
157
+ * ```typescript
158
+ * const updated = mergeSettings(current, {
159
+ * general: { defaultRuntime: 'gemini-cli' },
160
+ * });
161
+ * ```
162
+ */
163
+ export declare function mergeSettings(existing: CrewlySettings, updates: UpdateSettingsInput): CrewlySettings;
164
+ /**
165
+ * Check if a partial settings object has any defined values
166
+ *
167
+ * @param settings - The partial settings to check
168
+ * @returns True if any section has defined values
169
+ */
170
+ export declare function hasSettingsUpdates(settings: UpdateSettingsInput): boolean;
171
+ /**
172
+ * Get the display name for an AI runtime
173
+ *
174
+ * @param runtime - The AI runtime
175
+ * @returns Human-readable display name
176
+ */
177
+ export declare function getAIRuntimeDisplayName(runtime: AIRuntime): string;
178
+ //# sourceMappingURL=settings.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.types.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/settings.types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,YAAY,GAAG,WAAW,CAAC;AAEnE;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,SAAS,SAAS,EAIlC,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,wCAAwC;IACxC,cAAc,EAAE,SAAS,CAAC;IAE1B,mEAAmE;IACnE,qBAAqB,EAAE,OAAO,CAAC;IAE/B,yCAAyC;IACzC,sBAAsB,EAAE,MAAM,CAAC;IAE/B,wCAAwC;IACxC,mBAAmB,EAAE,MAAM,CAAC;IAE5B,6BAA6B;IAC7B,cAAc,EAAE,OAAO,CAAC;IAExB,uDAAuD;IACvD,mBAAmB,EAAE,OAAO,CAAC;IAE7B,oFAAoF;IACpF,eAAe,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAE3C,sFAAsF;IACtF,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,gDAAgD;IAChD,qBAAqB,EAAE,OAAO,CAAC;IAE/B,uDAAuD;IACvD,qBAAqB,EAAE,OAAO,CAAC;IAE/B,oDAAoD;IACpD,iBAAiB,EAAE,MAAM,CAAC;IAE1B,qCAAqC;IACrC,kBAAkB,EAAE,OAAO,CAAC;IAE5B,kCAAkC;IAClC,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,mCAAmC;IACnC,eAAe,EAAE,MAAM,CAAC;IAExB,6CAA6C;IAC7C,uBAAuB,EAAE,OAAO,CAAC;IAEjC,8BAA8B;IAC9B,qBAAqB,EAAE,OAAO,CAAC;IAE/B,kDAAkD;IAClD,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,mCAAmC;IACnC,OAAO,EAAE,eAAe,CAAC;IAEzB,8BAA8B;IAC9B,IAAI,EAAE,YAAY,CAAC;IAEnB,6BAA6B;IAC7B,MAAM,EAAE,cAAc,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,+BAA+B;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAEnC,4BAA4B;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAE7B,8BAA8B;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,qCAAqC;IACrC,KAAK,EAAE,OAAO,CAAC;IAEf,yCAAyC;IACzC,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAMD;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;CAKvB,CAAC;AAMX;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,SAAS,CAElE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,IAAI,cAAc,CA8BnD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,cAAc,GAAG,wBAAwB,CAoDnF;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,mBAAmB,GAC3B,cAAc,CAMhB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,OAAO,CAWzE;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,SAAS,GAAG,MAAM,CAWlE"}
@@ -0,0 +1,206 @@
1
+ /**
2
+ * Settings Type Definitions
3
+ *
4
+ * Types for managing Crewly application settings including
5
+ * runtime preferences, chat settings, and skill configurations.
6
+ *
7
+ * @module types/settings.types
8
+ */
9
+ /**
10
+ * Array of all valid AI runtimes
11
+ */
12
+ export const AI_RUNTIMES = [
13
+ 'claude-code',
14
+ 'gemini-cli',
15
+ 'codex-cli',
16
+ ];
17
+ // ============================================================================
18
+ // Settings Constants
19
+ // ============================================================================
20
+ /**
21
+ * Minimum values for numeric settings
22
+ */
23
+ export const SETTINGS_CONSTRAINTS = {
24
+ MIN_CHECK_IN_INTERVAL: 1,
25
+ MIN_MAX_CONCURRENT_AGENTS: 1,
26
+ MIN_MAX_MESSAGE_HISTORY: 10,
27
+ MIN_SKILL_EXECUTION_TIMEOUT: 1000,
28
+ };
29
+ // ============================================================================
30
+ // Utility Functions
31
+ // ============================================================================
32
+ /**
33
+ * Type guard to check if a string is a valid AI runtime
34
+ *
35
+ * @param value - The string to check
36
+ * @returns True if the value is a valid AI runtime
37
+ *
38
+ * @example
39
+ * ```typescript
40
+ * if (isValidAIRuntime(input)) {
41
+ * // input is typed as AIRuntime
42
+ * }
43
+ * ```
44
+ */
45
+ export function isValidAIRuntime(value) {
46
+ return AI_RUNTIMES.includes(value);
47
+ }
48
+ /**
49
+ * Get default settings with all sensible values
50
+ *
51
+ * @returns Complete Crewly settings with default values
52
+ *
53
+ * @example
54
+ * ```typescript
55
+ * const defaults = getDefaultSettings();
56
+ * console.log(defaults.general.defaultRuntime); // 'claude-code'
57
+ * ```
58
+ */
59
+ export function getDefaultSettings() {
60
+ return {
61
+ general: {
62
+ defaultRuntime: 'claude-code',
63
+ autoStartOrchestrator: true,
64
+ checkInIntervalMinutes: 5,
65
+ maxConcurrentAgents: 10,
66
+ verboseLogging: false,
67
+ autoResumeOnRestart: true,
68
+ runtimeCommands: {
69
+ 'claude-code': 'claude --dangerously-skip-permissions',
70
+ 'gemini-cli': 'gemini --yolo',
71
+ 'codex-cli': 'codex --full-auto',
72
+ },
73
+ agentIdleTimeoutMinutes: 10,
74
+ },
75
+ chat: {
76
+ showRawTerminalOutput: false,
77
+ enableTypingIndicator: true,
78
+ maxMessageHistory: 1000,
79
+ autoScrollToBottom: true,
80
+ showTimestamps: true,
81
+ },
82
+ skills: {
83
+ skillsDirectory: '',
84
+ enableBrowserAutomation: true,
85
+ enableScriptExecution: true,
86
+ skillExecutionTimeoutMs: 60000,
87
+ },
88
+ };
89
+ }
90
+ /**
91
+ * Validate settings and return validation result
92
+ *
93
+ * @param settings - The settings to validate
94
+ * @returns Validation result with valid flag and any errors
95
+ *
96
+ * @example
97
+ * ```typescript
98
+ * const result = validateSettings(settings);
99
+ * if (!result.valid) {
100
+ * console.error('Validation errors:', result.errors);
101
+ * }
102
+ * ```
103
+ */
104
+ export function validateSettings(settings) {
105
+ const errors = [];
106
+ // Validate general settings
107
+ if (!isValidAIRuntime(settings.general.defaultRuntime)) {
108
+ errors.push(`Invalid default runtime: ${settings.general.defaultRuntime}`);
109
+ }
110
+ if (typeof settings.general.autoStartOrchestrator !== 'boolean') {
111
+ errors.push('autoStartOrchestrator must be a boolean');
112
+ }
113
+ if (typeof settings.general.autoResumeOnRestart !== 'boolean') {
114
+ errors.push('autoResumeOnRestart must be a boolean');
115
+ }
116
+ if (settings.general.checkInIntervalMinutes < SETTINGS_CONSTRAINTS.MIN_CHECK_IN_INTERVAL) {
117
+ errors.push(`Check-in interval must be at least ${SETTINGS_CONSTRAINTS.MIN_CHECK_IN_INTERVAL} minute`);
118
+ }
119
+ if (settings.general.maxConcurrentAgents < SETTINGS_CONSTRAINTS.MIN_MAX_CONCURRENT_AGENTS) {
120
+ errors.push(`Max concurrent agents must be at least ${SETTINGS_CONSTRAINTS.MIN_MAX_CONCURRENT_AGENTS}`);
121
+ }
122
+ if (typeof settings.general.agentIdleTimeoutMinutes === 'number' && settings.general.agentIdleTimeoutMinutes < 0) {
123
+ errors.push('agentIdleTimeoutMinutes must be >= 0 (0 disables idle suspension)');
124
+ }
125
+ // Validate runtimeCommands
126
+ if (settings.general.runtimeCommands) {
127
+ for (const runtime of AI_RUNTIMES) {
128
+ const cmd = settings.general.runtimeCommands[runtime];
129
+ if (typeof cmd !== 'string' || cmd.trim().length === 0) {
130
+ errors.push(`Runtime command for ${runtime} must be a non-empty string`);
131
+ }
132
+ }
133
+ }
134
+ // Validate chat settings
135
+ if (settings.chat.maxMessageHistory < SETTINGS_CONSTRAINTS.MIN_MAX_MESSAGE_HISTORY) {
136
+ errors.push(`Max message history must be at least ${SETTINGS_CONSTRAINTS.MIN_MAX_MESSAGE_HISTORY}`);
137
+ }
138
+ // Validate skills settings
139
+ if (settings.skills.skillExecutionTimeoutMs < SETTINGS_CONSTRAINTS.MIN_SKILL_EXECUTION_TIMEOUT) {
140
+ errors.push(`Skill execution timeout must be at least ${SETTINGS_CONSTRAINTS.MIN_SKILL_EXECUTION_TIMEOUT}ms`);
141
+ }
142
+ return {
143
+ valid: errors.length === 0,
144
+ errors,
145
+ };
146
+ }
147
+ /**
148
+ * Deep merge settings with partial updates
149
+ *
150
+ * Creates a new settings object without modifying the originals.
151
+ *
152
+ * @param existing - The existing settings
153
+ * @param updates - Partial updates to apply
154
+ * @returns New settings object with updates applied
155
+ *
156
+ * @example
157
+ * ```typescript
158
+ * const updated = mergeSettings(current, {
159
+ * general: { defaultRuntime: 'gemini-cli' },
160
+ * });
161
+ * ```
162
+ */
163
+ export function mergeSettings(existing, updates) {
164
+ return {
165
+ general: { ...existing.general, ...updates.general },
166
+ chat: { ...existing.chat, ...updates.chat },
167
+ skills: { ...existing.skills, ...updates.skills },
168
+ };
169
+ }
170
+ /**
171
+ * Check if a partial settings object has any defined values
172
+ *
173
+ * @param settings - The partial settings to check
174
+ * @returns True if any section has defined values
175
+ */
176
+ export function hasSettingsUpdates(settings) {
177
+ if (settings.general && Object.keys(settings.general).length > 0) {
178
+ return true;
179
+ }
180
+ if (settings.chat && Object.keys(settings.chat).length > 0) {
181
+ return true;
182
+ }
183
+ if (settings.skills && Object.keys(settings.skills).length > 0) {
184
+ return true;
185
+ }
186
+ return false;
187
+ }
188
+ /**
189
+ * Get the display name for an AI runtime
190
+ *
191
+ * @param runtime - The AI runtime
192
+ * @returns Human-readable display name
193
+ */
194
+ export function getAIRuntimeDisplayName(runtime) {
195
+ switch (runtime) {
196
+ case 'claude-code':
197
+ return 'Claude Code';
198
+ case 'gemini-cli':
199
+ return 'Gemini CLI';
200
+ case 'codex-cli':
201
+ return 'Codex CLI';
202
+ default:
203
+ return runtime;
204
+ }
205
+ }
206
+ //# sourceMappingURL=settings.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.types.js","sourceRoot":"","sources":["../../../../../backend/src/types/settings.types.ts"],"names":[],"mappings":"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"}