@falai/agent 0.8.1 → 0.9.0-alpha-2

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 (665) hide show
  1. package/README.md +332 -147
  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/cjs/src/core/Agent.d.ts +223 -0
  35. package/dist/cjs/src/core/Agent.d.ts.map +1 -0
  36. package/dist/cjs/src/core/Agent.js +1660 -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/{core → cjs/src/core}/PersistenceManager.d.ts +21 -19
  43. package/dist/cjs/src/core/PersistenceManager.d.ts.map +1 -0
  44. package/dist/cjs/{core → src/core}/PersistenceManager.js +73 -20
  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 +32 -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 +171 -0
  55. package/dist/cjs/src/core/ResponsePipeline.d.ts.map +1 -0
  56. package/dist/cjs/src/core/ResponsePipeline.js +514 -0
  57. package/dist/cjs/src/core/ResponsePipeline.js.map +1 -0
  58. package/dist/cjs/src/core/Route.d.ts +145 -0
  59. package/dist/cjs/src/core/Route.d.ts.map +1 -0
  60. package/dist/cjs/src/core/Route.js +343 -0
  61. package/dist/cjs/src/core/Route.js.map +1 -0
  62. package/dist/cjs/src/core/RoutingEngine.d.ts +129 -0
  63. package/dist/cjs/src/core/RoutingEngine.d.ts.map +1 -0
  64. package/dist/cjs/{core → src/core}/RoutingEngine.js +215 -117
  65. package/dist/cjs/src/core/RoutingEngine.js.map +1 -0
  66. package/dist/cjs/src/core/SessionManager.d.ts +86 -0
  67. package/dist/cjs/src/core/SessionManager.d.ts.map +1 -0
  68. package/dist/cjs/src/core/SessionManager.js +217 -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 +45 -0
  75. package/dist/cjs/src/core/ToolExecutor.d.ts.map +1 -0
  76. package/dist/cjs/{core → src/core}/ToolExecutor.js +30 -19
  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 +80 -41
  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 +38 -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/src/types/route.d.ts +235 -0
  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 +65 -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/{types → cjs/src/types}/tool.d.ts +17 -13
  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 +35 -32
  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/src/core/Agent.d.ts +223 -0
  196. package/dist/src/core/Agent.d.ts.map +1 -0
  197. package/dist/src/core/Agent.js +1656 -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/{cjs → src}/core/PersistenceManager.d.ts +21 -19
  204. package/dist/src/core/PersistenceManager.d.ts.map +1 -0
  205. package/dist/{core → src/core}/PersistenceManager.js +71 -18
  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 +32 -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 +171 -0
  216. package/dist/src/core/ResponsePipeline.d.ts.map +1 -0
  217. package/dist/src/core/ResponsePipeline.js +510 -0
  218. package/dist/src/core/ResponsePipeline.js.map +1 -0
  219. package/dist/src/core/Route.d.ts +145 -0
  220. package/dist/src/core/Route.d.ts.map +1 -0
  221. package/dist/src/core/Route.js +339 -0
  222. package/dist/src/core/Route.js.map +1 -0
  223. package/dist/src/core/RoutingEngine.d.ts +129 -0
  224. package/dist/src/core/RoutingEngine.d.ts.map +1 -0
  225. package/dist/{core → src/core}/RoutingEngine.js +211 -113
  226. package/dist/src/core/RoutingEngine.js.map +1 -0
  227. package/dist/src/core/SessionManager.d.ts +86 -0
  228. package/dist/src/core/SessionManager.d.ts.map +1 -0
  229. package/dist/src/core/SessionManager.js +213 -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 +45 -0
  236. package/dist/src/core/ToolExecutor.d.ts.map +1 -0
  237. package/dist/src/core/ToolExecutor.js +80 -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 +80 -41
  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 +38 -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/src/types/route.d.ts +235 -0
  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 +65 -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/{cjs → src}/types/tool.d.ts +17 -13
  289. package/dist/src/types/tool.d.ts.map +1 -0
  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 +33 -32
  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} +925 -255
  320. package/docs/api/overview.md +952 -0
  321. package/docs/core/agent/README.md +787 -0
  322. package/docs/{CONTEXT_MANAGEMENT.md → core/agent/context-management.md} +175 -102
  323. package/docs/{ARCHITECTURE.md → core/agent/session-management.md} +117 -69
  324. package/docs/core/ai-integration/prompt-composition.md +220 -0
  325. package/docs/core/ai-integration/providers.md +515 -0
  326. package/docs/core/ai-integration/response-processing.md +176 -0
  327. package/docs/core/conversation-flows/data-collection.md +623 -0
  328. package/docs/core/conversation-flows/route-dsl.md +502 -0
  329. package/docs/core/conversation-flows/routes.md +117 -0
  330. package/docs/core/conversation-flows/step-transitions.md +595 -0
  331. package/docs/core/conversation-flows/steps.md +154 -0
  332. package/docs/{ADAPTERS.md → core/persistence/adapters.md} +1 -1
  333. package/docs/core/persistence/session-storage.md +644 -0
  334. package/docs/core/routing/intelligent-routing.md +348 -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 +406 -0
  339. package/examples/{company-qna-agent.ts → advanced-patterns/knowledge-based-agent.ts} +139 -95
  340. package/examples/{persistent-onboarding.ts → advanced-patterns/persistent-onboarding.ts} +244 -137
  341. package/examples/{rules-prohibitions.ts → advanced-patterns/route-lifecycle-hooks.ts} +130 -84
  342. package/examples/{streaming-agent.ts → advanced-patterns/streaming-responses.ts} +116 -90
  343. package/examples/ai-providers/anthropic-integration.ts +384 -0
  344. package/examples/{openai-agent.ts → ai-providers/openai-integration.ts} +57 -63
  345. package/examples/conversation-flows/completion-transitions.ts +277 -0
  346. package/examples/core-concepts/basic-agent.ts +443 -0
  347. package/examples/core-concepts/schema-driven-extraction.ts +305 -0
  348. package/examples/core-concepts/session-management.ts +406 -0
  349. package/examples/integrations/database-integration.ts +630 -0
  350. package/examples/integrations/healthcare-integration.ts +609 -0
  351. package/examples/{opensearch-persistence.ts → integrations/search-integration.ts} +199 -171
  352. package/examples/integrations/server-session-management.ts +307 -0
  353. package/examples/persistence/custom-adapter.ts +529 -0
  354. package/examples/{prisma-persistence.ts → persistence/database-persistence.ts} +215 -272
  355. package/examples/persistence/memory-sessions.ts +495 -0
  356. package/examples/{prisma-schema.example.prisma → persistence/prisma-schema.example.prisma} +1 -1
  357. package/examples/persistence/redis-persistence.ts +490 -0
  358. package/examples/tools/basic-tools.ts +561 -0
  359. package/examples/{extracted-data-modification.ts → tools/data-enrichment-tools.ts} +128 -117
  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 +1431 -526
  369. package/src/core/Events.ts +100 -112
  370. package/src/core/PersistenceManager.ts +103 -49
  371. package/src/core/PromptComposer.ts +158 -85
  372. package/src/core/ResponseEngine.ts +128 -46
  373. package/src/core/ResponsePipeline.ts +830 -0
  374. package/src/core/Route.ts +222 -53
  375. package/src/core/RoutingEngine.ts +345 -229
  376. package/src/core/SessionManager.ts +265 -0
  377. package/src/core/Step.ts +157 -67
  378. package/src/core/ToolExecutor.ts +52 -43
  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 +81 -46
  385. package/src/types/ai.ts +7 -0
  386. package/src/types/history.ts +91 -18
  387. package/src/types/index.ts +45 -7
  388. package/src/types/persistence.ts +45 -28
  389. package/src/types/route.ts +122 -57
  390. package/src/types/session.ts +20 -220
  391. package/src/types/template.ts +36 -0
  392. package/src/types/tool.ts +23 -19
  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 +204 -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 +0 -197
  432. package/dist/cjs/core/Agent.d.ts.map +0 -1
  433. package/dist/cjs/core/Agent.js +0 -966
  434. package/dist/cjs/core/Agent.js.map +0 -1
  435. package/dist/cjs/core/DomainRegistry.d.ts +0 -36
  436. package/dist/cjs/core/DomainRegistry.d.ts.map +0 -1
  437. package/dist/cjs/core/DomainRegistry.js +0 -72
  438. package/dist/cjs/core/DomainRegistry.js.map +0 -1
  439. package/dist/cjs/core/Events.d.ts +0 -41
  440. package/dist/cjs/core/Events.d.ts.map +0 -1
  441. package/dist/cjs/core/Events.js +0 -99
  442. package/dist/cjs/core/Events.js.map +0 -1
  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 +0 -203
  456. package/dist/cjs/core/Route.js.map +0 -1
  457. package/dist/cjs/core/RoutingEngine.d.ts +0 -109
  458. package/dist/cjs/core/RoutingEngine.d.ts.map +0 -1
  459. package/dist/cjs/core/RoutingEngine.js.map +0 -1
  460. package/dist/cjs/core/Step.d.ts +0 -72
  461. package/dist/cjs/core/Step.d.ts.map +0 -1
  462. package/dist/cjs/core/Step.js +0 -150
  463. package/dist/cjs/core/Step.js.map +0 -1
  464. package/dist/cjs/core/Tool.d.ts +0 -39
  465. package/dist/cjs/core/Tool.d.ts.map +0 -1
  466. package/dist/cjs/core/Tool.js +0 -34
  467. package/dist/cjs/core/Tool.js.map +0 -1
  468. package/dist/cjs/core/ToolExecutor.d.ts +0 -29
  469. package/dist/cjs/core/ToolExecutor.d.ts.map +0 -1
  470. package/dist/cjs/core/ToolExecutor.js.map +0 -1
  471. package/dist/cjs/core/Transition.d.ts +0 -32
  472. package/dist/cjs/core/Transition.d.ts.map +0 -1
  473. package/dist/cjs/core/Transition.js +0 -89
  474. package/dist/cjs/core/Transition.js.map +0 -1
  475. package/dist/cjs/index.d.ts.map +0 -1
  476. package/dist/cjs/index.js.map +0 -1
  477. package/dist/cjs/providers/AnthropicProvider.d.ts.map +0 -1
  478. package/dist/cjs/providers/AnthropicProvider.js.map +0 -1
  479. package/dist/cjs/providers/GeminiProvider.js.map +0 -1
  480. package/dist/cjs/providers/OpenAIProvider.js.map +0 -1
  481. package/dist/cjs/providers/OpenRouterProvider.js.map +0 -1
  482. package/dist/cjs/providers/index.js.map +0 -1
  483. package/dist/cjs/types/agent.d.ts.map +0 -1
  484. package/dist/cjs/types/agent.js.map +0 -1
  485. package/dist/cjs/types/ai.d.ts.map +0 -1
  486. package/dist/cjs/types/history.d.ts.map +0 -1
  487. package/dist/cjs/types/history.js +0 -37
  488. package/dist/cjs/types/history.js.map +0 -1
  489. package/dist/cjs/types/index.d.ts +0 -12
  490. package/dist/cjs/types/index.d.ts.map +0 -1
  491. package/dist/cjs/types/index.js +0 -12
  492. package/dist/cjs/types/index.js.map +0 -1
  493. package/dist/cjs/types/persistence.d.ts.map +0 -1
  494. package/dist/cjs/types/persistence.js.map +0 -1
  495. package/dist/cjs/types/route.d.ts +0 -175
  496. package/dist/cjs/types/route.d.ts.map +0 -1
  497. package/dist/cjs/types/session.d.ts +0 -104
  498. package/dist/cjs/types/session.d.ts.map +0 -1
  499. package/dist/cjs/types/session.js.map +0 -1
  500. package/dist/cjs/types/tool.d.ts.map +0 -1
  501. package/dist/cjs/utils/event.js.map +0 -1
  502. package/dist/cjs/utils/id.js.map +0 -1
  503. package/dist/cjs/utils/logger.js.map +0 -1
  504. package/dist/cjs/utils/retry.js.map +0 -1
  505. package/dist/constants/index.d.ts.map +0 -1
  506. package/dist/constants/index.js.map +0 -1
  507. package/dist/core/Agent.d.ts +0 -197
  508. package/dist/core/Agent.d.ts.map +0 -1
  509. package/dist/core/Agent.js +0 -962
  510. package/dist/core/Agent.js.map +0 -1
  511. package/dist/core/DomainRegistry.d.ts +0 -36
  512. package/dist/core/DomainRegistry.d.ts.map +0 -1
  513. package/dist/core/DomainRegistry.js +0 -68
  514. package/dist/core/DomainRegistry.js.map +0 -1
  515. package/dist/core/Events.d.ts +0 -41
  516. package/dist/core/Events.d.ts.map +0 -1
  517. package/dist/core/Events.js +0 -94
  518. package/dist/core/Events.js.map +0 -1
  519. package/dist/core/PersistenceManager.d.ts.map +0 -1
  520. package/dist/core/PersistenceManager.js.map +0 -1
  521. package/dist/core/PromptComposer.d.ts +0 -24
  522. package/dist/core/PromptComposer.d.ts.map +0 -1
  523. package/dist/core/PromptComposer.js +0 -123
  524. package/dist/core/PromptComposer.js.map +0 -1
  525. package/dist/core/ResponseEngine.d.ts +0 -14
  526. package/dist/core/ResponseEngine.d.ts.map +0 -1
  527. package/dist/core/ResponseEngine.js +0 -52
  528. package/dist/core/ResponseEngine.js.map +0 -1
  529. package/dist/core/Route.d.ts +0 -90
  530. package/dist/core/Route.d.ts.map +0 -1
  531. package/dist/core/Route.js +0 -199
  532. package/dist/core/Route.js.map +0 -1
  533. package/dist/core/RoutingEngine.d.ts +0 -109
  534. package/dist/core/RoutingEngine.d.ts.map +0 -1
  535. package/dist/core/RoutingEngine.js.map +0 -1
  536. package/dist/core/Step.d.ts +0 -72
  537. package/dist/core/Step.d.ts.map +0 -1
  538. package/dist/core/Step.js +0 -146
  539. package/dist/core/Step.js.map +0 -1
  540. package/dist/core/Tool.d.ts +0 -39
  541. package/dist/core/Tool.d.ts.map +0 -1
  542. package/dist/core/Tool.js +0 -31
  543. package/dist/core/Tool.js.map +0 -1
  544. package/dist/core/ToolExecutor.d.ts +0 -29
  545. package/dist/core/ToolExecutor.d.ts.map +0 -1
  546. package/dist/core/ToolExecutor.js +0 -69
  547. package/dist/core/ToolExecutor.js.map +0 -1
  548. package/dist/core/Transition.d.ts +0 -32
  549. package/dist/core/Transition.d.ts.map +0 -1
  550. package/dist/core/Transition.js +0 -85
  551. package/dist/core/Transition.js.map +0 -1
  552. package/dist/index.d.ts.map +0 -1
  553. package/dist/index.js.map +0 -1
  554. package/dist/providers/AnthropicProvider.d.ts.map +0 -1
  555. package/dist/providers/AnthropicProvider.js.map +0 -1
  556. package/dist/providers/GeminiProvider.d.ts.map +0 -1
  557. package/dist/providers/GeminiProvider.js.map +0 -1
  558. package/dist/providers/OpenAIProvider.d.ts.map +0 -1
  559. package/dist/providers/OpenAIProvider.js.map +0 -1
  560. package/dist/providers/OpenRouterProvider.d.ts.map +0 -1
  561. package/dist/providers/OpenRouterProvider.js.map +0 -1
  562. package/dist/providers/index.d.ts.map +0 -1
  563. package/dist/providers/index.js.map +0 -1
  564. package/dist/types/agent.d.ts.map +0 -1
  565. package/dist/types/agent.js.map +0 -1
  566. package/dist/types/ai.d.ts.map +0 -1
  567. package/dist/types/ai.js.map +0 -1
  568. package/dist/types/history.d.ts.map +0 -1
  569. package/dist/types/history.js +0 -34
  570. package/dist/types/history.js.map +0 -1
  571. package/dist/types/index.d.ts +0 -12
  572. package/dist/types/index.d.ts.map +0 -1
  573. package/dist/types/index.js +0 -6
  574. package/dist/types/index.js.map +0 -1
  575. package/dist/types/persistence.d.ts.map +0 -1
  576. package/dist/types/persistence.js.map +0 -1
  577. package/dist/types/route.d.ts +0 -175
  578. package/dist/types/route.d.ts.map +0 -1
  579. package/dist/types/routing.d.ts.map +0 -1
  580. package/dist/types/schema.d.ts.map +0 -1
  581. package/dist/types/session.d.ts +0 -104
  582. package/dist/types/session.d.ts.map +0 -1
  583. package/dist/types/session.js.map +0 -1
  584. package/dist/types/tool.d.ts.map +0 -1
  585. package/dist/utils/event.d.ts.map +0 -1
  586. package/dist/utils/event.js.map +0 -1
  587. package/dist/utils/id.d.ts.map +0 -1
  588. package/dist/utils/id.js.map +0 -1
  589. package/dist/utils/logger.d.ts.map +0 -1
  590. package/dist/utils/logger.js.map +0 -1
  591. package/dist/utils/retry.d.ts.map +0 -1
  592. package/dist/utils/retry.js.map +0 -1
  593. package/docs/AGENT.md +0 -535
  594. package/docs/DOCS.md +0 -263
  595. package/docs/DOMAINS.md +0 -735
  596. package/docs/EXAMPLES.md +0 -467
  597. package/docs/GETTING_STARTED.md +0 -424
  598. package/docs/PERSISTENCE.md +0 -815
  599. package/docs/PROVIDERS.md +0 -612
  600. package/docs/ROUTES.md +0 -1085
  601. package/docs/STEPS.md +0 -883
  602. package/examples/business-onboarding.ts +0 -791
  603. package/examples/custom-database-persistence.ts +0 -574
  604. package/examples/declarative-agent.ts +0 -401
  605. package/examples/domain-scoping.ts +0 -366
  606. package/examples/healthcare-agent.ts +0 -511
  607. package/examples/redis-persistence.ts +0 -525
  608. package/examples/route-transitions.ts +0 -266
  609. package/examples/travel-agent.ts +0 -584
  610. package/src/core/DomainRegistry.ts +0 -80
  611. package/src/core/Tool.ts +0 -112
  612. package/src/core/Transition.ts +0 -115
  613. /package/dist/{adapters → cjs/src/adapters}/index.d.ts +0 -0
  614. /package/dist/cjs/{adapters → src/adapters}/index.js +0 -0
  615. /package/dist/cjs/{constants → src/constants}/index.d.ts +0 -0
  616. /package/dist/cjs/{constants → src/constants}/index.js +0 -0
  617. /package/dist/cjs/{providers → src/providers}/index.d.ts +0 -0
  618. /package/dist/cjs/{providers → src/providers}/index.js +0 -0
  619. /package/dist/cjs/{types → src/types}/agent.js +0 -0
  620. /package/dist/cjs/{types → src/types}/ai.js +0 -0
  621. /package/dist/cjs/{types → src/types}/persistence.js +0 -0
  622. /package/dist/cjs/{types → src/types}/route.js +0 -0
  623. /package/dist/cjs/{types → src/types}/routing.d.ts +0 -0
  624. /package/dist/cjs/{types → src/types}/routing.js +0 -0
  625. /package/dist/cjs/{types → src/types}/schema.d.ts +0 -0
  626. /package/dist/cjs/{types → src/types}/schema.js +0 -0
  627. /package/dist/cjs/{types → src/types}/tool.js +0 -0
  628. /package/dist/cjs/{utils → src/utils}/id.d.ts +0 -0
  629. /package/dist/cjs/{utils → src/utils}/id.js +0 -0
  630. /package/dist/cjs/{utils → src/utils}/logger.d.ts +0 -0
  631. /package/dist/cjs/{utils → src/utils}/logger.js +0 -0
  632. /package/dist/cjs/{utils → src/utils}/retry.d.ts +0 -0
  633. /package/dist/cjs/{utils → src/utils}/retry.js +0 -0
  634. /package/dist/{cjs → src}/adapters/index.d.ts +0 -0
  635. /package/dist/{cjs → src}/adapters/index.d.ts.map +0 -0
  636. /package/dist/{adapters → src/adapters}/index.js +0 -0
  637. /package/dist/{constants → src/constants}/index.d.ts +0 -0
  638. /package/dist/{cjs → src}/constants/index.d.ts.map +0 -0
  639. /package/dist/{constants → src/constants}/index.js +0 -0
  640. /package/dist/{providers → src/providers}/index.d.ts +0 -0
  641. /package/dist/{cjs → src}/providers/index.d.ts.map +0 -0
  642. /package/dist/{providers → src/providers}/index.js +0 -0
  643. /package/dist/{types → src/types}/agent.js +0 -0
  644. /package/dist/{types → src/types}/ai.js +0 -0
  645. /package/dist/{types → src/types}/persistence.js +0 -0
  646. /package/dist/{types → src/types}/route.js +0 -0
  647. /package/dist/{types → src/types}/routing.d.ts +0 -0
  648. /package/dist/{cjs → src}/types/routing.d.ts.map +0 -0
  649. /package/dist/{types → src/types}/routing.js +0 -0
  650. /package/dist/{cjs → src}/types/routing.js.map +0 -0
  651. /package/dist/{types → src/types}/schema.d.ts +0 -0
  652. /package/dist/{cjs → src}/types/schema.d.ts.map +0 -0
  653. /package/dist/{types → src/types}/schema.js +0 -0
  654. /package/dist/{cjs → src}/types/schema.js.map +0 -0
  655. /package/dist/{types → src/types}/tool.js +0 -0
  656. /package/dist/{utils → src/utils}/id.d.ts +0 -0
  657. /package/dist/{cjs → src}/utils/id.d.ts.map +0 -0
  658. /package/dist/{utils → src/utils}/id.js +0 -0
  659. /package/dist/{utils → src/utils}/logger.d.ts +0 -0
  660. /package/dist/{cjs → src}/utils/logger.d.ts.map +0 -0
  661. /package/dist/{utils → src/utils}/logger.js +0 -0
  662. /package/dist/{utils → src/utils}/retry.d.ts +0 -0
  663. /package/dist/{cjs → src}/utils/retry.d.ts.map +0 -0
  664. /package/dist/{utils → src/utils}/retry.js +0 -0
  665. /package/docs/{PUBLISHING.md → guides/advanced-patterns/publishing.md} +0 -0
