beddel 0.2.2 → 0.3.0

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 (357) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/README.md +117 -14
  3. package/dist/agents/chat/chat.handler.d.ts +12 -0
  4. package/dist/agents/chat/chat.handler.d.ts.map +1 -0
  5. package/dist/agents/chat/chat.handler.js +145 -0
  6. package/dist/agents/chat/chat.handler.js.map +1 -0
  7. package/dist/agents/chat/chat.schema.d.ts +38 -0
  8. package/dist/agents/chat/chat.schema.d.ts.map +1 -0
  9. package/dist/agents/chat/chat.schema.js +31 -0
  10. package/dist/agents/chat/chat.schema.js.map +1 -0
  11. package/dist/agents/chat/chat.types.d.ts +42 -0
  12. package/dist/agents/chat/chat.types.d.ts.map +1 -0
  13. package/dist/agents/chat/chat.types.js +6 -0
  14. package/dist/agents/chat/chat.types.js.map +1 -0
  15. package/dist/agents/chat/chat.yaml +148 -0
  16. package/dist/agents/chat/index.d.ts +16 -0
  17. package/dist/agents/chat/index.d.ts.map +1 -0
  18. package/dist/agents/chat/index.js +21 -0
  19. package/dist/agents/chat/index.js.map +1 -0
  20. package/dist/agents/chromadb/chromadb.handler.d.ts +12 -0
  21. package/dist/agents/chromadb/chromadb.handler.d.ts.map +1 -0
  22. package/dist/agents/chromadb/chromadb.handler.js +139 -0
  23. package/dist/agents/chromadb/chromadb.handler.js.map +1 -0
  24. package/dist/agents/chromadb/chromadb.schema.d.ts +36 -0
  25. package/dist/agents/chromadb/chromadb.schema.d.ts.map +1 -0
  26. package/dist/agents/chromadb/chromadb.schema.js +33 -0
  27. package/dist/agents/chromadb/chromadb.schema.js.map +1 -0
  28. package/dist/agents/chromadb/chromadb.types.d.ts +49 -0
  29. package/dist/agents/chromadb/chromadb.types.d.ts.map +1 -0
  30. package/dist/agents/chromadb/chromadb.types.js +6 -0
  31. package/dist/agents/chromadb/chromadb.types.js.map +1 -0
  32. package/dist/agents/chromadb/chromadb.yaml +128 -0
  33. package/dist/agents/chromadb/index.d.ts +15 -0
  34. package/dist/agents/chromadb/index.d.ts.map +1 -0
  35. package/dist/agents/chromadb/index.js +20 -0
  36. package/dist/agents/chromadb/index.js.map +1 -0
  37. package/dist/agents/gemini-vectorize/gemini-vectorize.handler.d.ts +8 -0
  38. package/dist/agents/gemini-vectorize/gemini-vectorize.handler.d.ts.map +1 -0
  39. package/dist/agents/gemini-vectorize/gemini-vectorize.handler.js +61 -0
  40. package/dist/agents/gemini-vectorize/gemini-vectorize.handler.js.map +1 -0
  41. package/dist/agents/gemini-vectorize/gemini-vectorize.schema.d.ts +22 -0
  42. package/dist/agents/gemini-vectorize/gemini-vectorize.schema.d.ts.map +1 -0
  43. package/dist/agents/gemini-vectorize/gemini-vectorize.schema.js +20 -0
  44. package/dist/agents/gemini-vectorize/gemini-vectorize.schema.js.map +1 -0
  45. package/dist/agents/gemini-vectorize/gemini-vectorize.types.d.ts +32 -0
  46. package/dist/agents/gemini-vectorize/gemini-vectorize.types.d.ts.map +1 -0
  47. package/dist/agents/gemini-vectorize/gemini-vectorize.types.js +6 -0
  48. package/dist/agents/gemini-vectorize/gemini-vectorize.types.js.map +1 -0
  49. package/dist/agents/gemini-vectorize/gemini-vectorize.yaml +84 -0
  50. package/dist/agents/gemini-vectorize/index.d.ts +15 -0
  51. package/dist/agents/gemini-vectorize/index.d.ts.map +1 -0
  52. package/dist/agents/gemini-vectorize/index.js +20 -0
  53. package/dist/agents/gemini-vectorize/index.js.map +1 -0
  54. package/dist/agents/gitmcp/gitmcp.handler.d.ts +12 -0
  55. package/dist/agents/gitmcp/gitmcp.handler.d.ts.map +1 -0
  56. package/dist/agents/gitmcp/gitmcp.handler.js +95 -0
  57. package/dist/agents/gitmcp/gitmcp.handler.js.map +1 -0
  58. package/dist/agents/gitmcp/gitmcp.schema.d.ts +17 -0
  59. package/dist/agents/gitmcp/gitmcp.schema.d.ts.map +1 -0
  60. package/dist/agents/gitmcp/gitmcp.schema.js +18 -0
  61. package/dist/agents/gitmcp/gitmcp.schema.js.map +1 -0
  62. package/dist/agents/gitmcp/gitmcp.types.d.ts +31 -0
  63. package/dist/agents/gitmcp/gitmcp.types.d.ts.map +1 -0
  64. package/dist/agents/gitmcp/gitmcp.types.js +6 -0
  65. package/dist/agents/gitmcp/gitmcp.types.js.map +1 -0
  66. package/dist/agents/gitmcp/gitmcp.yaml +71 -0
  67. package/dist/agents/gitmcp/index.d.ts +16 -0
  68. package/dist/agents/gitmcp/index.d.ts.map +1 -0
  69. package/dist/agents/gitmcp/index.js +21 -0
  70. package/dist/agents/gitmcp/index.js.map +1 -0
  71. package/dist/agents/image/image.handler.d.ts +8 -0
  72. package/dist/agents/image/image.handler.d.ts.map +1 -0
  73. package/dist/agents/image/image.handler.js +69 -0
  74. package/dist/agents/image/image.handler.js.map +1 -0
  75. package/dist/agents/image/image.schema.d.ts +29 -0
  76. package/dist/agents/image/image.schema.d.ts.map +1 -0
  77. package/dist/agents/image/image.schema.js +26 -0
  78. package/dist/agents/image/image.schema.js.map +1 -0
  79. package/dist/agents/image/image.types.d.ts +43 -0
  80. package/dist/agents/image/image.types.d.ts.map +1 -0
  81. package/dist/agents/image/image.types.js +6 -0
  82. package/dist/agents/image/image.types.js.map +1 -0
  83. package/{src/agents/image-agent.yaml → dist/agents/image/image.yaml} +21 -21
  84. package/dist/agents/image/index.d.ts +14 -0
  85. package/dist/agents/image/index.d.ts.map +1 -0
  86. package/dist/agents/image/index.js +19 -0
  87. package/dist/agents/image/index.js.map +1 -0
  88. package/dist/agents/index.d.ts +104 -0
  89. package/dist/agents/index.d.ts.map +1 -0
  90. package/dist/agents/index.js +82 -0
  91. package/dist/agents/index.js.map +1 -0
  92. package/dist/agents/joker/index.d.ts +14 -0
  93. package/dist/agents/joker/index.d.ts.map +1 -0
  94. package/dist/agents/joker/index.js +19 -0
  95. package/dist/agents/joker/index.js.map +1 -0
  96. package/dist/agents/joker/joker.handler.d.ts +8 -0
  97. package/dist/agents/joker/joker.handler.d.ts.map +1 -0
  98. package/dist/agents/joker/joker.handler.js +44 -0
  99. package/dist/agents/joker/joker.handler.js.map +1 -0
  100. package/dist/agents/joker/joker.schema.d.ts +12 -0
  101. package/dist/agents/joker/joker.schema.d.ts.map +1 -0
  102. package/dist/agents/joker/joker.schema.js +13 -0
  103. package/dist/agents/joker/joker.schema.js.map +1 -0
  104. package/dist/agents/joker/joker.types.d.ts +36 -0
  105. package/dist/agents/joker/joker.types.d.ts.map +1 -0
  106. package/dist/agents/joker/joker.types.js +6 -0
  107. package/dist/agents/joker/joker.types.js.map +1 -0
  108. package/{src/agents/joker-agent.yaml → dist/agents/joker/joker.yaml} +4 -4
  109. package/dist/agents/llm/index.d.ts +15 -0
  110. package/dist/agents/llm/index.d.ts.map +1 -0
  111. package/dist/agents/llm/index.js +20 -0
  112. package/dist/agents/llm/index.js.map +1 -0
  113. package/dist/agents/llm/llm.handler.d.ts +8 -0
  114. package/dist/agents/llm/llm.handler.d.ts.map +1 -0
  115. package/dist/agents/llm/llm.handler.js +64 -0
  116. package/dist/agents/llm/llm.handler.js.map +1 -0
  117. package/dist/agents/llm/llm.schema.d.ts +26 -0
  118. package/dist/agents/llm/llm.schema.d.ts.map +1 -0
  119. package/dist/agents/llm/llm.schema.js +23 -0
  120. package/dist/agents/llm/llm.schema.js.map +1 -0
  121. package/dist/agents/llm/llm.types.d.ts +34 -0
  122. package/dist/agents/llm/llm.types.d.ts.map +1 -0
  123. package/dist/agents/llm/llm.types.js +7 -0
  124. package/dist/agents/llm/llm.types.js.map +1 -0
  125. package/dist/agents/llm/llm.yaml +87 -0
  126. package/dist/agents/mcp-tool/index.d.ts +14 -0
  127. package/dist/agents/mcp-tool/index.d.ts.map +1 -0
  128. package/dist/agents/mcp-tool/index.js +19 -0
  129. package/dist/agents/mcp-tool/index.js.map +1 -0
  130. package/dist/agents/mcp-tool/mcp-tool.handler.d.ts +12 -0
  131. package/dist/agents/mcp-tool/mcp-tool.handler.d.ts.map +1 -0
  132. package/dist/agents/mcp-tool/mcp-tool.handler.js +116 -0
  133. package/dist/agents/mcp-tool/mcp-tool.handler.js.map +1 -0
  134. package/dist/agents/mcp-tool/mcp-tool.schema.d.ts +19 -0
  135. package/dist/agents/mcp-tool/mcp-tool.schema.d.ts.map +1 -0
  136. package/dist/agents/mcp-tool/mcp-tool.schema.js +20 -0
  137. package/dist/agents/mcp-tool/mcp-tool.schema.js.map +1 -0
  138. package/dist/agents/mcp-tool/mcp-tool.types.d.ts +31 -0
  139. package/dist/agents/mcp-tool/mcp-tool.types.d.ts.map +1 -0
  140. package/dist/agents/mcp-tool/mcp-tool.types.js +6 -0
  141. package/dist/agents/mcp-tool/mcp-tool.types.js.map +1 -0
  142. package/dist/agents/mcp-tool/mcp-tool.yaml +71 -0
  143. package/dist/agents/rag/index.d.ts +15 -0
  144. package/dist/agents/rag/index.d.ts.map +1 -0
  145. package/dist/agents/rag/index.js +20 -0
  146. package/dist/agents/rag/index.js.map +1 -0
  147. package/dist/agents/rag/rag.handler.d.ts +9 -0
  148. package/dist/agents/rag/rag.handler.d.ts.map +1 -0
  149. package/dist/agents/rag/rag.handler.js +78 -0
  150. package/dist/agents/rag/rag.handler.js.map +1 -0
  151. package/dist/agents/rag/rag.schema.d.ts +27 -0
  152. package/dist/agents/rag/rag.schema.d.ts.map +1 -0
  153. package/dist/agents/rag/rag.schema.js +24 -0
  154. package/dist/agents/rag/rag.schema.js.map +1 -0
  155. package/dist/agents/rag/rag.types.d.ts +42 -0
  156. package/dist/agents/rag/rag.types.d.ts.map +1 -0
  157. package/dist/agents/rag/rag.types.js +7 -0
  158. package/dist/agents/rag/rag.types.js.map +1 -0
  159. package/dist/agents/rag/rag.yaml +89 -0
  160. package/dist/agents/{agentRegistry.d.ts → registry/agentRegistry.d.ts} +30 -1
  161. package/dist/agents/registry/agentRegistry.d.ts.map +1 -0
  162. package/dist/agents/{agentRegistry.js → registry/agentRegistry.js} +187 -5
  163. package/dist/agents/registry/agentRegistry.js.map +1 -0
  164. package/dist/agents/registry/index.d.ts +6 -0
  165. package/dist/agents/registry/index.d.ts.map +1 -0
  166. package/dist/agents/registry/index.js +10 -0
  167. package/dist/agents/registry/index.js.map +1 -0
  168. package/dist/agents/translator/index.d.ts +14 -0
  169. package/dist/agents/translator/index.d.ts.map +1 -0
  170. package/dist/agents/translator/index.js +19 -0
  171. package/dist/agents/translator/index.js.map +1 -0
  172. package/dist/agents/translator/translator.handler.d.ts +8 -0
  173. package/dist/agents/translator/translator.handler.d.ts.map +1 -0
  174. package/dist/agents/translator/translator.handler.js +81 -0
  175. package/dist/agents/translator/translator.handler.js.map +1 -0
  176. package/dist/agents/translator/translator.schema.d.ts +27 -0
  177. package/dist/agents/translator/translator.schema.d.ts.map +1 -0
  178. package/dist/agents/translator/translator.schema.js +28 -0
  179. package/dist/agents/translator/translator.schema.js.map +1 -0
  180. package/dist/agents/translator/translator.types.d.ts +41 -0
  181. package/dist/agents/translator/translator.types.d.ts.map +1 -0
  182. package/dist/agents/translator/translator.types.js +6 -0
  183. package/dist/agents/translator/translator.types.js.map +1 -0
  184. package/{src/agents/translator-agent.yaml → dist/agents/translator/translator.yaml} +27 -27
  185. package/dist/client/index.d.ts +89 -0
  186. package/dist/client/index.d.ts.map +1 -0
  187. package/dist/client/index.js +93 -0
  188. package/dist/client/index.js.map +1 -0
  189. package/dist/client/types.d.ts +17 -0
  190. package/dist/client/types.d.ts.map +1 -0
  191. package/dist/client/types.js +7 -0
  192. package/dist/client/types.js.map +1 -0
  193. package/dist/firebase/tenantManager.d.ts +34 -2
  194. package/dist/firebase/tenantManager.d.ts.map +1 -1
  195. package/dist/firebase/tenantManager.js +67 -1
  196. package/dist/firebase/tenantManager.js.map +1 -1
  197. package/dist/index.d.ts +10 -4
  198. package/dist/index.d.ts.map +1 -1
  199. package/dist/index.js +24 -7
  200. package/dist/index.js.map +1 -1
  201. package/dist/runtime/declarativeAgentRuntime.d.ts +17 -52
  202. package/dist/runtime/declarativeAgentRuntime.d.ts.map +1 -1
  203. package/dist/runtime/declarativeAgentRuntime.js +259 -361
  204. package/dist/runtime/declarativeAgentRuntime.js.map +1 -1
  205. package/dist/runtime/index.d.ts +14 -0
  206. package/dist/runtime/index.d.ts.map +1 -0
  207. package/dist/runtime/index.js +38 -0
  208. package/dist/runtime/index.js.map +1 -0
  209. package/dist/runtime/llmProviderFactory.d.ts +47 -0
  210. package/dist/runtime/llmProviderFactory.d.ts.map +1 -0
  211. package/dist/runtime/llmProviderFactory.js +119 -0
  212. package/dist/runtime/llmProviderFactory.js.map +1 -0
  213. package/dist/runtime/workflowExecutor.d.ts +31 -0
  214. package/dist/runtime/workflowExecutor.d.ts.map +1 -0
  215. package/dist/runtime/workflowExecutor.js +80 -0
  216. package/dist/runtime/workflowExecutor.js.map +1 -0
  217. package/dist/server/api/graphql.js +3 -3
  218. package/dist/server/api/graphql.js.map +1 -1
  219. package/dist/server/index.d.ts +2 -2
  220. package/dist/server/index.d.ts.map +1 -1
  221. package/dist/server/index.js +2 -2
  222. package/dist/server/index.js.map +1 -1
  223. package/dist/shared/index.d.ts +7 -0
  224. package/dist/shared/index.d.ts.map +1 -0
  225. package/dist/shared/index.js +23 -0
  226. package/dist/shared/index.js.map +1 -0
  227. package/dist/shared/types/agent.types.d.ts +63 -0
  228. package/dist/shared/types/agent.types.d.ts.map +1 -0
  229. package/dist/shared/types/agent.types.js +18 -0
  230. package/dist/shared/types/agent.types.js.map +1 -0
  231. package/dist/shared/types/execution.types.d.ts +42 -0
  232. package/dist/shared/types/execution.types.d.ts.map +1 -0
  233. package/dist/shared/types/execution.types.js +7 -0
  234. package/dist/shared/types/execution.types.js.map +1 -0
  235. package/dist/shared/types/index.d.ts +7 -0
  236. package/dist/shared/types/index.d.ts.map +1 -0
  237. package/dist/shared/types/index.js +23 -0
  238. package/dist/shared/types/index.js.map +1 -0
  239. package/dist/shared/types/schema.types.d.ts +52 -0
  240. package/dist/shared/types/schema.types.d.ts.map +1 -0
  241. package/dist/shared/types/schema.types.js +7 -0
  242. package/dist/shared/types/schema.types.js.map +1 -0
  243. package/dist/shared/utils/index.d.ts +5 -0
  244. package/dist/shared/utils/index.d.ts.map +1 -0
  245. package/dist/shared/utils/index.js +21 -0
  246. package/dist/shared/utils/index.js.map +1 -0
  247. package/dist/shared/utils/validation.d.ts +42 -0
  248. package/dist/shared/utils/validation.d.ts.map +1 -0
  249. package/dist/shared/utils/validation.js +93 -0
  250. package/dist/shared/utils/validation.js.map +1 -0
  251. package/dist/tenant/TenantManager.d.ts +152 -0
  252. package/dist/tenant/TenantManager.d.ts.map +1 -0
  253. package/dist/tenant/TenantManager.js +392 -0
  254. package/dist/tenant/TenantManager.js.map +1 -0
  255. package/dist/tenant/index.d.ts +47 -0
  256. package/dist/tenant/index.d.ts.map +1 -0
  257. package/dist/tenant/index.js +74 -0
  258. package/dist/tenant/index.js.map +1 -0
  259. package/dist/tenant/interfaces.d.ts +170 -0
  260. package/dist/tenant/interfaces.d.ts.map +1 -0
  261. package/dist/tenant/interfaces.js +67 -0
  262. package/dist/tenant/interfaces.js.map +1 -0
  263. package/dist/tenant/providerFactory.d.ts +43 -0
  264. package/dist/tenant/providerFactory.d.ts.map +1 -0
  265. package/dist/tenant/providerFactory.js +70 -0
  266. package/dist/tenant/providerFactory.js.map +1 -0
  267. package/dist/tenant/providerRegistry.d.ts +47 -0
  268. package/dist/tenant/providerRegistry.d.ts.map +1 -0
  269. package/dist/tenant/providerRegistry.js +79 -0
  270. package/dist/tenant/providerRegistry.js.map +1 -0
  271. package/dist/tenant/providers/FirebaseTenantProvider.d.ts +41 -0
  272. package/dist/tenant/providers/FirebaseTenantProvider.d.ts.map +1 -0
  273. package/dist/tenant/providers/FirebaseTenantProvider.js +290 -0
  274. package/dist/tenant/providers/FirebaseTenantProvider.js.map +1 -0
  275. package/dist/tenant/providers/InMemoryTenantProvider.d.ts +18 -0
  276. package/dist/tenant/providers/InMemoryTenantProvider.d.ts.map +1 -0
  277. package/dist/tenant/providers/InMemoryTenantProvider.js +137 -0
  278. package/dist/tenant/providers/InMemoryTenantProvider.js.map +1 -0
  279. package/package.json +46 -10
  280. package/src/agents/chat/chat.handler.ts +211 -0
  281. package/src/agents/chat/chat.schema.ts +33 -0
  282. package/src/agents/chat/chat.types.ts +46 -0
  283. package/src/agents/chat/chat.yaml +148 -0
  284. package/src/agents/chat/index.ts +21 -0
  285. package/src/agents/chromadb/chromadb.handler.ts +130 -0
  286. package/src/agents/chromadb/chromadb.schema.ts +35 -0
  287. package/src/agents/chromadb/chromadb.types.ts +52 -0
  288. package/src/agents/chromadb/chromadb.yaml +128 -0
  289. package/src/agents/chromadb/index.ts +20 -0
  290. package/src/agents/gemini-vectorize/gemini-vectorize.handler.ts +75 -0
  291. package/src/agents/gemini-vectorize/gemini-vectorize.schema.ts +22 -0
  292. package/src/agents/gemini-vectorize/gemini-vectorize.types.ts +34 -0
  293. package/src/agents/gemini-vectorize/gemini-vectorize.yaml +84 -0
  294. package/src/agents/gemini-vectorize/index.ts +20 -0
  295. package/src/agents/gitmcp/gitmcp.handler.ts +122 -0
  296. package/src/agents/gitmcp/gitmcp.schema.ts +20 -0
  297. package/src/agents/gitmcp/gitmcp.types.ts +33 -0
  298. package/src/agents/gitmcp/gitmcp.yaml +71 -0
  299. package/src/agents/gitmcp/index.ts +21 -0
  300. package/src/agents/image/image.handler.ts +86 -0
  301. package/src/agents/image/image.schema.ts +28 -0
  302. package/src/agents/image/image.types.ts +46 -0
  303. package/src/agents/image/image.yaml +86 -0
  304. package/src/agents/image/index.ts +19 -0
  305. package/src/agents/index.ts +63 -0
  306. package/src/agents/joker/index.ts +19 -0
  307. package/src/agents/joker/joker.handler.ts +55 -0
  308. package/src/agents/joker/joker.schema.ts +15 -0
  309. package/src/agents/joker/joker.types.ts +38 -0
  310. package/src/agents/joker/joker.yaml +47 -0
  311. package/src/agents/llm/index.ts +20 -0
  312. package/src/agents/llm/llm.handler.ts +82 -0
  313. package/src/agents/llm/llm.schema.ts +25 -0
  314. package/src/agents/llm/llm.types.ts +37 -0
  315. package/src/agents/llm/llm.yaml +87 -0
  316. package/src/agents/mcp-tool/index.ts +19 -0
  317. package/src/agents/mcp-tool/mcp-tool.handler.ts +112 -0
  318. package/src/agents/mcp-tool/mcp-tool.schema.ts +22 -0
  319. package/src/agents/mcp-tool/mcp-tool.types.ts +33 -0
  320. package/src/agents/mcp-tool/mcp-tool.yaml +71 -0
  321. package/src/agents/rag/index.ts +20 -0
  322. package/src/agents/rag/rag.handler.ts +95 -0
  323. package/src/agents/rag/rag.schema.ts +26 -0
  324. package/src/agents/rag/rag.types.ts +45 -0
  325. package/src/agents/rag/rag.yaml +89 -0
  326. package/src/agents/{agentRegistry.ts → registry/agentRegistry.ts} +195 -6
  327. package/src/agents/registry/index.ts +6 -0
  328. package/src/agents/translator/index.ts +19 -0
  329. package/src/agents/translator/translator.handler.ts +97 -0
  330. package/src/agents/translator/translator.schema.ts +30 -0
  331. package/src/agents/translator/translator.types.ts +43 -0
  332. package/src/agents/translator/translator.yaml +80 -0
  333. package/src/client/index.ts +53 -0
  334. package/src/client/types.ts +38 -0
  335. package/src/index.ts +56 -5
  336. package/src/runtime/declarativeAgentRuntime.ts +378 -495
  337. package/src/runtime/index.ts +36 -0
  338. package/src/runtime/llmProviderFactory.ts +145 -0
  339. package/src/runtime/workflowExecutor.ts +107 -0
  340. package/src/server/api/graphql.ts +1 -1
  341. package/src/server/index.ts +2 -2
  342. package/src/shared/index.ts +7 -0
  343. package/src/shared/types/agent.types.ts +100 -0
  344. package/src/shared/types/execution.types.ts +45 -0
  345. package/src/shared/types/index.ts +7 -0
  346. package/src/shared/types/schema.types.ts +55 -0
  347. package/src/shared/utils/index.ts +5 -0
  348. package/src/shared/utils/validation.ts +100 -0
  349. package/src/tenant/TenantManager.ts +488 -0
  350. package/src/tenant/index.ts +101 -0
  351. package/src/tenant/interfaces.ts +231 -0
  352. package/src/tenant/providerFactory.ts +75 -0
  353. package/src/tenant/providerRegistry.ts +86 -0
  354. package/src/tenant/providers/InMemoryTenantProvider.ts +168 -0
  355. package/dist/agents/agentRegistry.d.ts.map +0 -1
  356. package/dist/agents/agentRegistry.js.map +0 -1
  357. package/src/firebase/tenantManager.ts +0 -443
