@falai/agent 0.8.0 → 0.9.0-alpha-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (654) hide show
  1. package/README.md +306 -133
  2. package/dist/{adapters → cjs/src/adapters}/MemoryAdapter.d.ts +4 -4
  3. package/dist/cjs/src/adapters/MemoryAdapter.d.ts.map +1 -0
  4. package/dist/cjs/{adapters → src/adapters}/MemoryAdapter.js +41 -21
  5. package/dist/cjs/src/adapters/MemoryAdapter.js.map +1 -0
  6. package/dist/{adapters → cjs/src/adapters}/MongoAdapter.d.ts +3 -3
  7. package/dist/cjs/src/adapters/MongoAdapter.d.ts.map +1 -0
  8. package/dist/cjs/{adapters → src/adapters}/MongoAdapter.js +2 -1
  9. package/dist/cjs/src/adapters/MongoAdapter.js.map +1 -0
  10. package/dist/cjs/{adapters → src/adapters}/OpenSearchAdapter.d.ts +3 -3
  11. package/dist/cjs/src/adapters/OpenSearchAdapter.d.ts.map +1 -0
  12. package/dist/cjs/{adapters → src/adapters}/OpenSearchAdapter.js +10 -13
  13. package/dist/cjs/src/adapters/OpenSearchAdapter.js.map +1 -0
  14. package/dist/cjs/{adapters → src/adapters}/PostgreSQLAdapter.d.ts +3 -3
  15. package/dist/cjs/src/adapters/PostgreSQLAdapter.d.ts.map +1 -0
  16. package/dist/cjs/{adapters → src/adapters}/PostgreSQLAdapter.js +1 -1
  17. package/dist/cjs/src/adapters/PostgreSQLAdapter.js.map +1 -0
  18. package/dist/cjs/{adapters → src/adapters}/PrismaAdapter.d.ts +3 -3
  19. package/dist/cjs/src/adapters/PrismaAdapter.d.ts.map +1 -0
  20. package/dist/cjs/{adapters → src/adapters}/PrismaAdapter.js +35 -5
  21. package/dist/cjs/src/adapters/PrismaAdapter.js.map +1 -0
  22. package/dist/cjs/{adapters → src/adapters}/RedisAdapter.d.ts +3 -3
  23. package/dist/cjs/src/adapters/RedisAdapter.d.ts.map +1 -0
  24. package/dist/cjs/{adapters → src/adapters}/RedisAdapter.js +3 -2
  25. package/dist/cjs/src/adapters/RedisAdapter.js.map +1 -0
  26. package/dist/{adapters → cjs/src/adapters}/SQLiteAdapter.d.ts +3 -3
  27. package/dist/cjs/src/adapters/SQLiteAdapter.d.ts.map +1 -0
  28. package/dist/cjs/{adapters → src/adapters}/SQLiteAdapter.js +2 -1
  29. package/dist/cjs/src/adapters/SQLiteAdapter.js.map +1 -0
  30. package/dist/cjs/src/adapters/index.d.ts.map +1 -0
  31. package/dist/cjs/src/adapters/index.js.map +1 -0
  32. package/dist/cjs/src/constants/index.d.ts.map +1 -0
  33. package/dist/cjs/src/constants/index.js.map +1 -0
  34. package/dist/{core → cjs/src/core}/Agent.d.ts +67 -69
  35. package/dist/cjs/src/core/Agent.d.ts.map +1 -0
  36. package/dist/cjs/src/core/Agent.js +1433 -0
  37. package/dist/cjs/src/core/Agent.js.map +1 -0
  38. package/dist/cjs/src/core/Events.d.ts +26 -0
  39. package/dist/cjs/src/core/Events.d.ts.map +1 -0
  40. package/dist/cjs/src/core/Events.js +144 -0
  41. package/dist/cjs/src/core/Events.js.map +1 -0
  42. package/dist/cjs/src/core/PersistenceManager.d.ts +98 -0
  43. package/dist/cjs/src/core/PersistenceManager.d.ts.map +1 -0
  44. package/dist/cjs/{core → src/core}/PersistenceManager.js +62 -32
  45. package/dist/cjs/src/core/PersistenceManager.js.map +1 -0
  46. package/dist/cjs/src/core/PromptComposer.d.ts +27 -0
  47. package/dist/cjs/src/core/PromptComposer.d.ts.map +1 -0
  48. package/dist/cjs/src/core/PromptComposer.js +157 -0
  49. package/dist/cjs/src/core/PromptComposer.js.map +1 -0
  50. package/dist/cjs/src/core/ResponseEngine.d.ts +31 -0
  51. package/dist/cjs/src/core/ResponseEngine.d.ts.map +1 -0
  52. package/dist/cjs/src/core/ResponseEngine.js +84 -0
  53. package/dist/cjs/src/core/ResponseEngine.js.map +1 -0
  54. package/dist/cjs/src/core/ResponsePipeline.d.ts +143 -0
  55. package/dist/cjs/src/core/ResponsePipeline.d.ts.map +1 -0
  56. package/dist/cjs/src/core/ResponsePipeline.js +446 -0
  57. package/dist/cjs/src/core/ResponsePipeline.js.map +1 -0
  58. package/dist/cjs/src/core/Route.d.ts +126 -0
  59. package/dist/cjs/src/core/Route.d.ts.map +1 -0
  60. package/dist/cjs/{core → src/core}/Route.js +116 -20
  61. package/dist/cjs/src/core/Route.js.map +1 -0
  62. package/dist/{core → cjs/src/core}/RoutingEngine.d.ts +33 -38
  63. package/dist/cjs/src/core/RoutingEngine.d.ts.map +1 -0
  64. package/dist/cjs/{core → src/core}/RoutingEngine.js +102 -108
  65. package/dist/cjs/src/core/RoutingEngine.js.map +1 -0
  66. package/dist/cjs/src/core/SessionManager.d.ts +76 -0
  67. package/dist/cjs/src/core/SessionManager.d.ts.map +1 -0
  68. package/dist/cjs/src/core/SessionManager.js +197 -0
  69. package/dist/cjs/src/core/SessionManager.js.map +1 -0
  70. package/dist/cjs/src/core/Step.d.ts +96 -0
  71. package/dist/cjs/src/core/Step.d.ts.map +1 -0
  72. package/dist/cjs/src/core/Step.js +206 -0
  73. package/dist/cjs/src/core/Step.js.map +1 -0
  74. package/dist/cjs/src/core/ToolExecutor.d.ts +43 -0
  75. package/dist/cjs/src/core/ToolExecutor.d.ts.map +1 -0
  76. package/dist/cjs/{core → src/core}/ToolExecutor.js +19 -18
  77. package/dist/cjs/src/core/ToolExecutor.js.map +1 -0
  78. package/dist/{index.d.ts → cjs/src/index.d.ts} +7 -15
  79. package/dist/cjs/src/index.d.ts.map +1 -0
  80. package/dist/cjs/{index.js → src/index.js} +21 -19
  81. package/dist/cjs/src/index.js.map +1 -0
  82. package/dist/cjs/{providers → src/providers}/AnthropicProvider.d.ts +1 -1
  83. package/dist/cjs/src/providers/AnthropicProvider.d.ts.map +1 -0
  84. package/dist/cjs/{providers → src/providers}/AnthropicProvider.js +54 -2
  85. package/dist/cjs/src/providers/AnthropicProvider.js.map +1 -0
  86. package/dist/{providers → cjs/src/providers}/GeminiProvider.d.ts +1 -1
  87. package/dist/cjs/src/providers/GeminiProvider.d.ts.map +1 -0
  88. package/dist/cjs/{providers → src/providers}/GeminiProvider.js +65 -0
  89. package/dist/cjs/src/providers/GeminiProvider.js.map +1 -0
  90. package/dist/cjs/{providers → src/providers}/OpenAIProvider.d.ts +1 -1
  91. package/dist/cjs/src/providers/OpenAIProvider.d.ts.map +1 -0
  92. package/dist/cjs/{providers → src/providers}/OpenAIProvider.js +70 -1
  93. package/dist/cjs/src/providers/OpenAIProvider.js.map +1 -0
  94. package/dist/{providers → cjs/src/providers}/OpenRouterProvider.d.ts +1 -1
  95. package/dist/cjs/src/providers/OpenRouterProvider.d.ts.map +1 -0
  96. package/dist/cjs/{providers → src/providers}/OpenRouterProvider.js +76 -0
  97. package/dist/cjs/src/providers/OpenRouterProvider.js.map +1 -0
  98. package/dist/cjs/src/providers/index.d.ts.map +1 -0
  99. package/dist/cjs/src/providers/index.js.map +1 -0
  100. package/dist/cjs/{types → src/types}/agent.d.ts +54 -35
  101. package/dist/cjs/src/types/agent.d.ts.map +1 -0
  102. package/dist/cjs/src/types/agent.js.map +1 -0
  103. package/dist/cjs/{types → src/types}/ai.d.ts +7 -0
  104. package/dist/cjs/src/types/ai.d.ts.map +1 -0
  105. package/dist/cjs/src/types/ai.js.map +1 -0
  106. package/dist/{types → cjs/src/types}/history.d.ts +76 -18
  107. package/dist/cjs/src/types/history.d.ts.map +1 -0
  108. package/dist/cjs/src/types/history.js +33 -0
  109. package/dist/cjs/src/types/history.js.map +1 -0
  110. package/dist/cjs/src/types/index.d.ts +20 -0
  111. package/dist/cjs/src/types/index.d.ts.map +1 -0
  112. package/dist/cjs/src/types/index.js +30 -0
  113. package/dist/cjs/src/types/index.js.map +1 -0
  114. package/dist/{types → cjs/src/types}/persistence.d.ts +39 -23
  115. package/dist/cjs/src/types/persistence.d.ts.map +1 -0
  116. package/dist/cjs/src/types/persistence.js.map +1 -0
  117. package/dist/cjs/{types → src/types}/route.d.ts +85 -31
  118. package/dist/cjs/src/types/route.d.ts.map +1 -0
  119. package/dist/cjs/{types → src/types}/route.js.map +1 -1
  120. package/dist/cjs/src/types/routing.d.ts.map +1 -0
  121. package/dist/{types → cjs/src/types}/routing.js.map +1 -1
  122. package/dist/cjs/src/types/schema.d.ts.map +1 -0
  123. package/dist/{types → cjs/src/types}/schema.js.map +1 -1
  124. package/dist/cjs/src/types/session.d.ts +70 -0
  125. package/dist/cjs/src/types/session.d.ts.map +1 -0
  126. package/dist/cjs/src/types/session.js +6 -0
  127. package/dist/cjs/src/types/session.js.map +1 -0
  128. package/dist/cjs/src/types/template.d.ts +30 -0
  129. package/dist/cjs/src/types/template.d.ts.map +1 -0
  130. package/dist/cjs/src/types/template.js +3 -0
  131. package/dist/cjs/src/types/template.js.map +1 -0
  132. package/dist/cjs/{types → src/types}/tool.d.ts +6 -8
  133. package/dist/cjs/src/types/tool.d.ts.map +1 -0
  134. package/dist/cjs/{types → src/types}/tool.js.map +1 -1
  135. package/dist/cjs/src/utils/clone.d.ts +8 -0
  136. package/dist/cjs/src/utils/clone.d.ts.map +1 -0
  137. package/dist/cjs/src/utils/clone.js +36 -0
  138. package/dist/cjs/src/utils/clone.js.map +1 -0
  139. package/dist/{utils → cjs/src/utils}/event.d.ts +1 -1
  140. package/dist/cjs/src/utils/event.d.ts.map +1 -0
  141. package/dist/cjs/{utils → src/utils}/event.js +2 -2
  142. package/dist/cjs/src/utils/event.js.map +1 -0
  143. package/dist/cjs/src/utils/history.d.ts +31 -0
  144. package/dist/cjs/src/utils/history.d.ts.map +1 -0
  145. package/dist/cjs/src/utils/history.js +128 -0
  146. package/dist/cjs/src/utils/history.js.map +1 -0
  147. package/dist/cjs/src/utils/id.d.ts.map +1 -0
  148. package/dist/cjs/src/utils/id.js.map +1 -0
  149. package/dist/cjs/src/utils/index.d.ts +13 -0
  150. package/dist/cjs/src/utils/index.d.ts.map +1 -0
  151. package/dist/cjs/src/utils/index.js +49 -0
  152. package/dist/cjs/src/utils/index.js.map +1 -0
  153. package/dist/cjs/src/utils/logger.d.ts.map +1 -0
  154. package/dist/cjs/src/utils/logger.js.map +1 -0
  155. package/dist/cjs/src/utils/retry.d.ts.map +1 -0
  156. package/dist/cjs/src/utils/retry.js.map +1 -0
  157. package/dist/cjs/src/utils/session.d.ts +51 -0
  158. package/dist/cjs/src/utils/session.d.ts.map +1 -0
  159. package/dist/cjs/{types → src/utils}/session.js +36 -13
  160. package/dist/cjs/src/utils/session.js.map +1 -0
  161. package/dist/cjs/src/utils/template.d.ts +107 -0
  162. package/dist/cjs/src/utils/template.d.ts.map +1 -0
  163. package/dist/cjs/src/utils/template.js +283 -0
  164. package/dist/cjs/src/utils/template.js.map +1 -0
  165. package/dist/{cjs → src}/adapters/MemoryAdapter.d.ts +4 -4
  166. package/dist/src/adapters/MemoryAdapter.d.ts.map +1 -0
  167. package/dist/{adapters → src/adapters}/MemoryAdapter.js +41 -21
  168. package/dist/src/adapters/MemoryAdapter.js.map +1 -0
  169. package/dist/{cjs → src}/adapters/MongoAdapter.d.ts +3 -3
  170. package/dist/src/adapters/MongoAdapter.d.ts.map +1 -0
  171. package/dist/{adapters → src/adapters}/MongoAdapter.js +2 -1
  172. package/dist/src/adapters/MongoAdapter.js.map +1 -0
  173. package/dist/{adapters → src/adapters}/OpenSearchAdapter.d.ts +3 -3
  174. package/dist/src/adapters/OpenSearchAdapter.d.ts.map +1 -0
  175. package/dist/{adapters → src/adapters}/OpenSearchAdapter.js +10 -13
  176. package/dist/src/adapters/OpenSearchAdapter.js.map +1 -0
  177. package/dist/{adapters → src/adapters}/PostgreSQLAdapter.d.ts +3 -3
  178. package/dist/src/adapters/PostgreSQLAdapter.d.ts.map +1 -0
  179. package/dist/{adapters → src/adapters}/PostgreSQLAdapter.js +1 -1
  180. package/dist/src/adapters/PostgreSQLAdapter.js.map +1 -0
  181. package/dist/{adapters → src/adapters}/PrismaAdapter.d.ts +3 -3
  182. package/dist/src/adapters/PrismaAdapter.d.ts.map +1 -0
  183. package/dist/{adapters → src/adapters}/PrismaAdapter.js +35 -5
  184. package/dist/src/adapters/PrismaAdapter.js.map +1 -0
  185. package/dist/{adapters → src/adapters}/RedisAdapter.d.ts +3 -3
  186. package/dist/src/adapters/RedisAdapter.d.ts.map +1 -0
  187. package/dist/{adapters → src/adapters}/RedisAdapter.js +3 -2
  188. package/dist/src/adapters/RedisAdapter.js.map +1 -0
  189. package/dist/{cjs → src}/adapters/SQLiteAdapter.d.ts +3 -3
  190. package/dist/src/adapters/SQLiteAdapter.d.ts.map +1 -0
  191. package/dist/{adapters → src/adapters}/SQLiteAdapter.js +2 -1
  192. package/dist/src/adapters/SQLiteAdapter.js.map +1 -0
  193. package/dist/src/adapters/index.js.map +1 -0
  194. package/dist/src/constants/index.js.map +1 -0
  195. package/dist/{cjs → src}/core/Agent.d.ts +67 -69
  196. package/dist/src/core/Agent.d.ts.map +1 -0
  197. package/dist/src/core/Agent.js +1429 -0
  198. package/dist/src/core/Agent.js.map +1 -0
  199. package/dist/src/core/Events.d.ts +26 -0
  200. package/dist/src/core/Events.d.ts.map +1 -0
  201. package/dist/src/core/Events.js +137 -0
  202. package/dist/src/core/Events.js.map +1 -0
  203. package/dist/src/core/PersistenceManager.d.ts +98 -0
  204. package/dist/src/core/PersistenceManager.d.ts.map +1 -0
  205. package/dist/{core → src/core}/PersistenceManager.js +56 -26
  206. package/dist/src/core/PersistenceManager.js.map +1 -0
  207. package/dist/src/core/PromptComposer.d.ts +27 -0
  208. package/dist/src/core/PromptComposer.d.ts.map +1 -0
  209. package/dist/src/core/PromptComposer.js +153 -0
  210. package/dist/src/core/PromptComposer.js.map +1 -0
  211. package/dist/src/core/ResponseEngine.d.ts +31 -0
  212. package/dist/src/core/ResponseEngine.d.ts.map +1 -0
  213. package/dist/src/core/ResponseEngine.js +80 -0
  214. package/dist/src/core/ResponseEngine.js.map +1 -0
  215. package/dist/src/core/ResponsePipeline.d.ts +143 -0
  216. package/dist/src/core/ResponsePipeline.d.ts.map +1 -0
  217. package/dist/src/core/ResponsePipeline.js +442 -0
  218. package/dist/src/core/ResponsePipeline.js.map +1 -0
  219. package/dist/src/core/Route.d.ts +126 -0
  220. package/dist/src/core/Route.d.ts.map +1 -0
  221. package/dist/{core → src/core}/Route.js +116 -20
  222. package/dist/src/core/Route.js.map +1 -0
  223. package/dist/{cjs → src}/core/RoutingEngine.d.ts +33 -38
  224. package/dist/src/core/RoutingEngine.d.ts.map +1 -0
  225. package/dist/{core → src/core}/RoutingEngine.js +98 -104
  226. package/dist/src/core/RoutingEngine.js.map +1 -0
  227. package/dist/src/core/SessionManager.d.ts +76 -0
  228. package/dist/src/core/SessionManager.d.ts.map +1 -0
  229. package/dist/src/core/SessionManager.js +193 -0
  230. package/dist/src/core/SessionManager.js.map +1 -0
  231. package/dist/src/core/Step.d.ts +96 -0
  232. package/dist/src/core/Step.d.ts.map +1 -0
  233. package/dist/src/core/Step.js +202 -0
  234. package/dist/src/core/Step.js.map +1 -0
  235. package/dist/src/core/ToolExecutor.d.ts +43 -0
  236. package/dist/src/core/ToolExecutor.d.ts.map +1 -0
  237. package/dist/src/core/ToolExecutor.js +70 -0
  238. package/dist/src/core/ToolExecutor.js.map +1 -0
  239. package/dist/{cjs → src}/index.d.ts +7 -15
  240. package/dist/src/index.d.ts.map +1 -0
  241. package/dist/{index.js → src/index.js} +6 -7
  242. package/dist/src/index.js.map +1 -0
  243. package/dist/{providers → src/providers}/AnthropicProvider.d.ts +1 -1
  244. package/dist/src/providers/AnthropicProvider.d.ts.map +1 -0
  245. package/dist/{providers → src/providers}/AnthropicProvider.js +54 -2
  246. package/dist/src/providers/AnthropicProvider.js.map +1 -0
  247. package/dist/{cjs → src}/providers/GeminiProvider.d.ts +1 -1
  248. package/dist/{cjs → src}/providers/GeminiProvider.d.ts.map +1 -1
  249. package/dist/{providers → src/providers}/GeminiProvider.js +65 -0
  250. package/dist/src/providers/GeminiProvider.js.map +1 -0
  251. package/dist/{providers → src/providers}/OpenAIProvider.d.ts +1 -1
  252. package/dist/{cjs → src}/providers/OpenAIProvider.d.ts.map +1 -1
  253. package/dist/{providers → src/providers}/OpenAIProvider.js +70 -1
  254. package/dist/src/providers/OpenAIProvider.js.map +1 -0
  255. package/dist/{cjs → src}/providers/OpenRouterProvider.d.ts +1 -1
  256. package/dist/{cjs → src}/providers/OpenRouterProvider.d.ts.map +1 -1
  257. package/dist/{providers → src/providers}/OpenRouterProvider.js +76 -0
  258. package/dist/src/providers/OpenRouterProvider.js.map +1 -0
  259. package/dist/src/providers/index.js.map +1 -0
  260. package/dist/{types → src/types}/agent.d.ts +54 -35
  261. package/dist/src/types/agent.d.ts.map +1 -0
  262. package/dist/src/types/agent.js.map +1 -0
  263. package/dist/{types → src/types}/ai.d.ts +7 -0
  264. package/dist/src/types/ai.d.ts.map +1 -0
  265. package/dist/{cjs → src}/types/ai.js.map +1 -1
  266. package/dist/{cjs → src}/types/history.d.ts +76 -18
  267. package/dist/src/types/history.d.ts.map +1 -0
  268. package/dist/src/types/history.js +30 -0
  269. package/dist/src/types/history.js.map +1 -0
  270. package/dist/src/types/index.d.ts +20 -0
  271. package/dist/src/types/index.d.ts.map +1 -0
  272. package/dist/src/types/index.js +10 -0
  273. package/dist/src/types/index.js.map +1 -0
  274. package/dist/{cjs → src}/types/persistence.d.ts +39 -23
  275. package/dist/src/types/persistence.d.ts.map +1 -0
  276. package/dist/src/types/persistence.js.map +1 -0
  277. package/dist/{types → src/types}/route.d.ts +85 -31
  278. package/dist/src/types/route.d.ts.map +1 -0
  279. package/dist/{types → src/types}/route.js.map +1 -1
  280. package/dist/src/types/session.d.ts +70 -0
  281. package/dist/src/types/session.d.ts.map +1 -0
  282. package/dist/src/types/session.js +5 -0
  283. package/dist/src/types/session.js.map +1 -0
  284. package/dist/src/types/template.d.ts +30 -0
  285. package/dist/src/types/template.d.ts.map +1 -0
  286. package/dist/src/types/template.js +2 -0
  287. package/dist/src/types/template.js.map +1 -0
  288. package/dist/{types → src/types}/tool.d.ts +6 -8
  289. package/dist/{cjs → src}/types/tool.d.ts.map +1 -1
  290. package/dist/{types → src/types}/tool.js.map +1 -1
  291. package/dist/src/utils/clone.d.ts +8 -0
  292. package/dist/src/utils/clone.d.ts.map +1 -0
  293. package/dist/src/utils/clone.js +33 -0
  294. package/dist/src/utils/clone.js.map +1 -0
  295. package/dist/{cjs → src}/utils/event.d.ts +1 -1
  296. package/dist/{cjs → src}/utils/event.d.ts.map +1 -1
  297. package/dist/{utils → src/utils}/event.js +1 -1
  298. package/dist/src/utils/event.js.map +1 -0
  299. package/dist/src/utils/history.d.ts +31 -0
  300. package/dist/src/utils/history.d.ts.map +1 -0
  301. package/dist/src/utils/history.js +121 -0
  302. package/dist/src/utils/history.js.map +1 -0
  303. package/dist/src/utils/id.js.map +1 -0
  304. package/dist/src/utils/index.d.ts +13 -0
  305. package/dist/src/utils/index.d.ts.map +1 -0
  306. package/dist/src/utils/index.js +19 -0
  307. package/dist/src/utils/index.js.map +1 -0
  308. package/dist/src/utils/logger.js.map +1 -0
  309. package/dist/src/utils/retry.js.map +1 -0
  310. package/dist/src/utils/session.d.ts +51 -0
  311. package/dist/src/utils/session.d.ts.map +1 -0
  312. package/dist/{types → src/utils}/session.js +34 -13
  313. package/dist/src/utils/session.js.map +1 -0
  314. package/dist/src/utils/template.d.ts +107 -0
  315. package/dist/src/utils/template.d.ts.map +1 -0
  316. package/dist/src/utils/template.js +276 -0
  317. package/dist/src/utils/template.js.map +1 -0
  318. package/docs/README.md +174 -68
  319. package/docs/{API_REFERENCE.md → api/README.md} +902 -263
  320. package/docs/api/overview.md +798 -0
  321. package/docs/core/agent/README.md +642 -0
  322. package/docs/{CONTEXT_MANAGEMENT.md → core/agent/context-management.md} +144 -95
  323. package/docs/{ARCHITECTURE.md → core/agent/session-management.md} +74 -59
  324. package/docs/core/ai-integration/prompt-composition.md +196 -0
  325. package/docs/core/ai-integration/providers.md +515 -0
  326. package/docs/core/ai-integration/response-processing.md +165 -0
  327. package/docs/core/conversation-flows/data-collection.md +545 -0
  328. package/docs/core/conversation-flows/route-dsl.md +479 -0
  329. package/docs/core/conversation-flows/routes.md +61 -0
  330. package/docs/core/conversation-flows/step-transitions.md +595 -0
  331. package/docs/core/conversation-flows/steps.md +130 -0
  332. package/docs/{ADAPTERS.md → core/persistence/adapters.md} +2 -2
  333. package/docs/core/persistence/session-storage.md +644 -0
  334. package/docs/core/routing/intelligent-routing.md +339 -0
  335. package/docs/core/tools/tool-definition.md +346 -0
  336. package/docs/core/tools/tool-execution.md +815 -0
  337. package/docs/core/tools/tool-scoping.md +628 -0
  338. package/docs/guides/getting-started/README.md +384 -0
  339. package/examples/{company-qna-agent.ts → advanced-patterns/knowledge-based-agent.ts} +104 -69
  340. package/examples/{persistent-onboarding.ts → advanced-patterns/persistent-onboarding.ts} +181 -103
  341. package/examples/{rules-prohibitions.ts → advanced-patterns/route-lifecycle-hooks.ts} +102 -82
  342. package/examples/{streaming-agent.ts → advanced-patterns/streaming-responses.ts} +90 -69
  343. package/examples/ai-providers/anthropic-integration.ts +377 -0
  344. package/examples/{openai-agent.ts → ai-providers/openai-integration.ts} +37 -43
  345. package/examples/{route-transitions.ts → conversation-flows/completion-transitions.ts} +115 -108
  346. package/examples/{declarative-agent.ts → core-concepts/basic-agent.ts} +175 -131
  347. package/examples/core-concepts/schema-driven-extraction.ts +301 -0
  348. package/examples/core-concepts/session-management.ts +394 -0
  349. package/examples/integrations/database-integration.ts +615 -0
  350. package/examples/{healthcare-agent.ts → integrations/healthcare-integration.ts} +204 -111
  351. package/examples/{opensearch-persistence.ts → integrations/search-integration.ts} +159 -128
  352. package/examples/integrations/server-session-management.ts +299 -0
  353. package/examples/persistence/custom-adapter.ts +529 -0
  354. package/examples/{prisma-persistence.ts → persistence/database-persistence.ts} +168 -241
  355. package/examples/persistence/memory-sessions.ts +506 -0
  356. package/examples/{prisma-schema.example.prisma → persistence/prisma-schema.example.prisma} +1 -1
  357. package/examples/{redis-persistence.ts → persistence/redis-persistence.ts} +152 -173
  358. package/examples/tools/basic-tools.ts +550 -0
  359. package/examples/{extracted-data-modification.ts → tools/data-enrichment-tools.ts} +82 -79
  360. package/package.json +14 -10
  361. package/src/adapters/MemoryAdapter.ts +74 -46
  362. package/src/adapters/MongoAdapter.ts +33 -24
  363. package/src/adapters/OpenSearchAdapter.ts +41 -37
  364. package/src/adapters/PostgreSQLAdapter.ts +35 -24
  365. package/src/adapters/PrismaAdapter.ts +69 -27
  366. package/src/adapters/RedisAdapter.ts +38 -26
  367. package/src/adapters/SQLiteAdapter.ts +32 -22
  368. package/src/core/Agent.ts +1102 -487
  369. package/src/core/Events.ts +100 -112
  370. package/src/core/PersistenceManager.ts +87 -57
  371. package/src/core/PromptComposer.ts +158 -85
  372. package/src/core/ResponseEngine.ts +118 -38
  373. package/src/core/ResponsePipeline.ts +715 -0
  374. package/src/core/Route.ts +168 -51
  375. package/src/core/RoutingEngine.ts +178 -209
  376. package/src/core/SessionManager.ts +241 -0
  377. package/src/core/Step.ts +149 -67
  378. package/src/core/ToolExecutor.ts +37 -42
  379. package/src/index.ts +31 -37
  380. package/src/providers/AnthropicProvider.ts +71 -5
  381. package/src/providers/GeminiProvider.ts +83 -2
  382. package/src/providers/OpenAIProvider.ts +95 -3
  383. package/src/providers/OpenRouterProvider.ts +102 -2
  384. package/src/types/agent.ts +50 -38
  385. package/src/types/ai.ts +7 -0
  386. package/src/types/history.ts +91 -18
  387. package/src/types/index.ts +43 -7
  388. package/src/types/persistence.ts +46 -28
  389. package/src/types/route.ts +104 -45
  390. package/src/types/session.ts +19 -213
  391. package/src/types/template.ts +36 -0
  392. package/src/types/tool.ts +9 -11
  393. package/src/utils/clone.ts +36 -0
  394. package/src/utils/event.ts +1 -1
  395. package/src/utils/history.ts +143 -0
  396. package/src/utils/index.ts +53 -0
  397. package/src/utils/session.ts +229 -0
  398. package/src/utils/template.ts +335 -0
  399. package/dist/adapters/MemoryAdapter.d.ts.map +0 -1
  400. package/dist/adapters/MemoryAdapter.js.map +0 -1
  401. package/dist/adapters/MongoAdapter.d.ts.map +0 -1
  402. package/dist/adapters/MongoAdapter.js.map +0 -1
  403. package/dist/adapters/OpenSearchAdapter.d.ts.map +0 -1
  404. package/dist/adapters/OpenSearchAdapter.js.map +0 -1
  405. package/dist/adapters/PostgreSQLAdapter.d.ts.map +0 -1
  406. package/dist/adapters/PostgreSQLAdapter.js.map +0 -1
  407. package/dist/adapters/PrismaAdapter.d.ts.map +0 -1
  408. package/dist/adapters/PrismaAdapter.js.map +0 -1
  409. package/dist/adapters/RedisAdapter.d.ts.map +0 -1
  410. package/dist/adapters/RedisAdapter.js.map +0 -1
  411. package/dist/adapters/SQLiteAdapter.d.ts.map +0 -1
  412. package/dist/adapters/SQLiteAdapter.js.map +0 -1
  413. package/dist/adapters/index.d.ts.map +0 -1
  414. package/dist/adapters/index.js.map +0 -1
  415. package/dist/cjs/adapters/MemoryAdapter.d.ts.map +0 -1
  416. package/dist/cjs/adapters/MemoryAdapter.js.map +0 -1
  417. package/dist/cjs/adapters/MongoAdapter.d.ts.map +0 -1
  418. package/dist/cjs/adapters/MongoAdapter.js.map +0 -1
  419. package/dist/cjs/adapters/OpenSearchAdapter.d.ts.map +0 -1
  420. package/dist/cjs/adapters/OpenSearchAdapter.js.map +0 -1
  421. package/dist/cjs/adapters/PostgreSQLAdapter.d.ts.map +0 -1
  422. package/dist/cjs/adapters/PostgreSQLAdapter.js.map +0 -1
  423. package/dist/cjs/adapters/PrismaAdapter.d.ts.map +0 -1
  424. package/dist/cjs/adapters/PrismaAdapter.js.map +0 -1
  425. package/dist/cjs/adapters/RedisAdapter.d.ts.map +0 -1
  426. package/dist/cjs/adapters/RedisAdapter.js.map +0 -1
  427. package/dist/cjs/adapters/SQLiteAdapter.d.ts.map +0 -1
  428. package/dist/cjs/adapters/SQLiteAdapter.js.map +0 -1
  429. package/dist/cjs/adapters/index.js.map +0 -1
  430. package/dist/cjs/constants/index.js.map +0 -1
  431. package/dist/cjs/core/Agent.d.ts.map +0 -1
  432. package/dist/cjs/core/Agent.js +0 -966
  433. package/dist/cjs/core/Agent.js.map +0 -1
  434. package/dist/cjs/core/DomainRegistry.d.ts +0 -36
  435. package/dist/cjs/core/DomainRegistry.d.ts.map +0 -1
  436. package/dist/cjs/core/DomainRegistry.js +0 -72
  437. package/dist/cjs/core/DomainRegistry.js.map +0 -1
  438. package/dist/cjs/core/Events.d.ts +0 -41
  439. package/dist/cjs/core/Events.d.ts.map +0 -1
  440. package/dist/cjs/core/Events.js +0 -99
  441. package/dist/cjs/core/Events.js.map +0 -1
  442. package/dist/cjs/core/PersistenceManager.d.ts +0 -96
  443. package/dist/cjs/core/PersistenceManager.d.ts.map +0 -1
  444. package/dist/cjs/core/PersistenceManager.js.map +0 -1
  445. package/dist/cjs/core/PromptComposer.d.ts +0 -24
  446. package/dist/cjs/core/PromptComposer.d.ts.map +0 -1
  447. package/dist/cjs/core/PromptComposer.js +0 -127
  448. package/dist/cjs/core/PromptComposer.js.map +0 -1
  449. package/dist/cjs/core/ResponseEngine.d.ts +0 -14
  450. package/dist/cjs/core/ResponseEngine.d.ts.map +0 -1
  451. package/dist/cjs/core/ResponseEngine.js +0 -56
  452. package/dist/cjs/core/ResponseEngine.js.map +0 -1
  453. package/dist/cjs/core/Route.d.ts +0 -90
  454. package/dist/cjs/core/Route.d.ts.map +0 -1
  455. package/dist/cjs/core/Route.js.map +0 -1
  456. package/dist/cjs/core/RoutingEngine.d.ts.map +0 -1
  457. package/dist/cjs/core/RoutingEngine.js.map +0 -1
  458. package/dist/cjs/core/Step.d.ts +0 -72
  459. package/dist/cjs/core/Step.d.ts.map +0 -1
  460. package/dist/cjs/core/Step.js +0 -150
  461. package/dist/cjs/core/Step.js.map +0 -1
  462. package/dist/cjs/core/Tool.d.ts +0 -39
  463. package/dist/cjs/core/Tool.d.ts.map +0 -1
  464. package/dist/cjs/core/Tool.js +0 -34
  465. package/dist/cjs/core/Tool.js.map +0 -1
  466. package/dist/cjs/core/ToolExecutor.d.ts +0 -29
  467. package/dist/cjs/core/ToolExecutor.d.ts.map +0 -1
  468. package/dist/cjs/core/ToolExecutor.js.map +0 -1
  469. package/dist/cjs/core/Transition.d.ts +0 -32
  470. package/dist/cjs/core/Transition.d.ts.map +0 -1
  471. package/dist/cjs/core/Transition.js +0 -89
  472. package/dist/cjs/core/Transition.js.map +0 -1
  473. package/dist/cjs/index.d.ts.map +0 -1
  474. package/dist/cjs/index.js.map +0 -1
  475. package/dist/cjs/providers/AnthropicProvider.d.ts.map +0 -1
  476. package/dist/cjs/providers/AnthropicProvider.js.map +0 -1
  477. package/dist/cjs/providers/GeminiProvider.js.map +0 -1
  478. package/dist/cjs/providers/OpenAIProvider.js.map +0 -1
  479. package/dist/cjs/providers/OpenRouterProvider.js.map +0 -1
  480. package/dist/cjs/providers/index.js.map +0 -1
  481. package/dist/cjs/types/agent.d.ts.map +0 -1
  482. package/dist/cjs/types/agent.js.map +0 -1
  483. package/dist/cjs/types/ai.d.ts.map +0 -1
  484. package/dist/cjs/types/history.d.ts.map +0 -1
  485. package/dist/cjs/types/history.js +0 -37
  486. package/dist/cjs/types/history.js.map +0 -1
  487. package/dist/cjs/types/index.d.ts +0 -12
  488. package/dist/cjs/types/index.d.ts.map +0 -1
  489. package/dist/cjs/types/index.js +0 -12
  490. package/dist/cjs/types/index.js.map +0 -1
  491. package/dist/cjs/types/persistence.d.ts.map +0 -1
  492. package/dist/cjs/types/persistence.js.map +0 -1
  493. package/dist/cjs/types/route.d.ts.map +0 -1
  494. package/dist/cjs/types/session.d.ts +0 -104
  495. package/dist/cjs/types/session.d.ts.map +0 -1
  496. package/dist/cjs/types/session.js.map +0 -1
  497. package/dist/cjs/utils/event.js.map +0 -1
  498. package/dist/cjs/utils/id.js.map +0 -1
  499. package/dist/cjs/utils/logger.js.map +0 -1
  500. package/dist/cjs/utils/retry.js.map +0 -1
  501. package/dist/constants/index.d.ts.map +0 -1
  502. package/dist/constants/index.js.map +0 -1
  503. package/dist/core/Agent.d.ts.map +0 -1
  504. package/dist/core/Agent.js +0 -962
  505. package/dist/core/Agent.js.map +0 -1
  506. package/dist/core/DomainRegistry.d.ts +0 -36
  507. package/dist/core/DomainRegistry.d.ts.map +0 -1
  508. package/dist/core/DomainRegistry.js +0 -68
  509. package/dist/core/DomainRegistry.js.map +0 -1
  510. package/dist/core/Events.d.ts +0 -41
  511. package/dist/core/Events.d.ts.map +0 -1
  512. package/dist/core/Events.js +0 -94
  513. package/dist/core/Events.js.map +0 -1
  514. package/dist/core/PersistenceManager.d.ts +0 -96
  515. package/dist/core/PersistenceManager.d.ts.map +0 -1
  516. package/dist/core/PersistenceManager.js.map +0 -1
  517. package/dist/core/PromptComposer.d.ts +0 -24
  518. package/dist/core/PromptComposer.d.ts.map +0 -1
  519. package/dist/core/PromptComposer.js +0 -123
  520. package/dist/core/PromptComposer.js.map +0 -1
  521. package/dist/core/ResponseEngine.d.ts +0 -14
  522. package/dist/core/ResponseEngine.d.ts.map +0 -1
  523. package/dist/core/ResponseEngine.js +0 -52
  524. package/dist/core/ResponseEngine.js.map +0 -1
  525. package/dist/core/Route.d.ts +0 -90
  526. package/dist/core/Route.d.ts.map +0 -1
  527. package/dist/core/Route.js.map +0 -1
  528. package/dist/core/RoutingEngine.d.ts.map +0 -1
  529. package/dist/core/RoutingEngine.js.map +0 -1
  530. package/dist/core/Step.d.ts +0 -72
  531. package/dist/core/Step.d.ts.map +0 -1
  532. package/dist/core/Step.js +0 -146
  533. package/dist/core/Step.js.map +0 -1
  534. package/dist/core/Tool.d.ts +0 -39
  535. package/dist/core/Tool.d.ts.map +0 -1
  536. package/dist/core/Tool.js +0 -31
  537. package/dist/core/Tool.js.map +0 -1
  538. package/dist/core/ToolExecutor.d.ts +0 -29
  539. package/dist/core/ToolExecutor.d.ts.map +0 -1
  540. package/dist/core/ToolExecutor.js +0 -69
  541. package/dist/core/ToolExecutor.js.map +0 -1
  542. package/dist/core/Transition.d.ts +0 -32
  543. package/dist/core/Transition.d.ts.map +0 -1
  544. package/dist/core/Transition.js +0 -85
  545. package/dist/core/Transition.js.map +0 -1
  546. package/dist/index.d.ts.map +0 -1
  547. package/dist/index.js.map +0 -1
  548. package/dist/providers/AnthropicProvider.d.ts.map +0 -1
  549. package/dist/providers/AnthropicProvider.js.map +0 -1
  550. package/dist/providers/GeminiProvider.d.ts.map +0 -1
  551. package/dist/providers/GeminiProvider.js.map +0 -1
  552. package/dist/providers/OpenAIProvider.d.ts.map +0 -1
  553. package/dist/providers/OpenAIProvider.js.map +0 -1
  554. package/dist/providers/OpenRouterProvider.d.ts.map +0 -1
  555. package/dist/providers/OpenRouterProvider.js.map +0 -1
  556. package/dist/providers/index.d.ts.map +0 -1
  557. package/dist/providers/index.js.map +0 -1
  558. package/dist/types/agent.d.ts.map +0 -1
  559. package/dist/types/agent.js.map +0 -1
  560. package/dist/types/ai.d.ts.map +0 -1
  561. package/dist/types/ai.js.map +0 -1
  562. package/dist/types/history.d.ts.map +0 -1
  563. package/dist/types/history.js +0 -34
  564. package/dist/types/history.js.map +0 -1
  565. package/dist/types/index.d.ts +0 -12
  566. package/dist/types/index.d.ts.map +0 -1
  567. package/dist/types/index.js +0 -6
  568. package/dist/types/index.js.map +0 -1
  569. package/dist/types/persistence.d.ts.map +0 -1
  570. package/dist/types/persistence.js.map +0 -1
  571. package/dist/types/route.d.ts.map +0 -1
  572. package/dist/types/routing.d.ts.map +0 -1
  573. package/dist/types/schema.d.ts.map +0 -1
  574. package/dist/types/session.d.ts +0 -104
  575. package/dist/types/session.d.ts.map +0 -1
  576. package/dist/types/session.js.map +0 -1
  577. package/dist/types/tool.d.ts.map +0 -1
  578. package/dist/utils/event.d.ts.map +0 -1
  579. package/dist/utils/event.js.map +0 -1
  580. package/dist/utils/id.d.ts.map +0 -1
  581. package/dist/utils/id.js.map +0 -1
  582. package/dist/utils/logger.d.ts.map +0 -1
  583. package/dist/utils/logger.js.map +0 -1
  584. package/dist/utils/retry.d.ts.map +0 -1
  585. package/dist/utils/retry.js.map +0 -1
  586. package/docs/AGENT.md +0 -535
  587. package/docs/DOCS.md +0 -263
  588. package/docs/DOMAINS.md +0 -735
  589. package/docs/EXAMPLES.md +0 -467
  590. package/docs/GETTING_STARTED.md +0 -424
  591. package/docs/PERSISTENCE.md +0 -815
  592. package/docs/PROVIDERS.md +0 -612
  593. package/docs/ROUTES.md +0 -1085
  594. package/docs/STEPS.md +0 -883
  595. package/examples/business-onboarding.ts +0 -791
  596. package/examples/custom-database-persistence.ts +0 -574
  597. package/examples/domain-scoping.ts +0 -366
  598. package/examples/travel-agent.ts +0 -584
  599. package/src/core/DomainRegistry.ts +0 -80
  600. package/src/core/Tool.ts +0 -112
  601. package/src/core/Transition.ts +0 -115
  602. /package/dist/{adapters → cjs/src/adapters}/index.d.ts +0 -0
  603. /package/dist/cjs/{adapters → src/adapters}/index.js +0 -0
  604. /package/dist/cjs/{constants → src/constants}/index.d.ts +0 -0
  605. /package/dist/cjs/{constants → src/constants}/index.js +0 -0
  606. /package/dist/cjs/{providers → src/providers}/index.d.ts +0 -0
  607. /package/dist/cjs/{providers → src/providers}/index.js +0 -0
  608. /package/dist/cjs/{types → src/types}/agent.js +0 -0
  609. /package/dist/cjs/{types → src/types}/ai.js +0 -0
  610. /package/dist/cjs/{types → src/types}/persistence.js +0 -0
  611. /package/dist/cjs/{types → src/types}/route.js +0 -0
  612. /package/dist/cjs/{types → src/types}/routing.d.ts +0 -0
  613. /package/dist/cjs/{types → src/types}/routing.js +0 -0
  614. /package/dist/cjs/{types → src/types}/schema.d.ts +0 -0
  615. /package/dist/cjs/{types → src/types}/schema.js +0 -0
  616. /package/dist/cjs/{types → src/types}/tool.js +0 -0
  617. /package/dist/cjs/{utils → src/utils}/id.d.ts +0 -0
  618. /package/dist/cjs/{utils → src/utils}/id.js +0 -0
  619. /package/dist/cjs/{utils → src/utils}/logger.d.ts +0 -0
  620. /package/dist/cjs/{utils → src/utils}/logger.js +0 -0
  621. /package/dist/cjs/{utils → src/utils}/retry.d.ts +0 -0
  622. /package/dist/cjs/{utils → src/utils}/retry.js +0 -0
  623. /package/dist/{cjs → src}/adapters/index.d.ts +0 -0
  624. /package/dist/{cjs → src}/adapters/index.d.ts.map +0 -0
  625. /package/dist/{adapters → src/adapters}/index.js +0 -0
  626. /package/dist/{constants → src/constants}/index.d.ts +0 -0
  627. /package/dist/{cjs → src}/constants/index.d.ts.map +0 -0
  628. /package/dist/{constants → src/constants}/index.js +0 -0
  629. /package/dist/{providers → src/providers}/index.d.ts +0 -0
  630. /package/dist/{cjs → src}/providers/index.d.ts.map +0 -0
  631. /package/dist/{providers → src/providers}/index.js +0 -0
  632. /package/dist/{types → src/types}/agent.js +0 -0
  633. /package/dist/{types → src/types}/ai.js +0 -0
  634. /package/dist/{types → src/types}/persistence.js +0 -0
  635. /package/dist/{types → src/types}/route.js +0 -0
  636. /package/dist/{types → src/types}/routing.d.ts +0 -0
  637. /package/dist/{cjs → src}/types/routing.d.ts.map +0 -0
  638. /package/dist/{types → src/types}/routing.js +0 -0
  639. /package/dist/{cjs → src}/types/routing.js.map +0 -0
  640. /package/dist/{types → src/types}/schema.d.ts +0 -0
  641. /package/dist/{cjs → src}/types/schema.d.ts.map +0 -0
  642. /package/dist/{types → src/types}/schema.js +0 -0
  643. /package/dist/{cjs → src}/types/schema.js.map +0 -0
  644. /package/dist/{types → src/types}/tool.js +0 -0
  645. /package/dist/{utils → src/utils}/id.d.ts +0 -0
  646. /package/dist/{cjs → src}/utils/id.d.ts.map +0 -0
  647. /package/dist/{utils → src/utils}/id.js +0 -0
  648. /package/dist/{utils → src/utils}/logger.d.ts +0 -0
  649. /package/dist/{cjs → src}/utils/logger.d.ts.map +0 -0
  650. /package/dist/{utils → src/utils}/logger.js +0 -0
  651. /package/dist/{utils → src/utils}/retry.d.ts +0 -0
  652. /package/dist/{cjs → src}/utils/retry.d.ts.map +0 -0
  653. /package/dist/{utils → src/utils}/retry.js +0 -0
  654. /package/docs/{PUBLISHING.md → guides/advanced-patterns/publishing.md} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PostgreSQLAdapter.js","sourceRoot":"","sources":["../../../src/adapters/PostgreSQLAdapter.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * Prisma adapter for persistence