@@ -1,6 +1,21 @@
1
1
  /**
2
2
  * Event history and interaction types
3
3
  */
4
+ /**
5
+ * Message source enum - defines valid sources for messages and events
6
+ */
7
+ export declare enum MessageRole {
8
+ /** Message/event from user/customer */
9
+ USER = "user",
10
+ /** Conversational message from AI assistant */
11
+ ASSISTANT = "assistant",
12
+ /** Tool execution/action by AI agent */
13
+ AGENT = "agent",
14
+ /** System message/event */
15
+ SYSTEM = "system"
16
+ }
17
+ export type MessageRoleType = MessageRole;
18
+ import type { SessionState } from "./session";
4
19
  /**
5
20
  * Types of events in the interaction history
6
21
  */
@@ -12,23 +27,7 @@ export declare enum EventKind {
12
27
  /** A status update event */
13
28
  STATUS = "status"
14
29
  }
15
- /**
16
- * Source of an event
17
- */
18
- export declare enum EventSource {
19
- /** Event originated from the customer/user */
20
- CUSTOMER = "customer",
21
- /** Event from customer UI application */
22
- CUSTOMER_UI = "customer_ui",
23
- /** Event from human service agent */
24
- HUMAN_AGENT = "human_agent",
25
- /** Human agent acting on behalf of AI agent */
26
- HUMAN_AGENT_ON_BEHALF_OF_AI_AGENT = "human_agent_on_behalf_of_ai_agent",
27
- /** Event generated by AI agent */
28
- AI_AGENT = "ai_agent",
29
- /** System-generated event */
30
- SYSTEM = "system"
31
- }
30
+ export type EventKindType = EventKind;
32
31
  /**
33
32
  * Participant in a conversation
34
33
  */
