@falai/agent 1.2.8 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (499) hide show
  1. package/README.md +40 -886
  2. package/dist/adapters/MemoryAdapter.js +2 -2
  3. package/dist/adapters/MemoryAdapter.js.map +1 -1
  4. package/dist/adapters/MongoAdapter.js +2 -2
  5. package/dist/adapters/MongoAdapter.js.map +1 -1
  6. package/dist/adapters/OpenSearchAdapter.d.ts.map +1 -1
  7. package/dist/adapters/OpenSearchAdapter.js +9 -7
  8. package/dist/adapters/OpenSearchAdapter.js.map +1 -1
  9. package/dist/adapters/PostgreSQLAdapter.d.ts +14 -0
  10. package/dist/adapters/PostgreSQLAdapter.d.ts.map +1 -1
  11. package/dist/adapters/PostgreSQLAdapter.js +25 -9
  12. package/dist/adapters/PostgreSQLAdapter.js.map +1 -1
  13. package/dist/adapters/PrismaAdapter.js +5 -5
  14. package/dist/adapters/PrismaAdapter.js.map +1 -1
  15. package/dist/adapters/RedisAdapter.js +2 -2
  16. package/dist/adapters/RedisAdapter.js.map +1 -1
  17. package/dist/adapters/SQLiteAdapter.d.ts +17 -0
  18. package/dist/adapters/SQLiteAdapter.d.ts.map +1 -1
  19. package/dist/adapters/SQLiteAdapter.js +30 -11
  20. package/dist/adapters/SQLiteAdapter.js.map +1 -1
  21. package/dist/cjs/adapters/MemoryAdapter.js +2 -2
  22. package/dist/cjs/adapters/MemoryAdapter.js.map +1 -1
  23. package/dist/cjs/adapters/MongoAdapter.js +2 -2
  24. package/dist/cjs/adapters/MongoAdapter.js.map +1 -1
  25. package/dist/cjs/adapters/OpenSearchAdapter.d.ts.map +1 -1
  26. package/dist/cjs/adapters/OpenSearchAdapter.js +9 -7
  27. package/dist/cjs/adapters/OpenSearchAdapter.js.map +1 -1
  28. package/dist/cjs/adapters/PostgreSQLAdapter.d.ts +14 -0
  29. package/dist/cjs/adapters/PostgreSQLAdapter.d.ts.map +1 -1
  30. package/dist/cjs/adapters/PostgreSQLAdapter.js +25 -9
  31. package/dist/cjs/adapters/PostgreSQLAdapter.js.map +1 -1
  32. package/dist/cjs/adapters/PrismaAdapter.js +5 -5
  33. package/dist/cjs/adapters/PrismaAdapter.js.map +1 -1
  34. package/dist/cjs/adapters/RedisAdapter.js +2 -2
  35. package/dist/cjs/adapters/RedisAdapter.js.map +1 -1
  36. package/dist/cjs/adapters/SQLiteAdapter.d.ts +17 -0
  37. package/dist/cjs/adapters/SQLiteAdapter.d.ts.map +1 -1
  38. package/dist/cjs/adapters/SQLiteAdapter.js +30 -11
  39. package/dist/cjs/adapters/SQLiteAdapter.js.map +1 -1
  40. package/dist/cjs/constants/index.d.ts +0 -9
  41. package/dist/cjs/constants/index.d.ts.map +1 -1
  42. package/dist/cjs/constants/index.js +2 -11
  43. package/dist/cjs/constants/index.js.map +1 -1
  44. package/dist/cjs/core/Agent.d.ts +119 -153
  45. package/dist/cjs/core/Agent.d.ts.map +1 -1
  46. package/dist/cjs/core/Agent.js +471 -324
  47. package/dist/cjs/core/Agent.js.map +1 -1
  48. package/dist/cjs/core/AutoChainExecutor.d.ts +107 -0
  49. package/dist/cjs/core/AutoChainExecutor.d.ts.map +1 -0
  50. package/dist/cjs/core/AutoChainExecutor.js +297 -0
  51. package/dist/cjs/core/AutoChainExecutor.js.map +1 -0
  52. package/dist/cjs/core/BranchEvaluator.d.ts +54 -0
  53. package/dist/cjs/core/BranchEvaluator.d.ts.map +1 -0
  54. package/dist/cjs/core/BranchEvaluator.js +130 -0
  55. package/dist/cjs/core/BranchEvaluator.js.map +1 -0
  56. package/dist/cjs/core/DirectiveBus.d.ts +88 -0
  57. package/dist/cjs/core/DirectiveBus.d.ts.map +1 -0
  58. package/dist/cjs/core/DirectiveBus.js +196 -0
  59. package/dist/cjs/core/DirectiveBus.js.map +1 -0
  60. package/dist/cjs/core/DirectiveChainTracker.d.ts +49 -0
  61. package/dist/cjs/core/DirectiveChainTracker.d.ts.map +1 -0
  62. package/dist/cjs/core/DirectiveChainTracker.js +121 -0
  63. package/dist/cjs/core/DirectiveChainTracker.js.map +1 -0
  64. package/dist/cjs/core/Flow.d.ts +186 -0
  65. package/dist/cjs/core/Flow.d.ts.map +1 -0
  66. package/dist/cjs/core/Flow.js +550 -0
  67. package/dist/cjs/core/Flow.js.map +1 -0
  68. package/dist/cjs/core/FlowRouter.d.ts +182 -0
  69. package/dist/cjs/core/FlowRouter.d.ts.map +1 -0
  70. package/dist/cjs/core/{RoutingEngine.js → FlowRouter.js} +323 -306
  71. package/dist/cjs/core/FlowRouter.js.map +1 -0
  72. package/dist/cjs/core/PersistenceManager.d.ts +2 -2
  73. package/dist/cjs/core/PersistenceManager.d.ts.map +1 -1
  74. package/dist/cjs/core/PersistenceManager.js +7 -7
  75. package/dist/cjs/core/PersistenceManager.js.map +1 -1
  76. package/dist/cjs/core/PromptComposer.d.ts +21 -8
  77. package/dist/cjs/core/PromptComposer.d.ts.map +1 -1
  78. package/dist/cjs/core/PromptComposer.js +182 -105
  79. package/dist/cjs/core/PromptComposer.js.map +1 -1
  80. package/dist/cjs/core/PromptSectionCache.d.ts +1 -1
  81. package/dist/cjs/core/PromptSectionCache.js +1 -1
  82. package/dist/cjs/core/ResponseEngine.d.ts +18 -8
  83. package/dist/cjs/core/ResponseEngine.d.ts.map +1 -1
  84. package/dist/cjs/core/ResponseEngine.js +38 -36
  85. package/dist/cjs/core/ResponseEngine.js.map +1 -1
  86. package/dist/cjs/core/ResponseModal.d.ts +73 -56
  87. package/dist/cjs/core/ResponseModal.d.ts.map +1 -1
  88. package/dist/cjs/core/ResponseModal.js +1191 -1014
  89. package/dist/cjs/core/ResponseModal.js.map +1 -1
  90. package/dist/cjs/core/ResponsePipeline.d.ts +124 -26
  91. package/dist/cjs/core/ResponsePipeline.d.ts.map +1 -1
  92. package/dist/cjs/core/ResponsePipeline.js +509 -136
  93. package/dist/cjs/core/ResponsePipeline.js.map +1 -1
  94. package/dist/cjs/core/SignalEvaluator.d.ts +86 -0
  95. package/dist/cjs/core/SignalEvaluator.d.ts.map +1 -0
  96. package/dist/cjs/core/SignalEvaluator.js +333 -0
  97. package/dist/cjs/core/SignalEvaluator.js.map +1 -0
  98. package/dist/cjs/core/SignalProcessor.d.ts +152 -0
  99. package/dist/cjs/core/SignalProcessor.d.ts.map +1 -0
  100. package/dist/cjs/core/SignalProcessor.js +562 -0
  101. package/dist/cjs/core/SignalProcessor.js.map +1 -0
  102. package/dist/cjs/core/Step.d.ts +43 -32
  103. package/dist/cjs/core/Step.d.ts.map +1 -1
  104. package/dist/cjs/core/Step.js +221 -126
  105. package/dist/cjs/core/Step.js.map +1 -1
  106. package/dist/cjs/core/StreamingToolExecutor.d.ts +2 -2
  107. package/dist/cjs/core/StreamingToolExecutor.d.ts.map +1 -1
  108. package/dist/cjs/core/StreamingToolExecutor.js.map +1 -1
  109. package/dist/cjs/core/ToolManager.d.ts +44 -13
  110. package/dist/cjs/core/ToolManager.d.ts.map +1 -1
  111. package/dist/cjs/core/ToolManager.js +174 -91
  112. package/dist/cjs/core/ToolManager.js.map +1 -1
  113. package/dist/cjs/core/createAgent.d.ts +35 -0
  114. package/dist/cjs/core/createAgent.d.ts.map +1 -0
  115. package/dist/cjs/core/createAgent.js +39 -0
  116. package/dist/cjs/core/createAgent.js.map +1 -0
  117. package/dist/cjs/core/flow-namespace.d.ts +49 -0
  118. package/dist/cjs/core/flow-namespace.d.ts.map +1 -0
  119. package/dist/cjs/core/flow-namespace.js +171 -0
  120. package/dist/cjs/core/flow-namespace.js.map +1 -0
  121. package/dist/cjs/index.d.ts +11 -14
  122. package/dist/cjs/index.d.ts.map +1 -1
  123. package/dist/cjs/index.js +18 -22
  124. package/dist/cjs/index.js.map +1 -1
  125. package/dist/cjs/types/agent.d.ts +183 -54
  126. package/dist/cjs/types/agent.d.ts.map +1 -1
  127. package/dist/cjs/types/agent.js +0 -6
  128. package/dist/cjs/types/agent.js.map +1 -1
  129. package/dist/cjs/types/ai.d.ts +3 -3
  130. package/dist/cjs/types/ai.d.ts.map +1 -1
  131. package/dist/cjs/types/errors.d.ts +15 -0
  132. package/dist/cjs/types/errors.d.ts.map +1 -0
  133. package/dist/cjs/types/errors.js +22 -0
  134. package/dist/cjs/types/errors.js.map +1 -0
  135. package/dist/cjs/types/flow.d.ts +513 -0
  136. package/dist/cjs/types/flow.d.ts.map +1 -0
  137. package/dist/cjs/types/{route.js → flow.js} +2 -2
  138. package/dist/cjs/types/flow.js.map +1 -0
  139. package/dist/cjs/types/index.d.ts +7 -6
  140. package/dist/cjs/types/index.d.ts.map +1 -1
  141. package/dist/cjs/types/index.js +6 -2
  142. package/dist/cjs/types/index.js.map +1 -1
  143. package/dist/cjs/types/persistence.d.ts +11 -7
  144. package/dist/cjs/types/persistence.d.ts.map +1 -1
  145. package/dist/cjs/types/routing.d.ts +1 -1
  146. package/dist/cjs/types/routing.d.ts.map +1 -1
  147. package/dist/cjs/types/session.d.ts +24 -23
  148. package/dist/cjs/types/session.d.ts.map +1 -1
  149. package/dist/cjs/types/signals.d.ts +248 -0
  150. package/dist/cjs/types/signals.d.ts.map +1 -0
  151. package/dist/cjs/types/signals.js +11 -0
  152. package/dist/cjs/types/signals.js.map +1 -0
  153. package/dist/cjs/types/template.d.ts +2 -8
  154. package/dist/cjs/types/template.d.ts.map +1 -1
  155. package/dist/cjs/types/tool.d.ts +36 -29
  156. package/dist/cjs/types/tool.d.ts.map +1 -1
  157. package/dist/cjs/types/tool.js +1 -1
  158. package/dist/cjs/types/tool.js.map +1 -1
  159. package/dist/cjs/utils/condition.d.ts +7 -1
  160. package/dist/cjs/utils/condition.d.ts.map +1 -1
  161. package/dist/cjs/utils/condition.js.map +1 -1
  162. package/dist/cjs/utils/id.d.ts +13 -5
  163. package/dist/cjs/utils/id.d.ts.map +1 -1
  164. package/dist/cjs/utils/id.js +24 -10
  165. package/dist/cjs/utils/id.js.map +1 -1
  166. package/dist/cjs/utils/index.d.ts +2 -2
  167. package/dist/cjs/utils/index.d.ts.map +1 -1
  168. package/dist/cjs/utils/index.js +7 -3
  169. package/dist/cjs/utils/index.js.map +1 -1
  170. package/dist/cjs/utils/session.d.ts +44 -5
  171. package/dist/cjs/utils/session.d.ts.map +1 -1
  172. package/dist/cjs/utils/session.js +197 -38
  173. package/dist/cjs/utils/session.js.map +1 -1
  174. package/dist/constants/index.d.ts +0 -9
  175. package/dist/constants/index.d.ts.map +1 -1
  176. package/dist/constants/index.js +3 -9
  177. package/dist/constants/index.js.map +1 -1
  178. package/dist/core/Agent.d.ts +119 -153
  179. package/dist/core/Agent.d.ts.map +1 -1
  180. package/dist/core/Agent.js +472 -325
  181. package/dist/core/Agent.js.map +1 -1
  182. package/dist/core/AutoChainExecutor.d.ts +107 -0
  183. package/dist/core/AutoChainExecutor.d.ts.map +1 -0
  184. package/dist/core/AutoChainExecutor.js +293 -0
  185. package/dist/core/AutoChainExecutor.js.map +1 -0
  186. package/dist/core/BranchEvaluator.d.ts +54 -0
  187. package/dist/core/BranchEvaluator.d.ts.map +1 -0
  188. package/dist/core/BranchEvaluator.js +126 -0
  189. package/dist/core/BranchEvaluator.js.map +1 -0
  190. package/dist/core/DirectiveBus.d.ts +88 -0
  191. package/dist/core/DirectiveBus.d.ts.map +1 -0
  192. package/dist/core/DirectiveBus.js +192 -0
  193. package/dist/core/DirectiveBus.js.map +1 -0
  194. package/dist/core/DirectiveChainTracker.d.ts +49 -0
  195. package/dist/core/DirectiveChainTracker.d.ts.map +1 -0
  196. package/dist/core/DirectiveChainTracker.js +117 -0
  197. package/dist/core/DirectiveChainTracker.js.map +1 -0
  198. package/dist/core/Flow.d.ts +186 -0
  199. package/dist/core/Flow.d.ts.map +1 -0
  200. package/dist/core/Flow.js +546 -0
  201. package/dist/core/Flow.js.map +1 -0
  202. package/dist/core/FlowRouter.d.ts +182 -0
  203. package/dist/core/FlowRouter.d.ts.map +1 -0
  204. package/dist/core/{RoutingEngine.js → FlowRouter.js} +322 -305
  205. package/dist/core/FlowRouter.js.map +1 -0
  206. package/dist/core/PersistenceManager.d.ts +2 -2
  207. package/dist/core/PersistenceManager.d.ts.map +1 -1
  208. package/dist/core/PersistenceManager.js +7 -7
  209. package/dist/core/PersistenceManager.js.map +1 -1
  210. package/dist/core/PromptComposer.d.ts +21 -8
  211. package/dist/core/PromptComposer.d.ts.map +1 -1
  212. package/dist/core/PromptComposer.js +183 -106
  213. package/dist/core/PromptComposer.js.map +1 -1
  214. package/dist/core/PromptSectionCache.d.ts +1 -1
  215. package/dist/core/PromptSectionCache.js +1 -1
  216. package/dist/core/ResponseEngine.d.ts +18 -8
  217. package/dist/core/ResponseEngine.d.ts.map +1 -1
  218. package/dist/core/ResponseEngine.js +38 -36
  219. package/dist/core/ResponseEngine.js.map +1 -1
  220. package/dist/core/ResponseModal.d.ts +73 -56
  221. package/dist/core/ResponseModal.d.ts.map +1 -1
  222. package/dist/core/ResponseModal.js +1193 -1016
  223. package/dist/core/ResponseModal.js.map +1 -1
  224. package/dist/core/ResponsePipeline.d.ts +124 -26
  225. package/dist/core/ResponsePipeline.d.ts.map +1 -1
  226. package/dist/core/ResponsePipeline.js +509 -137
  227. package/dist/core/ResponsePipeline.js.map +1 -1
  228. package/dist/core/SignalEvaluator.d.ts +86 -0
  229. package/dist/core/SignalEvaluator.d.ts.map +1 -0
  230. package/dist/core/SignalEvaluator.js +326 -0
  231. package/dist/core/SignalEvaluator.js.map +1 -0
  232. package/dist/core/SignalProcessor.d.ts +152 -0
  233. package/dist/core/SignalProcessor.d.ts.map +1 -0
  234. package/dist/core/SignalProcessor.js +555 -0
  235. package/dist/core/SignalProcessor.js.map +1 -0
  236. package/dist/core/Step.d.ts +43 -32
  237. package/dist/core/Step.d.ts.map +1 -1
  238. package/dist/core/Step.js +220 -126
  239. package/dist/core/Step.js.map +1 -1
  240. package/dist/core/StreamingToolExecutor.d.ts +2 -2
  241. package/dist/core/StreamingToolExecutor.d.ts.map +1 -1
  242. package/dist/core/StreamingToolExecutor.js.map +1 -1
  243. package/dist/core/ToolManager.d.ts +44 -13
  244. package/dist/core/ToolManager.d.ts.map +1 -1
  245. package/dist/core/ToolManager.js +174 -91
  246. package/dist/core/ToolManager.js.map +1 -1
  247. package/dist/core/createAgent.d.ts +35 -0
  248. package/dist/core/createAgent.d.ts.map +1 -0
  249. package/dist/core/createAgent.js +36 -0
  250. package/dist/core/createAgent.js.map +1 -0
  251. package/dist/core/flow-namespace.d.ts +49 -0
  252. package/dist/core/flow-namespace.d.ts.map +1 -0
  253. package/dist/core/flow-namespace.js +168 -0
  254. package/dist/core/flow-namespace.js.map +1 -0
  255. package/dist/index.d.ts +11 -14
  256. package/dist/index.d.ts.map +1 -1
  257. package/dist/index.js +9 -12
  258. package/dist/index.js.map +1 -1
  259. package/dist/types/agent.d.ts +183 -54
  260. package/dist/types/agent.d.ts.map +1 -1
  261. package/dist/types/agent.js +0 -6
  262. package/dist/types/agent.js.map +1 -1
  263. package/dist/types/ai.d.ts +3 -3
  264. package/dist/types/ai.d.ts.map +1 -1
  265. package/dist/types/errors.d.ts +15 -0
  266. package/dist/types/errors.d.ts.map +1 -0
  267. package/dist/types/errors.js +18 -0
  268. package/dist/types/errors.js.map +1 -0
  269. package/dist/types/flow.d.ts +513 -0
  270. package/dist/types/flow.d.ts.map +1 -0
  271. package/dist/types/flow.js +5 -0
  272. package/dist/types/flow.js.map +1 -0
  273. package/dist/types/index.d.ts +7 -6
  274. package/dist/types/index.d.ts.map +1 -1
  275. package/dist/types/index.js +4 -1
  276. package/dist/types/index.js.map +1 -1
  277. package/dist/types/persistence.d.ts +11 -7
  278. package/dist/types/persistence.d.ts.map +1 -1
  279. package/dist/types/routing.d.ts +1 -1
  280. package/dist/types/routing.d.ts.map +1 -1
  281. package/dist/types/session.d.ts +24 -23
  282. package/dist/types/session.d.ts.map +1 -1
  283. package/dist/types/signals.d.ts +248 -0
  284. package/dist/types/signals.d.ts.map +1 -0
  285. package/dist/types/signals.js +10 -0
  286. package/dist/types/signals.js.map +1 -0
  287. package/dist/types/template.d.ts +2 -8
  288. package/dist/types/template.d.ts.map +1 -1
  289. package/dist/types/tool.d.ts +36 -29
  290. package/dist/types/tool.d.ts.map +1 -1
  291. package/dist/types/tool.js +1 -1
  292. package/dist/types/tool.js.map +1 -1
  293. package/dist/utils/condition.d.ts +7 -1
  294. package/dist/utils/condition.d.ts.map +1 -1
  295. package/dist/utils/condition.js.map +1 -1
  296. package/dist/utils/id.d.ts +13 -5
  297. package/dist/utils/id.d.ts.map +1 -1
  298. package/dist/utils/id.js +22 -9
  299. package/dist/utils/id.js.map +1 -1
  300. package/dist/utils/index.d.ts +2 -2
  301. package/dist/utils/index.d.ts.map +1 -1
  302. package/dist/utils/index.js +2 -2
  303. package/dist/utils/index.js.map +1 -1
  304. package/dist/utils/session.d.ts +44 -5
  305. package/dist/utils/session.d.ts.map +1 -1
  306. package/dist/utils/session.js +193 -37
  307. package/dist/utils/session.js.map +1 -1
  308. package/docs/README.md +15 -202
  309. package/docs/concepts/architecture.md +281 -0
  310. package/docs/concepts/directives.md +400 -0
  311. package/docs/concepts/pipeline.md +399 -0
  312. package/docs/guides/branching.md +263 -0
  313. package/docs/guides/compaction.md +163 -0
  314. package/docs/guides/conditions.md +167 -0
  315. package/docs/guides/error-handling.md +176 -0
  316. package/docs/guides/flow-control.md +409 -0
  317. package/docs/guides/instructions.md +210 -0
  318. package/docs/guides/persistence.md +182 -0
  319. package/docs/guides/streaming.md +137 -0
  320. package/docs/migration/README.md +15 -0
  321. package/docs/migration/route-to-flow.md +560 -0
  322. package/docs/migration/v1-to-v2.md +909 -0
  323. package/docs/reference/adapters.md +481 -0
  324. package/docs/reference/branches.md +241 -0
  325. package/docs/reference/create-agent.md +186 -0
  326. package/docs/reference/directive.md +243 -0
  327. package/docs/reference/errors.md +122 -0
  328. package/docs/reference/flow.md +238 -0
  329. package/docs/reference/instruction.md +177 -0
  330. package/docs/reference/pre-directive.md +131 -0
  331. package/docs/reference/providers.md +227 -0
  332. package/docs/reference/signals.md +356 -0
  333. package/docs/reference/step.md +339 -0
  334. package/docs/reference/tool.md +269 -0
  335. package/docs/start/01-install.md +81 -0
  336. package/docs/start/02-first-agent.md +196 -0
  337. package/docs/start/03-collect-data.md +222 -0
  338. package/docs/start/04-add-tools.md +276 -0
  339. package/docs/start/05-go-to-production.md +216 -0
  340. package/examples/01-quickstart.ts +20 -0
  341. package/examples/02-data-extraction.ts +90 -0
  342. package/examples/03-tools.ts +136 -0
  343. package/examples/04-instructions.ts +100 -0
  344. package/examples/05-branching.ts +140 -0
  345. package/examples/06-flow-control.ts +103 -0
  346. package/examples/07-streaming.ts +69 -0
  347. package/examples/08-persistence.ts +98 -0
  348. package/examples/09-signals.ts +144 -0
  349. package/examples/tsconfig.json +30 -0
  350. package/package.json +2 -1
  351. package/src/adapters/MemoryAdapter.ts +3 -3
  352. package/src/adapters/MongoAdapter.ts +3 -3
  353. package/src/adapters/OpenSearchAdapter.ts +10 -8
  354. package/src/adapters/PostgreSQLAdapter.ts +26 -10
  355. package/src/adapters/PrismaAdapter.ts +6 -6
  356. package/src/adapters/RedisAdapter.ts +3 -3
  357. package/src/adapters/SQLiteAdapter.ts +31 -12
  358. package/src/constants/index.ts +2 -10
  359. package/src/core/Agent.ts +585 -374
  360. package/src/core/AutoChainExecutor.ts +440 -0
  361. package/src/core/BranchEvaluator.ts +167 -0
  362. package/src/core/DirectiveBus.ts +248 -0
  363. package/src/core/DirectiveChainTracker.ts +144 -0
  364. package/src/core/Flow.ts +666 -0
  365. package/src/core/{RoutingEngine.ts → FlowRouter.ts} +385 -365
  366. package/src/core/PersistenceManager.ts +8 -8
  367. package/src/core/PromptComposer.ts +209 -140
  368. package/src/core/PromptSectionCache.ts +1 -1
  369. package/src/core/ResponseEngine.ts +61 -46
  370. package/src/core/ResponseModal.ts +1453 -1240
  371. package/src/core/ResponsePipeline.ts +655 -175
  372. package/src/core/SignalEvaluator.ts +420 -0
  373. package/src/core/SignalProcessor.ts +723 -0
  374. package/src/core/Step.ts +279 -176
  375. package/src/core/StreamingToolExecutor.ts +4 -4
  376. package/src/core/ToolManager.ts +200 -97
  377. package/src/core/createAgent.ts +40 -0
  378. package/src/core/flow-namespace.ts +219 -0
  379. package/src/index.ts +42 -36
  380. package/src/types/agent.ts +182 -53
  381. package/src/types/ai.ts +3 -3
  382. package/src/types/errors.ts +18 -0
  383. package/src/types/flow.ts +590 -0
  384. package/src/types/index.ts +43 -16
  385. package/src/types/persistence.ts +12 -8
  386. package/src/types/routing.ts +1 -1
  387. package/src/types/session.ts +26 -23
  388. package/src/types/signals.ts +321 -0
  389. package/src/types/template.ts +3 -11
  390. package/src/types/tool.ts +50 -42
  391. package/src/utils/condition.ts +13 -4
  392. package/src/utils/id.ts +27 -9
  393. package/src/utils/index.ts +6 -2
  394. package/src/utils/session.ts +238 -42
  395. package/dist/cjs/core/BatchExecutor.d.ts +0 -359
  396. package/dist/cjs/core/BatchExecutor.d.ts.map +0 -1
  397. package/dist/cjs/core/BatchExecutor.js +0 -861
  398. package/dist/cjs/core/BatchExecutor.js.map +0 -1
  399. package/dist/cjs/core/BatchPromptBuilder.d.ts +0 -89
  400. package/dist/cjs/core/BatchPromptBuilder.d.ts.map +0 -1
  401. package/dist/cjs/core/BatchPromptBuilder.js +0 -223
  402. package/dist/cjs/core/BatchPromptBuilder.js.map +0 -1
  403. package/dist/cjs/core/Route.d.ts +0 -180
  404. package/dist/cjs/core/Route.d.ts.map +0 -1
  405. package/dist/cjs/core/Route.js +0 -542
  406. package/dist/cjs/core/Route.js.map +0 -1
  407. package/dist/cjs/core/RoutingEngine.d.ts +0 -185
  408. package/dist/cjs/core/RoutingEngine.d.ts.map +0 -1
  409. package/dist/cjs/core/RoutingEngine.js.map +0 -1
  410. package/dist/cjs/types/route.d.ts +0 -336
  411. package/dist/cjs/types/route.d.ts.map +0 -1
  412. package/dist/cjs/types/route.js.map +0 -1
  413. package/dist/core/BatchExecutor.d.ts +0 -359
  414. package/dist/core/BatchExecutor.d.ts.map +0 -1
  415. package/dist/core/BatchExecutor.js +0 -856
  416. package/dist/core/BatchExecutor.js.map +0 -1
  417. package/dist/core/BatchPromptBuilder.d.ts +0 -89
  418. package/dist/core/BatchPromptBuilder.d.ts.map +0 -1
  419. package/dist/core/BatchPromptBuilder.js +0 -219
  420. package/dist/core/BatchPromptBuilder.js.map +0 -1
  421. package/dist/core/Route.d.ts +0 -180
  422. package/dist/core/Route.d.ts.map +0 -1
  423. package/dist/core/Route.js +0 -538
  424. package/dist/core/Route.js.map +0 -1
  425. package/dist/core/RoutingEngine.d.ts +0 -185
  426. package/dist/core/RoutingEngine.d.ts.map +0 -1
  427. package/dist/core/RoutingEngine.js.map +0 -1
  428. package/dist/types/route.d.ts +0 -336
  429. package/dist/types/route.d.ts.map +0 -1
  430. package/dist/types/route.js +0 -5
  431. package/dist/types/route.js.map +0 -1
  432. package/docs/CONTRIBUTING.md +0 -521
  433. package/docs/api/README.md +0 -3299
  434. package/docs/api/overview.md +0 -1410
  435. package/docs/architecture/data-extraction-flow.md +0 -360
  436. package/docs/architecture/multi-step-execution.md +0 -277
  437. package/docs/core/agent/README.md +0 -938
  438. package/docs/core/agent/context-management.md +0 -796
  439. package/docs/core/agent/rules-and-prohibitions.md +0 -113
  440. package/docs/core/agent/session-management.md +0 -693
  441. package/docs/core/ai-integration/prompt-composition.md +0 -355
  442. package/docs/core/ai-integration/providers.md +0 -515
  443. package/docs/core/ai-integration/response-processing.md +0 -433
  444. package/docs/core/conversation-flows/data-collection.md +0 -772
  445. package/docs/core/conversation-flows/route-dsl.md +0 -509
  446. package/docs/core/conversation-flows/routes.md +0 -249
  447. package/docs/core/conversation-flows/step-transitions.md +0 -731
  448. package/docs/core/conversation-flows/steps.md +0 -268
  449. package/docs/core/error-handling.md +0 -830
  450. package/docs/core/persistence/adapters.md +0 -255
  451. package/docs/core/persistence/session-storage.md +0 -656
  452. package/docs/core/routing/intelligent-routing.md +0 -470
  453. package/docs/core/tools/enhanced-tool.md +0 -186
  454. package/docs/core/tools/streaming-execution.md +0 -161
  455. package/docs/core/tools/tool-definition.md +0 -970
  456. package/docs/core/tools/tool-scoping.md +0 -819
  457. package/docs/guides/advanced-patterns/publishing.md +0 -186
  458. package/docs/guides/context-compaction.md +0 -96
  459. package/docs/guides/error-handling-patterns.md +0 -578
  460. package/docs/guides/getting-started/README.md +0 -795
  461. package/docs/guides/migration/README.md +0 -101
  462. package/docs/guides/migration/flexible-routing-conditions.md +0 -375
  463. package/docs/guides/migration/multi-step-execution.md +0 -393
  464. package/docs/guides/migration/response-modal-refactor.md +0 -518
  465. package/docs/guides/prompt-optimization.md +0 -164
  466. package/examples/advanced-patterns/context-compaction.ts +0 -223
  467. package/examples/advanced-patterns/knowledge-based-agent.ts +0 -735
  468. package/examples/advanced-patterns/persistent-onboarding.ts +0 -728
  469. package/examples/advanced-patterns/route-lifecycle-hooks.ts +0 -556
  470. package/examples/advanced-patterns/streaming-responses.ts +0 -656
  471. package/examples/ai-providers/anthropic-integration.ts +0 -388
  472. package/examples/ai-providers/openai-integration.ts +0 -228
  473. package/examples/condition-patterns/function-only-conditions.ts +0 -365
  474. package/examples/condition-patterns/mixed-array-conditions.ts +0 -477
  475. package/examples/condition-patterns/route-skipif-patterns.ts +0 -468
  476. package/examples/condition-patterns/step-skipif-patterns.ts +0 -0
  477. package/examples/condition-patterns/string-only-conditions.ts +0 -296
  478. package/examples/conversation-flows/completion-transitions.ts +0 -318
  479. package/examples/core-concepts/basic-agent.ts +0 -503
  480. package/examples/core-concepts/modern-streaming-api.ts +0 -309
  481. package/examples/core-concepts/schema-driven-extraction.ts +0 -332
  482. package/examples/core-concepts/session-management.ts +0 -494
  483. package/examples/integrations/database-integration.ts +0 -631
  484. package/examples/integrations/healthcare-integration.ts +0 -595
  485. package/examples/integrations/search-integration.ts +0 -530
  486. package/examples/integrations/server-session-management.ts +0 -307
  487. package/examples/persistence/custom-adapter.ts +0 -526
  488. package/examples/persistence/database-persistence.ts +0 -583
  489. package/examples/persistence/memory-sessions.ts +0 -495
  490. package/examples/persistence/prisma-schema.example.prisma +0 -74
  491. package/examples/persistence/redis-persistence.ts +0 -488
  492. package/examples/tools/basic-tools.ts +0 -765
  493. package/examples/tools/data-enrichment-tools.ts +0 -593
  494. package/examples/tools/enhanced-tool-metadata.ts +0 -268
  495. package/examples/tools/streaming-tool-execution.ts +0 -283
  496. package/src/core/BatchExecutor.ts +0 -1187
  497. package/src/core/BatchPromptBuilder.ts +0 -299
  498. package/src/core/Route.ts +0 -678
  499. package/src/types/route.ts +0 -392
