@falai/agent 2.6.1 → 3.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 (611) hide show
  1. package/README.md +2 -2
  2. package/dist/adapters/MemoryAdapter.d.ts +1 -1
  3. package/dist/adapters/MemoryAdapter.d.ts.map +1 -1
  4. package/dist/adapters/MemoryAdapter.js +32 -36
  5. package/dist/adapters/MemoryAdapter.js.map +1 -1
  6. package/dist/adapters/MongoAdapter.d.ts +1 -1
  7. package/dist/adapters/MongoAdapter.d.ts.map +1 -1
  8. package/dist/adapters/MongoAdapter.js +2 -2
  9. package/dist/adapters/MongoAdapter.js.map +1 -1
  10. package/dist/adapters/OpenSearchAdapter.d.ts +1 -1
  11. package/dist/adapters/OpenSearchAdapter.d.ts.map +1 -1
  12. package/dist/adapters/OpenSearchAdapter.js +3 -3
  13. package/dist/adapters/OpenSearchAdapter.js.map +1 -1
  14. package/dist/adapters/PostgreSQLAdapter.d.ts +1 -1
  15. package/dist/adapters/PostgreSQLAdapter.d.ts.map +1 -1
  16. package/dist/adapters/PostgreSQLAdapter.js +18 -13
  17. package/dist/adapters/PostgreSQLAdapter.js.map +1 -1
  18. package/dist/adapters/PrismaAdapter.d.ts +1 -1
  19. package/dist/adapters/PrismaAdapter.d.ts.map +1 -1
  20. package/dist/adapters/PrismaAdapter.js +3 -3
  21. package/dist/adapters/PrismaAdapter.js.map +1 -1
  22. package/dist/adapters/RedisAdapter.d.ts +2 -1
  23. package/dist/adapters/RedisAdapter.d.ts.map +1 -1
  24. package/dist/adapters/RedisAdapter.js +77 -27
  25. package/dist/adapters/RedisAdapter.js.map +1 -1
  26. package/dist/adapters/SQLiteAdapter.d.ts +1 -1
  27. package/dist/adapters/SQLiteAdapter.d.ts.map +1 -1
  28. package/dist/adapters/SQLiteAdapter.js +9 -31
  29. package/dist/adapters/SQLiteAdapter.js.map +1 -1
  30. package/dist/adapters/index.d.ts +13 -13
  31. package/dist/adapters/index.d.ts.map +1 -1
  32. package/dist/adapters/index.js +7 -7
  33. package/dist/adapters/index.js.map +1 -1
  34. package/dist/adapters/sessionRow.d.ts +22 -0
  35. package/dist/adapters/sessionRow.d.ts.map +1 -0
  36. package/dist/adapters/sessionRow.js +48 -0
  37. package/dist/adapters/sessionRow.js.map +1 -0
  38. package/dist/cjs/adapters/MemoryAdapter.d.ts +1 -1
  39. package/dist/cjs/adapters/MemoryAdapter.d.ts.map +1 -1
  40. package/dist/cjs/adapters/MemoryAdapter.js +39 -43
  41. package/dist/cjs/adapters/MemoryAdapter.js.map +1 -1
  42. package/dist/cjs/adapters/MongoAdapter.d.ts +1 -1
  43. package/dist/cjs/adapters/MongoAdapter.d.ts.map +1 -1
  44. package/dist/cjs/adapters/MongoAdapter.js +4 -4
  45. package/dist/cjs/adapters/MongoAdapter.js.map +1 -1
  46. package/dist/cjs/adapters/OpenSearchAdapter.d.ts +1 -1
  47. package/dist/cjs/adapters/OpenSearchAdapter.d.ts.map +1 -1
  48. package/dist/cjs/adapters/OpenSearchAdapter.js +6 -6
  49. package/dist/cjs/adapters/OpenSearchAdapter.js.map +1 -1
  50. package/dist/cjs/adapters/PostgreSQLAdapter.d.ts +1 -1
  51. package/dist/cjs/adapters/PostgreSQLAdapter.d.ts.map +1 -1
  52. package/dist/cjs/adapters/PostgreSQLAdapter.js +20 -15
  53. package/dist/cjs/adapters/PostgreSQLAdapter.js.map +1 -1
  54. package/dist/cjs/adapters/PrismaAdapter.d.ts +1 -1
  55. package/dist/cjs/adapters/PrismaAdapter.d.ts.map +1 -1
  56. package/dist/cjs/adapters/PrismaAdapter.js +7 -7
  57. package/dist/cjs/adapters/PrismaAdapter.js.map +1 -1
  58. package/dist/cjs/adapters/RedisAdapter.d.ts +2 -1
  59. package/dist/cjs/adapters/RedisAdapter.d.ts.map +1 -1
  60. package/dist/cjs/adapters/RedisAdapter.js +81 -31
  61. package/dist/cjs/adapters/RedisAdapter.js.map +1 -1
  62. package/dist/cjs/adapters/SQLiteAdapter.d.ts +1 -1
  63. package/dist/cjs/adapters/SQLiteAdapter.d.ts.map +1 -1
  64. package/dist/cjs/adapters/SQLiteAdapter.js +11 -33
  65. package/dist/cjs/adapters/SQLiteAdapter.js.map +1 -1
  66. package/dist/cjs/adapters/index.d.ts +13 -13
  67. package/dist/cjs/adapters/index.d.ts.map +1 -1
  68. package/dist/cjs/adapters/index.js +14 -14
  69. package/dist/cjs/adapters/index.js.map +1 -1
  70. package/dist/cjs/adapters/sessionRow.d.ts +22 -0
  71. package/dist/cjs/adapters/sessionRow.d.ts.map +1 -0
  72. package/dist/cjs/adapters/sessionRow.js +52 -0
  73. package/dist/cjs/adapters/sessionRow.js.map +1 -0
  74. package/dist/cjs/core/Agent.d.ts +19 -11
  75. package/dist/cjs/core/Agent.d.ts.map +1 -1
  76. package/dist/cjs/core/Agent.js +102 -64
  77. package/dist/cjs/core/Agent.js.map +1 -1
  78. package/dist/cjs/core/AutoChainExecutor.d.ts +12 -22
  79. package/dist/cjs/core/AutoChainExecutor.d.ts.map +1 -1
  80. package/dist/cjs/core/AutoChainExecutor.js +46 -49
  81. package/dist/cjs/core/AutoChainExecutor.js.map +1 -1
  82. package/dist/cjs/core/BranchEvaluator.d.ts +4 -4
  83. package/dist/cjs/core/BranchEvaluator.d.ts.map +1 -1
  84. package/dist/cjs/core/BranchEvaluator.js +6 -6
  85. package/dist/cjs/core/BranchEvaluator.js.map +1 -1
  86. package/dist/cjs/core/CompactionEngine.d.ts +16 -3
  87. package/dist/cjs/core/CompactionEngine.d.ts.map +1 -1
  88. package/dist/cjs/core/CompactionEngine.js +30 -6
  89. package/dist/cjs/core/CompactionEngine.js.map +1 -1
  90. package/dist/cjs/core/DirectiveChainTracker.d.ts +1 -1
  91. package/dist/cjs/core/DirectiveChainTracker.d.ts.map +1 -1
  92. package/dist/cjs/core/DirectiveChainTracker.js +5 -5
  93. package/dist/cjs/core/DirectiveChainTracker.js.map +1 -1
  94. package/dist/cjs/core/Events.d.ts +1 -1
  95. package/dist/cjs/core/Events.d.ts.map +1 -1
  96. package/dist/cjs/core/Events.js +15 -15
  97. package/dist/cjs/core/Events.js.map +1 -1
  98. package/dist/cjs/core/Flow.d.ts +4 -4
  99. package/dist/cjs/core/Flow.d.ts.map +1 -1
  100. package/dist/cjs/core/Flow.js +15 -15
  101. package/dist/cjs/core/Flow.js.map +1 -1
  102. package/dist/cjs/core/FlowRouter.d.ts +4 -4
  103. package/dist/cjs/core/FlowRouter.d.ts.map +1 -1
  104. package/dist/cjs/core/FlowRouter.js +92 -70
  105. package/dist/cjs/core/FlowRouter.js.map +1 -1
  106. package/dist/cjs/core/PersistenceManager.d.ts +1 -1
  107. package/dist/cjs/core/PersistenceManager.d.ts.map +1 -1
  108. package/dist/cjs/core/PersistenceManager.js +10 -10
  109. package/dist/cjs/core/PersistenceManager.js.map +1 -1
  110. package/dist/cjs/core/PromptComposer.d.ts +4 -4
  111. package/dist/cjs/core/PromptComposer.d.ts.map +1 -1
  112. package/dist/cjs/core/PromptComposer.js +13 -13
  113. package/dist/cjs/core/PromptComposer.js.map +1 -1
  114. package/dist/cjs/core/PromptSectionCache.d.ts +2 -2
  115. package/dist/cjs/core/PromptSectionCache.d.ts.map +1 -1
  116. package/dist/cjs/core/ResponseEngine.d.ts +4 -4
  117. package/dist/cjs/core/ResponseEngine.d.ts.map +1 -1
  118. package/dist/cjs/core/ResponseEngine.js +7 -7
  119. package/dist/cjs/core/ResponseEngine.js.map +1 -1
  120. package/dist/cjs/core/ResponseGenerationError.d.ts.map +1 -1
  121. package/dist/cjs/core/ResponseGenerationError.js +3 -5
  122. package/dist/cjs/core/ResponseGenerationError.js.map +1 -1
  123. package/dist/cjs/core/ResponseModal.d.ts +39 -10
  124. package/dist/cjs/core/ResponseModal.d.ts.map +1 -1
  125. package/dist/cjs/core/ResponseModal.js +195 -72
  126. package/dist/cjs/core/ResponseModal.js.map +1 -1
  127. package/dist/cjs/core/ResponsePipeline.d.ts +50 -12
  128. package/dist/cjs/core/ResponsePipeline.d.ts.map +1 -1
  129. package/dist/cjs/core/ResponsePipeline.js +301 -158
  130. package/dist/cjs/core/ResponsePipeline.js.map +1 -1
  131. package/dist/cjs/core/SessionFinalizer.d.ts +4 -4
  132. package/dist/cjs/core/SessionFinalizer.d.ts.map +1 -1
  133. package/dist/cjs/core/SessionFinalizer.js +36 -9
  134. package/dist/cjs/core/SessionFinalizer.js.map +1 -1
  135. package/dist/cjs/core/SessionManager.d.ts +15 -6
  136. package/dist/cjs/core/SessionManager.d.ts.map +1 -1
  137. package/dist/cjs/core/SessionManager.js +49 -22
  138. package/dist/cjs/core/SessionManager.js.map +1 -1
  139. package/dist/cjs/core/SignalCoordinator.d.ts +5 -5
  140. package/dist/cjs/core/SignalCoordinator.d.ts.map +1 -1
  141. package/dist/cjs/core/SignalCoordinator.js +12 -12
  142. package/dist/cjs/core/SignalCoordinator.js.map +1 -1
  143. package/dist/cjs/core/SignalEvaluator.d.ts +4 -4
  144. package/dist/cjs/core/SignalEvaluator.d.ts.map +1 -1
  145. package/dist/cjs/core/SignalEvaluator.js +6 -6
  146. package/dist/cjs/core/SignalEvaluator.js.map +1 -1
  147. package/dist/cjs/core/SignalProcessor.d.ts +6 -6
  148. package/dist/cjs/core/SignalProcessor.d.ts.map +1 -1
  149. package/dist/cjs/core/SignalProcessor.js +17 -89
  150. package/dist/cjs/core/SignalProcessor.js.map +1 -1
  151. package/dist/cjs/core/Step.d.ts +5 -5
  152. package/dist/cjs/core/Step.d.ts.map +1 -1
  153. package/dist/cjs/core/Step.js +65 -17
  154. package/dist/cjs/core/Step.js.map +1 -1
  155. package/dist/cjs/core/StepLifecycle.d.ts +18 -8
  156. package/dist/cjs/core/StepLifecycle.d.ts.map +1 -1
  157. package/dist/cjs/core/StepLifecycle.js +103 -20
  158. package/dist/cjs/core/StepLifecycle.js.map +1 -1
  159. package/dist/cjs/core/StreamingToolExecutor.d.ts +1 -1
  160. package/dist/cjs/core/StreamingToolExecutor.d.ts.map +1 -1
  161. package/dist/cjs/core/StreamingToolExecutor.js +30 -6
  162. package/dist/cjs/core/StreamingToolExecutor.js.map +1 -1
  163. package/dist/cjs/core/ToolLoopExecutor.d.ts +8 -4
  164. package/dist/cjs/core/ToolLoopExecutor.d.ts.map +1 -1
  165. package/dist/cjs/core/ToolLoopExecutor.js +189 -97
  166. package/dist/cjs/core/ToolLoopExecutor.js.map +1 -1
  167. package/dist/cjs/core/ToolManager.d.ts +6 -6
  168. package/dist/cjs/core/ToolManager.d.ts.map +1 -1
  169. package/dist/cjs/core/ToolManager.js +102 -79
  170. package/dist/cjs/core/ToolManager.js.map +1 -1
  171. package/dist/cjs/core/createAgent.d.ts +2 -2
  172. package/dist/cjs/core/createAgent.d.ts.map +1 -1
  173. package/dist/cjs/core/createAgent.js +2 -2
  174. package/dist/cjs/core/createAgent.js.map +1 -1
  175. package/dist/cjs/core/flow-namespace.d.ts +16 -1
  176. package/dist/cjs/core/flow-namespace.d.ts.map +1 -1
  177. package/dist/cjs/core/flow-namespace.js +26 -4
  178. package/dist/cjs/core/flow-namespace.js.map +1 -1
  179. package/dist/cjs/core/toolGates.d.ts +1 -1
  180. package/dist/cjs/core/toolGates.d.ts.map +1 -1
  181. package/dist/cjs/core/toolGates.js +3 -3
  182. package/dist/cjs/core/toolGates.js.map +1 -1
  183. package/dist/cjs/index.d.ts +50 -45
  184. package/dist/cjs/index.d.ts.map +1 -1
  185. package/dist/cjs/index.js +96 -88
  186. package/dist/cjs/index.js.map +1 -1
  187. package/dist/cjs/providers/AnthropicProvider.d.ts +25 -35
  188. package/dist/cjs/providers/AnthropicProvider.d.ts.map +1 -1
  189. package/dist/cjs/providers/AnthropicProvider.js +30 -426
  190. package/dist/cjs/providers/AnthropicProvider.js.map +1 -1
  191. package/dist/cjs/providers/DeepSeekProvider.d.ts +13 -34
  192. package/dist/cjs/providers/DeepSeekProvider.d.ts.map +1 -1
  193. package/dist/cjs/providers/DeepSeekProvider.js +17 -51
  194. package/dist/cjs/providers/DeepSeekProvider.js.map +1 -1
  195. package/dist/cjs/providers/GeminiProvider.d.ts +22 -75
  196. package/dist/cjs/providers/GeminiProvider.d.ts.map +1 -1
  197. package/dist/cjs/providers/GeminiProvider.js +32 -558
  198. package/dist/cjs/providers/GeminiProvider.js.map +1 -1
  199. package/dist/cjs/providers/GenericOpenAICompatibleProvider.d.ts +9 -10
  200. package/dist/cjs/providers/GenericOpenAICompatibleProvider.d.ts.map +1 -1
  201. package/dist/cjs/providers/GenericOpenAICompatibleProvider.js +14 -20
  202. package/dist/cjs/providers/GenericOpenAICompatibleProvider.js.map +1 -1
  203. package/dist/cjs/providers/OpenAICompatibleProvider.d.ts +26 -135
  204. package/dist/cjs/providers/OpenAICompatibleProvider.d.ts.map +1 -1
  205. package/dist/cjs/providers/OpenAICompatibleProvider.js +40 -496
  206. package/dist/cjs/providers/OpenAICompatibleProvider.js.map +1 -1
  207. package/dist/cjs/providers/OpenAIProvider.d.ts +14 -20
  208. package/dist/cjs/providers/OpenAIProvider.d.ts.map +1 -1
  209. package/dist/cjs/providers/OpenAIProvider.js +21 -28
  210. package/dist/cjs/providers/OpenAIProvider.js.map +1 -1
  211. package/dist/cjs/providers/OpenRouterProvider.d.ts +20 -24
  212. package/dist/cjs/providers/OpenRouterProvider.d.ts.map +1 -1
  213. package/dist/cjs/providers/OpenRouterProvider.js +22 -38
  214. package/dist/cjs/providers/OpenRouterProvider.js.map +1 -1
  215. package/dist/cjs/providers/ProviderAdapter.d.ts +94 -0
  216. package/dist/cjs/providers/ProviderAdapter.d.ts.map +1 -0
  217. package/dist/cjs/providers/ProviderAdapter.js +257 -0
  218. package/dist/cjs/providers/ProviderAdapter.js.map +1 -0
  219. package/dist/cjs/providers/index.d.ts +21 -18
  220. package/dist/cjs/providers/index.d.ts.map +1 -1
  221. package/dist/cjs/providers/index.js +23 -21
  222. package/dist/cjs/providers/index.js.map +1 -1
  223. package/dist/cjs/types/agent.d.ts +37 -11
  224. package/dist/cjs/types/agent.d.ts.map +1 -1
  225. package/dist/cjs/types/ai.d.ts +11 -21
  226. package/dist/cjs/types/ai.d.ts.map +1 -1
  227. package/dist/cjs/types/compaction.d.ts +2 -2
  228. package/dist/cjs/types/compaction.d.ts.map +1 -1
  229. package/dist/cjs/types/errors.d.ts +16 -20
  230. package/dist/cjs/types/errors.d.ts.map +1 -1
  231. package/dist/cjs/types/errors.js +17 -18
  232. package/dist/cjs/types/errors.js.map +1 -1
  233. package/dist/cjs/types/flow.d.ts +56 -39
  234. package/dist/cjs/types/flow.d.ts.map +1 -1
  235. package/dist/cjs/types/history.d.ts +1 -1
  236. package/dist/cjs/types/history.d.ts.map +1 -1
  237. package/dist/cjs/types/index.d.ts +17 -17
  238. package/dist/cjs/types/index.d.ts.map +1 -1
  239. package/dist/cjs/types/index.js +14 -14
  240. package/dist/cjs/types/index.js.map +1 -1
  241. package/dist/cjs/types/persistence.d.ts +2 -2
  242. package/dist/cjs/types/persistence.d.ts.map +1 -1
  243. package/dist/cjs/types/session.d.ts +4 -4
  244. package/dist/cjs/types/session.d.ts.map +1 -1
  245. package/dist/cjs/types/signals.d.ts +3 -3
  246. package/dist/cjs/types/signals.d.ts.map +1 -1
  247. package/dist/cjs/types/template.d.ts +2 -2
  248. package/dist/cjs/types/template.d.ts.map +1 -1
  249. package/dist/cjs/types/tool.d.ts +4 -2
  250. package/dist/cjs/types/tool.d.ts.map +1 -1
  251. package/dist/cjs/types/tool.js.map +1 -1
  252. package/dist/cjs/utils/condition.d.ts +1 -1
  253. package/dist/cjs/utils/condition.d.ts.map +1 -1
  254. package/dist/cjs/utils/condition.js +6 -6
  255. package/dist/cjs/utils/condition.js.map +1 -1
  256. package/dist/cjs/utils/event.d.ts +1 -1
  257. package/dist/cjs/utils/event.d.ts.map +1 -1
  258. package/dist/cjs/utils/event.js +2 -2
  259. package/dist/cjs/utils/event.js.map +1 -1
  260. package/dist/cjs/utils/history.d.ts +2 -2
  261. package/dist/cjs/utils/history.d.ts.map +1 -1
  262. package/dist/cjs/utils/history.js +15 -15
  263. package/dist/cjs/utils/history.js.map +1 -1
  264. package/dist/cjs/utils/index.d.ts +11 -13
  265. package/dist/cjs/utils/index.d.ts.map +1 -1
  266. package/dist/cjs/utils/index.js +57 -58
  267. package/dist/cjs/utils/index.js.map +1 -1
  268. package/dist/cjs/utils/serialize.d.ts +17 -0
  269. package/dist/cjs/utils/serialize.d.ts.map +1 -1
  270. package/dist/cjs/utils/serialize.js +33 -0
  271. package/dist/cjs/utils/serialize.js.map +1 -1
  272. package/dist/cjs/utils/session.d.ts +23 -3
  273. package/dist/cjs/utils/session.d.ts.map +1 -1
  274. package/dist/cjs/utils/session.js +40 -8
  275. package/dist/cjs/utils/session.js.map +1 -1
  276. package/dist/cjs/utils/template.d.ts +3 -3
  277. package/dist/cjs/utils/template.d.ts.map +1 -1
  278. package/dist/cjs/utils/template.js +5 -5
  279. package/dist/cjs/utils/template.js.map +1 -1
  280. package/dist/constants/index.d.ts +1 -0
  281. package/dist/constants/index.js +1 -1
  282. package/dist/core/Agent.d.ts +19 -11
  283. package/dist/core/Agent.d.ts.map +1 -1
  284. package/dist/core/Agent.js +53 -15
  285. package/dist/core/Agent.js.map +1 -1
  286. package/dist/core/AutoChainExecutor.d.ts +12 -22
  287. package/dist/core/AutoChainExecutor.d.ts.map +1 -1
  288. package/dist/core/AutoChainExecutor.js +27 -30
  289. package/dist/core/AutoChainExecutor.js.map +1 -1
  290. package/dist/core/BranchEvaluator.d.ts +4 -4
  291. package/dist/core/BranchEvaluator.d.ts.map +1 -1
  292. package/dist/core/BranchEvaluator.js +2 -2
  293. package/dist/core/BranchEvaluator.js.map +1 -1
  294. package/dist/core/CompactionEngine.d.ts +16 -3
  295. package/dist/core/CompactionEngine.d.ts.map +1 -1
  296. package/dist/core/CompactionEngine.js +30 -6
  297. package/dist/core/CompactionEngine.js.map +1 -1
  298. package/dist/core/DirectiveChainTracker.d.ts +1 -1
  299. package/dist/core/DirectiveChainTracker.d.ts.map +1 -1
  300. package/dist/core/DirectiveChainTracker.js +2 -2
  301. package/dist/core/DirectiveChainTracker.js.map +1 -1
  302. package/dist/core/Events.d.ts +1 -1
  303. package/dist/core/Events.d.ts.map +1 -1
  304. package/dist/core/Events.js +1 -1
  305. package/dist/core/Events.js.map +1 -1
  306. package/dist/core/Flow.d.ts +4 -4
  307. package/dist/core/Flow.d.ts.map +1 -1
  308. package/dist/core/Flow.js +3 -3
  309. package/dist/core/Flow.js.map +1 -1
  310. package/dist/core/FlowRouter.d.ts +4 -4
  311. package/dist/core/FlowRouter.d.ts.map +1 -1
  312. package/dist/core/FlowRouter.js +36 -14
  313. package/dist/core/FlowRouter.js.map +1 -1
  314. package/dist/core/PersistenceManager.d.ts +1 -1
  315. package/dist/core/PersistenceManager.d.ts.map +1 -1
  316. package/dist/core/PersistenceManager.js +3 -3
  317. package/dist/core/PersistenceManager.js.map +1 -1
  318. package/dist/core/PromptComposer.d.ts +4 -4
  319. package/dist/core/PromptComposer.d.ts.map +1 -1
  320. package/dist/core/PromptComposer.js +3 -3
  321. package/dist/core/PromptComposer.js.map +1 -1
  322. package/dist/core/PromptSectionCache.d.ts +2 -2
  323. package/dist/core/PromptSectionCache.d.ts.map +1 -1
  324. package/dist/core/ResponseEngine.d.ts +4 -4
  325. package/dist/core/ResponseEngine.d.ts.map +1 -1
  326. package/dist/core/ResponseEngine.js +2 -2
  327. package/dist/core/ResponseEngine.js.map +1 -1
  328. package/dist/core/ResponseGenerationError.d.ts.map +1 -1
  329. package/dist/core/ResponseGenerationError.js +3 -5
  330. package/dist/core/ResponseGenerationError.js.map +1 -1
  331. package/dist/core/ResponseModal.d.ts +39 -10
  332. package/dist/core/ResponseModal.d.ts.map +1 -1
  333. package/dist/core/ResponseModal.js +152 -29
  334. package/dist/core/ResponseModal.js.map +1 -1
  335. package/dist/core/ResponsePipeline.d.ts +50 -12
  336. package/dist/core/ResponsePipeline.d.ts.map +1 -1
  337. package/dist/core/ResponsePipeline.js +232 -89
  338. package/dist/core/ResponsePipeline.js.map +1 -1
  339. package/dist/core/SessionFinalizer.d.ts +4 -4
  340. package/dist/core/SessionFinalizer.d.ts.map +1 -1
  341. package/dist/core/SessionFinalizer.js +32 -5
  342. package/dist/core/SessionFinalizer.js.map +1 -1
  343. package/dist/core/SessionManager.d.ts +15 -6
  344. package/dist/core/SessionManager.d.ts.map +1 -1
  345. package/dist/core/SessionManager.js +46 -19
  346. package/dist/core/SessionManager.js.map +1 -1
  347. package/dist/core/SignalCoordinator.d.ts +5 -5
  348. package/dist/core/SignalCoordinator.d.ts.map +1 -1
  349. package/dist/core/SignalCoordinator.js +2 -2
  350. package/dist/core/SignalCoordinator.js.map +1 -1
  351. package/dist/core/SignalEvaluator.d.ts +4 -4
  352. package/dist/core/SignalEvaluator.d.ts.map +1 -1
  353. package/dist/core/SignalEvaluator.js +2 -2
  354. package/dist/core/SignalEvaluator.js.map +1 -1
  355. package/dist/core/SignalProcessor.d.ts +6 -6
  356. package/dist/core/SignalProcessor.d.ts.map +1 -1
  357. package/dist/core/SignalProcessor.js +7 -79
  358. package/dist/core/SignalProcessor.js.map +1 -1
  359. package/dist/core/Step.d.ts +5 -5
  360. package/dist/core/Step.d.ts.map +1 -1
  361. package/dist/core/Step.js +53 -5
  362. package/dist/core/Step.js.map +1 -1
  363. package/dist/core/StepLifecycle.d.ts +18 -8
  364. package/dist/core/StepLifecycle.d.ts.map +1 -1
  365. package/dist/core/StepLifecycle.js +98 -15
  366. package/dist/core/StepLifecycle.js.map +1 -1
  367. package/dist/core/StreamingToolExecutor.d.ts +1 -1
  368. package/dist/core/StreamingToolExecutor.d.ts.map +1 -1
  369. package/dist/core/StreamingToolExecutor.js +29 -5
  370. package/dist/core/StreamingToolExecutor.js.map +1 -1
  371. package/dist/core/ToolLoopExecutor.d.ts +8 -4
  372. package/dist/core/ToolLoopExecutor.d.ts.map +1 -1
  373. package/dist/core/ToolLoopExecutor.js +157 -65
  374. package/dist/core/ToolLoopExecutor.js.map +1 -1
  375. package/dist/core/ToolManager.d.ts +6 -6
  376. package/dist/core/ToolManager.d.ts.map +1 -1
  377. package/dist/core/ToolManager.js +44 -21
  378. package/dist/core/ToolManager.js.map +1 -1
  379. package/dist/core/createAgent.d.ts +2 -2
  380. package/dist/core/createAgent.d.ts.map +1 -1
  381. package/dist/core/createAgent.js +1 -1
  382. package/dist/core/createAgent.js.map +1 -1
  383. package/dist/core/flow-namespace.d.ts +16 -1
  384. package/dist/core/flow-namespace.d.ts.map +1 -1
  385. package/dist/core/flow-namespace.js +23 -1
  386. package/dist/core/flow-namespace.js.map +1 -1
  387. package/dist/core/toolGates.d.ts +1 -1
  388. package/dist/core/toolGates.d.ts.map +1 -1
  389. package/dist/core/toolGates.js +1 -1
  390. package/dist/core/toolGates.js.map +1 -1
  391. package/dist/index.d.ts +50 -45
  392. package/dist/index.d.ts.map +1 -1
  393. package/dist/index.js +34 -30
  394. package/dist/index.js.map +1 -1
  395. package/dist/providers/AnthropicProvider.d.ts +25 -35
  396. package/dist/providers/AnthropicProvider.d.ts.map +1 -1
  397. package/dist/providers/AnthropicProvider.js +30 -423
  398. package/dist/providers/AnthropicProvider.js.map +1 -1
  399. package/dist/providers/DeepSeekProvider.d.ts +13 -34
  400. package/dist/providers/DeepSeekProvider.d.ts.map +1 -1
  401. package/dist/providers/DeepSeekProvider.js +16 -47
  402. package/dist/providers/DeepSeekProvider.js.map +1 -1
  403. package/dist/providers/GeminiProvider.d.ts +22 -75
  404. package/dist/providers/GeminiProvider.d.ts.map +1 -1
  405. package/dist/providers/GeminiProvider.js +32 -558
  406. package/dist/providers/GeminiProvider.js.map +1 -1
  407. package/dist/providers/GenericOpenAICompatibleProvider.d.ts +9 -10
  408. package/dist/providers/GenericOpenAICompatibleProvider.d.ts.map +1 -1
  409. package/dist/providers/GenericOpenAICompatibleProvider.js +13 -16
  410. package/dist/providers/GenericOpenAICompatibleProvider.js.map +1 -1
  411. package/dist/providers/OpenAICompatibleProvider.d.ts +26 -135
  412. package/dist/providers/OpenAICompatibleProvider.d.ts.map +1 -1
  413. package/dist/providers/OpenAICompatibleProvider.js +39 -495
  414. package/dist/providers/OpenAICompatibleProvider.js.map +1 -1
  415. package/dist/providers/OpenAIProvider.d.ts +14 -20
  416. package/dist/providers/OpenAIProvider.d.ts.map +1 -1
  417. package/dist/providers/OpenAIProvider.js +20 -24
  418. package/dist/providers/OpenAIProvider.js.map +1 -1
  419. package/dist/providers/OpenRouterProvider.d.ts +20 -24
  420. package/dist/providers/OpenRouterProvider.d.ts.map +1 -1
  421. package/dist/providers/OpenRouterProvider.js +21 -34
  422. package/dist/providers/OpenRouterProvider.js.map +1 -1
  423. package/dist/providers/ProviderAdapter.d.ts +94 -0
  424. package/dist/providers/ProviderAdapter.d.ts.map +1 -0
  425. package/dist/providers/ProviderAdapter.js +251 -0
  426. package/dist/providers/ProviderAdapter.js.map +1 -0
  427. package/dist/providers/index.d.ts +21 -18
  428. package/dist/providers/index.d.ts.map +1 -1
  429. package/dist/providers/index.js +13 -10
  430. package/dist/providers/index.js.map +1 -1
  431. package/dist/types/agent.d.ts +37 -11
  432. package/dist/types/agent.d.ts.map +1 -1
  433. package/dist/types/ai.d.ts +11 -21
  434. package/dist/types/ai.d.ts.map +1 -1
  435. package/dist/types/compaction.d.ts +2 -2
  436. package/dist/types/compaction.d.ts.map +1 -1
  437. package/dist/types/errors.d.ts +16 -20
  438. package/dist/types/errors.d.ts.map +1 -1
  439. package/dist/types/errors.js +15 -16
  440. package/dist/types/errors.js.map +1 -1
  441. package/dist/types/flow.d.ts +56 -39
  442. package/dist/types/flow.d.ts.map +1 -1
  443. package/dist/types/history.d.ts +1 -1
  444. package/dist/types/history.d.ts.map +1 -1
  445. package/dist/types/index.d.ts +17 -17
  446. package/dist/types/index.d.ts.map +1 -1
  447. package/dist/types/index.js +4 -4
  448. package/dist/types/index.js.map +1 -1
  449. package/dist/types/persistence.d.ts +2 -2
  450. package/dist/types/persistence.d.ts.map +1 -1
  451. package/dist/types/session.d.ts +4 -4
  452. package/dist/types/session.d.ts.map +1 -1
  453. package/dist/types/signals.d.ts +3 -3
  454. package/dist/types/signals.d.ts.map +1 -1
  455. package/dist/types/template.d.ts +2 -2
  456. package/dist/types/template.d.ts.map +1 -1
  457. package/dist/types/tool.d.ts +4 -2
  458. package/dist/types/tool.d.ts.map +1 -1
  459. package/dist/types/tool.js.map +1 -1
  460. package/dist/utils/condition.d.ts +1 -1
  461. package/dist/utils/condition.d.ts.map +1 -1
  462. package/dist/utils/condition.js +2 -2
  463. package/dist/utils/condition.js.map +1 -1
  464. package/dist/utils/event.d.ts +1 -1
  465. package/dist/utils/event.d.ts.map +1 -1
  466. package/dist/utils/event.js +1 -1
  467. package/dist/utils/event.js.map +1 -1
  468. package/dist/utils/history.d.ts +2 -2
  469. package/dist/utils/history.d.ts.map +1 -1
  470. package/dist/utils/history.js +1 -1
  471. package/dist/utils/history.js.map +1 -1
  472. package/dist/utils/index.d.ts +11 -13
  473. package/dist/utils/index.d.ts.map +1 -1
  474. package/dist/utils/index.js +11 -12
  475. package/dist/utils/index.js.map +1 -1
  476. package/dist/utils/serialize.d.ts +17 -0
  477. package/dist/utils/serialize.d.ts.map +1 -1
  478. package/dist/utils/serialize.js +31 -0
  479. package/dist/utils/serialize.js.map +1 -1
  480. package/dist/utils/session.d.ts +23 -3
  481. package/dist/utils/session.d.ts.map +1 -1
  482. package/dist/utils/session.js +35 -6
  483. package/dist/utils/session.js.map +1 -1
  484. package/dist/utils/template.d.ts +3 -3
  485. package/dist/utils/template.d.ts.map +1 -1
  486. package/dist/utils/template.js +1 -1
  487. package/dist/utils/template.js.map +1 -1
  488. package/docs/concepts/architecture.md +3 -3
  489. package/docs/concepts/directives.md +1 -1
  490. package/docs/guides/error-handling.md +46 -45
  491. package/docs/guides/flow-control.md +8 -1
  492. package/docs/guides/instructions.md +15 -6
  493. package/docs/guides/persistence.md +12 -5
  494. package/docs/guides/streaming.md +10 -0
  495. package/docs/migration/README.md +4 -0
  496. package/docs/migration/v2-3-to-v2-4.md +4 -0
  497. package/docs/migration/v2-6-to-v2-7.md +246 -0
  498. package/docs/reference/adapters.md +15 -1
  499. package/docs/reference/branches.md +2 -0
  500. package/docs/reference/create-agent.md +28 -0
  501. package/docs/reference/directive.md +1 -1
  502. package/docs/reference/errors.md +30 -32
  503. package/docs/reference/providers.md +63 -60
  504. package/docs/reference/step.md +28 -21
  505. package/docs/reference/tool.md +14 -5
  506. package/docs/start/02-first-agent.md +8 -4
  507. package/docs/start/03-collect-data.md +19 -10
  508. package/examples/01-quickstart.ts +2 -2
  509. package/examples/02-data-extraction.ts +1 -1
  510. package/examples/03-tools.ts +1 -1
  511. package/examples/04-instructions.ts +2 -2
  512. package/examples/05-branching.ts +3 -3
  513. package/examples/06-flow-control.ts +3 -3
  514. package/examples/07-streaming.ts +1 -1
  515. package/examples/08-persistence.ts +2 -2
  516. package/examples/09-signals.ts +1 -1
  517. package/examples/tsconfig.json +6 -3
  518. package/package.json +9 -7
  519. package/src/adapters/MemoryAdapter.ts +33 -37
  520. package/src/adapters/MongoAdapter.ts +3 -3
  521. package/src/adapters/OpenSearchAdapter.ts +4 -4
  522. package/src/adapters/PostgreSQLAdapter.ts +26 -21
  523. package/src/adapters/PrismaAdapter.ts +4 -4
  524. package/src/adapters/RedisAdapter.ts +84 -37
  525. package/src/adapters/SQLiteAdapter.ts +13 -34
  526. package/src/adapters/index.ts +13 -13
  527. package/src/adapters/sessionRow.ts +57 -0
  528. package/src/core/Agent.ts +64 -18
  529. package/src/core/AutoChainExecutor.ts +44 -57
  530. package/src/core/BranchEvaluator.ts +5 -5
  531. package/src/core/CompactionEngine.ts +42 -8
  532. package/src/core/DirectiveChainTracker.ts +3 -3
  533. package/src/core/Events.ts +2 -2
  534. package/src/core/Flow.ts +9 -9
  535. package/src/core/FlowRouter.ts +46 -20
  536. package/src/core/PersistenceManager.ts +4 -4
  537. package/src/core/PromptComposer.ts +8 -8
  538. package/src/core/PromptSectionCache.ts +2 -2
  539. package/src/core/ResponseEngine.ts +6 -6
  540. package/src/core/ResponseGenerationError.ts +3 -6
  541. package/src/core/ResponseModal.ts +205 -39
  542. package/src/core/ResponsePipeline.ts +301 -107
  543. package/src/core/SessionFinalizer.ts +40 -10
  544. package/src/core/SessionManager.ts +61 -27
  545. package/src/core/SignalCoordinator.ts +7 -7
  546. package/src/core/SignalEvaluator.ts +6 -6
  547. package/src/core/SignalProcessor.ts +13 -93
  548. package/src/core/Step.ts +87 -10
  549. package/src/core/StepLifecycle.ts +129 -26
  550. package/src/core/StreamingToolExecutor.ts +33 -8
  551. package/src/core/ToolLoopExecutor.ts +206 -80
  552. package/src/core/ToolManager.ts +53 -26
  553. package/src/core/createAgent.ts +2 -2
  554. package/src/core/flow-namespace.ts +31 -2
  555. package/src/core/toolGates.ts +2 -2
  556. package/src/index.ts +59 -45
  557. package/src/providers/AnthropicProvider.ts +44 -595
  558. package/src/providers/DeepSeekProvider.ts +27 -92
  559. package/src/providers/GeminiProvider.ts +41 -752
  560. package/src/providers/GenericOpenAICompatibleProvider.ts +19 -27
  561. package/src/providers/OpenAICompatibleProvider.ts +58 -764
  562. package/src/providers/OpenAIProvider.ts +31 -55
  563. package/src/providers/OpenRouterProvider.ts +40 -70
  564. package/src/providers/ProviderAdapter.ts +368 -0
  565. package/src/providers/index.ts +21 -23
  566. package/src/types/agent.ts +36 -11
  567. package/src/types/ai.ts +11 -21
  568. package/src/types/compaction.ts +2 -2
  569. package/src/types/errors.ts +17 -35
  570. package/src/types/flow.ts +44 -46
  571. package/src/types/history.ts +1 -1
  572. package/src/types/index.ts +18 -17
  573. package/src/types/persistence.ts +2 -2
  574. package/src/types/session.ts +4 -4
  575. package/src/types/signals.ts +3 -3
  576. package/src/types/template.ts +2 -2
  577. package/src/types/tool.ts +4 -2
  578. package/src/utils/condition.ts +3 -3
  579. package/src/utils/event.ts +1 -1
  580. package/src/utils/history.ts +3 -3
  581. package/src/utils/index.ts +14 -15
  582. package/src/utils/serialize.ts +38 -0
  583. package/src/utils/session.ts +46 -9
  584. package/src/utils/template.ts +3 -3
  585. package/dist/cjs/core/DirectiveBus.d.ts +0 -88
  586. package/dist/cjs/core/DirectiveBus.d.ts.map +0 -1
  587. package/dist/cjs/core/DirectiveBus.js +0 -196
  588. package/dist/cjs/core/DirectiveBus.js.map +0 -1
  589. package/dist/cjs/providers/errorClassification.d.ts +0 -61
  590. package/dist/cjs/providers/errorClassification.d.ts.map +0 -1
  591. package/dist/cjs/providers/errorClassification.js +0 -123
  592. package/dist/cjs/providers/errorClassification.js.map +0 -1
  593. package/dist/cjs/utils/retry.d.ts +0 -67
  594. package/dist/cjs/utils/retry.d.ts.map +0 -1
  595. package/dist/cjs/utils/retry.js +0 -201
  596. package/dist/cjs/utils/retry.js.map +0 -1
  597. package/dist/core/DirectiveBus.d.ts +0 -88
  598. package/dist/core/DirectiveBus.d.ts.map +0 -1
  599. package/dist/core/DirectiveBus.js +0 -192
  600. package/dist/core/DirectiveBus.js.map +0 -1
  601. package/dist/providers/errorClassification.d.ts +0 -61
  602. package/dist/providers/errorClassification.d.ts.map +0 -1
  603. package/dist/providers/errorClassification.js +0 -116
  604. package/dist/providers/errorClassification.js.map +0 -1
  605. package/dist/utils/retry.d.ts +0 -67
  606. package/dist/utils/retry.d.ts.map +0 -1
  607. package/dist/utils/retry.js +0 -193
  608. package/dist/utils/retry.js.map +0 -1
  609. package/src/core/DirectiveBus.ts +0 -248
  610. package/src/providers/errorClassification.ts +0 -172
  611. package/src/utils/retry.ts +0 -274