@@ -38,6 +37,59 @@ export interface Participant {
38
37
  /** Unique identifier */
39
38
  id?: string;
40
39
  }
40
+ /**
41
+ * Role types for simplified history format
42
+ */
43
+ export type Role = "user" | "assistant" | "tool" | "system";
44
+ export type UserHistoryItem = {
45
+ role: "user";
46
+ content: string;
47
+ name?: string;
48
+ };
49
+ export type AssistantHistoryItem = {
50
+ role: "assistant";
51
+ content: string | null;
52
+ tool_calls?: Array<{
53
+ id: string;
54
+ name: string;
55
+ arguments: Record<string, unknown>;
56
+ }>;
57
+ };
58
+ export type ToolHistoryItem = {
59
+ role: "tool";
60
+ tool_call_id: string;
61
+ name: string;
62
+ content: any;
63
+ };
64
+ export type SystemHistoryItem = {
65
+ role: "system";
66
+ content: string;
67
+ };
68
+ /**
69
+ * Simplified history item for developer-friendly API
70
+ */
71
+ export type HistoryItem = UserHistoryItem | AssistantHistoryItem | ToolHistoryItem | SystemHistoryItem;
72
+ /**
73
+ * Simplified history array type
74
+ */
75
+ export type History = HistoryItem[];
76
+ /**
77
+ * Simple JSON format for history messages (developer-friendly)
78
+ */
79
+ export interface HistoryMessage<TData = unknown> {
80
+ /** Role of the message sender */
81
+ role: MessageRole;
82
+ /** Message content */
83
+ content: string;
84
+ /** Optional participant name */
85
+ name?: string;
86
+ /** Optional timestamp (ISO string) */
87
+ timestamp?: string;
88
+ /** Optional session state */
89
+ session?: SessionState<TData>;
90
+ /** Optional additional metadata */
91
+ metadata?: Record<string, unknown>;
92
+ }
41
93
  /**
42
94
  * Data for a message event
43
95
  */
