@multiplayer-app/ai-agent-node 0.1.0-beta.1 → 0.1.0-beta.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 (423) hide show
  1. package/dist/cjs/config.cjs +56 -0
  2. package/dist/cjs/config.cjs.map +1 -0
  3. package/dist/{config.d.ts → cjs/config.d.ts} +11 -8
  4. package/dist/cjs/config.d.ts.map +1 -0
  5. package/{src/helpers/AIHelper.ts → dist/cjs/helpers/AIHelper.cjs} +115 -141
  6. package/dist/cjs/helpers/AIHelper.cjs.map +1 -0
  7. package/dist/cjs/helpers/AIHelper.d.ts.map +1 -0
  8. package/dist/cjs/helpers/AIHelper.test.cjs +334 -0
  9. package/dist/cjs/helpers/AIHelper.test.cjs.map +1 -0
  10. package/dist/cjs/helpers/AIHelper.test.d.ts.map +1 -0
  11. package/dist/cjs/helpers/ConfigHelper.cjs +121 -0
  12. package/dist/cjs/helpers/ConfigHelper.cjs.map +1 -0
  13. package/dist/cjs/helpers/ConfigHelper.d.ts.map +1 -0
  14. package/dist/cjs/helpers/ContextLimiter.cjs +168 -0
  15. package/dist/cjs/helpers/ContextLimiter.cjs.map +1 -0
  16. package/dist/cjs/helpers/ContextLimiter.d.ts.map +1 -0
  17. package/dist/cjs/helpers/FileHelper.cjs +213 -0
  18. package/dist/cjs/helpers/FileHelper.cjs.map +1 -0
  19. package/dist/cjs/helpers/FileHelper.d.ts.map +1 -0
  20. package/dist/cjs/helpers/SetupHelper.cjs +34 -0
  21. package/dist/cjs/helpers/SetupHelper.cjs.map +1 -0
  22. package/dist/cjs/helpers/SetupHelper.d.ts +4 -0
  23. package/dist/cjs/helpers/SetupHelper.d.ts.map +1 -0
  24. package/dist/cjs/helpers/index.cjs +22 -0
  25. package/dist/cjs/helpers/index.cjs.map +1 -0
  26. package/dist/cjs/helpers/index.d.ts.map +1 -0
  27. package/dist/cjs/index.cjs +32 -0
  28. package/dist/cjs/index.cjs.map +1 -0
  29. package/{src/index.ts → dist/cjs/index.d.ts} +1 -6
  30. package/dist/cjs/index.d.ts.map +1 -0
  31. package/dist/cjs/libs/index.cjs +19 -0
  32. package/dist/cjs/libs/index.cjs.map +1 -0
  33. package/dist/cjs/libs/index.d.ts +3 -0
  34. package/dist/cjs/libs/index.d.ts.map +1 -0
  35. package/dist/cjs/libs/logger/config.cjs +9 -0
  36. package/dist/cjs/libs/logger/config.cjs.map +1 -0
  37. package/dist/cjs/libs/logger/config.d.ts.map +1 -0
  38. package/dist/cjs/libs/logger/index.cjs +38 -0
  39. package/dist/cjs/libs/logger/index.cjs.map +1 -0
  40. package/dist/cjs/libs/logger/index.d.ts.map +1 -0
  41. package/dist/cjs/libs/logger/kafkajs-logger-creator.cjs +33 -0
  42. package/dist/cjs/libs/logger/kafkajs-logger-creator.cjs.map +1 -0
  43. package/dist/cjs/libs/logger/kafkajs-logger-creator.d.ts.map +1 -0
  44. package/dist/cjs/libs/logger/logger.cjs +48 -0
  45. package/dist/cjs/libs/logger/logger.cjs.map +1 -0
  46. package/dist/cjs/libs/logger/logger.d.ts.map +1 -0
  47. package/dist/cjs/libs/s3/config.cjs +8 -0
  48. package/dist/cjs/libs/s3/config.cjs.map +1 -0
  49. package/dist/cjs/libs/s3/config.d.ts +4 -0
  50. package/dist/cjs/libs/s3/config.d.ts.map +1 -0
  51. package/dist/cjs/libs/s3/index.cjs +44 -0
  52. package/dist/cjs/libs/s3/index.cjs.map +1 -0
  53. package/dist/cjs/libs/s3/index.d.ts.map +1 -0
  54. package/dist/cjs/libs/s3/s3.lib.cjs +220 -0
  55. package/dist/cjs/libs/s3/s3.lib.cjs.map +1 -0
  56. package/dist/cjs/libs/s3/s3.lib.d.ts.map +1 -0
  57. package/dist/cjs/processors/ChatProcessor.cjs +620 -0
  58. package/dist/cjs/processors/ChatProcessor.cjs.map +1 -0
  59. package/dist/{processors → cjs/processors}/ChatProcessor.d.ts +1 -0
  60. package/dist/cjs/processors/ChatProcessor.d.ts.map +1 -0
  61. package/dist/cjs/processors/ModelsProcessor.cjs +34 -0
  62. package/dist/cjs/processors/ModelsProcessor.cjs.map +1 -0
  63. package/dist/cjs/processors/ModelsProcessor.d.ts.map +1 -0
  64. package/dist/cjs/processors/index.cjs +19 -0
  65. package/dist/cjs/processors/index.cjs.map +1 -0
  66. package/dist/cjs/processors/index.d.ts.map +1 -0
  67. package/dist/cjs/services/AIService.cjs +196 -0
  68. package/dist/cjs/services/AIService.cjs.map +1 -0
  69. package/dist/cjs/services/AIService.d.ts.map +1 -0
  70. package/dist/cjs/services/InternalEventsHandler.cjs +60 -0
  71. package/dist/cjs/services/InternalEventsHandler.cjs.map +1 -0
  72. package/dist/cjs/services/InternalEventsHandler.d.ts.map +1 -0
  73. package/dist/cjs/services/ModelFetcher.cjs +251 -0
  74. package/dist/cjs/services/ModelFetcher.cjs.map +1 -0
  75. package/dist/cjs/services/ModelFetcher.d.ts.map +1 -0
  76. package/dist/cjs/services/RedisService.cjs +239 -0
  77. package/dist/cjs/services/RedisService.cjs.map +1 -0
  78. package/dist/cjs/services/RedisService.d.ts.map +1 -0
  79. package/dist/cjs/services/SocketService.cjs +132 -0
  80. package/dist/cjs/services/SocketService.cjs.map +1 -0
  81. package/dist/{services → cjs/services}/SocketService.d.ts +1 -1
  82. package/dist/cjs/services/SocketService.d.ts.map +1 -0
  83. package/dist/cjs/services/index.cjs +22 -0
  84. package/dist/cjs/services/index.cjs.map +1 -0
  85. package/dist/{services → cjs/services}/index.d.ts +0 -1
  86. package/dist/cjs/services/index.d.ts.map +1 -0
  87. package/dist/cjs/store/AgentStore.cjs +102 -0
  88. package/dist/cjs/store/AgentStore.cjs.map +1 -0
  89. package/dist/cjs/store/AgentStore.d.ts.map +1 -0
  90. package/dist/{store/ArtifactStore.js → cjs/store/ArtifactStore.cjs} +7 -5
  91. package/dist/cjs/store/ArtifactStore.cjs.map +1 -0
  92. package/dist/cjs/store/ArtifactStore.d.ts.map +1 -0
  93. package/dist/cjs/store/ConfigStore.cjs +217 -0
  94. package/dist/cjs/store/ConfigStore.cjs.map +1 -0
  95. package/dist/cjs/store/ConfigStore.d.ts.map +1 -0
  96. package/dist/cjs/store/ConfigStore.test.cjs +261 -0
  97. package/dist/cjs/store/ConfigStore.test.cjs.map +1 -0
  98. package/dist/cjs/store/ConfigStore.test.d.ts.map +1 -0
  99. package/dist/cjs/store/ModelStore.cjs +85 -0
  100. package/dist/cjs/store/ModelStore.cjs.map +1 -0
  101. package/dist/cjs/store/ModelStore.d.ts.map +1 -0
  102. package/dist/cjs/store/ModelStore.test.cjs +392 -0
  103. package/dist/cjs/store/ModelStore.test.cjs.map +1 -0
  104. package/dist/cjs/store/ModelStore.test.d.ts.map +1 -0
  105. package/dist/cjs/store/index.cjs +21 -0
  106. package/dist/cjs/store/index.cjs.map +1 -0
  107. package/dist/cjs/store/index.d.ts.map +1 -0
  108. package/dist/cjs/tools/generateChartTool.cjs +128 -0
  109. package/dist/cjs/tools/generateChartTool.cjs.map +1 -0
  110. package/dist/cjs/tools/generateChartTool.d.ts.map +1 -0
  111. package/dist/cjs/tools/proposeFormValuesTool.cjs +60 -0
  112. package/dist/cjs/tools/proposeFormValuesTool.cjs.map +1 -0
  113. package/dist/{tools → cjs/tools}/proposeFormValuesTool.d.ts +2 -2
  114. package/dist/cjs/tools/proposeFormValuesTool.d.ts.map +1 -0
  115. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
  116. package/dist/esm/config.d.ts +38 -0
  117. package/dist/esm/config.d.ts.map +1 -0
  118. package/dist/esm/config.js +52 -0
  119. package/dist/esm/config.js.map +1 -0
  120. package/dist/esm/helpers/AIHelper.d.ts +23 -0
  121. package/dist/esm/helpers/AIHelper.d.ts.map +1 -0
  122. package/dist/{helpers → esm/helpers}/AIHelper.js +29 -32
  123. package/dist/esm/helpers/AIHelper.js.map +1 -0
  124. package/dist/esm/helpers/AIHelper.test.d.ts +2 -0
  125. package/dist/esm/helpers/AIHelper.test.d.ts.map +1 -0
  126. package/dist/esm/helpers/AIHelper.test.js.map +1 -0
  127. package/dist/esm/helpers/ConfigHelper.d.ts +20 -0
  128. package/dist/esm/helpers/ConfigHelper.d.ts.map +1 -0
  129. package/dist/{helpers → esm/helpers}/ConfigHelper.js +1 -2
  130. package/dist/esm/helpers/ConfigHelper.js.map +1 -0
  131. package/dist/esm/helpers/ContextLimiter.d.ts +82 -0
  132. package/dist/esm/helpers/ContextLimiter.d.ts.map +1 -0
  133. package/dist/{helpers → esm/helpers}/ContextLimiter.js +2 -3
  134. package/dist/esm/helpers/ContextLimiter.js.map +1 -0
  135. package/dist/esm/helpers/FileHelper.d.ts +31 -0
  136. package/dist/esm/helpers/FileHelper.d.ts.map +1 -0
  137. package/dist/{helpers → esm/helpers}/FileHelper.js +5 -7
  138. package/dist/esm/helpers/FileHelper.js.map +1 -0
  139. package/dist/esm/helpers/SetupHelper.d.ts +4 -0
  140. package/dist/esm/helpers/SetupHelper.d.ts.map +1 -0
  141. package/dist/{helpers → esm/helpers}/SetupHelper.js +4 -7
  142. package/dist/esm/helpers/SetupHelper.js.map +1 -0
  143. package/{src/helpers/index.ts → dist/esm/helpers/index.d.ts} +2 -1
  144. package/dist/esm/helpers/index.d.ts.map +1 -0
  145. package/dist/esm/helpers/index.js.map +1 -0
  146. package/dist/{index.d.ts → esm/index.d.ts} +0 -5
  147. package/dist/esm/index.d.ts.map +1 -0
  148. package/dist/{index.js → esm/index.js} +0 -5
  149. package/dist/esm/index.js.map +1 -0
  150. package/dist/esm/libs/index.d.ts +3 -0
  151. package/dist/esm/libs/index.d.ts.map +1 -0
  152. package/dist/esm/libs/index.js +3 -0
  153. package/dist/esm/libs/index.js.map +1 -0
  154. package/dist/esm/libs/logger/config.d.ts +5 -0
  155. package/dist/esm/libs/logger/config.d.ts.map +1 -0
  156. package/dist/esm/libs/logger/config.js +6 -0
  157. package/dist/esm/libs/logger/config.js.map +1 -0
  158. package/dist/esm/libs/logger/index.d.ts +10 -0
  159. package/dist/esm/libs/logger/index.d.ts.map +1 -0
  160. package/dist/esm/libs/logger/index.js.map +1 -0
  161. package/dist/esm/libs/logger/kafkajs-logger-creator.d.ts +12 -0
  162. package/dist/esm/libs/logger/kafkajs-logger-creator.d.ts.map +1 -0
  163. package/dist/esm/libs/logger/kafkajs-logger-creator.js.map +1 -0
  164. package/dist/esm/libs/logger/logger.d.ts +42 -0
  165. package/dist/esm/libs/logger/logger.d.ts.map +1 -0
  166. package/dist/esm/libs/logger/logger.js.map +1 -0
  167. package/dist/esm/libs/s3/config.d.ts +4 -0
  168. package/dist/esm/libs/s3/config.d.ts.map +1 -0
  169. package/dist/esm/libs/s3/config.js +5 -0
  170. package/dist/esm/libs/s3/config.js.map +1 -0
  171. package/dist/esm/libs/s3/index.d.ts +4 -0
  172. package/dist/esm/libs/s3/index.d.ts.map +1 -0
  173. package/dist/esm/libs/s3/index.js.map +1 -0
  174. package/dist/esm/libs/s3/s3.lib.d.ts +25 -0
  175. package/dist/esm/libs/s3/s3.lib.d.ts.map +1 -0
  176. package/dist/{libs → esm/libs}/s3/s3.lib.js +8 -12
  177. package/dist/esm/libs/s3/s3.lib.js.map +1 -0
  178. package/dist/esm/processors/ChatProcessor.d.ts +67 -0
  179. package/dist/esm/processors/ChatProcessor.d.ts.map +1 -0
  180. package/dist/{processors → esm/processors}/ChatProcessor.js +41 -32
  181. package/dist/esm/processors/ChatProcessor.js.map +1 -0
  182. package/dist/esm/processors/ModelsProcessor.d.ts +11 -0
  183. package/dist/esm/processors/ModelsProcessor.d.ts.map +1 -0
  184. package/dist/esm/processors/ModelsProcessor.js.map +1 -0
  185. package/dist/esm/processors/index.d.ts +3 -0
  186. package/dist/esm/processors/index.d.ts.map +1 -0
  187. package/dist/esm/processors/index.js.map +1 -0
  188. package/dist/esm/services/AIService.d.ts +48 -0
  189. package/dist/esm/services/AIService.d.ts.map +1 -0
  190. package/dist/{services → esm/services}/AIService.js +9 -12
  191. package/dist/esm/services/AIService.js.map +1 -0
  192. package/dist/esm/services/InternalEventsHandler.d.ts +21 -0
  193. package/dist/esm/services/InternalEventsHandler.d.ts.map +1 -0
  194. package/dist/{services → esm/services}/InternalEventsHandler.js +5 -4
  195. package/dist/esm/services/InternalEventsHandler.js.map +1 -0
  196. package/dist/esm/services/ModelFetcher.d.ts +54 -0
  197. package/dist/esm/services/ModelFetcher.d.ts.map +1 -0
  198. package/dist/{services → esm/services}/ModelFetcher.js +1 -0
  199. package/dist/esm/services/ModelFetcher.js.map +1 -0
  200. package/dist/esm/services/RedisService.d.ts +90 -0
  201. package/dist/esm/services/RedisService.d.ts.map +1 -0
  202. package/dist/{services → esm/services}/RedisService.js +9 -12
  203. package/dist/esm/services/RedisService.js.map +1 -0
  204. package/dist/esm/services/SocketService.d.ts +39 -0
  205. package/dist/esm/services/SocketService.d.ts.map +1 -0
  206. package/dist/{services → esm/services}/SocketService.js +6 -8
  207. package/dist/esm/services/SocketService.js.map +1 -0
  208. package/{src/services/index.ts → dist/esm/services/index.d.ts} +2 -2
  209. package/dist/esm/services/index.d.ts.map +1 -0
  210. package/dist/{services → esm/services}/index.js +0 -1
  211. package/dist/esm/services/index.js.map +1 -0
  212. package/dist/esm/store/AgentStore.d.ts +48 -0
  213. package/dist/esm/store/AgentStore.d.ts.map +1 -0
  214. package/dist/{store → esm/store}/AgentStore.js +2 -4
  215. package/dist/esm/store/AgentStore.js.map +1 -0
  216. package/dist/esm/store/ArtifactStore.d.ts +13 -0
  217. package/dist/esm/store/ArtifactStore.d.ts.map +1 -0
  218. package/dist/esm/store/ArtifactStore.js +23 -0
  219. package/dist/esm/store/ArtifactStore.js.map +1 -0
  220. package/dist/esm/store/ConfigStore.d.ts +89 -0
  221. package/dist/esm/store/ConfigStore.d.ts.map +1 -0
  222. package/dist/{store → esm/store}/ConfigStore.js +15 -16
  223. package/dist/esm/store/ConfigStore.js.map +1 -0
  224. package/dist/esm/store/ConfigStore.test.d.ts +2 -0
  225. package/dist/esm/store/ConfigStore.test.d.ts.map +1 -0
  226. package/dist/esm/store/ConfigStore.test.js.map +1 -0
  227. package/dist/esm/store/ModelStore.d.ts +44 -0
  228. package/dist/esm/store/ModelStore.d.ts.map +1 -0
  229. package/dist/{store → esm/store}/ModelStore.js +4 -4
  230. package/dist/esm/store/ModelStore.js.map +1 -0
  231. package/dist/esm/store/ModelStore.test.d.ts +2 -0
  232. package/dist/esm/store/ModelStore.test.d.ts.map +1 -0
  233. package/dist/{store → esm/store}/ModelStore.test.js +11 -11
  234. package/dist/esm/store/ModelStore.test.js.map +1 -0
  235. package/{src/store/index.ts → dist/esm/store/index.d.ts} +1 -0
  236. package/dist/esm/store/index.d.ts.map +1 -0
  237. package/dist/esm/store/index.js.map +1 -0
  238. package/dist/esm/tools/generateChartTool.d.ts +24 -0
  239. package/dist/esm/tools/generateChartTool.d.ts.map +1 -0
  240. package/dist/esm/tools/generateChartTool.js.map +1 -0
  241. package/dist/esm/tools/proposeFormValuesTool.d.ts +35 -0
  242. package/dist/esm/tools/proposeFormValuesTool.d.ts.map +1 -0
  243. package/dist/esm/tools/proposeFormValuesTool.js.map +1 -0
  244. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -0
  245. package/package.json +20 -9
  246. package/.env.example +0 -45
  247. package/config.example.json +0 -73
  248. package/dist/config.d.ts.map +0 -1
  249. package/dist/config.js +0 -44
  250. package/dist/config.js.map +0 -1
  251. package/dist/helpers/AIHelper.d.ts.map +0 -1
  252. package/dist/helpers/AIHelper.js.map +0 -1
  253. package/dist/helpers/AIHelper.test.d.ts.map +0 -1
  254. package/dist/helpers/AIHelper.test.js.map +0 -1
  255. package/dist/helpers/ConfigHelper.d.ts.map +0 -1
  256. package/dist/helpers/ConfigHelper.js.map +0 -1
  257. package/dist/helpers/ContextLimiter.d.ts.map +0 -1
  258. package/dist/helpers/ContextLimiter.js.map +0 -1
  259. package/dist/helpers/FileHelper.d.ts.map +0 -1
  260. package/dist/helpers/FileHelper.js.map +0 -1
  261. package/dist/helpers/SetupHelper.d.ts +0 -5
  262. package/dist/helpers/SetupHelper.d.ts.map +0 -1
  263. package/dist/helpers/SetupHelper.js.map +0 -1
  264. package/dist/helpers/index.d.ts.map +0 -1
  265. package/dist/helpers/index.js.map +0 -1
  266. package/dist/index.d.ts.map +0 -1
  267. package/dist/index.js.map +0 -1
  268. package/dist/libs/index.d.ts +0 -4
  269. package/dist/libs/index.d.ts.map +0 -1
  270. package/dist/libs/index.js +0 -4
  271. package/dist/libs/index.js.map +0 -1
  272. package/dist/libs/kafka/config.d.ts +0 -5
  273. package/dist/libs/kafka/config.d.ts.map +0 -1
  274. package/dist/libs/kafka/config.js +0 -5
  275. package/dist/libs/kafka/config.js.map +0 -1
  276. package/dist/libs/kafka/consumer.d.ts +0 -16
  277. package/dist/libs/kafka/consumer.d.ts.map +0 -1
  278. package/dist/libs/kafka/consumer.js +0 -126
  279. package/dist/libs/kafka/consumer.js.map +0 -1
  280. package/dist/libs/kafka/index.d.ts +0 -3
  281. package/dist/libs/kafka/index.d.ts.map +0 -1
  282. package/dist/libs/kafka/index.js +0 -3
  283. package/dist/libs/kafka/index.js.map +0 -1
  284. package/dist/libs/kafka/kafka.d.ts +0 -3
  285. package/dist/libs/kafka/kafka.d.ts.map +0 -1
  286. package/dist/libs/kafka/kafka.js +0 -24
  287. package/dist/libs/kafka/kafka.js.map +0 -1
  288. package/dist/libs/kafka/producer.d.ts +0 -11
  289. package/dist/libs/kafka/producer.d.ts.map +0 -1
  290. package/dist/libs/kafka/producer.js +0 -44
  291. package/dist/libs/kafka/producer.js.map +0 -1
  292. package/dist/libs/logger/config.d.ts.map +0 -1
  293. package/dist/libs/logger/config.js +0 -6
  294. package/dist/libs/logger/config.js.map +0 -1
  295. package/dist/libs/logger/index.d.ts.map +0 -1
  296. package/dist/libs/logger/index.js.map +0 -1
  297. package/dist/libs/logger/kafkajs-logger-creator.d.ts.map +0 -1
  298. package/dist/libs/logger/kafkajs-logger-creator.js.map +0 -1
  299. package/dist/libs/logger/logger.d.ts.map +0 -1
  300. package/dist/libs/logger/logger.js.map +0 -1
  301. package/dist/libs/s3/config.d.ts +0 -7
  302. package/dist/libs/s3/config.d.ts.map +0 -1
  303. package/dist/libs/s3/config.js +0 -7
  304. package/dist/libs/s3/config.js.map +0 -1
  305. package/dist/libs/s3/index.d.ts.map +0 -1
  306. package/dist/libs/s3/index.js.map +0 -1
  307. package/dist/libs/s3/s3.lib.d.ts.map +0 -1
  308. package/dist/libs/s3/s3.lib.js.map +0 -1
  309. package/dist/processors/ChatProcessor.d.ts.map +0 -1
  310. package/dist/processors/ChatProcessor.js.map +0 -1
  311. package/dist/processors/ModelsProcessor.d.ts.map +0 -1
  312. package/dist/processors/ModelsProcessor.js.map +0 -1
  313. package/dist/processors/index.d.ts.map +0 -1
  314. package/dist/processors/index.js.map +0 -1
  315. package/dist/services/AIService.d.ts.map +0 -1
  316. package/dist/services/AIService.js.map +0 -1
  317. package/dist/services/InternalEventsHandler.d.ts.map +0 -1
  318. package/dist/services/InternalEventsHandler.js.map +0 -1
  319. package/dist/services/KafkaService.d.ts +0 -35
  320. package/dist/services/KafkaService.d.ts.map +0 -1
  321. package/dist/services/KafkaService.js +0 -120
  322. package/dist/services/KafkaService.js.map +0 -1
  323. package/dist/services/ModelFetcher.d.ts.map +0 -1
  324. package/dist/services/ModelFetcher.js.map +0 -1
  325. package/dist/services/RedisService.d.ts.map +0 -1
  326. package/dist/services/RedisService.js.map +0 -1
  327. package/dist/services/SocketService.d.ts.map +0 -1
  328. package/dist/services/SocketService.js.map +0 -1
  329. package/dist/services/index.d.ts.map +0 -1
  330. package/dist/services/index.js.map +0 -1
  331. package/dist/store/AgentStore.d.ts.map +0 -1
  332. package/dist/store/AgentStore.js.map +0 -1
  333. package/dist/store/ArtifactStore.d.ts.map +0 -1
  334. package/dist/store/ArtifactStore.js.map +0 -1
  335. package/dist/store/ConfigStore.d.ts.map +0 -1
  336. package/dist/store/ConfigStore.js.map +0 -1
  337. package/dist/store/ConfigStore.test.d.ts.map +0 -1
  338. package/dist/store/ConfigStore.test.js.map +0 -1
  339. package/dist/store/ModelStore.d.ts.map +0 -1
  340. package/dist/store/ModelStore.js.map +0 -1
  341. package/dist/store/ModelStore.test.d.ts.map +0 -1
  342. package/dist/store/ModelStore.test.js.map +0 -1
  343. package/dist/store/index.d.ts.map +0 -1
  344. package/dist/store/index.js.map +0 -1
  345. package/dist/tools/generateChartTool.d.ts.map +0 -1
  346. package/dist/tools/generateChartTool.js.map +0 -1
  347. package/dist/tools/proposeFormValuesTool.d.ts.map +0 -1
  348. package/dist/tools/proposeFormValuesTool.js.map +0 -1
  349. package/src/config.ts +0 -46
  350. package/src/helpers/AIHelper.test.ts +0 -375
  351. package/src/helpers/ConfigHelper.ts +0 -130
  352. package/src/helpers/ContextLimiter.ts +0 -228
  353. package/src/helpers/FileHelper.ts +0 -197
  354. package/src/helpers/SetupHelper.ts +0 -35
  355. package/src/libs/index.ts +0 -3
  356. package/src/libs/kafka/config.ts +0 -4
  357. package/src/libs/kafka/consumer.ts +0 -161
  358. package/src/libs/kafka/index.ts +0 -2
  359. package/src/libs/kafka/kafka.ts +0 -27
  360. package/src/libs/kafka/producer.ts +0 -48
  361. package/src/libs/logger/config.ts +0 -4
  362. package/src/libs/logger/index.ts +0 -21
  363. package/src/libs/logger/kafkajs-logger-creator.ts +0 -28
  364. package/src/libs/logger/logger.ts +0 -60
  365. package/src/libs/s3/config.ts +0 -7
  366. package/src/libs/s3/index.ts +0 -3
  367. package/src/libs/s3/s3.lib.ts +0 -284
  368. package/src/processors/ChatProcessor.ts +0 -713
  369. package/src/processors/ModelsProcessor.ts +0 -34
  370. package/src/processors/index.ts +0 -2
  371. package/src/services/AIService.ts +0 -241
  372. package/src/services/InternalEventsHandler.ts +0 -61
  373. package/src/services/KafkaService.ts +0 -142
  374. package/src/services/ModelFetcher.ts +0 -286
  375. package/src/services/RedisService.ts +0 -285
  376. package/src/services/SocketService.ts +0 -153
  377. package/src/store/AgentStore.ts +0 -138
  378. package/src/store/ArtifactStore.ts +0 -29
  379. package/src/store/ConfigStore.test.ts +0 -314
  380. package/src/store/ConfigStore.ts +0 -239
  381. package/src/store/ModelStore.test.ts +0 -473
  382. package/src/store/ModelStore.ts +0 -93
  383. package/src/tools/generateChartTool.ts +0 -131
  384. package/src/tools/proposeFormValuesTool.ts +0 -67
  385. package/tsconfig.json +0 -23
  386. /package/dist/{helpers → cjs/helpers}/AIHelper.d.ts +0 -0
  387. /package/dist/{helpers → cjs/helpers}/AIHelper.test.d.ts +0 -0
  388. /package/dist/{helpers → cjs/helpers}/ConfigHelper.d.ts +0 -0
  389. /package/dist/{helpers → cjs/helpers}/ContextLimiter.d.ts +0 -0
  390. /package/dist/{helpers → cjs/helpers}/FileHelper.d.ts +0 -0
  391. /package/dist/{helpers → cjs/helpers}/index.d.ts +0 -0
  392. /package/dist/{libs → cjs/libs}/logger/config.d.ts +0 -0
  393. /package/dist/{libs → cjs/libs}/logger/index.d.ts +0 -0
  394. /package/dist/{libs → cjs/libs}/logger/kafkajs-logger-creator.d.ts +0 -0
  395. /package/dist/{libs → cjs/libs}/logger/logger.d.ts +0 -0
  396. /package/dist/{libs → cjs/libs}/s3/index.d.ts +0 -0
  397. /package/dist/{libs → cjs/libs}/s3/s3.lib.d.ts +0 -0
  398. /package/dist/{processors → cjs/processors}/ModelsProcessor.d.ts +0 -0
  399. /package/dist/{processors → cjs/processors}/index.d.ts +0 -0
  400. /package/dist/{services → cjs/services}/AIService.d.ts +0 -0
  401. /package/dist/{services → cjs/services}/InternalEventsHandler.d.ts +0 -0
  402. /package/dist/{services → cjs/services}/ModelFetcher.d.ts +0 -0
  403. /package/dist/{services → cjs/services}/RedisService.d.ts +0 -0
  404. /package/dist/{store → cjs/store}/AgentStore.d.ts +0 -0
  405. /package/dist/{store → cjs/store}/ArtifactStore.d.ts +0 -0
  406. /package/dist/{store → cjs/store}/ConfigStore.d.ts +0 -0
  407. /package/dist/{store → cjs/store}/ConfigStore.test.d.ts +0 -0
  408. /package/dist/{store → cjs/store}/ModelStore.d.ts +0 -0
  409. /package/dist/{store → cjs/store}/ModelStore.test.d.ts +0 -0
  410. /package/dist/{store → cjs/store}/index.d.ts +0 -0
  411. /package/dist/{tools → cjs/tools}/generateChartTool.d.ts +0 -0
  412. /package/dist/{helpers → esm/helpers}/AIHelper.test.js +0 -0
  413. /package/dist/{helpers → esm/helpers}/index.js +0 -0
  414. /package/dist/{libs → esm/libs}/logger/index.js +0 -0
  415. /package/dist/{libs → esm/libs}/logger/kafkajs-logger-creator.js +0 -0
  416. /package/dist/{libs → esm/libs}/logger/logger.js +0 -0
  417. /package/dist/{libs → esm/libs}/s3/index.js +0 -0
  418. /package/dist/{processors → esm/processors}/ModelsProcessor.js +0 -0
  419. /package/dist/{processors → esm/processors}/index.js +0 -0
  420. /package/dist/{store → esm/store}/ConfigStore.test.js +0 -0
  421. /package/dist/{store → esm/store}/index.js +0 -0
  422. /package/dist/{tools → esm/tools}/generateChartTool.js +0 -0
  423. /package/dist/{tools → esm/tools}/proposeFormValuesTool.js +0 -0