package/CHANGELOG.md CHANGED
@@ -1,5 +1,55 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.3.0] - 2025-12-22
4
+
5
+ ### Added
6
+ - **New LLM Agent**: Direct LLM interaction without document context
7
+ - `llm.execute` method for simple chat with conversation history
8
+ - `llm` workflow step type for declarative workflows
9
+ - Full TypeScript types: `LlmHandlerParams`, `LlmHandlerResult`, `LlmMetadata`
10
+ - Zod schemas: `LlmInputSchema`, `LlmOutputSchema`
11
+
12
+ ### Changed
13
+ - **Refactored Agent Architecture**: Fixed responsibility leak between chat and rag agents
14
+ - RAG agent now ALWAYS requires document context (removed `mode` parameter)
15
+ - Chat agent uses LLM agent for `mode='simple'` (previously used RAG with mode)
16
+ - Clear separation: LLM = direct chat, RAG = document-augmented generation
17
+ - **Updated Documentation**:
18
+ - Added GraphQL API Integration section with complete examples
19
+ - Updated agent architecture diagram
20
+ - Added LLM agent to built-in agents catalog
21
+ - Updated workflow step types table
22
+
23
+ ### Removed
24
+ - `RagMode` type from RAG agent (was semantically incorrect)
25
+ - `buildSimpleChatPrompt` function from RAG handler (moved to LLM agent)
26
+ - `mode` parameter from RAG agent (RAG always requires documents)
27
+
28
+ ### Migration Guide
29
+ If you were using `rag.execute` with `mode: 'simple'`:
30
+ ```typescript
31
+ // Before (v0.2.x)
32
+ await executeRagHandler({ query, history, mode: 'simple' }, props, context);
33
+
34
+ // After (v0.3.0)
35
+ await executeLlmHandler({ query, history }, props, context);
36
+ ```
37
+
38
+ ## [0.2.3] - 2025-12-20
39
+
40
+ ### Added
41
+ - **Client-Safe Type Exports**: Exposed shared types for frontend consumption
42
+ - `AgentMetadata`, `AgentResponse`, `ExecutionStep` from shared agent types
43
+ - `WorkflowStepType`, `AgentCategory` for workflow typing
44
+ - `ChatHandlerParams`, `ChatHandlerResult`, `ChatMetadata` for chat agent
45
+ - `ConversationMessage` from RAG types
46
+ - `chatMetadata` constant for chat agent metadata
47
+
48
+ ### Purpose
49
+ - Enable frontend applications to import types directly from `beddel` package
50
+ - Support type-safe chat UI development without duplicating type definitions
51
+ - All exported types are client-safe (no server-only dependencies)
52
+
3
53
  ## [0.2.2] - 2025-12-19