3
3
  * Simple, provider-like API with automatic schema creation
4
4
  */
5
- import type { SessionRepository, MessageRepository, SessionData, MessageData, PersistenceAdapter } from "../types/persistence";
5
+ import type { SessionRepository, MessageRepository, SessionData, MessageData, PersistenceAdapter } from "../types";
6
6
  /**
7
7
  * Prisma model operations
8
8
  */
@@ -95,8 +95,8 @@ export interface PrismaAdapterOptions {
95
95
  * });
96
96
  * ```
97
97
  */
98
- export declare class PrismaAdapter implements PersistenceAdapter {
99
- readonly sessionRepository: SessionRepository;
98
+ export declare class PrismaAdapter<TData = Record<string, unknown>> implements PersistenceAdapter<TData> {
99
+ readonly sessionRepository: SessionRepository<TData>;
100
100
  readonly messageRepository: MessageRepository;
101
101
  private prisma;
102
102
  private options;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrismaAdapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/PrismaAdapter.ts"],"names":[],"mappings":"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"}
@@ -96,7 +96,7 @@ class PrismaSessionRepository {
96
96
  */
97
97
  unmapFields(data) {
98
98
  if (!data)
99
- return data;
99
+ throw new Error("Data cannot be null");
100
100
  const reverseMap = {};
101
101
  for (const [standardKey, customKey] of Object.entries(this.fieldMap)) {
102
102
  reverseMap[customKey] = standardKey;
@@ -106,13 +106,31 @@ class PrismaSessionRepository {
106
106
  const unmappedKey = reverseMap[key] || key;
107
107
  unmapped[unmappedKey] = value;
108
108
  }
109
- return unmapped;
109
+ // Construct proper SessionData object
110
+ return {
111
+ id: unmapped.id,
112
+ userId: unmapped.userId,
113
+ agentName: unmapped.agentName,
114
+ status: unmapped.status,
115
+ currentRoute: unmapped.currentRoute,
116
+ currentStep: unmapped.currentStep,
117
+ collectedData: unmapped.collectedData,
118
+ messageCount: unmapped.messageCount,
119
+ lastMessageAt: unmapped.lastMessageAt,
120
+ completedAt: unmapped.completedAt,
121
+ createdAt: unmapped.createdAt,
122
+ updatedAt: unmapped.updatedAt,
123
+ };
110
124
  }
111
125
  getModel() {
112
126
  return this.prisma[this.tableName];
113
127
  }
114
128
  async create(data) {
115
- const mapped = this.mapFields(data);
129
+ const mapped = this.mapFields({
130
+ ...data,
131
+ id: data.id ||
132
+ `session_${Date.now()}_${Math.random().toString(36).slice(2)}`,
133
+ });
116
134
  const result = await this.getModel().create({
117
135
  data: mapped,
118
136
  });
@@ -248,7 +266,7 @@ class PrismaMessageRepository {
248
266
  */
249
267
  unmapFields(data) {
250
268
  if (!data)
251
- return data;
269
+ throw new Error("Data cannot be null");
252
270
  const reverseMap = {};
253
271
  for (const [standardKey, customKey] of Object.entries(this.fieldMap)) {
254
272
  reverseMap[customKey] = standardKey;
@@ -258,7 +276,19 @@ class PrismaMessageRepository {
258
276
  const unmappedKey = reverseMap[key] || key;
259
277
  unmapped[unmappedKey] = value;
260
278
  }
261
- return unmapped;
279
+ // Construct proper MessageData object
280
+ return {
281
+ id: unmapped.id,
282
+ sessionId: unmapped.sessionId,
283
+ userId: unmapped.userId,
284
+ role: unmapped.role,
285
+ content: unmapped.content,
286
+ route: unmapped.route,
287
+ step: unmapped.step,
288
+ toolCalls: unmapped.toolCalls,
289
+ event: unmapped.event,
290
+ createdAt: unmapped.createdAt,
291
+ };
262
292
  }
263
293
  getModel() {
264
294
  return this.prisma[this.tableName];
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrismaAdapter.js","sourceRoot":"","sources":["../../../src/adapters/PrismaAdapter.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * Redis adapter for persistence
3
3
  * Uses Redis for fast session/message storage
4
4
  */
5
- import type { SessionRepository, MessageRepository, PersistenceAdapter } from "../types/persistence";
5
+ import type { MessageRepository, PersistenceAdapter, SessionRepository } from "../types";
6
6
  /**
7
7
  * Redis client interface - matches ioredis/redis clients
8
8
  */
@@ -58,8 +58,8 @@ export interface RedisAdapterOptions {
58
58
  * });
59
59
  * ```