@@ -0,0 +1,38 @@
1
+ import 'dotenv/config';
2
+ export declare const config: {
3
+ readonly redis: {
4
+ readonly url: string | undefined;
5
+ readonly host: string;
6
+ readonly port: number;
7
+ readonly password: string | undefined;
8
+ readonly database: number | undefined;
9
+ };
10
+ readonly ai: {
11
+ readonly openaiApiKey: string | undefined;
12
+ readonly anthropicApiKey: string | undefined;
13
+ readonly googleApiKey: string | undefined;
14
+ readonly openrouterApiKey: string | undefined;
15
+ readonly maxContextMessages: number;
16
+ readonly defaultModel: string | undefined;
17
+ };
18
+ readonly s3: {
19
+ readonly bucket: string;
20
+ readonly host: string | undefined;
21
+ readonly presignedUrlExpires: number;
22
+ readonly awsRegion: string;
23
+ };
24
+ readonly fileProcessing: {
25
+ readonly maxExtractedTextSize: number;
26
+ readonly enableTextExtraction: boolean;
27
+ };
28
+ readonly logger: {
29
+ readonly nodeEnv: string;
30
+ readonly appName: string;
31
+ readonly logLevel: string | undefined;
32
+ };
33
+ };
34
+ /**
35
+ * Get Redis connection URL
36
+ */
37
+ export declare function getRedisUrl(): string;
38
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AASvB,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;4BAuBsB,MAAM;;;;;;;;;;;CAarC,CAAC;AAEX;;GAEG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAKpC"}
@@ -0,0 +1,52 @@
1
+ import 'dotenv/config';
2
+ /**
3
+ * Centralized configuration for the AI Agent Service
4
+ * All environment variables are accessed through this file
5
+ */
6
+ const SERVICE_NAME = process.env.npm_package_name;
7
+ export const config = {
8
+ // Redis configuration
9
+ redis: {
10
+ url: process.env.MP_AI_REDIS_URL,
11
+ host: process.env.MP_AI_REDIS_HOST ?? 'localhost',
12
+ port: Number(process.env.MP_AI_REDIS_PORT ?? 6379),
13
+ password: process.env.MP_AI_REDIS_PASSWORD,
14
+ database: process.env.MP_AI_REDIS_DATABASE ? Number(process.env.MP_AI_REDIS_DATABASE) : undefined,
15
+ },
16
+ // AI Provider API Keys
17
+ ai: {
18
+ openaiApiKey: process.env.OPENAI_API_KEY,
19
+ anthropicApiKey: process.env.ANTHROPIC_API_KEY,
20
+ googleApiKey: process.env.GOOGLE_GENERATIVE_AI_API_KEY,
21
+ openrouterApiKey: process.env.OPENROUTER_API_KEY,
22
+ maxContextMessages: Number(process.env.MP_AI_MAX_CONTEXT_MESSAGES) || 10,
23
+ defaultModel: process.env.MP_AI_DEFAULT_MODEL,
24
+ },
25
+ s3: {
26
+ bucket: process.env.MP_AI_S3_ATTACHMENTS_BUCKET || 'ai-agent-attachments',
27
+ host: process.env.MP_AI_S3_HOST,
28
+ presignedUrlExpires: Number(process.env.MP_AI_S3_PRESIGNED_URL_EXPIRES) || 120,
29
+ awsRegion: process.env.AWS_REGION,
30
+ },
31
+ // File processing configuration
32
+ fileProcessing: {
33
+ maxExtractedTextSize: Number(process.env.MP_AI_MAX_EXTRACTED_TEXT_SIZE) || 51200,
34
+ enableTextExtraction: process.env.MP_AI_ENABLE_TEXT_EXTRACTION !== 'false',
35
+ },
36
+ // Logger configuration
37
+ logger: {
38
+ nodeEnv: process.env.MP_AI_NODE_ENV || 'development',
39
+ appName: SERVICE_NAME?.split('/').pop() || 'ai-agent-node',
40
+ logLevel: process.env.MP_AI_LOG_LEVEL,
41
+ }
42
+ };
43
+ /**
44
+ * Get Redis connection URL
45
+ */
46
+ export function getRedisUrl() {
47
+ if (config.redis.url) {
48
+ return config.redis.url;
49
+ }
50
+ return `redis://${config.redis.host}:${config.redis.port}`;
51
+ }
52
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB;;;GAGG;AAEH,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;AAElD,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,sBAAsB;IACtB,KAAK,EAAE;QACL,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;QAChC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,WAAW;QACjD,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAC;QAClD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB;QAC1C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,SAAS;KAClG;IAED,uBAAuB;IACvB,EAAE,EAAE;QACF,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;QACxC,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAC9C,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,4BAA4B;QACtD,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAChD,kBAAkB,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,IAAI,EAAE;QACxE,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;KAC9C;IACD,EAAE,EAAE;QACF,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,sBAAsB;QACzE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;QAC/B,mBAAmB,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,IAAI,GAAG;QAC9E,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,UAAoB;KAC5C;IACD,gCAAgC;IAChC,cAAc,EAAE;QACd,oBAAoB,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,IAAI,KAAK;QAChF,oBAAoB,EAAE,OAAO,CAAC,GAAG,CAAC,4BAA4B,KAAK,OAAO;KAC3E;IACD,uBAAuB;IACvB,MAAM,EAAE;QACN,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,aAAa;QACpD,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,eAAe;QAC1D,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;KACtC;CACO,CAAC;AAEX;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACrB,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;IAC1B,CAAC;IACD,OAAO,WAAW,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AAC7D,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { AdditionalContext, AgentMessage } from "@multiplayer-app/ai-agent-types";
2
+ import { ModelMessage, streamText } from "ai";
3
+ import { GenerateTextOptions, StreamTextOptions } from "../services";
4
+ export declare class AIHelper {
5
+ private static convertUserMessage;
6
+ private static getAgentConfigs;
7
+ static getAgentOptions(params: {
8
+ contextKey?: string;
9
+ messages?: ModelMessage[];
10
+ modelId?: string;
11
+ context?: AdditionalContext;
12
+ agentName?: string;
13
+ }, options?: Omit<GenerateTextOptions, 'messages' | 'system'>): Promise<Omit<GenerateTextOptions, 'messages'> & {
14
+ name: string;
15
+ }>;
16
+ private static selectAgentConfig;
17
+ static getAssistantResponse(messages: Pick<AgentMessage, 'role' | 'content' | 'attachments'>[], signal?: AbortSignal, options?: Omit<GenerateTextOptions, 'messages'>): Promise<string>;
18
+ private static processToolChoice;
19
+ static streamAssistantResponse(agentMessages: Pick<AgentMessage, 'role' | 'content' | 'toolCalls' | 'attachments'>[], signal?: AbortSignal, options?: Omit<StreamTextOptions, 'messages'>): Promise<ReturnType<typeof streamText>>;
20
+ static convertMessages(agentMessages: Pick<AgentMessage, 'role' | 'content' | 'toolCalls' | 'attachments'>[], ignoreToolsAndAttachments?: boolean): Promise<ModelMessage[]>;
21
+ static generateTitleForMessage(contextKey: string, messages: Pick<AgentMessage, 'role' | 'content'>[]): Promise<string>;
22
+ }
23
+ //# sourceMappingURL=AIHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIHelper.d.ts","sourceRoot":"","sources":["../../../src/helpers/AIHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAoC,YAAY,EAAe,MAAM,iCAAiC,CAAC;AACjI,OAAO,EAAC,YAAY,EAAoC,UAAU,EAAc,MAAM,IAAI,CAAC;AAC3F,OAAO,EAAa,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAQhF,qBAAa,QAAQ;mBACI,kBAAkB;IA0IvC,OAAO,CAAC,MAAM,CAAC,eAAe;WAQjB,eAAe,CAAC,MAAM,EAAE;QACjC,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,iBAAiB,CAAC;QAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;KACtB,EAAE,OAAO,GAAE,IAAI,CAAC,mBAAmB,EAAE,UAAU,GAAG,QAAQ,CAAM,GAAG,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,GAAG;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC;mBAc9G,iBAAiB;WA6BzB,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,OAAO,GAAE,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBjM,OAAO,CAAC,MAAM,CAAC,iBAAiB;WA2CnB,uBAAuB,CAChC,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,CAAC,EAAE,EACrF,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;WAc7E,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,CAAC,EAAE,EAAE,yBAAyB,UAAQ,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;WAuDlK,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;CAahI"}
@@ -6,12 +6,11 @@ import { ConfigStore } from "../store";
6
6
  import { isImage, prepareImageForVisionAPI, extractTextFromDocument } from "./FileHelper";