4
54
 
5
55
  ### Changed
package/README.md CHANGED
@@ -132,10 +132,29 @@ your-app/
132
132
  │ └── translator-custom/
133
133
  │ └── translator-custom.yaml # Override built-in
134
134
 
135
- └── packages/beddel/src/agents/ # Built-in agents (package)
136
- ├── joker-agent.yaml
137
- ├── translator-agent.yaml
138
- └── image-agent.yaml
135
+ └── packages/beddel/src/agents/ # Built-in agents (sharded structure)
136
+ ├── joker/
137
+ ├── joker.yaml # Agent definition
138
+ │ ├── joker.handler.ts # Server-only handler
139
+ │ ├── joker.schema.ts # Zod validation
140
+ │ ├── joker.types.ts # TypeScript types
141
+ │ └── index.ts # Public exports
142
+ ├── translator/
143
+ │ └── ...
144
+ ├── image/
145
+ │ └── ...
146
+ ├── mcp-tool/
147
+ │ └── ...
148
+ ├── gemini-vectorize/
149
+ │ └── ...
150
+ ├── chromadb/
151
+ │ └── ...
152
+ ├── gitmcp/
153
+ │ └── ...
154
+ ├── rag/
155
+ │ └── ...
156
+ └── chat/
157
+ └── ...
139
158
  ```
140
159
 
141
160
  ### Agent Loading Flow
@@ -409,7 +428,7 @@ const result = await agentRegistry.executeAgent(
409
428
  | **Security** | `SecurityScanner`, `ThreatDetectionEngine` | Static scanning, scoring |
410
429
  | **Compliance** | `GDPRCompliance`, `LGPDCompliance` | Audit, anonymization |
411
430
  | **Performance** | `PerformanceMonitor`, `AutoScaler` | Metrics, scaling |
412
- | **Multi-tenancy** | `MultiTenantFirebaseManager` | Firebase tenant isolation |
431
+ | **Multi-tenancy** | `TenantManager`, `ITenantProvider` | Provider-agnostic tenant isolation |
413
432
 
414
433
  ### Secure YAML Parsing
415
434
 
@@ -495,6 +514,65 @@ Supported types: `string`, `number`, `boolean`, `object`, `array`
495
514
 
496
515
  ---
497
516
 
517
+ ## Multi-Tenant Architecture
518
+
519
+ Beddel provides a provider-agnostic multi-tenant system with a dynamic registry for external providers.
520
+
521
+ ### Built-in Providers
522
+
523
+ | Provider | Type | Use Case |
524
+ |----------|------|----------|
525
+ | `InMemoryTenantProvider` | `memory` | Testing, development |
526
+
527
+ ### External Providers
528
+
529
+ Provider implementations that handle credentials (Firebase, Supabase, etc.) should be implemented in the consuming application. Use `ProviderRegistry` to register custom providers:
530
+
531
+ ```typescript
532
+ import { ProviderRegistry } from "beddel";
533
+ import { FirebaseTenantProvider } from "./providers/FirebaseTenantProvider";
534
+
535
+ // Register during application bootstrap
536
+ ProviderRegistry.register('firebase', () => new FirebaseTenantProvider());
537
+ ```
538
+
539
+ ### Quick Start
540
+
541
+ ```typescript
542
+ import { TenantManager } from "beddel";
543
+
544
+ const manager = TenantManager.getInstance();
545
+
546
+ // Initialize tenant
547
+ const result = await manager.initializeTenant({
548
+ tenantId: "tenant-123",
549
+ securityProfile: "tenant-isolated",
550
+ dataRetentionDays: 365,
551
+ lgpdEnabled: true,
552
+ gdprEnabled: true,
553
+ provider: "memory", // or registered external provider like "firebase"
554
+ providerConfig: {}
555
+ });
556
+
557
+ // Execute in tenant context
558
+ await manager.executeInTenant("tenant-123", "operation", data, async () => {
559
+ const app = manager.getTenantApp("tenant-123");
560
+ const db = app.getDatabase();
561
+ await db.collection("users").add({ name: "Alice" });
562
+ });
563
+ ```
564
+
565
+ ### Core Interfaces
566
+
567
+ - `ITenantProvider` — Abstract provider for tenant management
568
+ - `ITenantApp` — Isolated tenant instance
569
+ - `ITenantDatabase` — Database operations
570
+ - `ITenantCollection` — Collection operations
571
+ - `ITenantDocument` — Document CRUD
572
+ - `ProviderRegistry` — Dynamic provider registration
573
+
574
+ ---
575
+
498
576
  ## Security
499
577
 
500
578
  ### Multi-Layer Security Model
@@ -520,20 +598,45 @@ const result = await runtime.execute({
520
598
 
521
599
  ```