@@ -1 +0,0 @@
1
- {"version":3,"file":"BatchExecutor.js","sourceRoot":"","sources":["../../src/core/BatchExecutor.ts"],"names":[],"mappings":"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"}
@@ -1,89 +0,0 @@
1
- /**
2
- * BatchPromptBuilder - Combines multiple Step prompts into a single coherent prompt
3
- *
4
- * Responsible for building a combined prompt for batch execution of multiple Steps
5
- * in a single LLM call.
6
- *
7
- * **Validates: Requirements 4.1, 4.2, 4.3, 4.4**
8
- */
9
- import type { StepOptions } from '../types/route';
10
- import type { AgentOptions } from '../types/agent';
11
- import type { SessionState } from '../types/session';
12
- import type { Event } from '../types/history';
13
- import type { Route } from './Route';
14
- import type { PromptSectionCache } from './PromptSectionCache';
15
- /**
16
- * Parameters for building a batch prompt
17
- */
18
- export interface BuildBatchPromptParams<TContext, TData> {
19
- /** Steps included in this batch */
20
- steps: StepOptions<TContext, TData>[];
21
- /** The route containing the steps */
22
- route: Route<TContext, TData>;
23
- /** Conversation history */
24
- history: Event[];
25
- /** Agent context */
26
- context: TContext;
27
- /** Current session state */
28
- session: SessionState<TData>;
29
- /** Agent options for identity/personality */
30
- agentOptions: AgentOptions<TContext, TData>;
31
- }
32
- /**
33
- * Result of building a batch prompt
34
- */
35
- export interface BatchPromptResult {
36
- /** The combined prompt string */
37
- prompt: string;
38
- /** All collect fields from all steps in the batch */
39
- collectFields: string[];
40
- /** Number of steps included in the prompt */
41
- stepCount: number;
42
- }
43
- /**
44
- * BatchPromptBuilder class - builds combined prompts for batch execution
45
- *
46
- * Combines multiple Step prompts into a single coherent prompt that:
47
- * - Preserves the intent of each Step's individual prompt
48
- * - Includes data collection instructions for all collect fields
49
- * - Produces a single LLM call regardless of the number of Steps
50
- *
51
- * **Validates: Requirements 4.1, 4.2, 4.3, 4.4**
52
- */
53
- export declare class BatchPromptBuilder<TContext = unknown, TData = unknown> {
54
- private readonly promptSectionCache?;
55
- constructor(promptSectionCache?: PromptSectionCache | undefined);
56
- /**
57
- * Build a combined prompt for a batch of Steps
58
- *
59
- * @param params - Parameters for building the batch prompt
60
- * @returns BatchPromptResult with the combined prompt and metadata
61
- *
62
- * **Validates: Requirements 4.1, 4.2, 4.3, 4.4**
63
- */
64
- buildBatchPrompt(params: BuildBatchPromptParams<TContext, TData>): Promise<BatchPromptResult>;
65
- /**
66
- * Build the step sections of the prompt
67
- *
68
- * @param steps - Steps to include in the prompt
69
- * @param templateContext - Template context for rendering
70
- * @returns Formatted step sections string
71
- */
72
- private buildStepSections;
73
- /**
74
- * Build the data collection section of the prompt
75
- *
76
- * @param collectFields - Fields to collect from the response
77
- * @param agentOptions - Agent options containing schema information
78
- * @returns Formatted data collection section string
79
- */
80
- private buildDataCollectionSection;
81
- /**
82
- * Build the response format section of the prompt
83
- *
84
- * @param collectFields - Fields to collect from the response
85
- * @returns Formatted response format section string
86
- */
87
- private buildResponseFormatSection;
88
- }
89
- //# sourceMappingURL=BatchPromptBuilder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BatchPromptBuilder.d.ts","sourceRoot":"","sources":["../../src/core/BatchPromptBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,sBAAsB,CAAC,QAAQ,EAAE,KAAK;IACrD,mCAAmC;IACnC,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IACtC,qCAAqC;IACrC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC9B,2BAA2B;IAC3B,OAAO,EAAE,KAAK,EAAE,CAAC;IACjB,oBAAoB;IACpB,OAAO,EAAE,QAAQ,CAAC;IAClB,4BAA4B;IAC5B,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC7B,6CAA6C;IAC7C,YAAY,EAAE,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;GASG;AACH,qBAAa,kBAAkB,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IACrD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;gBAAnB,kBAAkB,CAAC,EAAE,kBAAkB,YAAA;IAEpE;;;;;;;OAOG;IACG,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAkHnG;;;;;;OAMG;YACW,iBAAiB;IAkC/B;;;;;;OAMG;IACH,OAAO,CAAC,0BAA0B;IAwClC;;;;;OAKG;IACH,OAAO,CAAC,0BAA0B;CAqBnC"}
@@ -1,219 +0,0 @@
1
- /**
2
- * BatchPromptBuilder - Combines multiple Step prompts into a single coherent prompt
3
- *
4
- * Responsible for building a combined prompt for batch execution of multiple Steps
5
- * in a single LLM call.
6
- *
7
- * **Validates: Requirements 4.1, 4.2, 4.3, 4.4**
8
- */
9
- import { render, renderMany, createTemplateContext } from '../utils/template';
10
- import { PromptComposer } from './PromptComposer';
11
- /**
12
- * BatchPromptBuilder class - builds combined prompts for batch execution
13
- *
14
- * Combines multiple Step prompts into a single coherent prompt that:
15
- * - Preserves the intent of each Step's individual prompt
16
- * - Includes data collection instructions for all collect fields
17
- * - Produces a single LLM call regardless of the number of Steps
18
- *
19
- * **Validates: Requirements 4.1, 4.2, 4.3, 4.4**
20
- */
21
- export class BatchPromptBuilder {
22
- constructor(promptSectionCache) {
23
- this.promptSectionCache = promptSectionCache;
24
- }
25
- /**
26
- * Build a combined prompt for a batch of Steps
27
- *
28
- * @param params - Parameters for building the batch prompt
29
- * @returns BatchPromptResult with the combined prompt and metadata
30
- *
31
- * **Validates: Requirements 4.1, 4.2, 4.3, 4.4**
32
- */
33
- async buildBatchPrompt(params) {
34
- const { steps, route, history, context, session, agentOptions } = params;
35
- // Create template context for rendering
36
- const templateContext = createTemplateContext({
37
- context,
38
- data: session.data,
39
- session,
40
- history,
41
- });
42
- // Collect all collect fields from all steps
43
- const collectFields = [];
44
- for (const step of steps) {
45
- if (step.collect && step.collect.length > 0) {
46
- for (const field of step.collect) {
47
- const fieldStr = String(field);
48
- if (!collectFields.includes(fieldStr)) {
49
- collectFields.push(fieldStr);
50
- }
51
- }
52
- }
53
- }
54
- // Build the combined prompt using PromptComposer for consistency
55
- const composer = new PromptComposer(templateContext, this.promptSectionCache);
56
- // Add agent meta information
57
- await composer.addAgentMeta(agentOptions);
58
- // Add route-specific identity/personality if available
59
- if (route.identity) {
60
- const identity = await render(route.identity, templateContext);
61
- if (identity) {
62
- await composer.addInstruction(`**Route Identity:** ${identity}`);
63
- }
64
- }
65
- if (route.personality) {
66
- const personality = await render(route.personality, templateContext);
67
- if (personality) {
68
- await composer.addInstruction(`**Route Personality:** ${personality}`);
69
- }
70
- }
71
- // Add knowledge base if available
72
- await composer.addKnowledgeBase(agentOptions.knowledgeBase, route.getKnowledgeBase());
73
- // Add glossary terms
74
- const allTerms = [...(agentOptions.terms || []), ...route.getTerms()];
75
- await composer.addGlossary(allTerms);
76
- // Add guidelines
77
- const allGuidelines = [...(agentOptions.guidelines || []), ...route.getGuidelines()];
78
- await composer.addGuidelines(allGuidelines);
79
- // Add route-level rules (agent-level rules are already in addAgentMeta)
80
- const routeRules = route.getRules();
81
- if (routeRules.length > 0) {
82
- const renderedRules = await renderMany(routeRules, templateContext);
83
- if (renderedRules.length > 0) {
84
- await composer.addInstruction(`Route Rules:\n- ${renderedRules.join('\n- ')}`);
85
- }
86
- }
87
- // Add route-level prohibitions (agent-level prohibitions are already in addAgentMeta)
88
- const routeProhibitions = route.getProhibitions();
89
- if (routeProhibitions.length > 0) {
90
- const renderedProhibitions = await renderMany(routeProhibitions, templateContext);
91
- if (renderedProhibitions.length > 0) {
92
- await composer.addInstruction(`Route Prohibitions:\n- ${renderedProhibitions.join('\n- ')}`);
93
- }
94
- }
95
- // Add interaction history
96
- await composer.addInteractionHistory(history, 'Recent conversation context:');
97
- // Build the step sections
98
- const stepSections = await this.buildStepSections(steps, templateContext);
99
- // Add the conversation flow section
100
- if (steps.length > 1) {
101
- await composer.addInstruction(`## Current Conversation Flow\n\n` +
102
- `You are handling multiple aspects of this conversation in a single response.\n\n` +
103
- stepSections);
104
- }
105
- else if (steps.length === 1) {
106
- await composer.addInstruction(`## Current Step\n\n` +
107
- stepSections);
108
- }
109
- // Add data collection section if there are fields to collect
110
- if (collectFields.length > 0) {
111
- const collectionSection = this.buildDataCollectionSection(collectFields, agentOptions);
112
- await composer.addInstruction(collectionSection);
113
- }
114
- // Add response format instructions
115
- const responseFormat = this.buildResponseFormatSection(collectFields);
116
- await composer.addInstruction(responseFormat);
117
- // Build the final prompt
118
- const prompt = await composer.build();
119
- return {
120
- prompt,
121
- collectFields,
122
- stepCount: steps.length,
123
- };
124
- }
125
- /**
126
- * Build the step sections of the prompt
127
- *
128
- * @param steps - Steps to include in the prompt
129
- * @param templateContext - Template context for rendering
130
- * @returns Formatted step sections string
131
- */
132
- async buildStepSections(steps, templateContext) {
133
- const sections = [];
134
- for (let i = 0; i < steps.length; i++) {
135
- const step = steps[i];
136
- const stepNumber = i + 1;
137
- // Build step header
138
- const description = step.description || `Step ${stepNumber}`;
139
- let section = `### Step ${stepNumber}: ${description}\n`;
140
- // Render and add step prompt if available
141
- if (step.prompt) {
142
- const renderedPrompt = await render(step.prompt, templateContext);
143
- if (renderedPrompt) {
144
- section += `\n${renderedPrompt}\n`;
145
- }
146
- }
147
- // Add collect fields for this step if any
148
- if (step.collect && step.collect.length > 0) {
149
- const collectList = step.collect.map(f => `\`${String(f)}\``).join(', ');
150
- section += `\n**Collect:** ${collectList}\n`;
151
- }
152
- sections.push(section);
153
- }
154
- return sections.join('\n');
155
- }
156
- /**
157
- * Build the data collection section of the prompt
158
- *
159
- * @param collectFields - Fields to collect from the response
160
- * @param agentOptions - Agent options containing schema information
161
- * @returns Formatted data collection section string
162
- */
163
- buildDataCollectionSection(collectFields, agentOptions) {
164
- const lines = [
165
- '## Data Collection',
166
- '',
167
- 'Extract the following information from your response:',
168
- ''
169
- ];
170
- // Get schema information if available
171
- const schema = agentOptions.schema;
172
- for (const field of collectFields) {
173
- let fieldDescription = field;
174
- // Try to get field type/description from schema
175
- if (schema?.properties && schema.properties[field]) {
176
- const fieldSchema = schema.properties[field];
177
- const rawType = fieldSchema.type;
178
- const rawDescription = fieldSchema.description;
179
- // Safely convert to string, handling objects and primitives
180
- const type = typeof rawType === 'string' ? rawType : 'string';
181
- const description = typeof rawDescription === 'string' ? rawDescription : '';
182
- if (description) {
183
- fieldDescription = `${field} (${type}): ${description}`;
184
- }
185
- else {
186
- fieldDescription = `${field} (${type})`;
187
- }
188
- }
189
- lines.push(`- ${fieldDescription}`);
190
- }
191
- return lines.join('\n');
192
- }
193
- /**
194
- * Build the response format section of the prompt
195
- *
196
- * @param collectFields - Fields to collect from the response
197
- * @returns Formatted response format section string
198
- */
199
- buildResponseFormatSection(collectFields) {
200
- const lines = [
201
- '## Response Format',
202
- '',
203
- 'Return JSON with:',
204
- '- `message`: A natural, conversational response directed at the user. This MUST read like a human conversation.',
205
- '',
206
- 'CRITICAL: The `message` field must NEVER contain field names, JSON keys, raw data values, or technical information.',
207
- 'Data goes in the separate JSON fields below, NOT in the message text.',
208
- ];
209
- if (collectFields.length > 0) {
210
- lines.push('');
211
- lines.push('Include the following collected fields as top-level properties (separate from message):');
212
- for (const field of collectFields) {
213
- lines.push(`- \`${field}\``);
214
- }
215
- }
216
- return lines.join('\n');
217
- }
218
- }
219
- //# sourceMappingURL=BatchPromptBuilder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BatchPromptBuilder.js","sourceRoot":"","sources":["../../src/core/BatchPromptBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,180 +0,0 @@
1
- /**
2
- * Route (Journey) DSL implementation
3
- */
4
- import type { RouteOptions, RouteRef, StepOptions, RouteTransitionConfig, RouteCompletionHandler, RouteLifecycleHooks, StructuredSchema, Guideline, GuidelineMatch, Term, Tool, Template, ConditionTemplate, TemplateContext, ConditionEvaluationResult, SessionState, Event } from "../types";
5
- import { Step } from "./Step";
6
- import { Agent } from './Agent';
7
- /**
8
- * Represents a conversational route/journey
9
- */
10
- export declare class Route<TContext = unknown, TData = unknown> {
11
- readonly id: string;
12
- readonly title: string;
13
- readonly description?: string;
14
- readonly identity?: Template<TContext, TData>;
15
- readonly personality?: Template<TContext, TData>;
16
- readonly when?: ConditionTemplate<TContext, TData>;
17
- readonly skipIf?: ConditionTemplate<TContext, TData>;
18
- readonly rules: Template<TContext, TData>[];
19
- readonly prohibitions: Template<TContext, TData>[];
20
- readonly initialStep: Step<TContext, TData>;
21
- readonly endStepSpec: Omit<StepOptions<TContext, TData>, "step" | "condition" | "skipIf">;
22
- readonly responseOutputSchema?: StructuredSchema;
23
- readonly initialData?: Partial<TData>;
24
- readonly requiredFields?: (keyof TData)[];
25
- readonly optionalFields?: (keyof TData)[];
26
- readonly onComplete?: string | RouteTransitionConfig<TContext, TData> | RouteCompletionHandler<TContext, TData>;
27
- readonly hooks?: RouteLifecycleHooks<TContext, TData>;
28
- routingExtrasSchema?: StructuredSchema;
29
- guidelines: Guideline<TContext, TData>[];
30
- terms: Term<TContext>[];
31
- tools: Tool<TContext, TData>[];
32
- knowledgeBase: Record<string, unknown>;
33
- private parentAgent?;
34
- constructor(options: RouteOptions<TContext, TData>, parentAgent?: Agent<TContext, TData>);
35
- /**
36
- * Build a sequential step machine from an array of steps
37
- * @private
38
- */
39
- private buildSequentialSteps;
40
- /**
41
- * Evaluate the when condition for this route
42
- * @param templateContext - Context for condition evaluation
43
- * @returns Evaluation result with programmatic result and AI context strings
44
- */
45
- evaluateWhen(templateContext: TemplateContext<TContext, TData>): Promise<ConditionEvaluationResult>;
46
- /**
47
- * Evaluate the skipIf condition for this route
48
- * @param templateContext - Context for condition evaluation
49
- * @returns Evaluation result with programmatic result and AI context strings
50
- */
51
- evaluateSkipIf(templateContext: TemplateContext<TContext, TData>): Promise<ConditionEvaluationResult>;
52
- /**
53
- * Create a guideline specific to this route
54
- */
55
- createGuideline(guideline: Guideline<TContext, TData>): this;
56
- /**
57
- * Create a term for the route's domain glossary
58
- */
59
- createTerm(term: Term<TContext>): this;
60
- /**
61
- * Register a tool for this route
62
- */
63
- createTool(tool: Tool<TContext, TData>): this;
64
- /**
65
- * Register multiple tools for this route
66
- */
67
- registerTools(tools: Tool<TContext, TData>[]): this;
68
- /**
69
- * Add a tool to this route using the ToolManager API
70
- * Creates and adds the tool to route scope in one operation
71
- */
72
- addTool(tool: Tool<TContext, TData>): this;
73
- /**
74
- * Get all guidelines for this route
75
- */
76
- getGuidelines(): Guideline<TContext, TData>[];
77
- /**
78
- * Evaluate and match active guidelines based on their conditions
79
- * Returns guidelines that should be active given the current context
80
- */
81
- evaluateGuidelines(context?: TContext, session?: SessionState<TData>, history?: Event[]): Promise<GuidelineMatch<TContext, TData>[]>;
82
- /**
83
- * Get all terms for this route
84
- */
85
- getTerms(): Term<TContext>[];
86
- /**
87
- * Get all tools for this route
88
- */
89
- getTools(): Tool<TContext, TData>[];
90
- /**
91
- * Get the route's knowledge base
92
- */
93
- getKnowledgeBase(): Record<string, unknown>;
94
- /**
95
- * Get rules for this route
96
- */
97
- getRules(): Template<TContext, TData>[];
98
- /**
99
- * Get prohibitions for this route
100
- */
101
- getProhibitions(): Template<TContext, TData>[];
102
- /**
103
- * Get optional extras schema requested during routing
104
- */
105
- getRoutingExtrasSchema(): StructuredSchema | undefined;
106
- /**
107
- * Get optional structured response schema for this route's message
108
- */
109
- getResponseOutputSchema(): StructuredSchema | undefined;
110
- getSteps(): Step<TContext, TData>[];
111
- /**
112
- * Get route reference
113
- */
114
- getRef(): RouteRef;
115
- /**
116
- * Get all steps in this route (via traversal from initial step)
117
- */
118
- getAllSteps(): Step<TContext, TData>[];
119
- /**
120
- * Get a specific step by ID
121
- * @param stepId - The step ID to find
122
- * @returns The step if found, undefined otherwise
123
- */
124
- getStep(stepId: string): Step<TContext, TData> | undefined;
125
- /**
126
- * Get a description of the route structure for debugging
127
- */
128
- describe(): string;
129
- /**
130
- * Handle data updates for this route, calling the onDataUpdate hook if configured
131
- * @param data - New collected data
132
- * @param previousCollected - Previously collected data
133
- * @returns Modified data after hook processing, or original data if no hook
134
- */
135
- handleDataUpdate(data: Partial<TData>, previousCollected: Partial<TData>): Promise<Partial<TData>>;
136
- /**
137
- * Handle context updates for this route, calling the onContextUpdate hook if configured
138
- * @param newContext - New context
139
- * @param previousContext - Previous context
140
- */
141
- handleContextUpdate(newContext: TContext, previousContext: TContext): Promise<void>;
142
- /**
143
- * Export route configuration as RouteOptions for copying/cloning
144
- * @returns RouteOptions that can be used to create a new route with identical configuration
145
- */
146
- toOptions(): RouteOptions<TContext, TData>;
147
- /**
148
- * Check if this route is complete based on the provided data
149
- * @param data - Currently collected agent-level data
150
- * @returns true if all required fields are present, false otherwise
151
- *
152
- * Note: Routes with no requiredFields (whether they have optionalFields or not)
153
- * are never complete based on data — they can only complete via END_ROUTE.
154
- */
155
- isComplete(data: Partial<TData>): boolean;
156
- /**
157
- * Get the list of missing required fields for this route
158
- * @param data - Currently collected agent-level data
159
- * @returns Array of missing required field keys
160
- */
161
- getMissingRequiredFields(data: Partial<TData>): (keyof TData)[];
162
- /**
163
- * Get the completion progress for this route as a percentage
164
- * @param data - Currently collected agent-level data
165
- * @returns Completion progress as a number between 0 and 1
166
- *
167
- * Note: Must be consistent with isComplete() logic
168
- */
169
- getCompletionProgress(data: Partial<TData>): number;
170
- /**
171
- * Evaluate the onComplete handler and return transition config
172
- * @param session - Current session step
173
- * @param context - Agent context
174
- * @returns Transition config or undefined if no transition
175
- */
176
- evaluateOnComplete(session: {
177
- data?: Partial<TData>;
178
- }, context?: TContext): Promise<RouteTransitionConfig<TContext, TData> | undefined>;
179
- }
180
- //# sourceMappingURL=Route.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Route.d.ts","sourceRoot":"","sources":["../../src/core/Route.ts"],"names":[],"mappings":"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"}