7
7
  export class AIHelper {
8
8
  static async convertUserMessage(msg, ignoreFileAttachments) {
9
- var _a, _b;
10
9
  const userContent = [{
11
10
  type: "text",
12
11
  text: msg.content
13
12
  }];
14
- const atts = (_a = msg.attachments) !== null && _a !== void 0 ? _a : [];
13
+ const atts = msg.attachments ?? [];
15
14
  if (!atts.length) {
16
15
  return userContent;
17
16
  }
@@ -43,12 +42,12 @@ export class AIHelper {
43
42
  continue;
44
43
  }
45
44
  const md = att.metadata;
46
- const kind = typeof (md === null || md === void 0 ? void 0 : md.kind) === 'string' ? md.kind : 'unknown';
45
+ const kind = typeof md?.kind === 'string' ? md.kind : 'unknown';
47
46
  lines.push(`- context:${kind}: ${att.name}`);
48
47
  if (kind === 'webSnippet') {
49
- const url = typeof ((_b = md === null || md === void 0 ? void 0 : md.source) === null || _b === void 0 ? void 0 : _b.url) === 'string' ? md.source.url : att.url;
50
- const title = typeof (md === null || md === void 0 ? void 0 : md.title) === 'string' ? md.title : undefined;
51
- const selectedText = typeof (md === null || md === void 0 ? void 0 : md.selectedText) === 'string' ? md.selectedText : '';
48
+ const url = typeof md?.source?.url === 'string' ? md.source.url : att.url;
49
+ const title = typeof md?.title === 'string' ? md.title : undefined;
50
+ const selectedText = typeof md?.selectedText === 'string' ? md.selectedText : '';
52
51
  if (url)
53
52
  lines.push(` url: ${url}`);
54
53
  if (title)
@@ -62,12 +61,12 @@ export class AIHelper {
62
61
  continue;
63
62
  }
64
63
  if (kind === 'formField') {
65
- const formId = typeof (md === null || md === void 0 ? void 0 : md.formId) === 'string' ? md.formId : undefined;
66
- const fieldName = typeof (md === null || md === void 0 ? void 0 : md.fieldName) === 'string' ? md.fieldName : undefined;
67
- const fieldLabel = typeof (md === null || md === void 0 ? void 0 : md.fieldLabel) === 'string' ? md.fieldLabel : undefined;
68
- const value = typeof (md === null || md === void 0 ? void 0 : md.value) === 'string' ? md.value : '';
69
- const inputType = typeof (md === null || md === void 0 ? void 0 : md.inputType) === 'string' ? md.inputType : undefined;
70
- const options = Array.isArray(md === null || md === void 0 ? void 0 : md.options) ? md.options : [];
64
+ const formId = typeof md?.formId === 'string' ? md.formId : undefined;
65
+ const fieldName = typeof md?.fieldName === 'string' ? md.fieldName : undefined;
66
+ const fieldLabel = typeof md?.fieldLabel === 'string' ? md.fieldLabel : undefined;
67
+ const value = typeof md?.value === 'string' ? md.value : '';
68
+ const inputType = typeof md?.inputType === 'string' ? md.inputType : undefined;
69
+ const options = Array.isArray(md?.options) ? md.options : [];
71
70
  if (formId)
72
71
  lines.push(` formId: ${formId}`);
73
72
  if (fieldName)
@@ -78,8 +77,8 @@ export class AIHelper {
78
77
  const rendered = options
79
78
  .slice(0, 30)
80
79
  .map((o) => {
81
- const v = typeof (o === null || o === void 0 ? void 0 : o.value) === 'string' ? o.value : '';
82
- const l = typeof (o === null || o === void 0 ? void 0 : o.label) === 'string' ? o.label : '';
80
+ const v = typeof o?.value === 'string' ? o.value : '';
81
+ const l = typeof o?.label === 'string' ? o.label : '';
83
82
  if (!v && !l)
84
83
  return '';
85
84
  return l && v ? `${l} (${v})` : (l || v);
@@ -94,20 +93,20 @@ export class AIHelper {
94
93
  continue;
95
94
  }
96
95
  if (kind === 'formSnapshot') {
97
- const formId = typeof (md === null || md === void 0 ? void 0 : md.formId) === 'string' ? md.formId : undefined;
98
- const formName = typeof (md === null || md === void 0 ? void 0 : md.formName) === 'string' ? md.formName : undefined;
99
- const fields = Array.isArray(md === null || md === void 0 ? void 0 : md.fields) ? md.fields : [];
96
+ const formId = typeof md?.formId === 'string' ? md.formId : undefined;
97
+ const formName = typeof md?.formName === 'string' ? md.formName : undefined;
98
+ const fields = Array.isArray(md?.fields) ? md.fields : [];
100
99
  if (formId)
101
100
  lines.push(` formId: ${formId}`);
102
101
  if (formName)
103
102
  lines.push(` formName: ${formName}`);
104
103
  lines.push(' fields:');
105
104
  for (const f of fields.slice(0, 50)) {
106
- const name = typeof (f === null || f === void 0 ? void 0 : f.name) === 'string' ? f.name : 'unknown';
107
- const label = typeof (f === null || f === void 0 ? void 0 : f.label) === 'string' ? f.label : undefined;
108
- const value = typeof (f === null || f === void 0 ? void 0 : f.value) === 'string' ? f.value : '';
109
- const inputType = typeof (f === null || f === void 0 ? void 0 : f.inputType) === 'string' ? f.inputType : undefined;
110
- const options = Array.isArray(f === null || f === void 0 ? void 0 : f.options) ? f.options : [];
105
+ const name = typeof f?.name === 'string' ? f.name : 'unknown';
106
+ const label = typeof f?.label === 'string' ? f.label : undefined;
107
+ const value = typeof f?.value === 'string' ? f.value : '';
108
+ const inputType = typeof f?.inputType === 'string' ? f.inputType : undefined;
109
+ const options = Array.isArray(f?.options) ? f.options : [];
111
110
  const clipped = value.length > 1000 ? `${value.slice(0, 1000)}…` : value;
112
111
  const meta = [];
113
112
  if (inputType)
@@ -115,7 +114,7 @@ export class AIHelper {
115
114
  if ((inputType === 'select' || inputType === 'radio') && options.length) {
116
115
  const opts = options
117
116
  .slice(0, 20)
118
- .map((o) => typeof (o === null || o === void 0 ? void 0 : o.value) === 'string' ? o.value : '')
117
+ .map((o) => typeof o?.value === 'string' ? o.value : '')
119
118
  .filter(Boolean)
120
119
  .join('|');
121
120
  if (opts)
@@ -126,15 +125,15 @@ export class AIHelper {
126
125
  continue;
127
126
  }
128
127
  // Custom kind: prefer summary, fall back to minimal JSON.
129
- const title = typeof (md === null || md === void 0 ? void 0 : md.title) === 'string' ? md.title : undefined;
130
- const summary = typeof (md === null || md === void 0 ? void 0 : md.summary) === 'string' ? md.summary : undefined;
128
+ const title = typeof md?.title === 'string' ? md.title : undefined;
129
+ const summary = typeof md?.summary === 'string' ? md.summary : undefined;
131
130
  if (title)
132
131
  lines.push(` title: ${title}`);
133
132
  if (summary) {
134
133
  lines.push(` summary: ${summary.length > 4000 ? `${summary.slice(0, 4000)}…` : summary}`);
135
134
  continue;
136
135
  }
137
- if ((md === null || md === void 0 ? void 0 : md.data) !== undefined) {
136
+ if (md?.data !== undefined) {
138
137
  const json = JSON.stringify(md.data);
139
138
  lines.push(` data: ${json.length > 2000 ? `${json.slice(0, 2000)}…` : json}`);
140
139
  }
@@ -211,8 +210,7 @@ Available agents: ${JSON.stringify(configs.map(config => ({
211
210
  }
212
211
  }
213
212
  static processToolChoice(options, agentMessages) {
214
- var _a, _b, _c, _d;
215
- if (!(options === null || options === void 0 ? void 0 : options.toolChoice)) {
213
+ if (!options?.toolChoice) {
216
214
  return options || {};
217
215
  }
218
216
  // Find the latest assistant message
@@ -221,7 +219,7 @@ Available agents: ${JSON.stringify(configs.map(config => ({
221
219
  .find(msg => msg.role === MessageRole.Assistant);
222
220
  // Handle 'required' toolChoice: if any tool was called, set to 'auto'
223
221
  if (options.toolChoice === 'required') {
224
- const anyToolWasCalled = ((_b = (_a = latestAssistantMessage === null || latestAssistantMessage === void 0 ? void 0 : latestAssistantMessage.toolCalls) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) > 0;
222
+ const anyToolWasCalled = (latestAssistantMessage?.toolCalls?.length ?? 0) > 0;
225
223
  if (anyToolWasCalled) {
226
224
  return {
227
225
  ...options,
@@ -233,7 +231,7 @@ Available agents: ${JSON.stringify(configs.map(config => ({
233
231
  // Handle specific tool toolChoice: if that specific tool was called, set to 'auto'
234
232
  if (typeof options.toolChoice === 'object' && options.toolChoice.type === 'tool') {
235
233
  const toolName = options.toolChoice.toolName;
236
- const toolWasCalled = (_d = (_c = latestAssistantMessage === null || latestAssistantMessage === void 0 ? void 0 : latestAssistantMessage.toolCalls) === null || _c === void 0 ? void 0 : _c.some(toolCall => toolCall.name === toolName)) !== null && _d !== void 0 ? _d : false;
234
+ const toolWasCalled = latestAssistantMessage?.toolCalls?.some(toolCall => toolCall.name === toolName) ?? false;
237
235
  if (toolWasCalled) {
238
236
  return {
239
237
  ...options,
@@ -256,7 +254,6 @@ Available agents: ${JSON.stringify(configs.map(config => ({
256
254
  });
257
255
  }
258
256
  static async convertMessages(agentMessages, ignoreToolsAndAttachments = false) {
259
- var _a;
260
257
  const result = [];
261
258
  for (const msg of agentMessages) {
262
259
  if (msg.role === MessageRole.User) {
@@ -278,7 +275,7 @@ Available agents: ${JSON.stringify(configs.map(config => ({
278
275
  content: []
279
276
  };
280
277
  if (!ignoreToolsAndAttachments) {
281
- (_a = msg.toolCalls) === null || _a === void 0 ? void 0 : _a.forEach((toolCall) => {
278
+ msg.toolCalls?.forEach((toolCall) => {
282
279
  if (toolCall.output) {
283
280
  assistantMessage.content.push({
284
281
  type: 'tool-call',
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIHelper.js","sourceRoot":"","sources":["../../../src/helpers/AIHelper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=AIHelper.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIHelper.test.d.ts","sourceRoot":"","sources":["../../../src/helpers/AIHelper.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIHelper.test.js","sourceRoot":"","sources":["../../../src/helpers/AIHelper.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { AgentAppConfig } from '@multiplayer-app/ai-agent-types';
2
+ export declare class ConfigHelper {
3
+ static loadConfig(rawConfig: Record<string, any>): AgentAppConfig;
4
+ private static jsonSchemaToZod;
5
+ /**
6
+ * Converts raw JSON config to AgentAppConfig format
7
+ * Validates structure and converts JSON schemas to Zod schemas
8
+ */
9
+ private static convertToAgentAppConfig;
10
+ /**
11
+ * Converts a tool from JSON format (with JSON schemas) to AgentTool format (with Zod schemas)
12
+ */
13
+ private static convertTool;
14
+ /**
15
+ * Validates the AgentAppConfig structure
16
+ * @throws Error if validation fails
17
+ */
18
+ private static validateConfig;
19
+ }
20
+ //# sourceMappingURL=ConfigHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigHelper.d.ts","sourceRoot":"","sources":["../../../src/helpers/ConfigHelper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,iCAAiC,CAAC;AAIjF,qBAAa,YAAY;IAEvB,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,cAAc;IAcjE,OAAO,CAAC,MAAM,CAAC,eAAe;IAK9B;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAwBtC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IA8B1B;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;CAsC9B"}
@@ -51,7 +51,6 @@ export class ConfigHelper {
51
51
  * Converts a tool from JSON format (with JSON schemas) to AgentTool format (with Zod schemas)
52
52
  */
53
53
  static convertTool(tool) {
54
- var _a;
55
54
  if (tool.type === AgentToolType.WEB_SEARCH) {
56
55
  return {
57
56
  type: AgentToolType.WEB_SEARCH,
@@ -71,7 +70,7 @@ export class ConfigHelper {
71
70
  url: tool.data.url,
72
71
  body: tool.data.body ? ConfigHelper.jsonSchemaToZod(tool.data.body) : undefined,
73
72
  queryParams: tool.data.queryParams ? ConfigHelper.jsonSchemaToZod(tool.data.queryParams) : undefined,
74
- needsApproval: (_a = tool.data.needsApproval) !== null && _a !== void 0 ? _a : false,
73
+ needsApproval: tool.data.needsApproval ?? false,
75
74
  }
76
75
  };
77
76
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigHelper.js","sourceRoot":"","sources":["../../../src/helpers/ConfigHelper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,82 @@
1
+ import { AgentMessage } from '@multiplayer-app/ai-agent-types';
2
+ /**
3
+ * Options for limiting chat context
4
+ */
5
+ export interface ContextLimitOptions {
6
+ /**
7
+ * Maximum number of messages to include in context.
8
+ * Default: 50 (common practice: 20-100 messages depending on use case)
9
+ */
10
+ maxMessages?: number;
11
+ /**
12
+ * Maximum token count (if token counting is implemented).
13
+ * This is a future enhancement - currently not used.
14
+ */
15
+ maxTokens?: number;
16
+ /**
17
+ * Whether to always keep the first user message (often contains important context).
18
+ * Default: true
19
+ */
20
+ keepFirstUserMessage?: boolean;
21
+ /**
22
+ * Whether to keep all system messages (if any exist).
23
+ * Default: true
24
+ */
25
+ keepSystemMessages?: boolean;
26
+ }
27
+ /**
28
+ * Common practices for limiting AI context:
29
+ *
30
+ * 1. **Message Count Limiting** (implemented here)
31
+ * - Keep only the last N messages
32
+ * - Most common and simplest approach
33
+ * - Typical values: 20-100 messages depending on use case
34
+ *
35
+ * 2. **Token-Based Limiting** (future enhancement)
36
+ * - Count tokens and keep messages until hitting token budget
37
+ * - More accurate for cost control
38
+ * - Requires token counting library (e.g., tiktoken, @anthropic-ai/tokenizer)
39
+ *
40
+ * 3. **Hybrid Approach** (future enhancement)
41
+ * - Combine message count with token budget as safety check
42
+ * - Best of both worlds
43
+ *
44
+ * 4. **Sliding Window with Summary** (advanced)
45
+ * - Keep recent messages + summarize older ones
46
+ * - Requires summarization step
47
+ *
48
+ * 5. **Priority-Based** (implemented via keepFirstUserMessage)
49
+ * - Always keep system messages, first user message, and recent messages
50
+ * - Preserves important context while limiting size
51
+ */
52
+ export declare class ContextLimiter {
53
+ /**
54
+ * Limits the context by keeping only the most recent messages
55
+ * while preserving important messages (first user message, system messages).
56
+ *
57
+ * @param messages - All messages from the chat (assumed to be in chronological order)
58
+ * @param options - Limiting options
59
+ * @returns Limited array of messages in original order
60
+ */
61
+ static limitContext(messages: AgentMessage[], options?: ContextLimitOptions): AgentMessage[];
62
+ /**
63
+ * Estimates token count for a message (rough approximation).
64
+ * For accurate token counting, use a proper tokenizer library.
65
+ *
66
+ * This is a simple approximation: ~4 characters per token for English text.
67
+ *
68
+ * @param message - Message to estimate tokens for
69
+ * @returns Estimated token count
70
+ */
71
+ static estimateTokens(message: AgentMessage): number;
72
+ /**
73
+ * Limits context by token count (future enhancement).
74
+ * Currently not implemented - requires proper tokenizer.
75
+ *
76
+ * @param messages - All messages from the chat
77
+ * @param maxTokens - Maximum token count
78
+ * @returns Limited array of messages
79
+ */
80
+ static limitByTokens(messages: AgentMessage[], maxTokens: number): AgentMessage[];
81
+ }
82
+ //# sourceMappingURL=ContextLimiter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextLimiter.d.ts","sourceRoot":"","sources":["../../../src/helpers/ContextLimiter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAe,MAAM,iCAAiC,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,cAAc;IACzB;;;;;;;OAOG;IACH,MAAM,CAAC,YAAY,CACjB,QAAQ,EAAE,YAAY,EAAE,EACxB,OAAO,GAAE,mBAAwB,GAChC,YAAY,EAAE;IA0EjB;;;;;;;;OAQG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM;IAwBpD;;;;;;;OAOG;IACH,MAAM,CAAC,aAAa,CAClB,QAAQ,EAAE,YAAY,EAAE,EACxB,SAAS,EAAE,MAAM,GAChB,YAAY,EAAE;CAwClB"}
@@ -100,7 +100,6 @@ export class ContextLimiter {
100
100
  * @returns Estimated token count
101
101
  */
102
102
  static estimateTokens(message) {
103
- var _a;
104
103
  const content = typeof message.content === 'string'
105
104
  ? message.content
106
105
  : JSON.stringify(message.content);
@@ -110,13 +109,13 @@ export class ContextLimiter {
110
109
  // Add overhead for message structure (role, formatting, etc.)
111
110
  const overhead = 10;
112
111
  // Add tokens for tool calls if present
113
- const toolCallTokens = ((_a = message.toolCalls) === null || _a === void 0 ? void 0 : _a.reduce((acc, toolCall) => {
112
+ const toolCallTokens = message.toolCalls?.reduce((acc, toolCall) => {
114
113
  const inputTokens = Math.ceil(JSON.stringify(toolCall.input).length / 4);
115
114
  const outputTokens = toolCall.output
116
115
  ? Math.ceil(JSON.stringify(toolCall.output).length / 4)
117
116
  : 0;
118
117
  return acc + inputTokens + outputTokens + 20; // 20 for tool call structure
119
- }, 0)) || 0;
118
+ }, 0) || 0;
120
119
  return baseTokens + overhead + toolCallTokens;
121
120
  }
122
121
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextLimiter.js","sourceRoot":"","sources":["../../../src/helpers/ContextLimiter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import type { AgentAttachment } from '@multiplayer-app/ai-agent-types';
2
+ export interface ProcessedAttachment extends AgentAttachment {
3
+ extractedText?: string;
4
+ processingStatus?: 'pending' | 'processed' | 'failed';
5
+ }
6
+ /**
7
+ * Checks if an attachment is an image
8
+ */
9
+ export declare function isImage(attachment: AgentAttachment): boolean;
10
+ /**
11
+ * Checks if an attachment is a document that can have text extracted
12
+ */
13
+ export declare function isDocument(attachment: AgentAttachment): boolean;
14
+ /**
15
+ * Extracts text from a document attachment
16
+ */
17
+ export declare function extractTextFromDocument(attachment: AgentAttachment): Promise<string | undefined>;
18
+ /**
19
+ * Processes an attachment and extracts content as needed
20
+ */
21
+ export declare function processAttachment(attachment: AgentAttachment): Promise<ProcessedAttachment>;
22
+ /**
23
+ * Prepares an image attachment for vision API
24
+ */
25
+ export declare function prepareImageForVisionAPI(attachment: AgentAttachment): Promise<{
26
+ type: 'image_url';
27
+ image_url: {
28
+ url: string;
29
+ };
30
+ } | null>;
31
+ //# sourceMappingURL=FileHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileHelper.d.ts","sourceRoot":"","sources":["../../../src/helpers/FileHelper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAOvE,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;CACvD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,UAAU,EAAE,eAAe,GAAG,OAAO,CAI5D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,eAAe,GAAG,OAAO,CAI/D;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,eAAe,GAC1B,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA4C7B;AAsCD;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,eAAe,GAC1B,OAAO,CAAC,mBAAmB,CAAC,CA4B9B;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAAC,UAAU,EAAE,eAAe,GAAG,OAAO,CAAC;IACnF,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5B,GAAG,IAAI,CAAC,CAsCR"}
@@ -24,7 +24,6 @@ export function isDocument(attachment) {
24
24
  * Extracts text from a document attachment
25
25
  */
26
26
  export async function extractTextFromDocument(attachment) {
27
- var _a;
28
27
  if (!isDocument(attachment) || attachment.type !== AgentAttachmentType.File) {
29
28
  logger.debug('Attachment is not a document or not a file type', {
30
29
  attachmentId: attachment.id,
@@ -36,7 +35,7 @@ export async function extractTextFromDocument(attachment) {
36
35
  try {
37
36
  const mimeType = attachment.mimeType || '';
38
37
  // All files are stored in S3 (s3Key is in metadata)
39
- if ((_a = attachment.metadata) === null || _a === void 0 ? void 0 : _a.s3Key) {
38
+ if (attachment.metadata?.s3Key) {
40
39
  const s3Key = attachment.metadata.s3Key;
41
40
  const bucket = config.s3.bucket;
42
41
  if (mimeType === 'application/pdf') {
@@ -76,7 +75,7 @@ async function extractTextFromPDF(buffer) {
76
75
  const parser = new PDFParse({ data: buffer });
77
76
  const text = (await parser.getText()).text || '';
78
77
  // Limit extracted text size
79
- const maxSize = Number(process.env.MAX_EXTRACTED_TEXT_SIZE) || 51200;
78
+ const maxSize = config.fileProcessing.maxExtractedTextSize;
80
79
  return text.length > maxSize ? text.substring(0, maxSize) + '...' : text;
81
80
  }
82
81
  catch (error) {
@@ -93,7 +92,7 @@ async function extractTextFromDOCX(buffer) {
93
92
  const result = await mammoth.extractRawText({ buffer });
94
93
  const text = result.value || '';
95
94
  // Limit extracted text size
96
- const maxSize = Number(process.env.MAX_EXTRACTED_TEXT_SIZE) || 51200;
95
+ const maxSize = config.fileProcessing.maxExtractedTextSize;
97
96
  return text.length > maxSize ? text.substring(0, maxSize) + '...' : text;
98
97
  }
99
98
  catch (error) {
@@ -111,7 +110,7 @@ export async function processAttachment(attachment) {
111
110
  return processed;
112
111
  }
113
112
  // Check if text extraction is enabled
114
- const enableTextExtraction = process.env.ENABLE_TEXT_EXTRACTION !== 'false';
113
+ const enableTextExtraction = config.fileProcessing.enableTextExtraction;
115
114
  if (enableTextExtraction && isDocument(attachment)) {
116
115
  try {
117
116
  processed.processingStatus = 'pending';
@@ -135,12 +134,11 @@ export async function processAttachment(attachment) {
135
134
  * Prepares an image attachment for vision API
136
135
  */
137
136
  export async function prepareImageForVisionAPI(attachment) {
138
- var _a;
139
137
  if (!isImage(attachment) || attachment.type !== AgentAttachmentType.File) {
140
138
  return null;
141
139
  }
142
140
  // All files are stored in S3 - generate presigned download URL
143
- if ((_a = attachment.metadata) === null || _a === void 0 ? void 0 : _a.s3Key) {
141
+ if (attachment.metadata?.s3Key) {
144
142
  try {
145
143
  const s3Key = attachment.metadata.s3Key;
146
144
  const bucket = config.s3.bucket;