522
600
  src/
523
- ├── agents/ # Agent registry and built-in agents
524
- │ ├── agentRegistry.ts # Agent management
525
- │ ├── joker-agent.yaml # Built-in: Joker
526
- ├── translator-agent.yaml
527
- └── image-agent.yaml
528
- ├── parser/ # Secure YAML parsing
601
+ ├── agents/ # Agent registry and sharded agent modules
602
+ │ ├── registry/ # Agent registry
603
+ ├── agentRegistry.ts
604
+ │ └── index.ts
605
+ ├── joker/ # Joker agent
606
+ │ │ ├── joker.yaml
607
+ │ │ ├── joker.handler.ts
608
+ │ │ ├── joker.schema.ts
609
+ │ │ ├── joker.types.ts
610
+ │ │ └── index.ts
611
+ │ ├── translator/ # Translator agent
612
+ │ ├── image/ # Image generator agent
613
+ │ ├── mcp-tool/ # MCP tool agent
614
+ │ ├── gemini-vectorize/ # Embeddings agent
615
+ │ ├── chromadb/ # Vector storage agent
616
+ │ ├── gitmcp/ # GitHub docs agent
617
+ │ ├── rag/ # RAG agent
618
+ │ ├── chat/ # Chat orchestrator agent
619
+ │ └── index.ts # Public exports
529
620
  ├── runtime/ # Execution environments