@@ -2,16 +2,16 @@
2
2
  * ResponseModal handles all response generation logic for the Agent
3
3
  * Provides both streaming and non-streaming response generation with unified logic
4
4
  */
5
- import type { AgentOptions, AgentResponse, AgentResponseStreamChunk, History, SessionState, StepRef, Instruction, Term, StructuredSchema, CompactionOptions } from "../types";
6
- import type { SessionManager } from "./SessionManager";
7
- import type { SignalProcessor } from "./SignalProcessor";
8
- import type { PromptSectionCache } from "./PromptSectionCache";
9
- import type { FlowRouter } from "./FlowRouter";
10
- import type { PersistenceManager } from "./PersistenceManager";
11
- import type { Flow } from "./Flow";
12
- import { ResponseEngine } from "./ResponseEngine";
13
- import { ResponsePipeline } from "./ResponsePipeline";
14
- import type { ToolManager } from "./ToolManager";
5
+ import type { AgentOptions, AgentResponse, AgentResponseStreamChunk, History, SessionState, StepRef, Instruction, Term, StructuredSchema, CompactionOptions } from "../types/index.js";
6
+ import type { SessionManager } from "./SessionManager.js";
7
+ import type { SignalProcessor } from "./SignalProcessor.js";
8
+ import type { PromptSectionCache } from "./PromptSectionCache.js";
9
+ import type { FlowRouter } from "./FlowRouter.js";
10
+ import type { PersistenceManager } from "./PersistenceManager.js";
11
+ import type { Flow } from "./Flow.js";
12
+ import { ResponseEngine } from "./ResponseEngine.js";
13
+ import { ResponsePipeline } from "./ResponsePipeline.js";
14
+ import type { ToolManager } from "./ToolManager.js";
15
15
  /**
16
16
  * The narrow surface ResponseModal (and its collaborators) need from the
17
17
  * Agent. Agent implements this; the response layer is constructible and
@@ -58,6 +58,19 @@ export interface ResponseModalOptions {
58
58
  */