60
60
  */
61
- export declare class RedisAdapter implements PersistenceAdapter {
62
- readonly sessionRepository: SessionRepository;
61
+ export declare class RedisAdapter<TData = Record<string, unknown>> implements PersistenceAdapter<TData> {
62
+ readonly sessionRepository: SessionRepository<TData>;
63
63
  readonly messageRepository: MessageRepository;
64
64
  private redis;
65
65
  private keyPrefix;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RedisAdapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/RedisAdapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAEV,iBAAiB,EACjB,kBAAkB,EAElB,iBAAiB,EAGlB,MAAM,UAAU,CAAC;AAGlB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACzC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxD,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACpE,GAAG,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,KAAK,EAAE,WAAW,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,YAAY,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACvD,YAAW,kBAAkB,CAAC,KAAK,CAAC;IAEpC,SAAgB,iBAAiB,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC5D,SAAgB,iBAAiB,EAAE,iBAAiB,CAAC;IACrD,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;gBAEf,OAAO,EAAE,mBAAmB;IAmBlC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAGlC"}
@@ -2,6 +2,7 @@
2
2
  * Redis adapter for persistence
3
3
  * Uses Redis for fast session/message storage
4
4
  */
5
+ import { createSessionId } from "../utils";
5
6
  /**
6
7
  * Redis Adapter - Provider-style API for Redis persistence
7
8
  *
@@ -51,7 +52,7 @@ class RedisSessionRepository {
51
52
  return `${this.keyPrefix}user:${userId}:sessions`;
52
53
  }
53
54
  async create(data) {
54
- const id = `session_${Date.now()}_${Math.random().toString(36).slice(2)}`;
55
+ const id = data.id || createSessionId();
55
56
  const now = new Date();
56
57
  const session = {
57
58
  ...data,
@@ -99,7 +100,7 @@ class RedisSessionRepository {
99
100
  sessions.push(session);
100
101
  }
101
102
  }
102
- return sessions.sort((a, b) => b.createdAt.getTime() - a.createdAt.getTime());
103
+ return sessions.sort((a, b) => new Date(b.createdAt).getTime() - new Date(a.createdAt).getTime());
103
104
  }
104
105
  async update(id, data) {
105
106
  const existing = await this.findById(id);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RedisAdapter.js","sourceRoot":"","sources":["../../../src/adapters/RedisAdapter.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * SQLite adapter for persistence
3
3
  * Lightweight, file-based database perfect for local development
4
4
  */
5
- import type { SessionRepository, MessageRepository, PersistenceAdapter } from "../types/persistence";
5
+ import type { SessionRepository, MessageRepository, PersistenceAdapter } from "../types";
6
6
  /**
7
7
  * SQLite database interface - matches better-sqlite3
8
8
  */
@@ -58,8 +58,8 @@ export interface SQLiteAdapterOptions {
58
58
  * });
59
59
  * ```
60
60
  */
61
- export declare class SQLiteAdapter implements PersistenceAdapter {
62
- readonly sessionRepository: SessionRepository;
61
+ export declare class SQLiteAdapter<TData = Record<string, unknown>> implements PersistenceAdapter<TData> {
62
+ readonly sessionRepository: SessionRepository<TData>;
63
63
  readonly messageRepository: MessageRepository;
64
64
  private db;
65
65
  constructor(options: SQLiteAdapterOptions);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SQLiteAdapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/SQLiteAdapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EAIjB,kBAAkB,EAGnB,MAAM,UAAU,CAAC;AAGlB;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAC;IACrC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,IAAI,IAAI,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE,CAAC;IACxE,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC/D,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC3D;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,EAAE,EAAE,cAAc,CAAC;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,aAAa,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACxD,YAAW,kBAAkB,CAAC,KAAK,CAAC;IAEpC,SAAgB,iBAAiB,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC5D,SAAgB,iBAAiB,EAAE,iBAAiB,CAAC;IACrD,OAAO,CAAC,EAAE,CAAiB;gBAEf,OAAO,EAAE,oBAAoB;IAanC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAqD3B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAIlC"}
@@ -2,6 +2,7 @@
2
2
  * SQLite adapter for persistence
3
3
  * Lightweight, file-based database perfect for local development
4
4
  */
5
+ import { createSessionId } from "../utils";
5
6
  /**
6
7
  * SQLite Adapter - Provider-style API for SQLite persistence
7
8
  *
@@ -92,7 +93,7 @@ class SQLiteSessionRepository {
92
93
  this.tableName = tableName;
93
94
  }
94
95
  create(data) {
95
- const id = `session_${Date.now()}_${Math.random().toString(36).slice(2)}`;
96
+ const id = data.id || createSessionId();
96
97
  const now = new Date();
97
98
  const session = {
98
99
  ...data,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SQLiteAdapter.js","sourceRoot":"","sources":["../../../src/adapters/SQLiteAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAOhD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAQ9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAOxD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAOhD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;AAE7C;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,WAAW,CAAC"}
@@ -1,13 +1,10 @@
1
1
  /**
2
2
  * Core Agent implementation
3
3
  */
4
- import type { AgentOptions, Term, Guideline, Capability } from "../types/agent";
5
- import type { Event, StepRef } from "../types/index";
6
- import type { RouteOptions } from "../types/route";
7
- import type { SessionStep } from "../types/session";
4
+ import type { AgentOptions, Term, Guideline, Tool, Event, RouteOptions, SessionState, Template, StepRef, History, AgentResponseStreamChunk, AgentResponse } from "../types";
8
5
  import { Route } from "./Route";
9
- import { DomainRegistry } from "./DomainRegistry";
10
6
  import { PersistenceManager } from "./PersistenceManager";
7
+ import { SessionManager } from "./SessionManager";
11
8
  /**
12
9
  * Main Agent class with generic context support
13
10
  */
@@ -15,18 +12,17 @@ export declare class Agent<TContext = unknown> {
15
12
  private readonly options;
16
13
  private terms;
17
14
  private guidelines;
18
- private capabilities;
15
+ private tools;
19
16
  private routes;
20
- private domainRegistry;
21
17
  private context;
22
18
  private persistenceManager;
23
19
  private routingEngine;
24
20
  private responseEngine;
21
+ private responsePipeline;
25
22
  private currentSession?;
26
- /**
27
- * Dynamic domain property - populated via addDomain
28
- */
29
- readonly domain: Record<string, Record<string, unknown>>;
23
+ private knowledgeBase;
24
+ /** Public session manager for easy session management */
25
+ session: SessionManager<unknown>;
30
26
  constructor(options: AgentOptions<TContext>);
31
27
  /**
32
28
  * Get agent name
@@ -40,6 +36,10 @@ export declare class Agent<TContext = unknown> {
40
36
  * Get agent goal
41
37
  */
42
38
  get goal(): string | undefined;
39
+ /**
40
+ * Get agent identity
41
+ */
42
+ get identity(): Template<TContext> | undefined;
43
43
  /**
44
44
  * Create a new route (journey)
45
45
  * @template TData - Type of data collected throughout the route
@@ -48,74 +48,54 @@ export declare class Agent<TContext = unknown> {
48
48
  /**
49
49
  * Create a domain term for the glossary
50
50
  */
51
- createTerm(term: Term): this;
51
+ createTerm(term: Term<TContext>): this;
52
52
  /**
53
53
  * Create a behavioral guideline
54
54
  */
55
- createGuideline(guideline: Guideline): this;
55
+ createGuideline(guideline: Guideline<TContext>): this;
56
56
  /**
57
- * Add a capability
57
+ * Register a tool at the agent level
58
58
  */
59
- createCapability(capability: Capability): this;
59
+ createTool(tool: Tool<TContext, unknown[], unknown, unknown>): this;
60
60
  /**
61
- * Add a domain with its tools/methods
62
- * Automatically tags all ToolRef objects with their domain name for security enforcement
61
+ * Register multiple tools at the agent level
63
62
  */
64
- addDomain<TName extends string, TDomain extends Record<string, unknown>>(name: TName, domainObject: TDomain): void;
63
+ registerTools(tools: Tool<TContext, unknown[], unknown, unknown>[]): this;
65
64
  /**
66
65
  * Update the agent's context
67
- * Triggers the onContextUpdate lifecycle hook if configured
66
+ * Triggers both agent-level and route-specific onContextUpdate lifecycle hooks if configured
68
67
  */
69
68
  updateContext(updates: Partial<TContext>): Promise<void>;
70
69
  /**
71
70
  * Update collected data in session with lifecycle hook support
72
- * Triggers the onDataUpdate lifecycle hook if configured
71
+ * Triggers both agent-level and route-specific onDataUpdate lifecycle hooks if configured
73
72
  * @internal
74
73
  */
75
74
  private updateData;
76
75
  /**
77
76
  * Get current context (fetches from provider if configured)
78
- * @internal
79
77
  */
80
- private getContext;
78
+ getContext(): Promise<TContext | undefined>;
81
79
  /**
82
80
  * Generate a response based on history and context as a stream
83
81
  */
84
- respondStream(params: {
85
- history: Event[];
82
+ respondStream<TData = Record<string, unknown>>(params: {
83
+ history: History;
86
84
  step?: StepRef;
87
- session?: SessionStep;
85
+ session?: SessionState<TData>;
88
86
  contextOverride?: Partial<TContext>;
89
87
  signal?: AbortSignal;
90
- }): AsyncGenerator<{
91
- delta: string;
92
- accumulated: string;
93
- done: boolean;
94
- session?: SessionStep;
95
- toolCalls?: Array<{
96
- toolName: string;
97
- arguments: Record<string, unknown>;
98
- }>;
99
- isRouteComplete?: boolean;
100
- }>;
88
+ }): AsyncGenerator<AgentResponseStreamChunk<TData>>;
101
89
  /**
102
90
  * Generate a response based on history and context
103
91
  */
104
- respond(params: {
105
- history: Event[];
92
+ respond<TData = Record<string, unknown>>(params: {
93
+ history: History;
106
94
  step?: StepRef;
107
- session?: SessionStep;
95
+ session?: SessionState<TData>;
108
96
  contextOverride?: Partial<TContext>;
109
97
  signal?: AbortSignal;
110
- }): Promise<{
111
- message: string;
112
- session?: SessionStep;
113
- toolCalls?: Array<{
114
- toolName: string;
115
- arguments: Record<string, unknown>;
116
- }>;
117
- isRouteComplete?: boolean;
118
- }>;
98
+ }): Promise<AgentResponse<TData>>;
119
99
  /**
120
100
  * Get all routes
121
101
  */
@@ -123,19 +103,40 @@ export declare class Agent<TContext = unknown> {
123
103
  /**
124
104
  * Get all terms
125
105
  */
126
- getTerms(): Term[];
106
+ getTerms(): Term<TContext>[];
107
+ /**
108
+ * Get all tools
109
+ */
110
+ getTools(): Tool<TContext, unknown[], unknown, unknown>[];
111
+ /**
112
+ * Find an available tool by name for the given route
113
+ * Route-level tools take precedence over agent-level tools
114
+ * @private
115
+ */
116
+ private findAvailableTool;
117
+ /**
118
+ * Collect all available tools for the given route and step context
119
+ * @private
120
+ */
121
+ private collectAvailableTools;
122
+ /**
123
+ * Execute a prepare or finalize function/tool
124
+ * @private
125
+ */
126
+ private executePrepareFinalize;
127
127
  /**
128
128
  * Get all guidelines
129
129
  */
130
- getGuidelines(): Guideline[];
130
+ getGuidelines(): Guideline<TContext>[];
131
131
  /**
132
- * Get all capabilities
132
+ * Get the agent's knowledge base
133
133
  */
134
- getCapabilities(): Capability[];
134
+ getKnowledgeBase(): Record<string, unknown>;
135
135
  /**
136
- * Get the domain registry
136
+ * Merge terms with route-specific taking precedence on conflicts
137
+ * @private
137
138
  */
138
- getDomainRegistry(): DomainRegistry;
139
+ private mergeTerms;
139
140
  /**
140
141
  * Get the persistence manager (if configured)
141
142
  */
@@ -144,27 +145,15 @@ export declare class Agent<TContext = unknown> {
144
145
  * Check if persistence is enabled
145
146
  */
146
147
  hasPersistence(): boolean;
147
- /**
148
- * Get allowed domains for a specific route
149
- * @param routeId - Route ID to check
150
- * @returns Filtered domains object, or all domains if route has no restrictions
151
- */
152
- getDomainsForRoute(routeId: string): Record<string, Record<string, unknown>>;
153
- /**
154
- * Get allowed domains for a specific route by title
155
- * @param routeTitle - Route title to check
156
- * @returns Filtered domains object, or all domains if route has no restrictions
157
- */
158
- getDomainsForRouteByTitle(routeTitle: string): Record<string, Record<string, unknown>>;
159
148
  /**
160
149
  * Set the current session for convenience methods
161
150
  * @param session - Session step to use for subsequent calls
162
151
  */
163
- setCurrentSession(session: SessionStep): void;
152
+ setCurrentSession(session: SessionState): void;
164
153
  /**
165
154
  * Get the current session (if set)
166
155
  */
167
- getCurrentSession(): SessionStep | undefined;
156
+ getCurrentSession(): SessionState | undefined;
168
157
  /**
169
158
  * Clear the current session
170
159
  */
@@ -192,6 +181,15 @@ export declare class Agent<TContext = unknown> {
192
181
  * const nextResponse = await agent.respond({ history, session: updatedSession });
193
182
  * }
194
183
  */
195
- nextStepRoute(routeIdOrTitle: string, session?: SessionStep, condition?: string): SessionStep;
184
+ nextStepRoute(routeIdOrTitle: string, session?: SessionState, condition?: Template<TContext, unknown>, history?: Event[]): Promise<SessionState>;
185
+ /**
186
+ * Simplified respond method using SessionManager
187
+ * Automatically manages conversation history through the session
188
+ */
189
+ chat<TData = Record<string, unknown>>(message?: string, options?: {
190
+ history?: History;
191
+ contextOverride?: Partial<TContext>;
192
+ signal?: AbortSignal;
193
+ }): Promise<AgentResponse<TData>>;
196
194
  }
197
195
  //# sourceMappingURL=Agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"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"}