530
- │ ├── isolatedRuntime.ts
531
621
  │ ├── declarativeAgentRuntime.ts
532
- └── schemaCompiler.ts
622
+ ├── workflowExecutor.ts # Workflow step execution
623
+ │ ├── schemaCompiler.ts
624
+ │ └── index.ts
625
+ ├── shared/ # Client-safe types and utilities
626
+ │ ├── types/
627
+ │ └── utils/
628
+ ├── client/ # Client-safe exports
629
+ ├── parser/ # Secure YAML parsing
533
630
  ├── security/ # Scanning and threat detection
534
631
  ├── compliance/ # GDPR/LGPD utilities
535
632
  ├── performance/ # Monitoring and autoscaling
536
- ├── firebase/ # Multi-tenant management
633
+ ├── tenant/ # Provider-agnostic multi-tenant management
634
+ │ ├── TenantManager.ts # Singleton tenant orchestrator
635
+ │ ├── interfaces.ts # ITenantProvider, ITenantApp, etc.
636
+ │ ├── providerFactory.ts # Provider instantiation
637
+ │ ├── providerRegistry.ts # Dynamic provider registration
638
+ │ └── providers/ # Built-in provider implementations
639
+ │ └── InMemoryTenantProvider.ts
537
640
  └── index.ts # Public exports