@@ -50,6 +102,12 @@ export interface MessageEventData {
50
102
  flagged?: boolean;
51
103
  /** Tags/reasons if flagged */
52
104
  tags?: string[];
105
+ /** Tool calls made by the assistant */
106
+ toolCalls?: Array<{
107
+ id: string;
108
+ name: string;
109
+ arguments: Record<string, unknown>;
110
+ }>;
53
111
  /** Session metadata attached to this message */
54
112
  session?: {
55
113
  routeId?: string;
@@ -102,7 +160,7 @@ export interface Event<TData = MessageEventData | ToolEventData | StatusEventDat
102
160
  /** Type of event */
103
161
  kind: EventKind;
104
162
  /** Source of the event */
105
- source: EventSource;
163
+ source: MessageRole;
106
164
  /** Event-specific data */
107
165
  data: TData;
108
166
  /** Timestamp (ISO string) */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../../src/types/history.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ /**
3
+ * Event history and interaction types
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.EventKind = exports.MessageRole = void 0;
7
+ /**
8
+ * Message source enum - defines valid sources for messages and events
9
+ */
10
+ var MessageRole;
11
+ (function (MessageRole) {
12
+ /** Message/event from user/customer */
13
+ MessageRole["USER"] = "user";
14
+ /** Conversational message from AI assistant */
15
+ MessageRole["ASSISTANT"] = "assistant";
16
+ /** Tool execution/action by AI agent */
17
+ MessageRole["AGENT"] = "agent";
18
+ /** System message/event */
19
+ MessageRole["SYSTEM"] = "system";
20
+ })(MessageRole || (exports.MessageRole = MessageRole = {}));
21
+ /**
22
+ * Types of events in the interaction history
23
+ */
24
+ var EventKind;
25
+ (function (EventKind) {
26
+ /** A text message event */
27
+ EventKind["MESSAGE"] = "message";
28
+ /** A tool execution event */
29
+ EventKind["TOOL"] = "tool";
30
+ /** A status update event */
31
+ EventKind["STATUS"] = "status";
32
+ })(EventKind || (exports.EventKind = EventKind = {}));
33
+ //# sourceMappingURL=history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../src/types/history.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH;;GAEG;AACH,IAAY,WASX;AATD,WAAY,WAAW;IACrB,uCAAuC;IACvC,4BAAa,CAAA;IACb,+CAA+C;IAC/C,sCAAuB,CAAA;IACvB,wCAAwC;IACxC,8BAAe,CAAA;IACf,2BAA2B;IAC3B,gCAAiB,CAAA;AACnB,CAAC,EATW,WAAW,2BAAX,WAAW,QAStB;AAMD;;GAEG;AACH,IAAY,SAOX;AAPD,WAAY,SAAS;IACnB,2BAA2B;IAC3B,gCAAmB,CAAA;IACnB,6BAA6B;IAC7B,0BAAa,CAAA;IACb,4BAA4B;IAC5B,8BAAiB,CAAA;AACnB,CAAC,EAPW,SAAS,yBAAT,SAAS,QAOpB"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Central type definitions export
3
+ */
4
+ export type { AgentOptions, Term, Guideline, GuidelineMatch, AgentResponseStreamChunk, AgentResponse, ContextLifecycleHooks, ContextProvider, ValidationError, ValidationResult, } from "./agent";
5
+ export { CompositionMode } from "./agent";
6
+ export type { Event, EmittedEvent, MessageEventData, ToolEventData, StatusEventData, Participant, ToolResult as EventToolResult, ToolCall, HistoryMessage, Role, HistoryItem, History, UserHistoryItem, AssistantHistoryItem, SystemHistoryItem, ToolHistoryItem, } from "./history";
7
+ export { EventKind, MessageRole } from "./history";
8
+ export * from "./history";
9
+ export type { RouteOptions, RouteRef, StepRef, StepOptions, StepResult, BranchSpec, BranchResult, RouteCompletionHandler, RouteTransitionConfig, RouteLifecycleHooks, } from "./route";
10
+ export * from "./route";
11
+ export type { SessionState, PendingTransition } from "./session";
12
+ export type { Tool, ToolContext, ToolResult, ToolHandler } from "./tool";
13
+ export type { AiProvider, GenerateMessageInput, GenerateMessageOutput, AgentStructuredResponse, ReasoningConfig, GenerateMessageStreamChunk, } from "./ai";
14
+ export type { StructuredSchema } from "./schema";
15
+ export type { RoutingDecision } from "./routing";
16
+ export * from "./routing";
17
+ export type { SessionData, MessageData, SessionStatus, SessionRepository, MessageRepository, PersistenceAdapter, PersistenceConfig, CreateSessionOptions, CreateSessionData, SaveMessageOptions, CollectedStateData, } from "./persistence";
18
+ export * from "./persistence";
19
+ export type { Template, TemplateContext } from "./template";
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,cAAc,EACd,wBAAwB,EACxB,aAAa,EACb,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,gBAAgB,GACjB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,YAAY,EACV,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,WAAW,EACX,UAAU,IAAI,eAAe,EAC7B,QAAQ,EACR,cAAc,EACd,IAAI,EACJ,WAAW,EACX,OAAO,EACP,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,GAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACnD,cAAc,WAAW,CAAC;AAG1B,YAAY,EACV,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,WAAW,EACX,UAAU,EACV,UAAU,EACV,YAAY,EACZ,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,SAAS,CAAC;AACjB,cAAc,SAAS,CAAC;AAGxB,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAGjE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAGzE,YAAY,EACV,UAAU,EACV,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,0BAA0B,GAC3B,MAAM,MAAM,CAAC;AAGd,YAAY,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAGjD,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,cAAc,WAAW,CAAC;AAG1B,YAAY,EACV,WAAW,EACX,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,cAAc,eAAe,CAAC;AAG9B,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ /**
3
+ * Central type definitions export
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.MessageRole = exports.EventKind = exports.CompositionMode = void 0;
21
+ var agent_1 = require("./agent");
22
+ Object.defineProperty(exports, "CompositionMode", { enumerable: true, get: function () { return agent_1.CompositionMode; } });
23
+ var history_1 = require("./history");
24
+ Object.defineProperty(exports, "EventKind", { enumerable: true, get: function () { return history_1.EventKind; } });
25
+ Object.defineProperty(exports, "MessageRole", { enumerable: true, get: function () { return history_1.MessageRole; } });
26
+ __exportStar(require("./history"), exports);
27
+ __exportStar(require("./route"), exports);
28
+ __exportStar(require("./routing"), exports);
29
+ __exportStar(require("./persistence"), exports);
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/types/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAeH,iCAA0C;AAAjC,wGAAA,eAAe,OAAA;AAqBxB,qCAAmD;AAA1C,oGAAA,SAAS,OAAA;AAAE,sGAAA,WAAW,OAAA;AAC/B,4CAA0B;AAe1B,0CAAwB;AAuBxB,4CAA0B;AAgB1B,gDAA8B"}
@@ -2,32 +2,47 @@
2
2
  * Persistence-related type definitions
3
3
  * Support for optional database persistence (Prisma, etc.)
4
4
  */
5
- import type { Event } from "./history";
5
+ import type { Event, MessageRole } from "./history";
6
+ import type { SessionState } from "./session";
6
7
  /**
7
8
  * Session status enum
8
9
  */
9
10
  export type SessionStatus = "active" | "completed" | "abandoned";
10
- /**
11
- * Message role enum
12
- */
13
- export type MessageRole = "user" | "agent" | "system";
14
11
  /**
15
12
  * Base session data structure
16
13
  */
17
- export interface SessionData {
14
+ export interface SessionData<TData = Record<string, unknown>> {
18
15
  id: string;
19
16
  userId?: string;
20
17
  agentName?: string;
21
18
  status: SessionStatus;
22
19
  currentRoute?: string;
23
20
  currentStep?: string;
24
- collectedData?: Record<string, unknown>;
21
+ collectedData?: CollectedStateData<TData>;
25
22
  messageCount?: number;
26
23
  lastMessageAt?: Date;
27
24
  completedAt?: Date;
28
25
  createdAt: Date;
29
26
  updatedAt: Date;
30
27
  }
28
+ /**
29
+ * Data for creating a new session (subset of SessionData)
30
+ */
31
+ export type CreateSessionData<TData = Record<string, unknown>> = Omit<SessionData<TData>, "id" | "createdAt" | "updatedAt"> & {
32
+ id?: string;
33
+ };
34
+ /**
35
+ * Structure for data collected during a session that needs to be persisted.
36
+ * This is a subset of SessionState, stored within SessionData.
37
+ */
38
+ export interface CollectedStateData<TData = Record<string, unknown>> {
39
+ data: Partial<TData>;
40
+ routeHistory: SessionState<TData>["routeHistory"];
41
+ history?: SessionState<TData>["history"];
42
+ currentRouteTitle?: string;
43
+ currentStepDescription?: string;
44
+ metadata: SessionState<TData>["metadata"];
45
+ }
31
46
  /**
32
47
  * Base message data structure
33
48
  */
@@ -50,43 +65,43 @@ export interface MessageData {
50
65
  * Repository interface for sessions
51
66
  * Implement this interface with your database of choice
52
67
  */
53
- export interface SessionRepository {
68
+ export interface SessionRepository<TData = Record<string, unknown>> {
54
69
  /**
55
70
  * Create a new session
56
71
  */
57
- create(data: Omit<SessionData, "id" | "createdAt" | "updatedAt">): Promise<SessionData>;
72
+ create(data: CreateSessionData<TData>): Promise<SessionData<TData>>;
58
73
  /**
59
74
  * Find session by ID
60
75
  */
61
- findById(id: string): Promise<SessionData | null>;
76
+ findById(id: string): Promise<SessionData<TData> | null>;
62
77
  /**
63
78
  * Find active session by user ID
64
79
  */
65
- findActiveByUserId(userId: string): Promise<SessionData | null>;
80
+ findActiveByUserId(userId: string): Promise<SessionData<TData> | null>;
66
81
  /**
67
82
  * Find all sessions for a user
68
83
  */
69
- findByUserId(userId: string, limit?: number): Promise<SessionData[]>;
84
+ findByUserId(userId: string, limit?: number): Promise<SessionData<TData>[]>;
70
85
  /**
71
86
  * Update session
72
87
  */
73
- update(id: string, data: Partial<Omit<SessionData, "id" | "createdAt">>): Promise<SessionData | null>;
88
+ update(id: string, data: Partial<Omit<SessionData<TData>, "id" | "createdAt">>): Promise<SessionData<TData> | null>;
74
89
  /**
75
90
  * Update session status
76
91
  */
77
- updateStatus(id: string, status: SessionStatus, completedAt?: Date): Promise<SessionData | null>;
92
+ updateStatus(id: string, status: SessionStatus, completedAt?: Date): Promise<SessionData<TData> | null>;
78
93
  /**
79
94
  * Update collected data
80
95
  */
81
- updateCollectedData(id: string, collectedData: Record<string, unknown>): Promise<SessionData | null>;
96
+ updateCollectedData(id: string, collectedData: CollectedStateData<TData>): Promise<SessionData<TData> | null>;
82
97
  /**
83
98
  * Update current route and step
84
99
  */
85
- updateRouteStep(id: string, route?: string, step?: string): Promise<SessionData | null>;
100
+ updateRouteStep(id: string, route?: string, step?: string): Promise<SessionData<TData> | null>;
86
101
  /**
87
102
  * Increment message count
88
103
  */
89
- incrementMessageCount(id: string): Promise<SessionData | null>;
104
+ incrementMessageCount(id: string): Promise<SessionData<TData> | null>;
90
105
  /**
91
106
  * Delete session
92
107
  */
@@ -130,11 +145,11 @@ export interface MessageRepository {
130
145
  * Persistence adapter interface
131
146
  * Implement this to create adapters for different databases
132
147
  */
133
- export interface PersistenceAdapter {
148
+ export interface PersistenceAdapter<TData = Record<string, unknown>> {
134
149
  /**
135
150
  * Session repository
136
151
  */
137
- readonly sessionRepository: SessionRepository;
152
+ readonly sessionRepository: SessionRepository<TData>;
138
153
  /**
139
154
  * Message repository
140
155
  */
@@ -152,11 +167,11 @@ export interface PersistenceAdapter {
152
167
  /**
153
168
  * Configuration for persistence
154
169
  */
155
- export interface PersistenceConfig {
170
+ export interface PersistenceConfig<TData = Record<string, unknown>> {
156
171
  /**
157
172
  * Persistence adapter instance (e.g., PrismaAdapter)
158
173
  */
159
- adapter: PersistenceAdapter;
174
+ adapter: PersistenceAdapter<TData>;
160
175
  /**
161
176
  * Whether to auto-save messages (default: true)
162
177
  */
@@ -170,10 +185,10 @@ export interface PersistenceConfig {
170
185
  /**
171
186
  * Options for creating a session
172
187
  */
173
- export interface CreateSessionOptions {
188
+ export interface CreateSessionOptions<TData = Record<string, unknown>> {
174
189
  userId?: string;
175
190
  agentName?: string;
176
- initialData?: Record<string, unknown>;
191
+ initialData?: Partial<TData>;
177
192
  }
178
193
  /**
179
194
  * Options for saving a message
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../../../src/types/persistence.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../../../src/types/persistence.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
@@ -0,0 +1,235 @@
1
+ /**
2
+ * Route/Journey DSL type definitions
3
+ */
4
+ import type { Tool } from "./tool";
5
+ import type { StructuredSchema } from "./schema";
6
+ import { Template } from "./template";
7
+ /**
8
+ * Reference to a route
9
+ */
10
+ export interface RouteRef {
11
+ /** Route identifier */
12
+ id: string;
13
+ }
14
+ /**
15
+ * Reference to a step within a route
16
+ */
17
+ export interface StepRef {
18
+ /** Step identifier */
19
+ id: string;
20
+ /** Route this step belongs to */
21
+ routeId: string;
22
+ }
23
+ /**
24
+ * Forward declare Guideline and Term for circular dependency
25
+ */
26
+ import type { Guideline, Term } from "./agent";
27
+ /**
28
+ * Route lifecycle hooks for managing route-specific data and behavior
29
+ */
30
+ export interface RouteLifecycleHooks<TContext = unknown, TData = unknown> {
31
+ /**
32
+ * Called after collected data is updated for this route (from AI response or tool execution)
33
+ * Useful for validation, enrichment, or persistence of route-specific collected data
34
+ * Return modified collected data or the same data to keep it unchanged
35
+ *
36
+ * Unlike Agent-level onDataUpdate, this only triggers for data changes in this specific route.
37
+ */
38
+ onDataUpdate?: (data: Partial<TData>, previousCollected: Partial<TData>) => Partial<TData> | Promise<Partial<TData>>;
39
+ /**
40
+ * Called after context is updated via updateContext() when this route is active
41
+ * Useful for route-specific context reactions, validation, or side effects
42
+ *
43
+ * Unlike Agent-level onContextUpdate, this only triggers when this specific route is active.
44
+ */
45
+ onContextUpdate?: (newContext: TContext, previousContext: TContext) => void | Promise<void>;
46
+ }
47
+ /**
48
+ * Route transition configuration when route completes
49
+ */
50
+ export interface RouteTransitionConfig<TContext = unknown, TData = unknown> {
51
+ /** Target route ID or title to transition to */
52
+ nextStep: string;
53
+ /** Optional AI-evaluated condition for the transition */
54
+ condition?: Template<TContext, TData>;
55
+ }
56
+ /**
57
+ * Function type for dynamic route completion transitions
58
+ * @param session - Current session step with collected data
59
+ * @param context - Agent context
60
+ * @returns Route ID/title to transition to, or transition config, or undefined to end
61
+ */
62
+ export type RouteCompletionHandler<TContext = unknown, TData = unknown> = (session: {
63
+ data?: Partial<TData>;
64
+ }, context?: TContext) => string | RouteTransitionConfig<TContext, TData> | undefined | Promise<string | RouteTransitionConfig<TContext, TData> | undefined>;
65
+ /**
66
+ * Options for creating a route
67
+ * @template TData - Type of data collected throughout the route (inferred from schema)
68
+ */
69
+ export interface RouteOptions<TContext = unknown, TData = unknown> {
70
+ /** Custom ID for the route (optional - will generate deterministic ID from title if not provided) */
71
+ id?: string;
72
+ /** Title of the route */
73
+ title: string;
74
+ /** Description of what this route accomplishes */
75
+ description?: string;
76
+ /** Optional identity prompt defining the agent's role and persona for this route */
77
+ identity?: Template<TContext, TData>;
78
+ /** Optional personality prompt defining the agent's communication style for this route */
79
+ personality?: Template<TContext, TData>;
80
+ /** Conditions that activate this route */
81
+ conditions?: Template<TContext, TData>[];
82
+ /** Initial guidelines for this route */
83
+ guidelines?: Guideline<TContext>[];
84
+ /** Initial terms for the route's domain glossary */
85
+ terms?: Term<TContext>[];
86
+ /** Tools available in this route */
87
+ tools?: Tool<TContext, TData, unknown[], unknown>[];
88
+ /** Absolute rules the agent must follow in this route */
89
+ rules?: Template<TContext, TData>[];
90
+ /** Absolute prohibitions the agent must never do in this route */
91
+ prohibitions?: Template<TContext, TData>[];
92
+ /** Optional: extractions the router may return (added to routing schema) */
93
+ routingExtrasSchema?: StructuredSchema;
94
+ /** Optional: structured response data for this route's message generation */
95
+ responseOutputSchema?: StructuredSchema;
96
+ /**
97
+ * Required fields for route completion - must be valid keys from agent's TData type
98
+ * Route is considered complete when all required fields are present in agent data
99
+ */
100
+ requiredFields?: (keyof TData)[];
101
+ /**
102
+ * Optional fields that enhance the route but aren't required for completion
103
+ * Must be valid keys from agent's TData type
104
+ */
105
+ optionalFields?: (keyof TData)[];
106
+ /**
107
+ * Initial data to pre-populate when entering this route
108
+ * Useful for restoring sessions or pre-filling known information
109
+ * Steps with skipIf conditions will be automatically bypassed if data is present
110
+ * Now refers to agent-level data
111
+ */
112
+ initialData?: Partial<TData>;
113
+ /**
114
+ * NEW: Sequential steps for simple linear flows
115
+ * If provided, automatically chains the steps from initialStep to END_ROUTE
116
+ * For complex flows with branching, build the step machine manually instead
117
+ */
118
+ steps?: StepOptions<TContext, TData>[];
119
+ /**
120
+ * Configure the initial step (optional)
121
+ * Accepts full StepOptions configuration (id, prompt, collect, skipIf, etc.)
122
+ * Note: tool and step properties are ignored for initial step
123
+ */
124
+ initialStep?: Omit<StepOptions<TContext, TData>, "step">;
125
+ /**
126
+ * Configure the end step (optional)
127
+ * Defines what happens when the route completes (reaches END_ROUTE)
128
+ * Can include prompt for completion message, tool for final actions, etc.
129
+ * Note: step, condition, skipIf properties are ignored for end step
130
+ */
131
+ endStep?: Omit<StepOptions<TContext, TData>, "step" | "condition" | "skipIf">;
132
+ /**
133
+ * Optional transition when route completes (reaches END_ROUTE)
134
+ * Can be:
135
+ * - String: Route ID or title to transition to
136
+ * - Object: Transition config with optional AI-evaluated condition
137
+ * - Function: Dynamic logic that returns route ID, config, or undefined
138
+ *
139
+ * @example
140
+ * // Simple string
141
+ * onComplete: "feedback-collection"
142
+ *
143
+ * @example
144
+ * // With condition
145
+ * onComplete: {
146
+ * nextStep: "feedback-collection",
147
+ * condition: "if booking succeeded"
148
+ * }
149
+ *
150
+ * @example
151
+ * // Dynamic function
152
+ * onComplete: (session) => {
153
+ * if (session.data?.success) return "feedback";
154
+ * return "error-recovery";
155
+ * }
156
+ */
157
+ onComplete?: string | RouteTransitionConfig<TContext, TData> | RouteCompletionHandler<TContext, TData>;
158
+ /**
159
+ * Route lifecycle hooks
160
+ */
161
+ hooks?: RouteLifecycleHooks<TContext, TData>;
162
+ /** Knowledge base specific to this route containing any JSON structure the AI should know */
163
+ knowledgeBase?: Record<string, unknown>;
164
+ }
165
+ /**
166
+ * Specification for a step transition
167
+ */
168
+ export interface StepOptions<TContext = unknown, TData = unknown> {
169
+ /** Custom ID for this step (optional - will generate deterministic ID if not provided) */
170
+ id?: string;
171
+ /** Description of the transition */
172
+ description?: string;
173
+ /** Transition to a chat state with this description */
174
+ prompt?: Template<TContext, TData>;
175
+ /** Tools available for AI to call in this step (by ID reference or inline definition) */
176
+ tools?: (string | Tool<TContext, TData, unknown[], unknown>)[];
177
+ /** Programmatic function or tool to run before AI responds */
178
+ prepare?: string | Tool<TContext, TData, unknown[], unknown> | ((context: TContext, data?: Partial<TData>) => void | Promise<void>);
179
+ /** Programmatic function or tool to run after AI responds */
180
+ finalize?: string | Tool<TContext, TData, unknown[], unknown> | ((context: TContext, data?: Partial<TData>) => void | Promise<void>);
181
+ /** Transition to a specific step or end marker */
182
+ step?: StepRef | symbol;
183
+ /**
184
+ * Fields to collect from the conversation in this step
185
+ * These should match keys in the agent's TData schema
186
+ */
187
+ collect?: (keyof TData)[];
188
+ /**
189
+ * Function to determine if this step should be skipped
190
+ * If returns true, the step will be bypassed
191
+ * @param data - Currently collected agent-level data
192
+ * @returns true if step should be skipped, false otherwise
193
+ */
194
+ skipIf?: (data: Partial<TData>) => boolean;
195
+ /**
196
+ * Required data fields that must be present before entering this step
197
+ * If any required field is missing, step cannot be entered
198
+ * Must be valid keys from agent's TData type
199
+ */
200
+ requires?: (keyof TData)[];
201
+ /**
202
+ * Optional condition for this transition
203
+ * Description of when this transition should be taken
204
+ */
205
+ when?: Template<TContext, TData>;
206
+ }
207
+ /**
208
+ * Specification for a branch in the conversation flow
209
+ */
210
+ export interface BranchSpec<TContext = unknown, TData = unknown> {
211
+ /** User-friendly identifier for this branch (used as object key) */
212
+ name: string;
213
+ /** Optional ID for this branch (auto-generated if not provided) */
214
+ id?: string;
215
+ /** Step configuration for this branch */
216
+ step: StepOptions<TContext, TData>;
217
+ }
218
+ /**
219
+ * Result of a branch operation
220
+ * Maps branch names to their respective step results for continued chaining
221
+ */
222
+ export interface BranchResult<TContext = unknown, TData = unknown> {
223
+ [branchName: string]: StepResult<TContext, TData>;
224
+ }
225
+ /**
226
+ * Result of a transition operation
227
+ * Combines step reference with the ability to chain transitions and create branches
228
+ */
229
+ export interface StepResult<TContext = unknown, TData = unknown> extends StepRef {
230
+ /** Allow chaining transitions */
231
+ nextStep: (spec: StepOptions<TContext, TData>) => StepResult<TContext, TData>;
232
+ /** Create multiple branches from this step */
233
+ branch: (branches: BranchSpec<TContext, TData>[]) => BranchResult<TContext, TData>;
234
+ }
235
+ //# sourceMappingURL=route.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/types/route.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"route.js","sourceRoot":"","sources":["../../../src/types/route.ts"],"names":[],"mappings":";AAAA;;GAEG"}
1
+ {"version":3,"file":"route.js","sourceRoot":"","sources":["../../../../src/types/route.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../../../src/types/routing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,wBAAyB,SAAQ,eAAe;IAC/D,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACjC"}
@@ -1 +1 @@
1
- {"version":3,"file":"routing.js","sourceRoot":"","sources":["../../src/types/routing.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"routing.js","sourceRoot":"","sources":["../../../../src/types/routing.ts"],"names":[],"mappings":""}