59
59
  export interface RespondParams<TContext = unknown, TData = unknown> extends Record<string, unknown> {
60
60
  history: History;
61
+ /**
62
+ * The user's message for this turn. When set, the engine appends it to the
63
+ * generation history AND to the returned session's history, then appends
64
+ * the assistant reply on top — callers who hold sessions no longer need to
65
+ * maintain history arrays by hand.
66
+ */
67
+ message?: string;
68
+ /**
69
+ * Restrict this turn's ROUTING candidates to these flow ids/titles.
70
+ * Directive targets (goTo etc.) still resolve against the full registry.
71
+ * Use for entry-pin funnels instead of cloning/filtering agents.
72
+ */
73
+ allowedFlows?: string[];
61
74
  step?: StepRef;
62
75
  session?: SessionState<TData>;
63
76
  contextOverride?: Partial<TContext>;
@@ -124,6 +137,22 @@ export declare class ResponseModal<TContext = unknown, TData = unknown> {
124
137
  * @private
125
138
  */
126
139
  private getToolManager;
140
+ /**
141
+ * Repair-parse a JSON-shaped protocol fragment (truncated output,
142
+ * fence-wrapped JSON) into a structured payload. Raw protocol fragments
143
+ * must never surface as the user-visible reply: if the repair parse fails,
144
+ * fail the turn LOUDLY so the caller's rollback/retry path engages instead
145
+ * of leaking `{"message": "…` to an end user. Plain prose (not JSON-shaped
146
+ * at all) never reaches this helper — the call sites gate on the fragment
147
+ * shape and pass it through untouched.
148
+ */
149
+ private salvageStructuredOutput;
150
+ /**
151
+ * Tool-emitted directives (ctx.dispatch / `{directive}` returns): state
152
+ * writes apply now; control flow queues for the next turn's
153
+ * pendingDirective applier (same deferred semantics as dispatch()).
154
+ */
155
+ private applyToolEmittedDirectives;
127
156
  /**
128
157
  * Collect scoped instructions from agent, flow, and step into a ScopedInstructions value.
129
158
  * @private
@@ -1 +1 @@
1
- {"version":3,"file":"ResponseModal.d.ts","sourceRoot":"","sources":["../../src/core/ResponseModal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResponseModal.d.ts","sourceRoot":"","sources":["../../src/core/ResponseModal.ts"],"names":[],"mappings":"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"}
@@ -2,17 +2,20 @@
2
2
  * ResponseModal handles all response generation logic for the Agent
3
3
  * Provides both streaming and non-streaming response generation with unified logic
4
4
  */
5
- import { ResponseEngine } from "./ResponseEngine";
6
- import { ResponsePipeline } from "./ResponsePipeline";
7
- import { AutoChainExecutor } from "./AutoChainExecutor";
8
- import { StepLifecycle } from "./StepLifecycle";
9
- import { SessionFinalizer } from "./SessionFinalizer";
10
- import { ToolLoopExecutor } from "./ToolLoopExecutor";
11
- import { SignalCoordinator } from "./SignalCoordinator";
12
- import { ResponseGenerationError } from "./ResponseGenerationError";
13
- import { cloneDeep, mergeCollected, logger, historyToEvents, completeCurrentFlow, render } from "../utils";
14
- import { createTemplateContext } from "../utils/template";
15
- import { StreamingMessageDecoder } from "../utils/streamingMessage";
5
+ import { ResponseEngine } from "./ResponseEngine.js";
6
+ import { ResponsePipeline } from "./ResponsePipeline.js";
7
+ import { AutoChainExecutor } from "./AutoChainExecutor.js";
8
+ import { StepLifecycle } from "./StepLifecycle.js";
9
+ import { SessionFinalizer } from "./SessionFinalizer.js";
10
+ import { ToolLoopExecutor } from "./ToolLoopExecutor.js";
11
+ import { flow } from "./flow-namespace.js";
12
+ import { SignalCoordinator } from "./SignalCoordinator.js";
13
+ import { ResponseGenerationError } from "./ResponseGenerationError.js";
14
+ import { ProviderError, SessionConflictError } from "../types/errors.js";
15
+ import { cloneDeep, mergeCollected, logger, historyToEvents, completeCurrentFlow, render, userMessage, assistantMessage } from "../utils/index.js";
16
+ import { createTemplateContext } from "../utils/template.js";
17
+ import { StreamingMessageDecoder } from "../utils/streamingMessage.js";
18
+ import { tryParseJSONResponse } from "../utils/json.js";
16
19
  /**
17
20
  * ResponseModal class that encapsulates all response generation logic
18
21
  * Uses unified approach for both streaming and non-streaming responses
@@ -81,6 +84,13 @@ export class ResponseModal {
81
84
  if (preTurnSession) {
82
85
  this.agent.session.syncSession(preTurnSession);
83
86
  }
87
+ // Typed library errors carry their own semantics (ProviderError.code,
88
+ // SessionConflictError) — rethrow bare so consumers can branch on
89
+ // them instead of string-matching. Everything else wraps with the
90
+ // original attached as `cause`.
91
+ if (error instanceof ProviderError || error instanceof SessionConflictError) {
92
+ throw error;
93
+ }
84
94
  throw new ResponseGenerationError(`[ResponseGenerationError] Response generation failed: ${error instanceof Error ? error.message : String(error)}. ` +
85
95
  `Check provider configuration and network connectivity.`, { originalError: error, params, phase: 'response_generation' });
86
96
  }
@@ -222,6 +232,44 @@ export class ResponseModal {
222
232
  getToolManager() {
223
233
  return this.agent.tool;
224
234
  }
235
+ /**
236
+ * Repair-parse a JSON-shaped protocol fragment (truncated output,
237
+ * fence-wrapped JSON) into a structured payload. Raw protocol fragments
238
+ * must never surface as the user-visible reply: if the repair parse fails,
239
+ * fail the turn LOUDLY so the caller's rollback/retry path engages instead
240
+ * of leaking `{"message": "…` to an end user. Plain prose (not JSON-shaped
241
+ * at all) never reaches this helper — the call sites gate on the fragment
242
+ * shape and pass it through untouched.
243
+ */
244
+ salvageStructuredOutput(raw, surface) {
245
+ const salvaged = tryParseJSONResponse(raw);
246
+ if (salvaged && typeof salvaged.message === "string") {
247
+ logger.warn(`[ResponseModal] Salvaged malformed structured output from ${surface} via JSON repair parse.`);
248
+ return { ...salvaged, message: salvaged.message };
249
+ }
250
+ throw ResponseGenerationError.fromError(new Error("Model returned a schema-mandated response that could not be parsed as JSON. " +
251
+ `The ${surface} was failed instead of delivering raw protocol output to the user.`), 'structured_output_malformed', { responseSchemaName: 'response_output' });
252
+ }
253
+ /**
254
+ * Tool-emitted directives (ctx.dispatch / `{directive}` returns): state
255
+ * writes apply now; control flow queues for the next turn's
256
+ * pendingDirective applier (same deferred semantics as dispatch()).
257
+ */
258
+ async applyToolEmittedDirectives(session, d) {
259
+ if (d.dataUpdate) {
260
+ session = mergeCollected(session, d.dataUpdate);
261
+ }
262
+ if (d.contextUpdate) {
263
+ await this.agent.updateContext(d.contextUpdate);
264
+ }
265
+ const control = { ...d };
266
+ delete control.dataUpdate;
267
+ delete control.contextUpdate;
268
+ if (Object.keys(control).length > 0) {
269
+ flow.queuePending(session, control);
270
+ }
271
+ return session;
272
+ }
225
273
  /**
226
274
  * Collect scoped instructions from agent, flow, and step into a ScopedInstructions value.
227
275
  * @private
@@ -242,16 +290,19 @@ export class ResponseModal {
242
290
  */
243
291
  async prepareUnifiedResponseContext(params) {
244
292
  try {
245
- const { history: simpleHistory, contextOverride, signal } = params;
293
+ const { history: simpleHistory, contextOverride, signal, message: turnMessage, allowedFlows } = params;
246
294
  // Validate input parameters
247
295
  if (!simpleHistory) {
248
296
  throw new ResponseGenerationError('[ResponseGenerationError] Missing history: history is required for response generation. ' +
249
- 'Pass a valid history array to the respond/stream method.', { params, phase: 'validation' });
297
+ 'Pass a valid history array (or pass `message` alongside an existing history base).', { params, phase: 'validation' });
250
298
  }
299
+ // `message` is the user turn: appended to what the model sees this
300
+ // turn AND recorded on the returned session's history.
301
+ const history = turnMessage
302
+ ? [...simpleHistory, userMessage(turnMessage)]
303
+ : simpleHistory;
251
304
  // Convert HistoryItem[] to Event[] for internal processing
252
- const historyEvents = historyToEvents(simpleHistory);
253
- // Keep original HistoryItem[] format for external APIs
254
- const history = simpleHistory;
305
+ const historyEvents = historyToEvents(history);
255
306
  // Use ResponsePipeline for context and session preparation; context
256
307
  // and session are passed explicitly — the pipeline holds no state
257
308
  let responseContext;
@@ -291,9 +342,22 @@ export class ResponseModal {
291
342
  throw ResponseGenerationError.fromError(error, 'data_merging', params, { stagedData });
292
343
  }
293
344
  }
345
+ // Record the user turn on the session's own history so the returned
346
+ // session carries the full exchange (respond owns session.history
347
+ // when `message` is used).
348
+ if (turnMessage) {
349
+ session.history = [...(session.history ?? []), userMessage(turnMessage)];
350
+ }
294
351
  // PHASE 1: PREPARE - Execute prepare function if current step has one
295
352
  try {
296
- await this.stepLifecycle.runPrepare(session, effectiveContext);
353
+ const prepareDirective = await this.stepLifecycle.runPrepare(session, effectiveContext);
354
+ // Queue the control-flow directive for THIS turn: routing
355
+ // (handleRoutingAndStepSelection) consumes session.pendingDirective
356
+ // before deciding flow/step, so a prepare-phase goTo/goToStep/
357
+ // reset steers the current turn.
358
+ if (prepareDirective) {
359
+ flow.queuePending(session, prepareDirective);
360
+ }
297
361
  }
298
362
  catch (error) {
299
363
  throw ResponseGenerationError.fromError(error, 'step_preparation', params, { session, effectiveContext });
@@ -307,6 +371,7 @@ export class ResponseModal {
307
371
  history: historyEvents,
308
372
  context: effectiveContext,
309
373
  signal,
374
+ allowedFlows,
310
375
  });
311
376
  }
312
377
  catch (error) {
@@ -316,6 +381,7 @@ export class ResponseModal {
316
381
  effectiveContext,
317
382
  session: routingResult.session,
318
383
  history,
384
+ turnMessage,
319
385
  selectedFlow: routingResult.selectedFlow,
320
386
  selectedStep: routingResult.selectedStep,
321
387
  responseDirectives: routingResult.responseDirectives,
@@ -325,6 +391,7 @@ export class ResponseModal {
325
391
  signalPreDirective: routingResult.signalPreDirective,
326
392
  signalHalted: routingResult.signalHalted,
327
393
  signalHaltReply: routingResult.signalHaltReply,
394
+ endedFlows: routingResult.endedFlows,
328
395
  };
329
396
  }
330
397
  catch (error) {
@@ -469,6 +536,8 @@ export class ResponseModal {
469
536
  let isFlowComplete = false;
470
537
  let appliedInstructions;
471
538
  let runPostPhase = true;
539
+ let tokensUsed;
540
+ const endedFlows = [...(responseContext.endedFlows ?? [])];
472
541
  switch (plan.outcome.kind) {
473
542
  case 'halt': {
474
543
  message = plan.outcome.message;
@@ -485,6 +554,11 @@ export class ResponseModal {
485
554
  });
486
555
  isFlowComplete = true;
487
556
  stoppedReason = plan.outcome.stoppedReason;
557
+ endedFlows.push({
558
+ flowId: plan.outcome.selectedFlow.id,
559
+ title: plan.outcome.selectedFlow.title,
560
+ reason: plan.outcome.stoppedReason,
561
+ });
488
562
  break;
489
563
  }
490
564
  case 'flowStep': {
@@ -506,6 +580,7 @@ export class ResponseModal {
506
580
  toolCalls = result.toolCalls;
507
581
  session = result.session;
508
582
  appliedInstructions = result.appliedInstructions;
583
+ tokensUsed = result.tokensUsed;
509
584
  if (plan.outcome.step) {
510
585
  executedSteps = [{ id: plan.outcome.step.id, flowId: plan.outcome.selectedFlow.id }];
511
586
  }
@@ -529,6 +604,13 @@ export class ResponseModal {
529
604
  const tail = await this.applyTurnPostPhase({
530
605
  session, context: effectiveContext, historyEvents, message, signalFirings, runPostPhase,
531
606
  });
607
+ // History ownership: with params.message the returned session carries
608
+ // the full exchange — the user turn was recorded pre-routing, the
609
+ // assistant tail lands here (post-phase, so overridden replies are the
610
+ // ones recorded). Empty tails are skipped.
611
+ if (responseContext.turnMessage && tail.message) {
612
+ tail.session.history = [...(tail.session.history ?? []), assistantMessage(tail.message)];
613
+ }
532
614
  return {
533
615
  message: tail.message,
534
616
  session: tail.session,
@@ -538,6 +620,8 @@ export class ResponseModal {
538
620
  stoppedReason,
539
621
  appliedInstructions,
540
622
  triggeredSignals: tail.triggeredSignals,
623
+ ...(tokensUsed !== undefined ? { metadata: { tokensUsed } } : {}),
624
+ ...(endedFlows.length > 0 ? { endedFlows } : {}),
541
625
  };
542
626
  }
543
627
  /**
@@ -622,16 +706,23 @@ export class ResponseModal {
622
706
  signal,
623
707
  parameters: responseSchema ? { jsonSchema: responseSchema, schemaName: "response_output" } : undefined,
624
708
  });
625
- let message = result.structured?.message || result.message;
626
- let toolCalls = result.structured?.toolCalls;
627
- // Debug: Log initial AI response
628
- logger.debug(`[ResponseModal] Initial AI response:`, {
629
- hasMessage: !!message,
630
- messageLength: message?.length || 0,
631
- hasToolCalls: !!toolCalls,
632
- toolCallsCount: toolCalls?.length || 0,
633
- toolNames: toolCalls?.map(tc => tc.toolName) || [],
634
- });
709
+ let structuredData = result.structured;
710
+ let message = structuredData?.message || result.message;
711
+ const tokensUsed = result.metadata?.tokensUsed;
712
+ // A schema was requested but the provider failed to parse the model's
713
+ // JSON (truncated output, fence-wrapped fragments). Raw protocol
714
+ // fragments must never surface as the user-visible reply: attempt one
715
+ // repair-parse, and if that fails fail the turn LOUDLY so the caller's
716
+ // rollback/retry path engages instead of leaking `{"message": "…` to
717
+ // an end user. Plain prose (not JSON-shaped at all) still passes
718
+ // through — it is not a protocol fragment.
719
+ if (!structuredData && responseSchema && message && /^\s*(```|{)/.test(message)) {
720
+ const salvaged = this.salvageStructuredOutput(message, "turn");
721
+ structuredData = salvaged;
722
+ message = salvaged.message;
723
+ }
724
+ const effectiveResult = structuredData ? { ...result, structured: structuredData } : result;
725
+ let toolCalls = structuredData?.toolCalls;
635
726
  // Execute tools with unified loop handling
636
727
  const toolResult = await this.toolLoopExecutor.runLoop({
637
728
  toolCalls,
@@ -649,13 +740,19 @@ export class ResponseModal {
649
740
  if (toolResult.finalMessage) {
650
741
  message = toolResult.finalMessage;
651
742
  }
743
+ // Tool-emitted directives (ctx.dispatch / `{directive}` returns):
744
+ // state writes apply now; control flow queues for the next turn's
745
+ // pendingDirective applier (same deferred semantics as dispatch()).
746
+ if (toolResult.directives) {
747
+ session = await this.applyToolEmittedDirectives(session, toolResult.directives);
748
+ }
652
749
  // Collect data from response
653
750
  // Use follow-up structured data from tool loop when available, fall back to original result
654
751
  const dataSource = toolResult.structured
655
752
  ? { structured: toolResult.structured }
656
- : result;
753
+ : effectiveResult;
657
754
  session = await this.collectDataFromResponse({ result: dataSource, selectedFlow, nextStep, session });
658
- return { message, toolCalls, session, appliedInstructions };
755
+ return { message, toolCalls, session, appliedInstructions, tokensUsed };
659
756
  }
660
757
  finally {
661
758
  // Drain the transient appendage at end of turn.
@@ -740,6 +837,13 @@ export class ResponseModal {
740
837
  });
741
838
  const accumulated = tail.message;
742
839
  const delta = tail.replyOverridden ? accumulated : chunk.delta;
840
+ // History ownership (parity with the sync tail): with
841
+ // params.message the returned session carries the full
842
+ // exchange — the user turn was recorded pre-routing, the
843
+ // assistant tail lands here, BEFORE finalize persists it.
844
+ if (responseContext.turnMessage && tail.message) {
845
+ tail.session.history = [...(tail.session.history ?? []), assistantMessage(tail.message)];
846
+ }
743
847
  // Single streaming exit: finalize the post-phase session so
744
848
  // post-signal mutations (e.g. pendingDirective) are persisted.
745
849
  await this.sessionFinalizer.finalize(tail.session, effectiveContext);
@@ -919,6 +1023,14 @@ export class ResponseModal {
919
1023
  });
920
1024
  session = batchResult.session;
921
1025
  toolCalls = batchResult.toolCalls;
1026
+ // Tool-emitted directives (ctx.dispatch / `{directive}`):
1027
+ // state writes apply now; control flow queues for the next
1028
+ // turn's pendingDirective applier (same deferred semantics
1029
+ // as dispatch()). A verbatim tool reply already replaced the
1030
+ // closing message inside runStreamingBatch.
1031
+ if (batchResult.directives) {
1032
+ session = await this.applyToolEmittedDirectives(session, batchResult.directives);
1033
+ }
922
1034
  // Prefer the post-tool follow-up structured for collection and
923
1035
  // emission whenever present — independent of whether a closing
924
1036
  // message was forced — matching the non-streaming path's
@@ -935,6 +1047,17 @@ export class ResponseModal {
935
1047
  : batchResult.finalMessage;
936
1048
  }
937
1049
  }
1050
+ // Streaming twin of the non-streaming salvage guard: a schema was
1051
+ // requested but no structured payload arrived, and the accumulated
1052
+ // text is JSON-shaped (a protocol fragment) — repair-parse it or
1053
+ // fail the turn rather than leaking raw output to the user.
1054
+ if (chunk.done && !finalStructured && responseSchema && finalAccumulated && /^\s*(```|{)/.test(finalAccumulated)) {
1055
+ const salvaged = this.salvageStructuredOutput(finalAccumulated, "stream");
1056
+ finalStructured = salvaged;
1057
+ finalDelta = salvaged.message.startsWith(finalAccumulated)
1058
+ ? salvaged.message.slice(finalAccumulated.length)
1059
+ : salvaged.message;
1060
+ }
938
1061
  // Collect data on the final chunk for any flow step — flow
939
1062
  // required/optional fields are valid targets even without a step
940
1063
  // `collect` — preferring the post-tool follow-up structured so a
@@ -1 +1 @@
1
- {"version":3,"file":"ResponseModal.js","sourceRoot":"","sources":["../../src/core/ResponseModal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResponseModal.js","sourceRoot":"","sources":["../../src/core/ResponseModal.ts"],"names":[],"mappings":"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"}