538
641
  ```
539
642
 
@@ -0,0 +1,12 @@
1
+ import 'server-only';
2
+ /**
3
+ * Chat Agent Handler - Server-only execution logic
4
+ * Orchestrates RAG pipeline or simple LLM chat based on mode
5
+ */
6
+ import type { ExecutionContext } from '../../types/executionContext';
7
+ import type { ChatHandlerParams, ChatHandlerResult } from './chat.types';
8
+ /**
9
+ * Execute chat orchestration
10
+ */
11
+ export declare function executeChatHandler(params: ChatHandlerParams, props: Record<string, string>, context: ExecutionContext): Promise<ChatHandlerResult>;
12
+ //# sourceMappingURL=chat.handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.handler.d.ts","sourceRoot":"","sources":["../../../src/agents/chat/chat.handler.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AAErB;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAY,MAAM,cAAc,CAAC;AAuKnF;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,iBAAiB,EACzB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7B,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,iBAAiB,CAAC,CA2B5B"}
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.executeChatHandler = executeChatHandler;
4
+ require("server-only");
5
+ const gemini_vectorize_handler_1 = require("../gemini-vectorize/gemini-vectorize.handler");
6
+ const chromadb_handler_1 = require("../chromadb/chromadb.handler");
7
+ const rag_handler_1 = require("../rag/rag.handler");
8
+ const llm_handler_1 = require("../llm/llm.handler");
9
+ const KNOWLEDGE_COLLECTION = 'beddel_knowledge';
10
+ /**
11
+ * Execute simple chat mode - direct LLM with conversation history (no documents)
12
+ */
13
+ async function executeSimpleChat(query, messages, props, context, executionSteps) {
14
+ const startTime = Date.now();
15
+ context.log(`[Chat:Simple] Processing query: "${query.substring(0, 50)}..."`);
16
+ const chatStep = {
17
+ agent: 'llm',
18
+ action: 'chat',
19
+ status: 'running',
20
+ startTime: Date.now(),
21
+ phase: 'generation',
22
+ };
23
+ executionSteps.push(chatStep);
24
+ const result = await (0, llm_handler_1.executeLlmHandler)({ query, history: messages }, props, context);
25
+ chatStep.status = result.error ? 'error' : 'success';
26
+ chatStep.endTime = Date.now();
27
+ chatStep.duration = chatStep.endTime - chatStep.startTime;
28
+ if (result.error)
29
+ chatStep.error = result.error;
30
+ return {
31
+ response: result.response,
32
+ timestamp: result.timestamp,
33
+ execution_steps: executionSteps,
34
+ total_duration: Date.now() - startTime,
35
+ };
36
+ }
37
+ /**
38
+ * Execute RAG chat mode - full pipeline with knowledge base
39
+ */
40
+ async function executeRagChat(query, messages, props, context, executionSteps) {
41
+ const startTime = Date.now();
42
+ context.log(`[Chat:RAG] Processing query: "${query.substring(0, 50)}..."`);
43
+ // Step 1: Vectorize user query
44
+ const vectorizeStep = {
45
+ agent: 'gemini-vectorize',
46
+ action: 'embedSingle',
47
+ status: 'running',
48
+ startTime: Date.now(),
49
+ phase: 'vectorization',
50
+ };
51
+ executionSteps.push(vectorizeStep);
52
+ const vectorResult = await (0, gemini_vectorize_handler_1.executeVectorizeHandler)({ action: 'embedSingle', text: query }, props, context);
53
+ vectorizeStep.status = vectorResult.success ? 'success' : 'error';
54
+ vectorizeStep.endTime = Date.now();
55
+ vectorizeStep.duration = vectorizeStep.endTime - vectorizeStep.startTime;
56
+ if (!vectorResult.success || !vectorResult.vector) {
57
+ throw new Error(`Vectorization failed: ${vectorResult.error}`);
58
+ }
59
+ // Step 2: Check if knowledge base has data
60
+ const checkStep = {
61
+ agent: 'chromadb',
62
+ action: 'hasData',
63
+ status: 'running',
64
+ startTime: Date.now(),
65
+ phase: 'retrieval',
66
+ };
67
+ executionSteps.push(checkStep);
68
+ const hasDataResult = await (0, chromadb_handler_1.executeChromaDBHandler)({ action: 'hasData', collection_name: KNOWLEDGE_COLLECTION, min_count: 5 }, props, context);
69
+ checkStep.status = hasDataResult.success ? 'success' : 'error';
70
+ checkStep.endTime = Date.now();
71
+ checkStep.duration = checkStep.endTime - checkStep.startTime;
72
+ // Step 3: Search knowledge base
73
+ const searchStep = {
74
+ agent: 'chromadb',
75
+ action: 'search',
76
+ status: 'running',
77
+ startTime: Date.now(),
78
+ phase: 'retrieval',
79
+ };
80
+ executionSteps.push(searchStep);
81
+ const searchResult = await (0, chromadb_handler_1.executeChromaDBHandler)({
82
+ action: 'search',
83
+ collection_name: KNOWLEDGE_COLLECTION,
84
+ query_vector: vectorResult.vector,
85
+ limit: 5,
86
+ }, props, context);
87
+ searchStep.status = searchResult.success ? 'success' : 'error';
88
+ searchStep.endTime = Date.now();
89
+ searchStep.duration = searchStep.endTime - searchStep.startTime;
90
+ // Step 4: Generate answer using RAG
91
+ const ragStep = {
92
+ agent: 'rag',
93
+ action: 'generate',
94
+ status: 'running',
95
+ startTime: Date.now(),
96
+ phase: 'generation',
97
+ };
98
+ executionSteps.push(ragStep);
99
+ const hasDocuments = searchResult.documents && searchResult.documents.trim().length > 0;
100
+ const documents = hasDocuments
101
+ ? searchResult.documents
102
+ : 'No specific documentation available. Answer based on general knowledge.';
103
+ const ragResult = await (0, rag_handler_1.executeRagHandler)({ query, documents, history: messages }, props, context);
104
+ ragStep.status = ragResult.error ? 'error' : 'success';
105
+ ragStep.endTime = Date.now();
106
+ ragStep.duration = ragStep.endTime - ragStep.startTime;
107
+ if (ragResult.error)
108
+ ragStep.error = ragResult.error;
109
+ return {
110
+ response: ragResult.response,
111
+ timestamp: ragResult.timestamp,
112
+ execution_steps: executionSteps,
113
+ total_duration: Date.now() - startTime,
114
+ };
115
+ }
116
+ /**
117
+ * Execute chat orchestration
118
+ */
119
+ async function executeChatHandler(params, props, context) {
120
+ const executionSteps = [];
121
+ const messages = params.messages || [];
122
+ const lastUserMessage = [...messages].reverse().find((m) => m.role === 'user');
123
+ const query = params.query || lastUserMessage?.content || '';
124
+ const mode = params.mode || 'rag';
125
+ if (!query) {
126
+ throw new Error('No query found in messages or query parameter');
127
+ }
128
+ try {
129
+ return mode === 'simple'
130
+ ? await executeSimpleChat(query, messages, props, context, executionSteps)
131
+ : await executeRagChat(query, messages, props, context, executionSteps);
132
+ }
133
+ catch (error) {
134
+ const message = error instanceof Error ? error.message : String(error);
135
+ context.log(`[Chat] Error: ${message}`);
136
+ context.setError(message);
137
+ return {
138
+ response: `Error processing your request: ${message}`,
139
+ timestamp: new Date().toISOString(),
140
+ execution_steps: executionSteps,
141
+ total_duration: 0,
142
+ };
143
+ }
144
+ }
145
+ //# sourceMappingURL=chat.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.handler.js","sourceRoot":"","sources":["../../../src/agents/chat/chat.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Chat Agent Schema - Zod validation schemas
3
+ * Safe for both client and server
4
+ */
5
+ import { z } from 'zod';
6
+ export declare const ChatInputSchema: z.ZodObject<{
7
+ messages: z.ZodArray<z.ZodObject<{
8
+ role: z.ZodEnum<{
9
+ user: "user";
10
+ assistant: "assistant";
11
+ system: "system";
12
+ }>;
13
+ content: z.ZodString;
14
+ }, z.core.$strip>>;
15
+ query: z.ZodOptional<z.ZodString>;
16
+ knowledge_sources: z.ZodOptional<z.ZodArray<z.ZodString>>;
17
+ }, z.core.$strip>;
18
+ export declare const ChatOutputSchema: z.ZodObject<{
19
+ response: z.ZodString;
20
+ timestamp: z.ZodString;
21
+ execution_steps: z.ZodOptional<z.ZodArray<z.ZodObject<{
22
+ agent: z.ZodString;
23
+ action: z.ZodString;
24
+ status: z.ZodEnum<{
25
+ error: "error";
26
+ success: "success";
27
+ running: "running";
28
+ }>;
29
+ startTime: z.ZodNumber;
30
+ endTime: z.ZodOptional<z.ZodNumber>;
31
+ duration: z.ZodOptional<z.ZodNumber>;
32
+ error: z.ZodOptional<z.ZodString>;
33
+ }, z.core.$strip>>>;
34
+ total_duration: z.ZodOptional<z.ZodNumber>;
35
+ }, z.core.$strip>;
36
+ export type ChatInput = z.infer<typeof ChatInputSchema>;
37
+ export type ChatOutput = z.infer<typeof ChatOutputSchema>;
38
+ //# sourceMappingURL=chat.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.schema.d.ts","sourceRoot":"","sources":["../../../src/agents/chat/chat.schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe;;;;;;;;;;;iBAO1B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;iBAa3B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ /**
3
+ * Chat Agent Schema - Zod validation schemas
4
+ * Safe for both client and server
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ChatOutputSchema = exports.ChatInputSchema = void 0;
8
+ const zod_1 = require("zod");
9
+ exports.ChatInputSchema = zod_1.z.object({
10
+ messages: zod_1.z.array(zod_1.z.object({
11
+ role: zod_1.z.enum(['user', 'assistant', 'system']),
12
+ content: zod_1.z.string(),
13
+ })),
14
+ query: zod_1.z.string().optional(),
15
+ knowledge_sources: zod_1.z.array(zod_1.z.string()).optional(),
16
+ });
17
+ exports.ChatOutputSchema = zod_1.z.object({
18
+ response: zod_1.z.string(),
19
+ timestamp: zod_1.z.string(),
20
+ execution_steps: zod_1.z.array(zod_1.z.object({
21
+ agent: zod_1.z.string(),
22
+ action: zod_1.z.string(),
23
+ status: zod_1.z.enum(['running', 'success', 'error']),
24
+ startTime: zod_1.z.number(),
25
+ endTime: zod_1.z.number().optional(),
26
+ duration: zod_1.z.number().optional(),
27
+ error: zod_1.z.string().optional(),
28
+ })).optional(),
29
+ total_duration: zod_1.z.number().optional(),
30
+ });
31
+ //# sourceMappingURL=chat.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.schema.js","sourceRoot":"","sources":["../../../src/agents/chat/chat.schema.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,6BAAwB;AAEX,QAAA,eAAe,GAAG,OAAC,CAAC,MAAM,CAAC;IACtC,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,CAAC;QACzB,IAAI,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC7C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;KACpB,CAAC,CAAC;IACH,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,iBAAiB,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAClD,CAAC,CAAC;AAEU,QAAA,gBAAgB,GAAG,OAAC,CAAC,MAAM,CAAC;IACvC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,eAAe,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,CAAC;QAChC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;QAClB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/C,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;QACrB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC/B,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC7B,CAAC,CAAC,CAAC,QAAQ,EAAE;IACd,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Chat Agent Types - Shared between client and server
3
+ */
4
+ import type { ConversationMessage } from '../rag/rag.types';
5
+ import type { ExecutionStep } from '../../shared/types/agent.types';
6
+ /**
7
+ * Chat mode determines the execution flow
8
+ * - 'rag': Full RAG pipeline with knowledge base (default)
9
+ * - 'simple': Direct LLM chat maintaining conversation context only
10
+ */
11
+ export type ChatMode = 'rag' | 'simple';
12
+ /**
13
+ * Parameters for chat orchestration
14
+ */
15
+ export interface ChatHandlerParams {
16
+ messages: ConversationMessage[];
17
+ query?: string;
18
+ mode?: ChatMode;
19
+ knowledge_sources?: string[];
20
+ }
21
+ /**
22
+ * Result from chat orchestration
23
+ */
24
+ export interface ChatHandlerResult {
25
+ response: string;
26
+ timestamp: string;
27
+ execution_steps?: ExecutionStep[];
28
+ total_duration?: number;
29
+ }
30
+ /**
31
+ * Chat agent metadata
32
+ */
33
+ export interface ChatMetadata {
34
+ id: 'chat';
35
+ name: string;
36
+ description: string;
37
+ category: 'chat';
38
+ route: '/agents/chat';
39
+ knowledge_sources: string[];
40
+ tags: string[];
41
+ }
42
+ //# sourceMappingURL=chat.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../../src/agents/chat/chat.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,QAAQ,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,aAAa,EAAE,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,cAAc,CAAC;IACtB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Chat Agent Types - Shared between client and server
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=chat.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.types.js","sourceRoot":"","sources":["../../../src/agents/chat/chat.types.ts"],"names":[],"mappings":";AAAA;;GAEG"}