crewly 1.0.7 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (303) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +50 -3
  3. package/config/roles/architect/prompt.md +11 -0
  4. package/config/roles/backend-developer/prompt.md +11 -0
  5. package/config/roles/designer/prompt.md +11 -0
  6. package/config/roles/developer/prompt.md +18 -4
  7. package/config/roles/frontend-developer/prompt.md +11 -0
  8. package/config/roles/fullstack-dev/prompt.md +11 -0
  9. package/config/roles/generalist/prompt.md +11 -0
  10. package/config/roles/orchestrator/prompt.md +27 -0
  11. package/config/roles/product-manager/prompt.md +18 -4
  12. package/config/roles/qa/prompt.md +11 -0
  13. package/config/roles/qa-engineer/prompt.md +11 -0
  14. package/config/roles/sales/prompt.md +11 -0
  15. package/config/roles/support/prompt.md +11 -0
  16. package/config/roles/tpm/prompt.md +11 -0
  17. package/config/skills/orchestrator/complete-task/execute.sh +1 -0
  18. package/config/templates/agent-claude-md.md +16 -0
  19. package/config/templates/research-team.json +22 -0
  20. package/config/templates/startup-team.json +22 -0
  21. package/config/templates/web-dev-team.json +22 -0
  22. package/dist/backend/backend/src/constants.d.ts +61 -1
  23. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  24. package/dist/backend/backend/src/constants.js +65 -7
  25. package/dist/backend/backend/src/constants.js.map +1 -1
  26. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts +7 -0
  27. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts.map +1 -1
  28. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js +174 -4
  29. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js.map +1 -1
  30. package/dist/backend/backend/src/index.d.ts.map +1 -1
  31. package/dist/backend/backend/src/index.js +34 -0
  32. package/dist/backend/backend/src/index.js.map +1 -1
  33. package/dist/backend/backend/src/routes/modules/task-management.routes.d.ts.map +1 -1
  34. package/dist/backend/backend/src/routes/modules/task-management.routes.js +2 -0
  35. package/dist/backend/backend/src/routes/modules/task-management.routes.js.map +1 -1
  36. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +8 -0
  37. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  38. package/dist/backend/backend/src/services/agent/agent-registration.service.js +75 -17
  39. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  40. package/dist/backend/backend/src/services/agent/context-window-monitor.service.d.ts +222 -0
  41. package/dist/backend/backend/src/services/agent/context-window-monitor.service.d.ts.map +1 -0
  42. package/dist/backend/backend/src/services/agent/context-window-monitor.service.js +621 -0
  43. package/dist/backend/backend/src/services/agent/context-window-monitor.service.js.map +1 -0
  44. package/dist/backend/backend/src/services/index.d.ts +3 -0
  45. package/dist/backend/backend/src/services/index.d.ts.map +1 -1
  46. package/dist/backend/backend/src/services/index.js +5 -0
  47. package/dist/backend/backend/src/services/index.js.map +1 -1
  48. package/dist/backend/backend/src/services/mcp-client.d.ts +233 -0
  49. package/dist/backend/backend/src/services/mcp-client.d.ts.map +1 -0
  50. package/dist/backend/backend/src/services/mcp-client.js +297 -0
  51. package/dist/backend/backend/src/services/mcp-client.js.map +1 -0
  52. package/dist/backend/backend/src/services/mcp-server.d.ts +167 -0
  53. package/dist/backend/backend/src/services/mcp-server.d.ts.map +1 -0
  54. package/dist/backend/backend/src/services/mcp-server.js +586 -0
  55. package/dist/backend/backend/src/services/mcp-server.js.map +1 -0
  56. package/dist/backend/backend/src/services/messaging/message-queue.service.d.ts +2 -0
  57. package/dist/backend/backend/src/services/messaging/message-queue.service.d.ts.map +1 -1
  58. package/dist/backend/backend/src/services/messaging/message-queue.service.js +6 -1
  59. package/dist/backend/backend/src/services/messaging/message-queue.service.js.map +1 -1
  60. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts +10 -0
  61. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  62. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +94 -38
  63. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  64. package/dist/backend/backend/src/services/quality/index.d.ts +1 -0
  65. package/dist/backend/backend/src/services/quality/index.d.ts.map +1 -1
  66. package/dist/backend/backend/src/services/quality/index.js +1 -0
  67. package/dist/backend/backend/src/services/quality/index.js.map +1 -1
  68. package/dist/backend/backend/src/services/quality/task-output-validator.service.d.ts +84 -0
  69. package/dist/backend/backend/src/services/quality/task-output-validator.service.d.ts.map +1 -0
  70. package/dist/backend/backend/src/services/quality/task-output-validator.service.js +163 -0
  71. package/dist/backend/backend/src/services/quality/task-output-validator.service.js.map +1 -0
  72. package/dist/backend/backend/src/services/runtime-adapter.d.ts +234 -0
  73. package/dist/backend/backend/src/services/runtime-adapter.d.ts.map +1 -0
  74. package/dist/backend/backend/src/services/runtime-adapter.js +180 -0
  75. package/dist/backend/backend/src/services/runtime-adapter.js.map +1 -0
  76. package/dist/backend/backend/src/types/event-bus.types.d.ts +2 -2
  77. package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
  78. package/dist/backend/backend/src/types/event-bus.types.js +2 -0
  79. package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
  80. package/dist/backend/backend/src/types/index.d.ts +1 -0
  81. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  82. package/dist/backend/backend/src/types/index.js +2 -0
  83. package/dist/backend/backend/src/types/index.js.map +1 -1
  84. package/dist/backend/backend/src/types/messaging.types.d.ts +9 -6
  85. package/dist/backend/backend/src/types/messaging.types.d.ts.map +1 -1
  86. package/dist/backend/backend/src/types/messaging.types.js +10 -3
  87. package/dist/backend/backend/src/types/messaging.types.js.map +1 -1
  88. package/dist/backend/backend/src/types/task-output.types.d.ts +78 -0
  89. package/dist/backend/backend/src/types/task-output.types.d.ts.map +1 -0
  90. package/dist/backend/backend/src/types/task-output.types.js +27 -0
  91. package/dist/backend/backend/src/types/task-output.types.js.map +1 -0
  92. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts +13 -0
  93. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts.map +1 -1
  94. package/dist/backend/backend/src/websocket/terminal.gateway.js +12 -0
  95. package/dist/backend/backend/src/websocket/terminal.gateway.js.map +1 -1
  96. package/dist/cli/backend/src/constants.d.ts +751 -0
  97. package/dist/cli/backend/src/constants.d.ts.map +1 -0
  98. package/dist/cli/backend/src/constants.js +550 -0
  99. package/dist/cli/backend/src/constants.js.map +1 -0
  100. package/dist/cli/backend/src/models/Project.d.ts +18 -0
  101. package/dist/cli/backend/src/models/Project.d.ts.map +1 -0
  102. package/dist/cli/backend/src/models/Project.js +70 -0
  103. package/dist/cli/backend/src/models/Project.js.map +1 -0
  104. package/dist/cli/backend/src/models/ScheduledMessage.d.ts +27 -0
  105. package/dist/cli/backend/src/models/ScheduledMessage.d.ts.map +1 -0
  106. package/dist/cli/backend/src/models/ScheduledMessage.js +50 -0
  107. package/dist/cli/backend/src/models/ScheduledMessage.js.map +1 -0
  108. package/dist/cli/backend/src/models/Team.d.ts +20 -0
  109. package/dist/cli/backend/src/models/Team.d.ts.map +1 -0
  110. package/dist/cli/backend/src/models/Team.js +120 -0
  111. package/dist/cli/backend/src/models/Team.js.map +1 -0
  112. package/dist/cli/backend/src/models/Ticket.d.ts +24 -0
  113. package/dist/cli/backend/src/models/Ticket.d.ts.map +1 -0
  114. package/dist/cli/backend/src/models/Ticket.js +102 -0
  115. package/dist/cli/backend/src/models/Ticket.js.map +1 -0
  116. package/dist/cli/backend/src/models/index.d.ts +5 -0
  117. package/dist/cli/backend/src/models/index.d.ts.map +1 -0
  118. package/dist/cli/backend/src/models/index.js +5 -0
  119. package/dist/cli/backend/src/models/index.js.map +1 -0
  120. package/dist/cli/backend/src/services/core/config.service.d.ts +91 -0
  121. package/dist/cli/backend/src/services/core/config.service.d.ts.map +1 -0
  122. package/dist/cli/backend/src/services/core/config.service.js +246 -0
  123. package/dist/cli/backend/src/services/core/config.service.js.map +1 -0
  124. package/dist/cli/backend/src/services/core/logger.service.d.ts +70 -0
  125. package/dist/cli/backend/src/services/core/logger.service.d.ts.map +1 -0
  126. package/dist/cli/backend/src/services/core/logger.service.js +350 -0
  127. package/dist/cli/backend/src/services/core/logger.service.js.map +1 -0
  128. package/dist/cli/backend/src/services/core/storage.service.d.ts +269 -0
  129. package/dist/cli/backend/src/services/core/storage.service.d.ts.map +1 -0
  130. package/dist/cli/backend/src/services/core/storage.service.js +1406 -0
  131. package/dist/cli/backend/src/services/core/storage.service.js.map +1 -0
  132. package/dist/cli/backend/src/services/core/teams-backup.service.d.ts +92 -0
  133. package/dist/cli/backend/src/services/core/teams-backup.service.d.ts.map +1 -0
  134. package/dist/cli/backend/src/services/core/teams-backup.service.js +120 -0
  135. package/dist/cli/backend/src/services/core/teams-backup.service.js.map +1 -0
  136. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.d.ts +125 -0
  137. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.d.ts.map +1 -0
  138. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.js +247 -0
  139. package/dist/cli/backend/src/services/knowledge/knowledge-search.service.js.map +1 -0
  140. package/dist/cli/backend/src/services/knowledge/knowledge.service.d.ts +153 -0
  141. package/dist/cli/backend/src/services/knowledge/knowledge.service.d.ts.map +1 -0
  142. package/dist/cli/backend/src/services/knowledge/knowledge.service.js +409 -0
  143. package/dist/cli/backend/src/services/knowledge/knowledge.service.js.map +1 -0
  144. package/dist/cli/backend/src/services/mcp-server.d.ts +167 -0
  145. package/dist/cli/backend/src/services/mcp-server.d.ts.map +1 -0
  146. package/dist/cli/backend/src/services/mcp-server.js +586 -0
  147. package/dist/cli/backend/src/services/mcp-server.js.map +1 -0
  148. package/dist/cli/backend/src/services/memory/agent-memory.service.d.ts +259 -0
  149. package/dist/cli/backend/src/services/memory/agent-memory.service.d.ts.map +1 -0
  150. package/dist/cli/backend/src/services/memory/agent-memory.service.js +539 -0
  151. package/dist/cli/backend/src/services/memory/agent-memory.service.js.map +1 -0
  152. package/dist/cli/backend/src/services/memory/memory.service.d.ts +306 -0
  153. package/dist/cli/backend/src/services/memory/memory.service.d.ts.map +1 -0
  154. package/dist/cli/backend/src/services/memory/memory.service.js +517 -0
  155. package/dist/cli/backend/src/services/memory/memory.service.js.map +1 -0
  156. package/dist/cli/backend/src/services/memory/project-memory.service.d.ts +252 -0
  157. package/dist/cli/backend/src/services/memory/project-memory.service.d.ts.map +1 -0
  158. package/dist/cli/backend/src/services/memory/project-memory.service.js +600 -0
  159. package/dist/cli/backend/src/services/memory/project-memory.service.js.map +1 -0
  160. package/dist/cli/backend/src/types/auto-assign.types.d.ts +271 -0
  161. package/dist/cli/backend/src/types/auto-assign.types.d.ts.map +1 -0
  162. package/dist/cli/backend/src/types/auto-assign.types.js +136 -0
  163. package/dist/cli/backend/src/types/auto-assign.types.js.map +1 -0
  164. package/dist/cli/backend/src/types/budget.types.d.ts +217 -0
  165. package/dist/cli/backend/src/types/budget.types.d.ts.map +1 -0
  166. package/dist/cli/backend/src/types/budget.types.js +82 -0
  167. package/dist/cli/backend/src/types/budget.types.js.map +1 -0
  168. package/dist/cli/backend/src/types/chat.types.d.ts +550 -0
  169. package/dist/cli/backend/src/types/chat.types.d.ts.map +1 -0
  170. package/dist/cli/backend/src/types/chat.types.js +743 -0
  171. package/dist/cli/backend/src/types/chat.types.js.map +1 -0
  172. package/dist/cli/backend/src/types/continuation.types.d.ts +237 -0
  173. package/dist/cli/backend/src/types/continuation.types.d.ts.map +1 -0
  174. package/dist/cli/backend/src/types/continuation.types.js +10 -0
  175. package/dist/cli/backend/src/types/continuation.types.js.map +1 -0
  176. package/dist/cli/backend/src/types/index.d.ts +164 -0
  177. package/dist/cli/backend/src/types/index.d.ts.map +1 -0
  178. package/dist/cli/backend/src/types/index.js +25 -0
  179. package/dist/cli/backend/src/types/index.js.map +1 -0
  180. package/dist/cli/backend/src/types/knowledge.types.d.ts +195 -0
  181. package/dist/cli/backend/src/types/knowledge.types.d.ts.map +1 -0
  182. package/dist/cli/backend/src/types/knowledge.types.js +38 -0
  183. package/dist/cli/backend/src/types/knowledge.types.js.map +1 -0
  184. package/dist/cli/backend/src/types/memory.types.d.ts +587 -0
  185. package/dist/cli/backend/src/types/memory.types.d.ts.map +1 -0
  186. package/dist/cli/backend/src/types/memory.types.js +47 -0
  187. package/dist/cli/backend/src/types/memory.types.js.map +1 -0
  188. package/dist/cli/backend/src/types/quality-gate.types.d.ts +171 -0
  189. package/dist/cli/backend/src/types/quality-gate.types.d.ts.map +1 -0
  190. package/dist/cli/backend/src/types/quality-gate.types.js +42 -0
  191. package/dist/cli/backend/src/types/quality-gate.types.js.map +1 -0
  192. package/dist/cli/backend/src/types/role.types.d.ts +260 -0
  193. package/dist/cli/backend/src/types/role.types.d.ts.map +1 -0
  194. package/dist/cli/backend/src/types/role.types.js +238 -0
  195. package/dist/cli/backend/src/types/role.types.js.map +1 -0
  196. package/dist/cli/backend/src/types/scheduler.types.d.ts +254 -0
  197. package/dist/cli/backend/src/types/scheduler.types.d.ts.map +1 -0
  198. package/dist/cli/backend/src/types/scheduler.types.js +32 -0
  199. package/dist/cli/backend/src/types/scheduler.types.js.map +1 -0
  200. package/dist/cli/backend/src/types/settings.types.d.ts +178 -0
  201. package/dist/cli/backend/src/types/settings.types.d.ts.map +1 -0
  202. package/dist/cli/backend/src/types/settings.types.js +206 -0
  203. package/dist/cli/backend/src/types/settings.types.js.map +1 -0
  204. package/dist/cli/backend/src/types/skill.types.d.ts +515 -0
  205. package/dist/cli/backend/src/types/skill.types.d.ts.map +1 -0
  206. package/dist/cli/backend/src/types/skill.types.js +481 -0
  207. package/dist/cli/backend/src/types/skill.types.js.map +1 -0
  208. package/dist/cli/backend/src/types/sop.types.d.ts +224 -0
  209. package/dist/cli/backend/src/types/sop.types.d.ts.map +1 -0
  210. package/dist/cli/backend/src/types/sop.types.js +85 -0
  211. package/dist/cli/backend/src/types/sop.types.js.map +1 -0
  212. package/dist/cli/backend/src/types/task-output.types.d.ts +78 -0
  213. package/dist/cli/backend/src/types/task-output.types.d.ts.map +1 -0
  214. package/dist/cli/backend/src/types/task-output.types.js +27 -0
  215. package/dist/cli/backend/src/types/task-output.types.js.map +1 -0
  216. package/dist/cli/backend/src/utils/file-io.utils.d.ts +102 -0
  217. package/dist/cli/backend/src/utils/file-io.utils.d.ts.map +1 -0
  218. package/dist/cli/backend/src/utils/file-io.utils.js +214 -0
  219. package/dist/cli/backend/src/utils/file-io.utils.js.map +1 -0
  220. package/dist/cli/backend/src/utils/terminal-output.utils.d.ts +54 -0
  221. package/dist/cli/backend/src/utils/terminal-output.utils.d.ts.map +1 -0
  222. package/dist/cli/backend/src/utils/terminal-output.utils.js +97 -0
  223. package/dist/cli/backend/src/utils/terminal-output.utils.js.map +1 -0
  224. package/dist/cli/cli/src/commands/mcp-server.d.ts +38 -0
  225. package/dist/cli/cli/src/commands/mcp-server.d.ts.map +1 -0
  226. package/dist/cli/cli/src/commands/mcp-server.js +49 -0
  227. package/dist/cli/cli/src/commands/mcp-server.js.map +1 -0
  228. package/dist/cli/cli/src/commands/onboard.d.ts +61 -7
  229. package/dist/cli/cli/src/commands/onboard.d.ts.map +1 -1
  230. package/dist/cli/cli/src/commands/onboard.js +192 -19
  231. package/dist/cli/cli/src/commands/onboard.js.map +1 -1
  232. package/dist/cli/cli/src/commands/publish.d.ts +27 -0
  233. package/dist/cli/cli/src/commands/publish.d.ts.map +1 -0
  234. package/dist/cli/cli/src/commands/publish.js +69 -0
  235. package/dist/cli/cli/src/commands/publish.js.map +1 -0
  236. package/dist/cli/cli/src/index.js +14 -0
  237. package/dist/cli/cli/src/index.js.map +1 -1
  238. package/dist/cli/cli/src/utils/archive-creator.d.ts +82 -0
  239. package/dist/cli/cli/src/utils/archive-creator.d.ts.map +1 -0
  240. package/dist/cli/cli/src/utils/archive-creator.js +105 -0
  241. package/dist/cli/cli/src/utils/archive-creator.js.map +1 -0
  242. package/dist/cli/cli/src/utils/package-validator.d.ts +62 -0
  243. package/dist/cli/cli/src/utils/package-validator.d.ts.map +1 -0
  244. package/dist/cli/cli/src/utils/package-validator.js +122 -0
  245. package/dist/cli/cli/src/utils/package-validator.js.map +1 -0
  246. package/dist/cli/cli/src/utils/templates.d.ts +71 -0
  247. package/dist/cli/cli/src/utils/templates.d.ts.map +1 -0
  248. package/dist/cli/cli/src/utils/templates.js +91 -0
  249. package/dist/cli/cli/src/utils/templates.js.map +1 -0
  250. package/frontend/dist/assets/{index-523c7fce.js → index-68d1eb5a.js} +71 -71
  251. package/frontend/dist/assets/{index-4c050f52.css → index-c5043a83.css} +1 -1
  252. package/frontend/dist/assets/nunito-cyrillic-400-normal-e44e669f.woff2 +0 -0
  253. package/frontend/dist/assets/nunito-cyrillic-400-normal-ff8e8bdd.woff +0 -0
  254. package/frontend/dist/assets/nunito-cyrillic-500-normal-2159679b.woff +0 -0
  255. package/frontend/dist/assets/nunito-cyrillic-500-normal-61a3b80e.woff2 +0 -0
  256. package/frontend/dist/assets/nunito-cyrillic-600-normal-ac046097.woff +0 -0
  257. package/frontend/dist/assets/nunito-cyrillic-600-normal-e61eb97b.woff2 +0 -0
  258. package/frontend/dist/assets/nunito-cyrillic-700-normal-8fcefcc9.woff2 +0 -0
  259. package/frontend/dist/assets/nunito-cyrillic-700-normal-b9684104.woff +0 -0
  260. package/frontend/dist/assets/nunito-cyrillic-800-normal-40253beb.woff +0 -0
  261. package/frontend/dist/assets/nunito-cyrillic-800-normal-d80292de.woff2 +0 -0
  262. package/frontend/dist/assets/nunito-cyrillic-ext-400-normal-20d73ae7.woff2 +0 -0
  263. package/frontend/dist/assets/nunito-cyrillic-ext-400-normal-d48c37c9.woff +0 -0
  264. package/frontend/dist/assets/nunito-cyrillic-ext-500-normal-16197abd.woff +0 -0
  265. package/frontend/dist/assets/nunito-cyrillic-ext-500-normal-9dcfe9b5.woff2 +0 -0
  266. package/frontend/dist/assets/nunito-cyrillic-ext-600-normal-d53e9851.woff2 +0 -0
  267. package/frontend/dist/assets/nunito-cyrillic-ext-600-normal-e3d0201f.woff +0 -0
  268. package/frontend/dist/assets/nunito-cyrillic-ext-700-normal-5936f6ac.woff2 +0 -0
  269. package/frontend/dist/assets/nunito-cyrillic-ext-700-normal-c8c02775.woff +0 -0
  270. package/frontend/dist/assets/nunito-cyrillic-ext-800-normal-217b8f51.woff +0 -0
  271. package/frontend/dist/assets/nunito-cyrillic-ext-800-normal-796cf7bd.woff2 +0 -0
  272. package/frontend/dist/assets/nunito-latin-400-normal-a5906e15.woff2 +0 -0
  273. package/frontend/dist/assets/nunito-latin-400-normal-b51e7635.woff +0 -0
  274. package/frontend/dist/assets/nunito-latin-500-normal-23ae3083.woff2 +0 -0
  275. package/frontend/dist/assets/nunito-latin-500-normal-be14dbc6.woff +0 -0
  276. package/frontend/dist/assets/nunito-latin-600-normal-06a9c8b3.woff +0 -0
  277. package/frontend/dist/assets/nunito-latin-600-normal-45f437de.woff2 +0 -0
  278. package/frontend/dist/assets/nunito-latin-700-normal-ce9107dc.woff +0 -0
  279. package/frontend/dist/assets/nunito-latin-700-normal-fa89300b.woff2 +0 -0
  280. package/frontend/dist/assets/nunito-latin-800-normal-0ca02785.woff +0 -0
  281. package/frontend/dist/assets/nunito-latin-800-normal-2363d3ed.woff2 +0 -0
  282. package/frontend/dist/assets/nunito-latin-ext-400-normal-67250a41.woff2 +0 -0
  283. package/frontend/dist/assets/nunito-latin-ext-400-normal-d7e2415e.woff +0 -0
  284. package/frontend/dist/assets/nunito-latin-ext-500-normal-06f35d1c.woff +0 -0
  285. package/frontend/dist/assets/nunito-latin-ext-500-normal-343e7adc.woff2 +0 -0
  286. package/frontend/dist/assets/nunito-latin-ext-600-normal-5a8efd17.woff +0 -0
  287. package/frontend/dist/assets/nunito-latin-ext-600-normal-a7ba5f4f.woff2 +0 -0
  288. package/frontend/dist/assets/nunito-latin-ext-700-normal-0a4e4a02.woff2 +0 -0
  289. package/frontend/dist/assets/nunito-latin-ext-700-normal-0c607961.woff +0 -0
  290. package/frontend/dist/assets/nunito-latin-ext-800-normal-39f54b55.woff2 +0 -0
  291. package/frontend/dist/assets/nunito-latin-ext-800-normal-466d0211.woff +0 -0
  292. package/frontend/dist/assets/nunito-vietnamese-400-normal-2a755616.woff2 +0 -0
  293. package/frontend/dist/assets/nunito-vietnamese-400-normal-9c01ea9f.woff +0 -0
  294. package/frontend/dist/assets/nunito-vietnamese-500-normal-452e5e08.woff +0 -0
  295. package/frontend/dist/assets/nunito-vietnamese-500-normal-dc98d965.woff2 +0 -0
  296. package/frontend/dist/assets/nunito-vietnamese-600-normal-2ffbb85f.woff +0 -0
  297. package/frontend/dist/assets/nunito-vietnamese-600-normal-cf95b95d.woff2 +0 -0
  298. package/frontend/dist/assets/nunito-vietnamese-700-normal-0e29c28c.woff2 +0 -0
  299. package/frontend/dist/assets/nunito-vietnamese-700-normal-7793b75e.woff +0 -0
  300. package/frontend/dist/assets/nunito-vietnamese-800-normal-5baf507e.woff +0 -0
  301. package/frontend/dist/assets/nunito-vietnamese-800-normal-fac6740e.woff2 +0 -0
  302. package/frontend/dist/index.html +2 -2
  303. package/package.json +15 -5
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Budget Service Type Definitions
3
+ *
4
+ * Types for API usage tracking and budget management.
5
+ *
6
+ * @module types/budget.types
7
+ */
8
+ // ======================
9
+ // Constants
10
+ // ======================
11
+ /**
12
+ * Budget-related constants
13
+ */
14
+ export const BUDGET_CONSTANTS = {
15
+ /** Default configuration values */
16
+ DEFAULTS: {
17
+ DAILY_LIMIT: 50.0,
18
+ WEEKLY_LIMIT: 200.0,
19
+ MONTHLY_LIMIT: 500.0,
20
+ WARNING_THRESHOLD: 0.8,
21
+ MAX_TOKENS_PER_TASK: 100000,
22
+ },
23
+ /** Token cost rates by model (USD per token) */
24
+ TOKEN_COSTS: {
25
+ 'claude-3-opus': { input: 0.000015, output: 0.000075 },
26
+ 'claude-3-5-sonnet': { input: 0.000003, output: 0.000015 },
27
+ 'claude-3-sonnet': { input: 0.000003, output: 0.000015 },
28
+ 'claude-3-haiku': { input: 0.00000025, output: 0.00000125 },
29
+ 'claude-opus-4': { input: 0.000015, output: 0.000075 },
30
+ 'claude-sonnet-4': { input: 0.000003, output: 0.000015 },
31
+ default: { input: 0.000003, output: 0.000015 },
32
+ },
33
+ /** File paths */
34
+ PATHS: {
35
+ USAGE_DIR: 'usage',
36
+ BUDGETS_FILE: 'budgets.json',
37
+ BUDGETS_YAML_FILE: 'budgets.yaml',
38
+ },
39
+ /** Operation types */
40
+ OPERATIONS: {
41
+ TASK: 'task',
42
+ CONTINUATION: 'continuation',
43
+ MEMORY: 'memory',
44
+ SOP: 'sop',
45
+ QUALITY_GATE: 'quality_gate',
46
+ PROMPT_BUILDING: 'prompt_building',
47
+ OTHER: 'other',
48
+ },
49
+ };
50
+ /**
51
+ * Default global budget configuration
52
+ */
53
+ export const DEFAULT_BUDGET_CONFIG = {
54
+ scope: 'global',
55
+ scopeId: 'global',
56
+ dailyLimit: BUDGET_CONSTANTS.DEFAULTS.DAILY_LIMIT,
57
+ weeklyLimit: BUDGET_CONSTANTS.DEFAULTS.WEEKLY_LIMIT,
58
+ monthlyLimit: BUDGET_CONSTANTS.DEFAULTS.MONTHLY_LIMIT,
59
+ maxTokensPerTask: BUDGET_CONSTANTS.DEFAULTS.MAX_TOKENS_PER_TASK,
60
+ warningThreshold: BUDGET_CONSTANTS.DEFAULTS.WARNING_THRESHOLD,
61
+ };
62
+ /**
63
+ * All budget operation types
64
+ */
65
+ export const ALL_BUDGET_OPERATIONS = [
66
+ 'task',
67
+ 'continuation',
68
+ 'memory',
69
+ 'sop',
70
+ 'quality_gate',
71
+ 'prompt_building',
72
+ 'other',
73
+ ];
74
+ /**
75
+ * All budget scopes
76
+ */
77
+ export const ALL_BUDGET_SCOPES = ['global', 'project', 'agent'];
78
+ /**
79
+ * All budget periods
80
+ */
81
+ export const ALL_BUDGET_PERIODS = ['day', 'week', 'month'];
82
+ //# sourceMappingURL=budget.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budget.types.js","sourceRoot":"","sources":["../../../../../backend/src/types/budget.types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAyLH,yBAAyB;AACzB,YAAY;AACZ,yBAAyB;AAEzB;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,mCAAmC;IACnC,QAAQ,EAAE;QACR,WAAW,EAAE,IAAI;QACjB,YAAY,EAAE,KAAK;QACnB,aAAa,EAAE,KAAK;QACpB,iBAAiB,EAAE,GAAG;QACtB,mBAAmB,EAAE,MAAM;KAC5B;IAED,gDAAgD;IAChD,WAAW,EAAE;QACX,eAAe,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;QACtD,mBAAmB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;QAC1D,iBAAiB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;QACxD,gBAAgB,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE;QAC3D,eAAe,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;QACtD,iBAAiB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;QACxD,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;KACb;IAEnC,iBAAiB;IACjB,KAAK,EAAE;QACL,SAAS,EAAE,OAAO;QAClB,YAAY,EAAE,cAAc;QAC5B,iBAAiB,EAAE,cAAc;KAClC;IAED,sBAAsB;IACtB,UAAU,EAAE;QACV,IAAI,EAAE,MAA6B;QACnC,YAAY,EAAE,cAAqC;QACnD,MAAM,EAAE,QAA+B;QACvC,GAAG,EAAE,KAA4B;QACjC,YAAY,EAAE,cAAqC;QACnD,eAAe,EAAE,iBAAwC;QACzD,KAAK,EAAE,OAA8B;KACtC;CACO,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAiB;IACjD,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,QAAQ;IACjB,UAAU,EAAE,gBAAgB,CAAC,QAAQ,CAAC,WAAW;IACjD,WAAW,EAAE,gBAAgB,CAAC,QAAQ,CAAC,YAAY;IACnD,YAAY,EAAE,gBAAgB,CAAC,QAAQ,CAAC,aAAa;IACrD,gBAAgB,EAAE,gBAAgB,CAAC,QAAQ,CAAC,mBAAmB;IAC/D,gBAAgB,EAAE,gBAAgB,CAAC,QAAQ,CAAC,iBAAiB;CAC9D,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAA0B;IAC1D,MAAM;IACN,cAAc;IACd,QAAQ;IACR,KAAK;IACL,cAAc;IACd,iBAAiB;IACjB,OAAO;CACR,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAkB,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC"}
@@ -0,0 +1,550 @@
1
+ /**
2
+ * Chat Types Module
3
+ *
4
+ * Type definitions for the chat-based dashboard. Provides a conversational
5
+ * interface with the Orchestrator, transforming raw terminal output into
6
+ * clean, formatted chat messages.
7
+ *
8
+ * @module types/chat
9
+ */
10
+ /**
11
+ * Valid sender types for chat messages
12
+ */
13
+ export declare const CHAT_SENDER_TYPES: readonly ["user", "orchestrator", "agent", "system"];
14
+ /**
15
+ * Valid content types for chat messages
16
+ */
17
+ export declare const CHAT_CONTENT_TYPES: readonly ["text", "status", "task", "error", "system", "code", "markdown"];
18
+ /**
19
+ * Valid message status values
20
+ */
21
+ export declare const CHAT_MESSAGE_STATUSES: readonly ["sending", "sent", "delivered", "error"];
22
+ /**
23
+ * Chat-related constants
24
+ */
25
+ export declare const CHAT_CONSTANTS: {
26
+ /** Default limits */
27
+ readonly DEFAULTS: {
28
+ /** Default message limit for pagination */
29
+ readonly MESSAGE_LIMIT: 100;
30
+ /** Default conversation limit for pagination */
31
+ readonly CONVERSATION_LIMIT: 50;
32
+ /** Maximum content length for last message preview */
33
+ readonly PREVIEW_LENGTH: 100;
34
+ };
35
+ /** Response extraction patterns */
36
+ readonly PATTERNS: {
37
+ /** Pattern names */
38
+ readonly EXPLICIT: "explicit";
39
+ readonly CHAT: "chat";
40
+ readonly CODEBLOCK: "codeblock";
41
+ };
42
+ };
43
+ /**
44
+ * Sender type for chat messages
45
+ */
46
+ export type ChatSenderType = (typeof CHAT_SENDER_TYPES)[number];
47
+ /**
48
+ * Message content type
49
+ */
50
+ export type ChatContentType = (typeof CHAT_CONTENT_TYPES)[number];
51
+ /**
52
+ * Message delivery status
53
+ */
54
+ export type ChatMessageStatus = (typeof CHAT_MESSAGE_STATUSES)[number];
55
+ /**
56
+ * Sender information for a chat message
57
+ */
58
+ export interface ChatSender {
59
+ /** Type of sender */
60
+ type: ChatSenderType;
61
+ /** ID of the agent/session if applicable */
62
+ id?: string;
63
+ /** Display name */
64
+ name?: string;
65
+ /** Role name if sender is an agent */
66
+ role?: string;
67
+ }
68
+ /**
69
+ * Valid Slack delivery statuses for NOTIFY reconciliation
70
+ */
71
+ export declare const SLACK_DELIVERY_STATUSES: readonly ["pending", "delivered", "failed"];
72
+ /**
73
+ * Slack delivery status type
74
+ */
75
+ export type SlackDeliveryStatus = (typeof SLACK_DELIVERY_STATUSES)[number];
76
+ /**
77
+ * Metadata attached to a chat message
78
+ */
79
+ export interface ChatMessageMetadata {
80
+ /** ID of skill used to generate this response */
81
+ skillUsed?: string;
82
+ /** ID of task created as a result of this message */
83
+ taskCreated?: string;
84
+ /** ID of project created */
85
+ projectCreated?: string;
86
+ /** Original raw terminal output (for debugging) */
87
+ rawOutput?: string;
88
+ /** Agent session ID that generated this message */
89
+ sessionId?: string;
90
+ /** Time taken to generate response in ms */
91
+ responseTimeMs?: number;
92
+ /** Slack delivery status for NOTIFY reconciliation */
93
+ slackDeliveryStatus?: SlackDeliveryStatus;
94
+ /** ISO timestamp of last Slack delivery attempt */
95
+ slackDeliveryAttemptedAt?: string;
96
+ /** Number of Slack delivery attempts */
97
+ slackDeliveryAttempts?: number;
98
+ /** Error message from last failed Slack delivery attempt */
99
+ slackDeliveryError?: string;
100
+ /** Slack channel ID for delivery/reconciliation */
101
+ slackChannelId?: string;
102
+ /** Slack thread timestamp for threaded replies */
103
+ slackThreadTs?: string;
104
+ /** NOTIFY type (e.g. task_completed, agent_error) */
105
+ notifyType?: string;
106
+ /** NOTIFY title header */
107
+ notifyTitle?: string;
108
+ /** NOTIFY urgency level */
109
+ notifyUrgency?: string;
110
+ /** Additional custom metadata */
111
+ [key: string]: unknown;
112
+ }
113
+ /**
114
+ * A single chat message
115
+ */
116
+ export interface ChatMessage {
117
+ /** Unique message ID */
118
+ id: string;
119
+ /** Conversation this message belongs to */
120
+ conversationId: string;
121
+ /** Sender information */
122
+ from: ChatSender;
123
+ /** Message content (may be markdown formatted) */
124
+ content: string;
125
+ /** Type of content */
126
+ contentType: ChatContentType;
127
+ /** Optional metadata */
128
+ metadata?: ChatMessageMetadata;
129
+ /** Delivery status */
130
+ status: ChatMessageStatus;
131
+ /** ISO timestamp */
132
+ timestamp: string;
133
+ /** Parent message ID for threading (optional) */
134
+ parentId?: string;
135
+ }
136
+ /**
137
+ * Last message preview in a conversation
138
+ */
139
+ export interface LastMessagePreview {
140
+ /** Truncated content preview */
141
+ content: string;
142
+ /** ISO timestamp of the message */
143
+ timestamp: string;
144
+ /** Sender information */
145
+ from: ChatSender;
146
+ }
147
+ /**
148
+ * A chat conversation (collection of messages)
149
+ */
150
+ export interface ChatConversation {
151
+ /** Unique conversation ID */
152
+ id: string;
153
+ /** Conversation title (auto-generated or user-set) */
154
+ title?: string;
155
+ /** IDs of participants (user, orchestrator, agents) */
156
+ participantIds: string[];
157
+ /** ISO timestamp of creation */
158
+ createdAt: string;
159
+ /** ISO timestamp of last update */
160
+ updatedAt: string;
161
+ /** Whether this conversation is archived */
162
+ isArchived: boolean;
163
+ /** Number of messages in conversation */
164
+ messageCount: number;
165
+ /** Last message preview */
166
+ lastMessage?: LastMessagePreview;
167
+ }
168
+ /**
169
+ * Input for sending a new message
170
+ */
171
+ export interface SendMessageInput {
172
+ /** Message content */
173
+ content: string;
174
+ /** Conversation ID (creates new if not provided) */
175
+ conversationId?: string;
176
+ /** Optional metadata to attach */
177
+ metadata?: Record<string, unknown>;
178
+ }
179
+ /**
180
+ * Response from sending a message
181
+ */
182
+ export interface SendMessageResult {
183
+ /** The sent message */
184
+ message: ChatMessage;
185
+ /** The conversation (may be newly created) */
186
+ conversation: ChatConversation;
187
+ }
188
+ /**
189
+ * Filter options for listing messages
190
+ */
191
+ export interface ChatMessageFilter {
192
+ /** Filter by conversation */
193
+ conversationId?: string;
194
+ /** Filter by sender type */
195
+ senderType?: ChatSenderType;
196
+ /** Filter by content type */
197
+ contentType?: ChatContentType;
198
+ /** Messages after this timestamp */
199
+ after?: string;
200
+ /** Messages before this timestamp */
201
+ before?: string;
202
+ /** Maximum number of messages to return */
203
+ limit?: number;
204
+ /** Offset for pagination */
205
+ offset?: number;
206
+ }
207
+ /**
208
+ * Filter options for listing conversations
209
+ */
210
+ export interface ConversationFilter {
211
+ /** Include archived conversations */
212
+ includeArchived?: boolean;
213
+ /** Search in title and messages */
214
+ search?: string;
215
+ /** Limit number of results */
216
+ limit?: number;
217
+ /** Offset for pagination */
218
+ offset?: number;
219
+ }
220
+ /**
221
+ * Response extraction pattern configuration
222
+ */
223
+ export interface ResponsePattern {
224
+ /** Pattern name for identification */
225
+ name: string;
226
+ /** Regex pattern to match */
227
+ pattern: RegExp;
228
+ /** Extraction group index (default 1) */
229
+ groupIndex?: number;
230
+ }
231
+ /**
232
+ * Chat message WebSocket event
233
+ */
234
+ export interface ChatMessageEvent {
235
+ type: 'chat_message';
236
+ data: ChatMessage;
237
+ }
238
+ /**
239
+ * Typing indicator WebSocket event
240
+ */
241
+ export interface ChatTypingEvent {
242
+ type: 'chat_typing';
243
+ data: {
244
+ conversationId: string;
245
+ sender: ChatSender;
246
+ isTyping: boolean;
247
+ };
248
+ }
249
+ /**
250
+ * Message status update WebSocket event
251
+ */
252
+ export interface ChatStatusEvent {
253
+ type: 'chat_status';
254
+ data: {
255
+ messageId: string;
256
+ status: ChatMessageStatus;
257
+ };
258
+ }
259
+ /**
260
+ * Conversation update WebSocket event
261
+ */
262
+ export interface ConversationUpdatedEvent {
263
+ type: 'conversation_updated';
264
+ data: ChatConversation;
265
+ }
266
+ /**
267
+ * Union type for all chat WebSocket events
268
+ */
269
+ export type ChatWebSocketEvent = ChatMessageEvent | ChatTypingEvent | ChatStatusEvent | ConversationUpdatedEvent;
270
+ /**
271
+ * Input for creating a chat message
272
+ */
273
+ export interface CreateChatMessageInput {
274
+ /** Conversation ID */
275
+ conversationId: string;
276
+ /** Message content */
277
+ content: string;
278
+ /** Sender information */
279
+ from: ChatSender;
280
+ /** Optional content type (defaults to 'text') */
281
+ contentType?: ChatContentType;
282
+ /** Optional status (defaults to 'sent') */
283
+ status?: ChatMessageStatus;
284
+ /** Optional metadata */
285
+ metadata?: ChatMessageMetadata;
286
+ /** Optional timestamp (defaults to now) */
287
+ timestamp?: string;
288
+ /** Optional parent message ID for threading */
289
+ parentId?: string;
290
+ }
291
+ /**
292
+ * Urgency levels for notifications
293
+ */
294
+ export declare const NOTIFY_URGENCY_LEVELS: readonly ["low", "normal", "high", "critical"];
295
+ /**
296
+ * Urgency level type
297
+ */
298
+ export type NotifyUrgency = (typeof NOTIFY_URGENCY_LEVELS)[number];
299
+ /**
300
+ * Unified notification payload from [NOTIFY]...[/NOTIFY] markers.
301
+ *
302
+ * The orchestrator outputs header+body content inside [NOTIFY] markers to route
303
+ * messages to chat, Slack, or both depending on which header fields are present:
304
+ * - `conversationId` present → route to chat UI
305
+ * - `channelId` present → route to Slack
306
+ * - Both → both (common case)
307
+ * - Neither + activeConversationId exists → fallback to chat
308
+ *
309
+ * Format:
310
+ * ```
311
+ * [NOTIFY]
312
+ * conversationId: conv-abc123
313
+ * channelId: D0AC7NF5N7L
314
+ * type: task_completed
315
+ * ---
316
+ * ## Message body here
317
+ * [/NOTIFY]
318
+ * ```
319
+ */
320
+ export interface NotifyPayload {
321
+ /** Required — markdown content for the notification */
322
+ message: string;
323
+ /** Route to chat UI conversation (copied from incoming [CHAT:convId]) */
324
+ conversationId?: string;
325
+ /** Route to Slack channel */
326
+ channelId?: string;
327
+ /** Slack thread timestamp for threaded replies */
328
+ threadTs?: string;
329
+ /** Notification type (e.g. task_completed, agent_error, project_update) */
330
+ type?: string;
331
+ /** Header text for Slack notifications */
332
+ title?: string;
333
+ /** Urgency level for notification routing */
334
+ urgency?: NotifyUrgency;
335
+ }
336
+ /**
337
+ * Check if a value is a valid NotifyPayload
338
+ *
339
+ * Validates that the payload has a required `message` string field
340
+ * and that optional fields have correct types when present.
341
+ *
342
+ * @param value - Value to check
343
+ * @returns True if value is a valid NotifyPayload
344
+ */
345
+ export declare function isValidNotifyPayload(value: unknown): value is NotifyPayload;
346
+ /**
347
+ * Parse raw content from a [NOTIFY]...[/NOTIFY] block into a NotifyPayload.
348
+ *
349
+ * Supports three formats:
350
+ * 1. **Header+body with `---`** (preferred): key-value headers before a `---` separator,
351
+ * with the message body after it. Headers are short (~25 chars), so they are
352
+ * never corrupted by PTY line-wrapping.
353
+ * 2. **Header+body with blank line** (fallback): same as above but with a blank
354
+ * line instead of `---`. Activated only when the first line is a known header.
355
+ * 3. **Legacy JSON** (fallback): if the content starts with `{`, it is parsed as
356
+ * JSON with PTY artifact cleanup for backward compatibility.
357
+ *
358
+ * @param raw - Raw content between [NOTIFY] and [/NOTIFY] markers
359
+ * @returns Parsed NotifyPayload or null if content is invalid
360
+ *
361
+ * @example
362
+ * ```typescript
363
+ * // Header+body format
364
+ * const payload = parseNotifyContent(
365
+ * 'conversationId: conv-abc\ntype: task_completed\n---\n## Done\nTask finished.'
366
+ * );
367
+ * // => { message: '## Done\nTask finished.', conversationId: 'conv-abc', type: 'task_completed' }
368
+ *
369
+ * // Legacy JSON format (auto-detected)
370
+ * const legacy = parseNotifyContent('{"message":"Hello","conversationId":"conv-1"}');
371
+ * // => { message: 'Hello', conversationId: 'conv-1' }
372
+ * ```
373
+ */
374
+ export declare function parseNotifyContent(raw: string): NotifyPayload | null;
375
+ /**
376
+ * Storage format for chat data
377
+ */
378
+ export interface ChatStorageFormat {
379
+ /** The conversation */
380
+ conversation: ChatConversation;
381
+ /** Messages in the conversation */
382
+ messages: ChatMessage[];
383
+ }
384
+ /**
385
+ * Check if a value is a valid sender type
386
+ *
387
+ * @param value - Value to check
388
+ * @returns True if value is a valid ChatSenderType
389
+ */
390
+ export declare function isValidSenderType(value: string): value is ChatSenderType;
391
+ /**
392
+ * Check if a value is a valid content type
393
+ *
394
+ * @param value - Value to check
395
+ * @returns True if value is a valid ChatContentType
396
+ */
397
+ export declare function isValidContentType(value: string): value is ChatContentType;
398
+ /**
399
+ * Check if a value is a valid message status
400
+ *
401
+ * @param value - Value to check
402
+ * @returns True if value is a valid ChatMessageStatus
403
+ */
404
+ export declare function isValidMessageStatus(value: string): value is ChatMessageStatus;
405
+ /**
406
+ * Check if an object is a valid ChatSender
407
+ *
408
+ * @param value - Value to check
409
+ * @returns True if value is a valid ChatSender object
410
+ */
411
+ export declare function isValidChatSender(value: unknown): value is ChatSender;
412
+ /**
413
+ * Check if an object is a valid ChatMessage
414
+ *
415
+ * @param value - Value to check
416
+ * @returns True if value is a valid ChatMessage object
417
+ */
418
+ export declare function isValidChatMessage(value: unknown): value is ChatMessage;
419
+ /**
420
+ * Check if an object is a valid ChatConversation
421
+ *
422
+ * @param value - Value to check
423
+ * @returns True if value is a valid ChatConversation object
424
+ */
425
+ export declare function isValidChatConversation(value: unknown): value is ChatConversation;
426
+ /**
427
+ * Generate a unique ID for chat entities
428
+ *
429
+ * @returns A unique identifier string
430
+ */
431
+ export declare function generateChatId(): string;
432
+ /**
433
+ * Create a chat message with defaults
434
+ *
435
+ * @param input - Partial message input with required fields
436
+ * @returns A complete ChatMessage object
437
+ *
438
+ * @example
439
+ * ```typescript
440
+ * const message = createChatMessage({
441
+ * conversationId: 'conv-1',
442
+ * content: 'Hello!',
443
+ * from: { type: 'user' },
444
+ * });
445
+ * ```
446
+ */
447
+ export declare function createChatMessage(input: CreateChatMessageInput): ChatMessage;
448
+ /**
449
+ * Create a conversation with defaults
450
+ *
451
+ * @param title - Optional title for the conversation
452
+ * @returns A new ChatConversation object
453
+ *
454
+ * @example
455
+ * ```typescript
456
+ * const conversation = createConversation('Project Discussion');
457
+ * ```
458
+ */
459
+ export declare function createConversation(title?: string, idOverride?: string): ChatConversation;
460
+ /**
461
+ * Format message content by cleaning terminal output
462
+ *
463
+ * Removes ANSI escape codes, control characters, carriage returns (which cause
464
+ * text to overwrite itself in terminals), and trims whitespace.
465
+ *
466
+ * @param content - Raw content to format
467
+ * @returns Cleaned content string
468
+ *
469
+ * @example
470
+ * ```typescript
471
+ * const clean = formatMessageContent('\x1b[32mGreen text\x1b[0m');
472
+ * // Returns: 'Green text'
473
+ * ```
474
+ */
475
+ export declare function formatMessageContent(content: string): string;
476
+ /**
477
+ * Default response extraction patterns
478
+ */
479
+ export declare const DEFAULT_RESPONSE_PATTERNS: ResponsePattern[];
480
+ /**
481
+ * Extract response from raw output using patterns
482
+ *
483
+ * Tries multiple patterns to extract the clean response from
484
+ * raw terminal output. Returns the original output if no pattern matches.
485
+ *
486
+ * @param rawOutput - Raw terminal output
487
+ * @param customPatterns - Optional custom patterns to use instead of defaults
488
+ * @returns Extracted response content
489
+ *
490
+ * @example
491
+ * ```typescript
492
+ * const response = extractResponseFromOutput(
493
+ * 'some text [RESPONSE]Hello World[/RESPONSE] more text'
494
+ * );
495
+ * // Returns: 'Hello World'
496
+ * ```
497
+ */
498
+ export declare function extractResponseFromOutput(rawOutput: string, customPatterns?: ResponsePattern[]): string;
499
+ /**
500
+ * Detect the content type of a message based on its content
501
+ *
502
+ * @param content - Message content to analyze
503
+ * @returns Detected content type
504
+ *
505
+ * @example
506
+ * ```typescript
507
+ * const type = detectContentType('## Heading\n- Item');
508
+ * // Returns: 'markdown'
509
+ * ```
510
+ */
511
+ export declare function detectContentType(content: string): ChatContentType;
512
+ /**
513
+ * Create a last message preview from a chat message
514
+ *
515
+ * @param message - The chat message to create preview from
516
+ * @param maxLength - Maximum content length (default: CHAT_CONSTANTS.DEFAULTS.PREVIEW_LENGTH)
517
+ * @returns A LastMessagePreview object
518
+ */
519
+ export declare function createLastMessagePreview(message: ChatMessage, maxLength?: number): LastMessagePreview;
520
+ /**
521
+ * Validate SendMessageInput
522
+ *
523
+ * @param input - Input to validate
524
+ * @returns Object with valid flag and optional error message
525
+ */
526
+ export declare function validateSendMessageInput(input: unknown): {
527
+ valid: boolean;
528
+ error?: string;
529
+ };
530
+ /**
531
+ * Validate ChatMessageFilter
532
+ *
533
+ * @param filter - Filter to validate
534
+ * @returns Object with valid flag and optional error message
535
+ */
536
+ export declare function validateChatMessageFilter(filter: unknown): {
537
+ valid: boolean;
538
+ error?: string;
539
+ };
540
+ /**
541
+ * Validate ConversationFilter
542
+ *
543
+ * @param filter - Filter to validate
544
+ * @returns Object with valid flag and optional error message
545
+ */
546
+ export declare function validateConversationFilter(filter: unknown): {
547
+ valid: boolean;
548
+ error?: string;
549
+ };
550
+ //# sourceMappingURL=chat.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/chat.types.ts"],"names":[],"mappings":"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"}