langchain 1.0.0-alpha.7 → 1.0.0-alpha.8

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 (1418) hide show
  1. package/dist/agents/ReactAgent.cjs +2 -2
  2. package/dist/agents/ReactAgent.cjs.map +1 -1
  3. package/dist/agents/ReactAgent.js +2 -2
  4. package/dist/agents/ReactAgent.js.map +1 -1
  5. package/dist/agents/RunnableCallable.cjs +10 -0
  6. package/dist/agents/RunnableCallable.cjs.map +1 -1
  7. package/dist/agents/RunnableCallable.d.cts +5 -0
  8. package/dist/agents/RunnableCallable.d.cts.map +1 -1
  9. package/dist/agents/RunnableCallable.d.ts +5 -0
  10. package/dist/agents/RunnableCallable.d.ts.map +1 -1
  11. package/dist/agents/RunnableCallable.js +10 -0
  12. package/dist/agents/RunnableCallable.js.map +1 -1
  13. package/dist/agents/annotation.cjs +14 -0
  14. package/dist/agents/annotation.cjs.map +1 -1
  15. package/dist/agents/annotation.d.cts +12 -7
  16. package/dist/agents/annotation.d.cts.map +1 -1
  17. package/dist/agents/annotation.d.ts +11 -6
  18. package/dist/agents/annotation.d.ts.map +1 -1
  19. package/dist/agents/annotation.js +12 -1
  20. package/dist/agents/annotation.js.map +1 -1
  21. package/dist/agents/errors.d.cts +9 -2
  22. package/dist/agents/errors.d.cts.map +1 -1
  23. package/dist/agents/errors.d.ts +9 -2
  24. package/dist/agents/errors.d.ts.map +1 -1
  25. package/dist/agents/index.cjs +3 -0
  26. package/dist/agents/index.cjs.map +1 -1
  27. package/dist/agents/index.d.cts +6 -5
  28. package/dist/agents/index.d.cts.map +1 -1
  29. package/dist/agents/index.d.ts +6 -5
  30. package/dist/agents/index.d.ts.map +1 -1
  31. package/dist/agents/index.js +4 -1
  32. package/dist/agents/index.js.map +1 -1
  33. package/dist/agents/interrupt.d.cts +5 -16
  34. package/dist/agents/interrupt.d.cts.map +1 -1
  35. package/dist/agents/interrupt.d.ts +3 -17
  36. package/dist/agents/interrupt.d.ts.map +1 -1
  37. package/dist/agents/interrupt.js +3 -1
  38. package/dist/agents/middlewareAgent/ReactAgent.cjs +145 -28
  39. package/dist/agents/middlewareAgent/ReactAgent.cjs.map +1 -1
  40. package/dist/agents/middlewareAgent/ReactAgent.d.cts +92 -12
  41. package/dist/agents/middlewareAgent/ReactAgent.d.cts.map +1 -1
  42. package/dist/agents/middlewareAgent/ReactAgent.d.ts +92 -12
  43. package/dist/agents/middlewareAgent/ReactAgent.d.ts.map +1 -1
  44. package/dist/agents/middlewareAgent/ReactAgent.js +145 -28
  45. package/dist/agents/middlewareAgent/ReactAgent.js.map +1 -1
  46. package/dist/agents/middlewareAgent/middleware/callLimit.cjs +128 -0
  47. package/dist/agents/middlewareAgent/middleware/callLimit.cjs.map +1 -0
  48. package/dist/agents/middlewareAgent/middleware/callLimit.d.cts +119 -0
  49. package/dist/agents/middlewareAgent/middleware/callLimit.d.cts.map +1 -0
  50. package/dist/agents/middlewareAgent/middleware/callLimit.d.ts +119 -0
  51. package/dist/agents/middlewareAgent/middleware/callLimit.d.ts.map +1 -0
  52. package/dist/agents/middlewareAgent/middleware/callLimit.js +127 -0
  53. package/dist/agents/middlewareAgent/middleware/callLimit.js.map +1 -0
  54. package/dist/agents/middlewareAgent/middleware/contextEditing.cjs +278 -0
  55. package/dist/agents/middlewareAgent/middleware/contextEditing.cjs.map +1 -0
  56. package/dist/agents/middlewareAgent/middleware/contextEditing.d.cts +239 -0
  57. package/dist/agents/middlewareAgent/middleware/contextEditing.d.cts.map +1 -0
  58. package/dist/agents/middlewareAgent/middleware/contextEditing.d.ts +239 -0
  59. package/dist/agents/middlewareAgent/middleware/contextEditing.d.ts.map +1 -0
  60. package/dist/agents/middlewareAgent/middleware/contextEditing.js +276 -0
  61. package/dist/agents/middlewareAgent/middleware/contextEditing.js.map +1 -0
  62. package/dist/agents/middlewareAgent/middleware/dynamicSystemPrompt.cjs +1 -1
  63. package/dist/agents/middlewareAgent/middleware/dynamicSystemPrompt.cjs.map +1 -1
  64. package/dist/agents/middlewareAgent/middleware/dynamicSystemPrompt.d.cts +2 -2
  65. package/dist/agents/middlewareAgent/middleware/dynamicSystemPrompt.d.cts.map +1 -1
  66. package/dist/agents/middlewareAgent/middleware/dynamicSystemPrompt.d.ts +2 -2
  67. package/dist/agents/middlewareAgent/middleware/dynamicSystemPrompt.d.ts.map +1 -1
  68. package/dist/agents/middlewareAgent/middleware/dynamicSystemPrompt.js +1 -1
  69. package/dist/agents/middlewareAgent/middleware/dynamicSystemPrompt.js.map +1 -1
  70. package/dist/agents/middlewareAgent/middleware/hitl.cjs +38 -8
  71. package/dist/agents/middlewareAgent/middleware/hitl.cjs.map +1 -1
  72. package/dist/agents/middlewareAgent/middleware/hitl.d.cts +130 -25
  73. package/dist/agents/middlewareAgent/middleware/hitl.d.cts.map +1 -1
  74. package/dist/agents/middlewareAgent/middleware/hitl.d.ts +129 -24
  75. package/dist/agents/middlewareAgent/middleware/hitl.d.ts.map +1 -1
  76. package/dist/agents/middlewareAgent/middleware/hitl.js +38 -8
  77. package/dist/agents/middlewareAgent/middleware/hitl.js.map +1 -1
  78. package/dist/agents/middlewareAgent/middleware/index.cjs +26 -6
  79. package/dist/agents/middlewareAgent/middleware/index.cjs.map +1 -1
  80. package/dist/agents/middlewareAgent/middleware/index.d.cts +10 -3
  81. package/dist/agents/middlewareAgent/middleware/index.d.ts +10 -3
  82. package/dist/agents/middlewareAgent/middleware/index.js +17 -4
  83. package/dist/agents/middlewareAgent/middleware/index.js.map +1 -1
  84. package/dist/agents/middlewareAgent/middleware/llmToolSelector.cjs +193 -0
  85. package/dist/agents/middlewareAgent/middleware/llmToolSelector.cjs.map +1 -0
  86. package/dist/agents/middlewareAgent/middleware/llmToolSelector.d.cts +83 -0
  87. package/dist/agents/middlewareAgent/middleware/llmToolSelector.d.cts.map +1 -0
  88. package/dist/agents/middlewareAgent/middleware/llmToolSelector.d.ts +83 -0
  89. package/dist/agents/middlewareAgent/middleware/llmToolSelector.d.ts.map +1 -0
  90. package/dist/agents/middlewareAgent/middleware/llmToolSelector.js +192 -0
  91. package/dist/agents/middlewareAgent/middleware/llmToolSelector.js.map +1 -0
  92. package/dist/agents/middlewareAgent/middleware/modelFallback.cjs +67 -0
  93. package/dist/agents/middlewareAgent/middleware/modelFallback.cjs.map +1 -0
  94. package/dist/agents/middlewareAgent/middleware/modelFallback.d.cts +45 -0
  95. package/dist/agents/middlewareAgent/middleware/modelFallback.d.cts.map +1 -0
  96. package/dist/agents/middlewareAgent/middleware/modelFallback.d.ts +45 -0
  97. package/dist/agents/middlewareAgent/middleware/modelFallback.d.ts.map +1 -0
  98. package/dist/agents/middlewareAgent/middleware/modelFallback.js +67 -0
  99. package/dist/agents/middlewareAgent/middleware/modelFallback.js.map +1 -0
  100. package/dist/agents/middlewareAgent/middleware/piiRedaction.cjs +333 -0
  101. package/dist/agents/middlewareAgent/middleware/piiRedaction.cjs.map +1 -0
  102. package/dist/agents/middlewareAgent/middleware/piiRedaction.d.cts +155 -0
  103. package/dist/agents/middlewareAgent/middleware/piiRedaction.d.cts.map +1 -0
  104. package/dist/agents/middlewareAgent/middleware/piiRedaction.d.ts +155 -0
  105. package/dist/agents/middlewareAgent/middleware/piiRedaction.d.ts.map +1 -0
  106. package/dist/agents/middlewareAgent/middleware/piiRedaction.js +332 -0
  107. package/dist/agents/middlewareAgent/middleware/piiRedaction.js.map +1 -0
  108. package/dist/agents/middlewareAgent/middleware/promptCaching.cjs +50 -38
  109. package/dist/agents/middlewareAgent/middleware/promptCaching.cjs.map +1 -1
  110. package/dist/agents/middlewareAgent/middleware/promptCaching.d.cts +18 -18
  111. package/dist/agents/middlewareAgent/middleware/promptCaching.d.cts.map +1 -1
  112. package/dist/agents/middlewareAgent/middleware/promptCaching.d.ts +17 -17
  113. package/dist/agents/middlewareAgent/middleware/promptCaching.d.ts.map +1 -1
  114. package/dist/agents/middlewareAgent/middleware/promptCaching.js +50 -38
  115. package/dist/agents/middlewareAgent/middleware/promptCaching.js.map +1 -1
  116. package/dist/agents/middlewareAgent/middleware/summarization.cjs +3 -23
  117. package/dist/agents/middlewareAgent/middleware/summarization.cjs.map +1 -1
  118. package/dist/agents/middlewareAgent/middleware/summarization.d.cts +10 -17
  119. package/dist/agents/middlewareAgent/middleware/summarization.d.cts.map +1 -1
  120. package/dist/agents/middlewareAgent/middleware/summarization.d.ts +2 -9
  121. package/dist/agents/middlewareAgent/middleware/summarization.d.ts.map +1 -1
  122. package/dist/agents/middlewareAgent/middleware/summarization.js +3 -22
  123. package/dist/agents/middlewareAgent/middleware/summarization.js.map +1 -1
  124. package/dist/agents/middlewareAgent/middleware/toolCallLimit.cjs +242 -0
  125. package/dist/agents/middlewareAgent/middleware/toolCallLimit.cjs.map +1 -0
  126. package/dist/agents/middlewareAgent/middleware/toolCallLimit.d.cts +158 -0
  127. package/dist/agents/middlewareAgent/middleware/toolCallLimit.d.cts.map +1 -0
  128. package/dist/agents/middlewareAgent/middleware/toolCallLimit.d.ts +158 -0
  129. package/dist/agents/middlewareAgent/middleware/toolCallLimit.d.ts.map +1 -0
  130. package/dist/agents/middlewareAgent/middleware/toolCallLimit.js +240 -0
  131. package/dist/agents/middlewareAgent/middleware/toolCallLimit.js.map +1 -0
  132. package/dist/agents/middlewareAgent/middleware/utils.cjs +26 -0
  133. package/dist/agents/middlewareAgent/middleware/utils.cjs.map +1 -0
  134. package/dist/agents/middlewareAgent/middleware/utils.d.cts +13 -0
  135. package/dist/agents/middlewareAgent/middleware/utils.d.cts.map +1 -0
  136. package/dist/agents/middlewareAgent/middleware/utils.d.ts +13 -0
  137. package/dist/agents/middlewareAgent/middleware/utils.d.ts.map +1 -0
  138. package/dist/agents/middlewareAgent/middleware/utils.js +25 -0
  139. package/dist/agents/middlewareAgent/middleware/utils.js.map +1 -0
  140. package/dist/agents/middlewareAgent/middleware.cjs +1 -0
  141. package/dist/agents/middlewareAgent/middleware.cjs.map +1 -1
  142. package/dist/agents/middlewareAgent/middleware.d.cts +14 -3
  143. package/dist/agents/middlewareAgent/middleware.d.cts.map +1 -1
  144. package/dist/agents/middlewareAgent/middleware.d.ts +14 -3
  145. package/dist/agents/middlewareAgent/middleware.d.ts.map +1 -1
  146. package/dist/agents/middlewareAgent/middleware.js +1 -0
  147. package/dist/agents/middlewareAgent/middleware.js.map +1 -1
  148. package/dist/agents/middlewareAgent/nodes/AfterModalNode.cjs +2 -2
  149. package/dist/agents/middlewareAgent/nodes/AfterModalNode.cjs.map +1 -1
  150. package/dist/agents/middlewareAgent/nodes/AfterModalNode.js +2 -2
  151. package/dist/agents/middlewareAgent/nodes/AfterModalNode.js.map +1 -1
  152. package/dist/agents/middlewareAgent/nodes/AgentNode.cjs +172 -78
  153. package/dist/agents/middlewareAgent/nodes/AgentNode.cjs.map +1 -1
  154. package/dist/agents/middlewareAgent/nodes/AgentNode.js +173 -79
  155. package/dist/agents/middlewareAgent/nodes/AgentNode.js.map +1 -1
  156. package/dist/agents/middlewareAgent/nodes/BeforeModalNode.cjs +2 -2
  157. package/dist/agents/middlewareAgent/nodes/BeforeModalNode.cjs.map +1 -1
  158. package/dist/agents/middlewareAgent/nodes/BeforeModalNode.js +2 -2
  159. package/dist/agents/middlewareAgent/nodes/BeforeModalNode.js.map +1 -1
  160. package/dist/agents/middlewareAgent/nodes/middleware.cjs +11 -10
  161. package/dist/agents/middlewareAgent/nodes/middleware.cjs.map +1 -1
  162. package/dist/agents/middlewareAgent/nodes/middleware.js +12 -11
  163. package/dist/agents/middlewareAgent/nodes/middleware.js.map +1 -1
  164. package/dist/agents/middlewareAgent/nodes/utils.cjs +8 -30
  165. package/dist/agents/middlewareAgent/nodes/utils.cjs.map +1 -1
  166. package/dist/agents/middlewareAgent/nodes/utils.js +9 -30
  167. package/dist/agents/middlewareAgent/nodes/utils.js.map +1 -1
  168. package/dist/agents/middlewareAgent/types.d.cts +56 -51
  169. package/dist/agents/middlewareAgent/types.d.cts.map +1 -1
  170. package/dist/agents/middlewareAgent/types.d.ts +56 -51
  171. package/dist/agents/middlewareAgent/types.d.ts.map +1 -1
  172. package/dist/agents/nodes/ToolNode.d.cts +1 -1
  173. package/dist/agents/tests/utils.cjs +77 -0
  174. package/dist/agents/tests/utils.cjs.map +1 -0
  175. package/dist/agents/tests/utils.d.cts +53 -0
  176. package/dist/agents/tests/utils.d.cts.map +1 -0
  177. package/dist/agents/tests/utils.d.ts +53 -0
  178. package/dist/agents/tests/utils.d.ts.map +1 -0
  179. package/dist/agents/tests/utils.js +76 -0
  180. package/dist/agents/tests/utils.js.map +1 -0
  181. package/dist/agents/types.cjs +7 -0
  182. package/dist/agents/types.cjs.map +1 -0
  183. package/dist/agents/types.d.cts +38 -4
  184. package/dist/agents/types.d.cts.map +1 -1
  185. package/dist/agents/types.d.ts +38 -4
  186. package/dist/agents/types.d.ts.map +1 -1
  187. package/dist/agents/types.js +6 -0
  188. package/dist/agents/types.js.map +1 -0
  189. package/dist/chat_models/universal.cjs +7 -0
  190. package/dist/chat_models/universal.cjs.map +1 -1
  191. package/dist/chat_models/universal.d.cts +7 -2
  192. package/dist/chat_models/universal.d.cts.map +1 -1
  193. package/dist/chat_models/universal.d.ts +7 -2
  194. package/dist/chat_models/universal.d.ts.map +1 -1
  195. package/dist/chat_models/universal.js +7 -0
  196. package/dist/chat_models/universal.js.map +1 -1
  197. package/dist/hub/base.cjs +4 -1
  198. package/dist/hub/base.cjs.map +1 -1
  199. package/dist/hub/base.js +4 -1
  200. package/dist/hub/base.js.map +1 -1
  201. package/dist/index.cjs +64 -6
  202. package/dist/index.cjs.map +1 -1
  203. package/dist/index.d.cts +18 -9
  204. package/dist/index.d.ts +18 -9
  205. package/dist/index.js +37 -5
  206. package/dist/index.js.map +1 -1
  207. package/dist/load/import_constants.cjs +0 -19
  208. package/dist/load/import_constants.cjs.map +1 -1
  209. package/dist/load/import_constants.js +0 -19
  210. package/dist/load/import_constants.js.map +1 -1
  211. package/dist/load/import_map.cjs +2 -113
  212. package/dist/load/import_map.cjs.map +1 -1
  213. package/dist/load/import_map.js +3 -114
  214. package/dist/load/import_map.js.map +1 -1
  215. package/dist/load/serializable.d.cts +1 -10
  216. package/dist/load/serializable.d.ts +1 -10
  217. package/dist/node_modules/.pnpm/langsmith@0.3.64_@opentelemetry_api@1.9.0_openai@5.11.0_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/async_caller.cjs +5 -4
  218. package/dist/node_modules/.pnpm/langsmith@0.3.64_@opentelemetry_api@1.9.0_openai@5.11.0_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/async_caller.cjs.map +1 -1
  219. package/dist/node_modules/.pnpm/langsmith@0.3.64_@opentelemetry_api@1.9.0_openai@5.11.0_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/async_caller.js +3 -2
  220. package/dist/node_modules/.pnpm/langsmith@0.3.64_@opentelemetry_api@1.9.0_openai@5.11.0_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/async_caller.js.map +1 -1
  221. package/dist/node_modules/.pnpm/p-retry@4.6.2/node_modules/p-retry/index.cjs +83 -0
  222. package/dist/node_modules/.pnpm/p-retry@4.6.2/node_modules/p-retry/index.cjs.map +1 -0
  223. package/dist/node_modules/.pnpm/p-retry@4.6.2/node_modules/p-retry/index.js +79 -0
  224. package/dist/node_modules/.pnpm/p-retry@4.6.2/node_modules/p-retry/index.js.map +1 -0
  225. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/index.cjs +16 -0
  226. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/index.cjs.map +1 -0
  227. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/index.js +13 -0
  228. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/index.js.map +1 -0
  229. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry.cjs +77 -0
  230. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry.cjs.map +1 -0
  231. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry.js +74 -0
  232. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry.js.map +1 -0
  233. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry_operation.cjs +115 -0
  234. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry_operation.cjs.map +1 -0
  235. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry_operation.js +112 -0
  236. package/dist/node_modules/.pnpm/retry@0.13.1/node_modules/retry/lib/retry_operation.js.map +1 -0
  237. package/dist/storage/encoder_backed.cjs +1 -1
  238. package/dist/storage/encoder_backed.d.cts +1 -1
  239. package/dist/storage/encoder_backed.d.ts +1 -1
  240. package/dist/storage/encoder_backed.js +1 -1
  241. package/dist/storage/file_system.cjs +1 -1
  242. package/dist/storage/file_system.js +1 -1
  243. package/package.json +36 -649
  244. package/dist/agents/middlewareAgent/middleware/bigTool.cjs +0 -162
  245. package/dist/agents/middlewareAgent/middleware/bigTool.cjs.map +0 -1
  246. package/dist/agents/middlewareAgent/middleware/bigTool.d.cts +0 -113
  247. package/dist/agents/middlewareAgent/middleware/bigTool.d.cts.map +0 -1
  248. package/dist/agents/middlewareAgent/middleware/bigTool.d.ts +0 -113
  249. package/dist/agents/middlewareAgent/middleware/bigTool.d.ts.map +0 -1
  250. package/dist/agents/middlewareAgent/middleware/bigTool.js +0 -161
  251. package/dist/agents/middlewareAgent/middleware/bigTool.js.map +0 -1
  252. package/dist/chains/analyze_documents_chain.cjs +0 -83
  253. package/dist/chains/analyze_documents_chain.cjs.map +0 -1
  254. package/dist/chains/analyze_documents_chain.d.cts +0 -58
  255. package/dist/chains/analyze_documents_chain.d.cts.map +0 -1
  256. package/dist/chains/analyze_documents_chain.d.ts +0 -58
  257. package/dist/chains/analyze_documents_chain.d.ts.map +0 -1
  258. package/dist/chains/analyze_documents_chain.js +0 -82
  259. package/dist/chains/analyze_documents_chain.js.map +0 -1
  260. package/dist/chains/api/api_chain.cjs +0 -100
  261. package/dist/chains/api/api_chain.cjs.map +0 -1
  262. package/dist/chains/api/api_chain.d.cts +0 -63
  263. package/dist/chains/api/api_chain.d.cts.map +0 -1
  264. package/dist/chains/api/api_chain.d.ts +0 -63
  265. package/dist/chains/api/api_chain.d.ts.map +0 -1
  266. package/dist/chains/api/api_chain.js +0 -100
  267. package/dist/chains/api/api_chain.js.map +0 -1
  268. package/dist/chains/api/prompts.cjs +0 -38
  269. package/dist/chains/api/prompts.cjs.map +0 -1
  270. package/dist/chains/api/prompts.js +0 -36
  271. package/dist/chains/api/prompts.js.map +0 -1
  272. package/dist/chains/base.cjs +0 -180
  273. package/dist/chains/base.cjs.map +0 -1
  274. package/dist/chains/base.d.cts +0 -88
  275. package/dist/chains/base.d.cts.map +0 -1
  276. package/dist/chains/base.d.ts +0 -88
  277. package/dist/chains/base.d.ts.map +0 -1
  278. package/dist/chains/base.js +0 -179
  279. package/dist/chains/base.js.map +0 -1
  280. package/dist/chains/chat_vector_db_chain.cjs +0 -130
  281. package/dist/chains/chat_vector_db_chain.cjs.map +0 -1
  282. package/dist/chains/chat_vector_db_chain.d.cts +0 -62
  283. package/dist/chains/chat_vector_db_chain.d.cts.map +0 -1
  284. package/dist/chains/chat_vector_db_chain.d.ts +0 -62
  285. package/dist/chains/chat_vector_db_chain.d.ts.map +0 -1
  286. package/dist/chains/chat_vector_db_chain.js +0 -129
  287. package/dist/chains/chat_vector_db_chain.js.map +0 -1
  288. package/dist/chains/combine_docs_chain.cjs +0 -275
  289. package/dist/chains/combine_docs_chain.cjs.map +0 -1
  290. package/dist/chains/combine_docs_chain.d.cts +0 -126
  291. package/dist/chains/combine_docs_chain.d.cts.map +0 -1
  292. package/dist/chains/combine_docs_chain.d.ts +0 -126
  293. package/dist/chains/combine_docs_chain.d.ts.map +0 -1
  294. package/dist/chains/combine_docs_chain.js +0 -272
  295. package/dist/chains/combine_docs_chain.js.map +0 -1
  296. package/dist/chains/combine_documents/base.cjs +0 -22
  297. package/dist/chains/combine_documents/base.cjs.map +0 -1
  298. package/dist/chains/combine_documents/base.js +0 -18
  299. package/dist/chains/combine_documents/base.js.map +0 -1
  300. package/dist/chains/combine_documents/index.cjs +0 -16
  301. package/dist/chains/combine_documents/index.cjs.map +0 -1
  302. package/dist/chains/combine_documents/index.d.cts +0 -2
  303. package/dist/chains/combine_documents/index.d.ts +0 -2
  304. package/dist/chains/combine_documents/index.js +0 -10
  305. package/dist/chains/combine_documents/index.js.map +0 -1
  306. package/dist/chains/combine_documents/reduce.cjs +0 -73
  307. package/dist/chains/combine_documents/reduce.cjs.map +0 -1
  308. package/dist/chains/combine_documents/reduce.d.cts +0 -36
  309. package/dist/chains/combine_documents/reduce.d.cts.map +0 -1
  310. package/dist/chains/combine_documents/reduce.d.ts +0 -36
  311. package/dist/chains/combine_documents/reduce.d.ts.map +0 -1
  312. package/dist/chains/combine_documents/reduce.js +0 -66
  313. package/dist/chains/combine_documents/reduce.js.map +0 -1
  314. package/dist/chains/combine_documents/stuff.cjs +0 -41
  315. package/dist/chains/combine_documents/stuff.cjs.map +0 -1
  316. package/dist/chains/combine_documents/stuff.d.cts +0 -40
  317. package/dist/chains/combine_documents/stuff.d.cts.map +0 -1
  318. package/dist/chains/combine_documents/stuff.d.ts +0 -40
  319. package/dist/chains/combine_documents/stuff.d.ts.map +0 -1
  320. package/dist/chains/combine_documents/stuff.js +0 -40
  321. package/dist/chains/combine_documents/stuff.js.map +0 -1
  322. package/dist/chains/constitutional_ai/constitutional_chain.cjs +0 -131
  323. package/dist/chains/constitutional_ai/constitutional_chain.cjs.map +0 -1
  324. package/dist/chains/constitutional_ai/constitutional_chain.d.cts +0 -79
  325. package/dist/chains/constitutional_ai/constitutional_chain.d.cts.map +0 -1
  326. package/dist/chains/constitutional_ai/constitutional_chain.d.ts +0 -79
  327. package/dist/chains/constitutional_ai/constitutional_chain.d.ts.map +0 -1
  328. package/dist/chains/constitutional_ai/constitutional_chain.js +0 -131
  329. package/dist/chains/constitutional_ai/constitutional_chain.js.map +0 -1
  330. package/dist/chains/constitutional_ai/constitutional_principle.cjs +0 -322
  331. package/dist/chains/constitutional_ai/constitutional_principle.cjs.map +0 -1
  332. package/dist/chains/constitutional_ai/constitutional_principle.d.cts +0 -50
  333. package/dist/chains/constitutional_ai/constitutional_principle.d.cts.map +0 -1
  334. package/dist/chains/constitutional_ai/constitutional_principle.d.ts +0 -50
  335. package/dist/chains/constitutional_ai/constitutional_principle.d.ts.map +0 -1
  336. package/dist/chains/constitutional_ai/constitutional_principle.js +0 -320
  337. package/dist/chains/constitutional_ai/constitutional_principle.js.map +0 -1
  338. package/dist/chains/constitutional_ai/constitutional_prompts.cjs +0 -96
  339. package/dist/chains/constitutional_ai/constitutional_prompts.cjs.map +0 -1
  340. package/dist/chains/constitutional_ai/constitutional_prompts.js +0 -94
  341. package/dist/chains/constitutional_ai/constitutional_prompts.js.map +0 -1
  342. package/dist/chains/conversation.cjs +0 -50
  343. package/dist/chains/conversation.cjs.map +0 -1
  344. package/dist/chains/conversation.d.cts +0 -34
  345. package/dist/chains/conversation.d.cts.map +0 -1
  346. package/dist/chains/conversation.d.ts +0 -34
  347. package/dist/chains/conversation.d.ts.map +0 -1
  348. package/dist/chains/conversation.js +0 -48
  349. package/dist/chains/conversation.js.map +0 -1
  350. package/dist/chains/conversational_retrieval_chain.cjs +0 -218
  351. package/dist/chains/conversational_retrieval_chain.cjs.map +0 -1
  352. package/dist/chains/conversational_retrieval_chain.d.cts +0 -152
  353. package/dist/chains/conversational_retrieval_chain.d.cts.map +0 -1
  354. package/dist/chains/conversational_retrieval_chain.d.ts +0 -152
  355. package/dist/chains/conversational_retrieval_chain.d.ts.map +0 -1
  356. package/dist/chains/conversational_retrieval_chain.js +0 -217
  357. package/dist/chains/conversational_retrieval_chain.js.map +0 -1
  358. package/dist/chains/graph_qa/cypher.cjs +0 -133
  359. package/dist/chains/graph_qa/cypher.cjs.map +0 -1
  360. package/dist/chains/graph_qa/cypher.d.cts +0 -76
  361. package/dist/chains/graph_qa/cypher.d.cts.map +0 -1
  362. package/dist/chains/graph_qa/cypher.d.ts +0 -76
  363. package/dist/chains/graph_qa/cypher.d.ts.map +0 -1
  364. package/dist/chains/graph_qa/cypher.js +0 -126
  365. package/dist/chains/graph_qa/cypher.js.map +0 -1
  366. package/dist/chains/graph_qa/prompts.cjs +0 -46
  367. package/dist/chains/graph_qa/prompts.cjs.map +0 -1
  368. package/dist/chains/graph_qa/prompts.js +0 -44
  369. package/dist/chains/graph_qa/prompts.js.map +0 -1
  370. package/dist/chains/history_aware_retriever.cjs +0 -55
  371. package/dist/chains/history_aware_retriever.cjs.map +0 -1
  372. package/dist/chains/history_aware_retriever.d.cts +0 -64
  373. package/dist/chains/history_aware_retriever.d.cts.map +0 -1
  374. package/dist/chains/history_aware_retriever.d.ts +0 -64
  375. package/dist/chains/history_aware_retriever.d.ts.map +0 -1
  376. package/dist/chains/history_aware_retriever.js +0 -49
  377. package/dist/chains/history_aware_retriever.js.map +0 -1
  378. package/dist/chains/index.cjs +0 -106
  379. package/dist/chains/index.cjs.map +0 -1
  380. package/dist/chains/index.d.cts +0 -25
  381. package/dist/chains/index.d.ts +0 -25
  382. package/dist/chains/index.js +0 -67
  383. package/dist/chains/index.js.map +0 -1
  384. package/dist/chains/llm_chain.cjs +0 -155
  385. package/dist/chains/llm_chain.cjs.map +0 -1
  386. package/dist/chains/llm_chain.d.cts +0 -97
  387. package/dist/chains/llm_chain.d.cts.map +0 -1
  388. package/dist/chains/llm_chain.d.ts +0 -97
  389. package/dist/chains/llm_chain.d.ts.map +0 -1
  390. package/dist/chains/llm_chain.js +0 -154
  391. package/dist/chains/llm_chain.js.map +0 -1
  392. package/dist/chains/load.cjs +0 -48
  393. package/dist/chains/load.cjs.map +0 -1
  394. package/dist/chains/load.d.cts +0 -30
  395. package/dist/chains/load.d.cts.map +0 -1
  396. package/dist/chains/load.d.ts +0 -30
  397. package/dist/chains/load.d.ts.map +0 -1
  398. package/dist/chains/load.js +0 -42
  399. package/dist/chains/load.js.map +0 -1
  400. package/dist/chains/openai_functions/base.cjs +0 -139
  401. package/dist/chains/openai_functions/base.cjs.map +0 -1
  402. package/dist/chains/openai_functions/base.d.cts +0 -172
  403. package/dist/chains/openai_functions/base.d.cts.map +0 -1
  404. package/dist/chains/openai_functions/base.d.ts +0 -172
  405. package/dist/chains/openai_functions/base.d.ts.map +0 -1
  406. package/dist/chains/openai_functions/base.js +0 -137
  407. package/dist/chains/openai_functions/base.js.map +0 -1
  408. package/dist/chains/openai_functions/extraction.cjs +0 -71
  409. package/dist/chains/openai_functions/extraction.cjs.map +0 -1
  410. package/dist/chains/openai_functions/extraction.d.cts +0 -29
  411. package/dist/chains/openai_functions/extraction.d.cts.map +0 -1
  412. package/dist/chains/openai_functions/extraction.d.ts +0 -29
  413. package/dist/chains/openai_functions/extraction.d.ts.map +0 -1
  414. package/dist/chains/openai_functions/extraction.js +0 -69
  415. package/dist/chains/openai_functions/extraction.js.map +0 -1
  416. package/dist/chains/openai_functions/index.cjs +0 -33
  417. package/dist/chains/openai_functions/index.cjs.map +0 -1
  418. package/dist/chains/openai_functions/index.d.cts +0 -5
  419. package/dist/chains/openai_functions/index.d.ts +0 -5
  420. package/dist/chains/openai_functions/index.js +0 -21
  421. package/dist/chains/openai_functions/index.js.map +0 -1
  422. package/dist/chains/openai_functions/openapi.cjs +0 -287
  423. package/dist/chains/openai_functions/openapi.cjs.map +0 -1
  424. package/dist/chains/openai_functions/openapi.d.cts +0 -61
  425. package/dist/chains/openai_functions/openapi.d.cts.map +0 -1
  426. package/dist/chains/openai_functions/openapi.d.ts +0 -61
  427. package/dist/chains/openai_functions/openapi.d.ts.map +0 -1
  428. package/dist/chains/openai_functions/openapi.js +0 -285
  429. package/dist/chains/openai_functions/openapi.js.map +0 -1
  430. package/dist/chains/openai_functions/tagging.cjs +0 -72
  431. package/dist/chains/openai_functions/tagging.cjs.map +0 -1
  432. package/dist/chains/openai_functions/tagging.d.cts +0 -47
  433. package/dist/chains/openai_functions/tagging.d.cts.map +0 -1
  434. package/dist/chains/openai_functions/tagging.d.ts +0 -47
  435. package/dist/chains/openai_functions/tagging.d.ts.map +0 -1
  436. package/dist/chains/openai_functions/tagging.js +0 -70
  437. package/dist/chains/openai_functions/tagging.js.map +0 -1
  438. package/dist/chains/query_constructor/index.cjs +0 -145
  439. package/dist/chains/query_constructor/index.cjs.map +0 -1
  440. package/dist/chains/query_constructor/index.d.cts +0 -82
  441. package/dist/chains/query_constructor/index.d.cts.map +0 -1
  442. package/dist/chains/query_constructor/index.d.ts +0 -82
  443. package/dist/chains/query_constructor/index.d.ts.map +0 -1
  444. package/dist/chains/query_constructor/index.js +0 -130
  445. package/dist/chains/query_constructor/index.js.map +0 -1
  446. package/dist/chains/query_constructor/ir.cjs +0 -22
  447. package/dist/chains/query_constructor/ir.cjs.map +0 -1
  448. package/dist/chains/query_constructor/ir.d.cts +0 -1
  449. package/dist/chains/query_constructor/ir.d.ts +0 -1
  450. package/dist/chains/query_constructor/ir.js +0 -12
  451. package/dist/chains/query_constructor/ir.js.map +0 -1
  452. package/dist/chains/query_constructor/parser.cjs +0 -80
  453. package/dist/chains/query_constructor/parser.cjs.map +0 -1
  454. package/dist/chains/query_constructor/parser.d.cts +0 -43
  455. package/dist/chains/query_constructor/parser.d.cts.map +0 -1
  456. package/dist/chains/query_constructor/parser.d.ts +0 -43
  457. package/dist/chains/query_constructor/parser.d.ts.map +0 -1
  458. package/dist/chains/query_constructor/parser.js +0 -79
  459. package/dist/chains/query_constructor/parser.js.map +0 -1
  460. package/dist/chains/query_constructor/prompt.cjs +0 -137
  461. package/dist/chains/query_constructor/prompt.cjs.map +0 -1
  462. package/dist/chains/query_constructor/prompt.d.cts +0 -22
  463. package/dist/chains/query_constructor/prompt.d.cts.map +0 -1
  464. package/dist/chains/query_constructor/prompt.d.ts +0 -22
  465. package/dist/chains/query_constructor/prompt.d.ts.map +0 -1
  466. package/dist/chains/query_constructor/prompt.js +0 -132
  467. package/dist/chains/query_constructor/prompt.js.map +0 -1
  468. package/dist/chains/question_answering/load.cjs +0 -99
  469. package/dist/chains/question_answering/load.cjs.map +0 -1
  470. package/dist/chains/question_answering/load.d.cts +0 -72
  471. package/dist/chains/question_answering/load.d.cts.map +0 -1
  472. package/dist/chains/question_answering/load.d.ts +0 -72
  473. package/dist/chains/question_answering/load.d.ts.map +0 -1
  474. package/dist/chains/question_answering/load.js +0 -96
  475. package/dist/chains/question_answering/load.js.map +0 -1
  476. package/dist/chains/question_answering/map_reduce_prompts.cjs +0 -61
  477. package/dist/chains/question_answering/map_reduce_prompts.cjs.map +0 -1
  478. package/dist/chains/question_answering/map_reduce_prompts.js +0 -59
  479. package/dist/chains/question_answering/map_reduce_prompts.js.map +0 -1
  480. package/dist/chains/question_answering/refine_prompts.cjs +0 -60
  481. package/dist/chains/question_answering/refine_prompts.cjs.map +0 -1
  482. package/dist/chains/question_answering/refine_prompts.js +0 -58
  483. package/dist/chains/question_answering/refine_prompts.js.map +0 -1
  484. package/dist/chains/question_answering/stuff_prompts.cjs +0 -20
  485. package/dist/chains/question_answering/stuff_prompts.cjs.map +0 -1
  486. package/dist/chains/question_answering/stuff_prompts.js +0 -19
  487. package/dist/chains/question_answering/stuff_prompts.js.map +0 -1
  488. package/dist/chains/retrieval.cjs +0 -55
  489. package/dist/chains/retrieval.cjs.map +0 -1
  490. package/dist/chains/retrieval.d.cts +0 -77
  491. package/dist/chains/retrieval.d.cts.map +0 -1
  492. package/dist/chains/retrieval.d.ts +0 -77
  493. package/dist/chains/retrieval.d.ts.map +0 -1
  494. package/dist/chains/retrieval.js +0 -49
  495. package/dist/chains/retrieval.js.map +0 -1
  496. package/dist/chains/retrieval_qa.cjs +0 -106
  497. package/dist/chains/retrieval_qa.cjs.map +0 -1
  498. package/dist/chains/retrieval_qa.d.cts +0 -81
  499. package/dist/chains/retrieval_qa.d.cts.map +0 -1
  500. package/dist/chains/retrieval_qa.d.ts +0 -81
  501. package/dist/chains/retrieval_qa.d.ts.map +0 -1
  502. package/dist/chains/retrieval_qa.js +0 -106
  503. package/dist/chains/retrieval_qa.js.map +0 -1
  504. package/dist/chains/router/llm_router.cjs +0 -50
  505. package/dist/chains/router/llm_router.cjs.map +0 -1
  506. package/dist/chains/router/llm_router.d.cts +0 -54
  507. package/dist/chains/router/llm_router.d.cts.map +0 -1
  508. package/dist/chains/router/llm_router.d.ts +0 -54
  509. package/dist/chains/router/llm_router.d.ts.map +0 -1
  510. package/dist/chains/router/llm_router.js +0 -50
  511. package/dist/chains/router/llm_router.js.map +0 -1
  512. package/dist/chains/router/multi_prompt.cjs +0 -116
  513. package/dist/chains/router/multi_prompt.cjs.map +0 -1
  514. package/dist/chains/router/multi_prompt.d.cts +0 -76
  515. package/dist/chains/router/multi_prompt.d.cts.map +0 -1
  516. package/dist/chains/router/multi_prompt.d.ts +0 -76
  517. package/dist/chains/router/multi_prompt.d.ts.map +0 -1
  518. package/dist/chains/router/multi_prompt.js +0 -115
  519. package/dist/chains/router/multi_prompt.js.map +0 -1
  520. package/dist/chains/router/multi_prompt_prompt.cjs +0 -22
  521. package/dist/chains/router/multi_prompt_prompt.cjs.map +0 -1
  522. package/dist/chains/router/multi_prompt_prompt.js +0 -21
  523. package/dist/chains/router/multi_prompt_prompt.js.map +0 -1
  524. package/dist/chains/router/multi_retrieval_prompt.cjs +0 -22
  525. package/dist/chains/router/multi_retrieval_prompt.cjs.map +0 -1
  526. package/dist/chains/router/multi_retrieval_prompt.js +0 -21
  527. package/dist/chains/router/multi_retrieval_prompt.js.map +0 -1
  528. package/dist/chains/router/multi_retrieval_qa.cjs +0 -137
  529. package/dist/chains/router/multi_retrieval_qa.cjs.map +0 -1
  530. package/dist/chains/router/multi_retrieval_qa.d.cts +0 -100
  531. package/dist/chains/router/multi_retrieval_qa.d.cts.map +0 -1
  532. package/dist/chains/router/multi_retrieval_qa.d.ts +0 -100
  533. package/dist/chains/router/multi_retrieval_qa.d.ts.map +0 -1
  534. package/dist/chains/router/multi_retrieval_qa.js +0 -136
  535. package/dist/chains/router/multi_retrieval_qa.js.map +0 -1
  536. package/dist/chains/router/multi_route.cjs +0 -69
  537. package/dist/chains/router/multi_route.cjs.map +0 -1
  538. package/dist/chains/router/multi_route.d.cts +0 -69
  539. package/dist/chains/router/multi_route.d.cts.map +0 -1
  540. package/dist/chains/router/multi_route.d.ts +0 -69
  541. package/dist/chains/router/multi_route.d.ts.map +0 -1
  542. package/dist/chains/router/multi_route.js +0 -68
  543. package/dist/chains/router/multi_route.js.map +0 -1
  544. package/dist/chains/router/utils.cjs +0 -18
  545. package/dist/chains/router/utils.cjs.map +0 -1
  546. package/dist/chains/router/utils.js +0 -17
  547. package/dist/chains/router/utils.js.map +0 -1
  548. package/dist/chains/sequential_chain.cjs +0 -255
  549. package/dist/chains/sequential_chain.cjs.map +0 -1
  550. package/dist/chains/sequential_chain.d.cts +0 -158
  551. package/dist/chains/sequential_chain.d.cts.map +0 -1
  552. package/dist/chains/sequential_chain.d.ts +0 -158
  553. package/dist/chains/sequential_chain.d.ts.map +0 -1
  554. package/dist/chains/sequential_chain.js +0 -254
  555. package/dist/chains/sequential_chain.js.map +0 -1
  556. package/dist/chains/serde.d.cts +0 -156
  557. package/dist/chains/serde.d.cts.map +0 -1
  558. package/dist/chains/serde.d.ts +0 -156
  559. package/dist/chains/serde.d.ts.map +0 -1
  560. package/dist/chains/sql_db/index.cjs +0 -35
  561. package/dist/chains/sql_db/index.cjs.map +0 -1
  562. package/dist/chains/sql_db/index.d.cts +0 -3
  563. package/dist/chains/sql_db/index.d.ts +0 -3
  564. package/dist/chains/sql_db/index.js +0 -21
  565. package/dist/chains/sql_db/index.js.map +0 -1
  566. package/dist/chains/sql_db/sql_db_chain.cjs +0 -196
  567. package/dist/chains/sql_db/sql_db_chain.cjs.map +0 -1
  568. package/dist/chains/sql_db/sql_db_chain.d.cts +0 -124
  569. package/dist/chains/sql_db/sql_db_chain.d.cts.map +0 -1
  570. package/dist/chains/sql_db/sql_db_chain.d.ts +0 -124
  571. package/dist/chains/sql_db/sql_db_chain.d.ts.map +0 -1
  572. package/dist/chains/sql_db/sql_db_chain.js +0 -194
  573. package/dist/chains/sql_db/sql_db_chain.js.map +0 -1
  574. package/dist/chains/sql_db/sql_db_prompt.cjs +0 -194
  575. package/dist/chains/sql_db/sql_db_prompt.cjs.map +0 -1
  576. package/dist/chains/sql_db/sql_db_prompt.d.cts +0 -44
  577. package/dist/chains/sql_db/sql_db_prompt.d.cts.map +0 -1
  578. package/dist/chains/sql_db/sql_db_prompt.d.ts +0 -44
  579. package/dist/chains/sql_db/sql_db_prompt.d.ts.map +0 -1
  580. package/dist/chains/sql_db/sql_db_prompt.js +0 -186
  581. package/dist/chains/sql_db/sql_db_prompt.js.map +0 -1
  582. package/dist/chains/summarization/load.cjs +0 -74
  583. package/dist/chains/summarization/load.cjs.map +0 -1
  584. package/dist/chains/summarization/load.d.cts +0 -33
  585. package/dist/chains/summarization/load.d.cts.map +0 -1
  586. package/dist/chains/summarization/load.d.ts +0 -33
  587. package/dist/chains/summarization/load.d.ts.map +0 -1
  588. package/dist/chains/summarization/load.js +0 -74
  589. package/dist/chains/summarization/load.js.map +0 -1
  590. package/dist/chains/summarization/refine_prompts.cjs +0 -24
  591. package/dist/chains/summarization/refine_prompts.cjs.map +0 -1
  592. package/dist/chains/summarization/refine_prompts.js +0 -23
  593. package/dist/chains/summarization/refine_prompts.js.map +0 -1
  594. package/dist/chains/summarization/stuff_prompts.cjs +0 -19
  595. package/dist/chains/summarization/stuff_prompts.cjs.map +0 -1
  596. package/dist/chains/summarization/stuff_prompts.js +0 -18
  597. package/dist/chains/summarization/stuff_prompts.js.map +0 -1
  598. package/dist/chains/transform.cjs +0 -43
  599. package/dist/chains/transform.cjs.map +0 -1
  600. package/dist/chains/transform.d.cts +0 -44
  601. package/dist/chains/transform.d.cts.map +0 -1
  602. package/dist/chains/transform.d.ts +0 -44
  603. package/dist/chains/transform.d.ts.map +0 -1
  604. package/dist/chains/transform.js +0 -43
  605. package/dist/chains/transform.js.map +0 -1
  606. package/dist/chains/vector_db_qa.cjs +0 -95
  607. package/dist/chains/vector_db_qa.cjs.map +0 -1
  608. package/dist/chains/vector_db_qa.d.cts +0 -66
  609. package/dist/chains/vector_db_qa.d.cts.map +0 -1
  610. package/dist/chains/vector_db_qa.d.ts +0 -66
  611. package/dist/chains/vector_db_qa.d.ts.map +0 -1
  612. package/dist/chains/vector_db_qa.js +0 -95
  613. package/dist/chains/vector_db_qa.js.map +0 -1
  614. package/dist/document.cjs +0 -21
  615. package/dist/document.cjs.map +0 -1
  616. package/dist/document.d.cts +0 -2
  617. package/dist/document.d.ts +0 -2
  618. package/dist/document.js +0 -10
  619. package/dist/document.js.map +0 -1
  620. package/dist/document_loaders/base.cjs +0 -22
  621. package/dist/document_loaders/base.cjs.map +0 -1
  622. package/dist/document_loaders/base.d.cts +0 -1
  623. package/dist/document_loaders/base.d.ts +0 -1
  624. package/dist/document_loaders/base.js +0 -12
  625. package/dist/document_loaders/base.js.map +0 -1
  626. package/dist/document_loaders/fs/buffer.cjs +0 -69
  627. package/dist/document_loaders/fs/buffer.cjs.map +0 -1
  628. package/dist/document_loaders/fs/buffer.d.cts +0 -46
  629. package/dist/document_loaders/fs/buffer.d.cts.map +0 -1
  630. package/dist/document_loaders/fs/buffer.d.ts +0 -46
  631. package/dist/document_loaders/fs/buffer.d.ts.map +0 -1
  632. package/dist/document_loaders/fs/buffer.js +0 -63
  633. package/dist/document_loaders/fs/buffer.js.map +0 -1
  634. package/dist/document_loaders/fs/directory.cjs +0 -116
  635. package/dist/document_loaders/fs/directory.cjs.map +0 -1
  636. package/dist/document_loaders/fs/directory.d.cts +0 -76
  637. package/dist/document_loaders/fs/directory.d.cts.map +0 -1
  638. package/dist/document_loaders/fs/directory.d.ts +0 -76
  639. package/dist/document_loaders/fs/directory.d.ts.map +0 -1
  640. package/dist/document_loaders/fs/directory.js +0 -109
  641. package/dist/document_loaders/fs/directory.js.map +0 -1
  642. package/dist/document_loaders/fs/json.cjs +0 -128
  643. package/dist/document_loaders/fs/json.cjs.map +0 -1
  644. package/dist/document_loaders/fs/json.d.cts +0 -65
  645. package/dist/document_loaders/fs/json.d.cts.map +0 -1
  646. package/dist/document_loaders/fs/json.d.ts +0 -65
  647. package/dist/document_loaders/fs/json.d.ts.map +0 -1
  648. package/dist/document_loaders/fs/json.js +0 -121
  649. package/dist/document_loaders/fs/json.js.map +0 -1
  650. package/dist/document_loaders/fs/multi_file.cjs +0 -82
  651. package/dist/document_loaders/fs/multi_file.cjs.map +0 -1
  652. package/dist/document_loaders/fs/multi_file.d.cts +0 -43
  653. package/dist/document_loaders/fs/multi_file.d.cts.map +0 -1
  654. package/dist/document_loaders/fs/multi_file.d.ts +0 -43
  655. package/dist/document_loaders/fs/multi_file.d.ts.map +0 -1
  656. package/dist/document_loaders/fs/multi_file.js +0 -76
  657. package/dist/document_loaders/fs/multi_file.js.map +0 -1
  658. package/dist/document_loaders/fs/text.cjs +0 -101
  659. package/dist/document_loaders/fs/text.cjs.map +0 -1
  660. package/dist/document_loaders/fs/text.d.cts +0 -57
  661. package/dist/document_loaders/fs/text.d.cts.map +0 -1
  662. package/dist/document_loaders/fs/text.d.ts +0 -57
  663. package/dist/document_loaders/fs/text.d.ts.map +0 -1
  664. package/dist/document_loaders/fs/text.js +0 -95
  665. package/dist/document_loaders/fs/text.js.map +0 -1
  666. package/dist/evaluation/agents/index.cjs +0 -1
  667. package/dist/evaluation/agents/index.js +0 -1
  668. package/dist/evaluation/agents/prompt.cjs +0 -132
  669. package/dist/evaluation/agents/prompt.cjs.map +0 -1
  670. package/dist/evaluation/agents/prompt.js +0 -130
  671. package/dist/evaluation/agents/prompt.js.map +0 -1
  672. package/dist/evaluation/agents/trajectory.cjs +0 -132
  673. package/dist/evaluation/agents/trajectory.cjs.map +0 -1
  674. package/dist/evaluation/agents/trajectory.d.cts +0 -61
  675. package/dist/evaluation/agents/trajectory.d.cts.map +0 -1
  676. package/dist/evaluation/agents/trajectory.d.ts +0 -61
  677. package/dist/evaluation/agents/trajectory.d.ts.map +0 -1
  678. package/dist/evaluation/agents/trajectory.js +0 -130
  679. package/dist/evaluation/agents/trajectory.js.map +0 -1
  680. package/dist/evaluation/base.cjs +0 -169
  681. package/dist/evaluation/base.cjs.map +0 -1
  682. package/dist/evaluation/base.d.cts +0 -240
  683. package/dist/evaluation/base.d.cts.map +0 -1
  684. package/dist/evaluation/base.d.ts +0 -240
  685. package/dist/evaluation/base.d.ts.map +0 -1
  686. package/dist/evaluation/base.js +0 -164
  687. package/dist/evaluation/base.js.map +0 -1
  688. package/dist/evaluation/comparison/index.cjs +0 -1
  689. package/dist/evaluation/comparison/index.js +0 -1
  690. package/dist/evaluation/comparison/pairwise.cjs +0 -178
  691. package/dist/evaluation/comparison/pairwise.cjs.map +0 -1
  692. package/dist/evaluation/comparison/pairwise.d.cts +0 -56
  693. package/dist/evaluation/comparison/pairwise.d.cts.map +0 -1
  694. package/dist/evaluation/comparison/pairwise.d.ts +0 -56
  695. package/dist/evaluation/comparison/pairwise.d.ts.map +0 -1
  696. package/dist/evaluation/comparison/pairwise.js +0 -175
  697. package/dist/evaluation/comparison/pairwise.js.map +0 -1
  698. package/dist/evaluation/comparison/prompt.cjs +0 -77
  699. package/dist/evaluation/comparison/prompt.cjs.map +0 -1
  700. package/dist/evaluation/comparison/prompt.js +0 -75
  701. package/dist/evaluation/comparison/prompt.js.map +0 -1
  702. package/dist/evaluation/criteria/criteria.cjs +0 -164
  703. package/dist/evaluation/criteria/criteria.cjs.map +0 -1
  704. package/dist/evaluation/criteria/criteria.d.cts +0 -85
  705. package/dist/evaluation/criteria/criteria.d.cts.map +0 -1
  706. package/dist/evaluation/criteria/criteria.d.ts +0 -85
  707. package/dist/evaluation/criteria/criteria.d.ts.map +0 -1
  708. package/dist/evaluation/criteria/criteria.js +0 -161
  709. package/dist/evaluation/criteria/criteria.js.map +0 -1
  710. package/dist/evaluation/criteria/index.cjs +0 -1
  711. package/dist/evaluation/criteria/index.js +0 -1
  712. package/dist/evaluation/criteria/prompt.cjs +0 -50
  713. package/dist/evaluation/criteria/prompt.cjs.map +0 -1
  714. package/dist/evaluation/criteria/prompt.js +0 -48
  715. package/dist/evaluation/criteria/prompt.js.map +0 -1
  716. package/dist/evaluation/embedding_distance/base.cjs +0 -108
  717. package/dist/evaluation/embedding_distance/base.cjs.map +0 -1
  718. package/dist/evaluation/embedding_distance/base.d.cts +0 -82
  719. package/dist/evaluation/embedding_distance/base.d.cts.map +0 -1
  720. package/dist/evaluation/embedding_distance/base.d.ts +0 -82
  721. package/dist/evaluation/embedding_distance/base.d.ts.map +0 -1
  722. package/dist/evaluation/embedding_distance/base.js +0 -105
  723. package/dist/evaluation/embedding_distance/base.js.map +0 -1
  724. package/dist/evaluation/embedding_distance/index.cjs +0 -1
  725. package/dist/evaluation/embedding_distance/index.js +0 -1
  726. package/dist/evaluation/index.cjs +0 -54
  727. package/dist/evaluation/index.cjs.map +0 -1
  728. package/dist/evaluation/index.d.cts +0 -8
  729. package/dist/evaluation/index.d.ts +0 -8
  730. package/dist/evaluation/index.js +0 -35
  731. package/dist/evaluation/index.js.map +0 -1
  732. package/dist/evaluation/loader.cjs +0 -57
  733. package/dist/evaluation/loader.cjs.map +0 -1
  734. package/dist/evaluation/loader.d.cts +0 -38
  735. package/dist/evaluation/loader.d.cts.map +0 -1
  736. package/dist/evaluation/loader.d.ts +0 -38
  737. package/dist/evaluation/loader.d.ts.map +0 -1
  738. package/dist/evaluation/loader.js +0 -56
  739. package/dist/evaluation/loader.js.map +0 -1
  740. package/dist/evaluation/qa/eval_chain.cjs +0 -41
  741. package/dist/evaluation/qa/eval_chain.cjs.map +0 -1
  742. package/dist/evaluation/qa/eval_chain.d.cts +0 -22
  743. package/dist/evaluation/qa/eval_chain.d.cts.map +0 -1
  744. package/dist/evaluation/qa/eval_chain.d.ts +0 -22
  745. package/dist/evaluation/qa/eval_chain.d.ts.map +0 -1
  746. package/dist/evaluation/qa/eval_chain.js +0 -41
  747. package/dist/evaluation/qa/eval_chain.js.map +0 -1
  748. package/dist/evaluation/qa/index.cjs +0 -1
  749. package/dist/evaluation/qa/index.js +0 -1
  750. package/dist/evaluation/qa/prompt.cjs +0 -31
  751. package/dist/evaluation/qa/prompt.cjs.map +0 -1
  752. package/dist/evaluation/qa/prompt.js +0 -30
  753. package/dist/evaluation/qa/prompt.js.map +0 -1
  754. package/dist/evaluation/types.d.cts +0 -40
  755. package/dist/evaluation/types.d.cts.map +0 -1
  756. package/dist/evaluation/types.d.ts +0 -40
  757. package/dist/evaluation/types.d.ts.map +0 -1
  758. package/dist/langchain-core/dist/load/map_keys.d.cts +0 -10
  759. package/dist/langchain-core/dist/load/map_keys.d.cts.map +0 -1
  760. package/dist/langchain-core/dist/load/serializable.d.cts +0 -82
  761. package/dist/langchain-core/dist/load/serializable.d.cts.map +0 -1
  762. package/dist/langchain-core/dist/messages/base.d.cts +0 -125
  763. package/dist/langchain-core/dist/messages/base.d.cts.map +0 -1
  764. package/dist/langchain-core/dist/messages/content/base.d.cts +0 -22
  765. package/dist/langchain-core/dist/messages/content/base.d.cts.map +0 -1
  766. package/dist/langchain-core/dist/messages/content/data.d.cts +0 -96
  767. package/dist/langchain-core/dist/messages/content/data.d.cts.map +0 -1
  768. package/dist/langchain-core/dist/messages/content/index.d.cts +0 -121
  769. package/dist/langchain-core/dist/messages/content/index.d.cts.map +0 -1
  770. package/dist/langchain-core/dist/messages/content/multimodal.d.cts +0 -110
  771. package/dist/langchain-core/dist/messages/content/multimodal.d.cts.map +0 -1
  772. package/dist/langchain-core/dist/messages/content/tools.d.cts +0 -214
  773. package/dist/langchain-core/dist/messages/content/tools.d.cts.map +0 -1
  774. package/dist/langchain-core/dist/messages/message.d.cts +0 -598
  775. package/dist/langchain-core/dist/messages/message.d.cts.map +0 -1
  776. package/dist/langchain-core/dist/messages/metadata.d.cts +0 -97
  777. package/dist/langchain-core/dist/messages/metadata.d.cts.map +0 -1
  778. package/dist/langchain-core/dist/messages/utils.d.cts +0 -75
  779. package/dist/langchain-core/dist/messages/utils.d.cts.map +0 -1
  780. package/dist/langchain-core/dist/prompt_values.d.cts +0 -13
  781. package/dist/langchain-core/dist/prompt_values.d.cts.map +0 -1
  782. package/dist/langchain-core/dist/utils/types/index.d.cts +0 -8
  783. package/dist/langchain-core/dist/utils/types/index.d.cts.map +0 -1
  784. package/dist/libs/langchain-core/dist/load/map_keys.d.ts +0 -10
  785. package/dist/libs/langchain-core/dist/load/map_keys.d.ts.map +0 -1
  786. package/dist/libs/langchain-core/dist/load/serializable.d.ts +0 -82
  787. package/dist/libs/langchain-core/dist/load/serializable.d.ts.map +0 -1
  788. package/dist/libs/langchain-core/dist/messages/base.d.ts +0 -125
  789. package/dist/libs/langchain-core/dist/messages/base.d.ts.map +0 -1
  790. package/dist/libs/langchain-core/dist/messages/content/base.d.ts +0 -22
  791. package/dist/libs/langchain-core/dist/messages/content/base.d.ts.map +0 -1
  792. package/dist/libs/langchain-core/dist/messages/content/data.d.ts +0 -96
  793. package/dist/libs/langchain-core/dist/messages/content/data.d.ts.map +0 -1
  794. package/dist/libs/langchain-core/dist/messages/content/index.d.ts +0 -121
  795. package/dist/libs/langchain-core/dist/messages/content/index.d.ts.map +0 -1
  796. package/dist/libs/langchain-core/dist/messages/content/multimodal.d.ts +0 -110
  797. package/dist/libs/langchain-core/dist/messages/content/multimodal.d.ts.map +0 -1
  798. package/dist/libs/langchain-core/dist/messages/content/tools.d.ts +0 -214
  799. package/dist/libs/langchain-core/dist/messages/content/tools.d.ts.map +0 -1
  800. package/dist/libs/langchain-core/dist/messages/message.d.ts +0 -598
  801. package/dist/libs/langchain-core/dist/messages/message.d.ts.map +0 -1
  802. package/dist/libs/langchain-core/dist/messages/metadata.d.ts +0 -97
  803. package/dist/libs/langchain-core/dist/messages/metadata.d.ts.map +0 -1
  804. package/dist/libs/langchain-core/dist/messages/utils.d.ts +0 -75
  805. package/dist/libs/langchain-core/dist/messages/utils.d.ts.map +0 -1
  806. package/dist/libs/langchain-core/dist/prompt_values.d.ts +0 -13
  807. package/dist/libs/langchain-core/dist/prompt_values.d.ts.map +0 -1
  808. package/dist/libs/langchain-core/dist/utils/types/index.d.ts +0 -10
  809. package/dist/libs/langchain-core/dist/utils/types/index.d.ts.map +0 -1
  810. package/dist/libs/langchain-core/dist/utils/types/zod.d.ts +0 -1
  811. package/dist/load/map_keys.d.cts +0 -8
  812. package/dist/load/map_keys.d.cts.map +0 -1
  813. package/dist/load/map_keys.d.ts +0 -8
  814. package/dist/load/map_keys.d.ts.map +0 -1
  815. package/dist/load/serializable.d.cts.map +0 -1
  816. package/dist/load/serializable.d.ts.map +0 -1
  817. package/dist/memory/buffer_memory.cjs +0 -80
  818. package/dist/memory/buffer_memory.cjs.map +0 -1
  819. package/dist/memory/buffer_memory.d.cts +0 -67
  820. package/dist/memory/buffer_memory.d.cts.map +0 -1
  821. package/dist/memory/buffer_memory.d.ts +0 -67
  822. package/dist/memory/buffer_memory.d.ts.map +0 -1
  823. package/dist/memory/buffer_memory.js +0 -79
  824. package/dist/memory/buffer_memory.js.map +0 -1
  825. package/dist/memory/buffer_token_memory.cjs +0 -80
  826. package/dist/memory/buffer_token_memory.cjs.map +0 -1
  827. package/dist/memory/buffer_token_memory.d.cts +0 -67
  828. package/dist/memory/buffer_token_memory.d.cts.map +0 -1
  829. package/dist/memory/buffer_token_memory.d.ts +0 -67
  830. package/dist/memory/buffer_token_memory.d.ts.map +0 -1
  831. package/dist/memory/buffer_token_memory.js +0 -79
  832. package/dist/memory/buffer_token_memory.js.map +0 -1
  833. package/dist/memory/buffer_window_memory.cjs +0 -77
  834. package/dist/memory/buffer_window_memory.cjs.map +0 -1
  835. package/dist/memory/buffer_window_memory.d.cts +0 -64
  836. package/dist/memory/buffer_window_memory.d.cts.map +0 -1
  837. package/dist/memory/buffer_window_memory.d.ts +0 -64
  838. package/dist/memory/buffer_window_memory.d.ts.map +0 -1
  839. package/dist/memory/buffer_window_memory.js +0 -76
  840. package/dist/memory/buffer_window_memory.js.map +0 -1
  841. package/dist/memory/chat_memory.cjs +0 -53
  842. package/dist/memory/chat_memory.cjs.map +0 -1
  843. package/dist/memory/chat_memory.d.cts +0 -42
  844. package/dist/memory/chat_memory.d.cts.map +0 -1
  845. package/dist/memory/chat_memory.d.ts +0 -42
  846. package/dist/memory/chat_memory.d.ts.map +0 -1
  847. package/dist/memory/chat_memory.js +0 -47
  848. package/dist/memory/chat_memory.js.map +0 -1
  849. package/dist/memory/combined_memory.cjs +0 -88
  850. package/dist/memory/combined_memory.cjs.map +0 -1
  851. package/dist/memory/combined_memory.d.cts +0 -60
  852. package/dist/memory/combined_memory.d.cts.map +0 -1
  853. package/dist/memory/combined_memory.d.ts +0 -60
  854. package/dist/memory/combined_memory.d.ts.map +0 -1
  855. package/dist/memory/combined_memory.js +0 -88
  856. package/dist/memory/combined_memory.js.map +0 -1
  857. package/dist/memory/entity_memory.cjs +0 -144
  858. package/dist/memory/entity_memory.cjs.map +0 -1
  859. package/dist/memory/entity_memory.d.cts +0 -99
  860. package/dist/memory/entity_memory.d.cts.map +0 -1
  861. package/dist/memory/entity_memory.d.ts +0 -99
  862. package/dist/memory/entity_memory.d.ts.map +0 -1
  863. package/dist/memory/entity_memory.js +0 -143
  864. package/dist/memory/entity_memory.js.map +0 -1
  865. package/dist/memory/index.cjs +0 -85
  866. package/dist/memory/index.cjs.map +0 -1
  867. package/dist/memory/index.d.cts +0 -14
  868. package/dist/memory/index.d.ts +0 -14
  869. package/dist/memory/index.js +0 -39
  870. package/dist/memory/index.js.map +0 -1
  871. package/dist/memory/prompt.cjs +0 -124
  872. package/dist/memory/prompt.cjs.map +0 -1
  873. package/dist/memory/prompt.d.cts +0 -12
  874. package/dist/memory/prompt.d.cts.map +0 -1
  875. package/dist/memory/prompt.d.ts +0 -12
  876. package/dist/memory/prompt.d.ts.map +0 -1
  877. package/dist/memory/prompt.js +0 -120
  878. package/dist/memory/prompt.js.map +0 -1
  879. package/dist/memory/stores/entity/base.cjs +0 -13
  880. package/dist/memory/stores/entity/base.cjs.map +0 -1
  881. package/dist/memory/stores/entity/base.d.cts +0 -18
  882. package/dist/memory/stores/entity/base.d.cts.map +0 -1
  883. package/dist/memory/stores/entity/base.d.ts +0 -18
  884. package/dist/memory/stores/entity/base.d.ts.map +0 -1
  885. package/dist/memory/stores/entity/base.js +0 -12
  886. package/dist/memory/stores/entity/base.js.map +0 -1
  887. package/dist/memory/stores/entity/in_memory.cjs +0 -64
  888. package/dist/memory/stores/entity/in_memory.cjs.map +0 -1
  889. package/dist/memory/stores/entity/in_memory.js +0 -64
  890. package/dist/memory/stores/entity/in_memory.js.map +0 -1
  891. package/dist/memory/summary.cjs +0 -127
  892. package/dist/memory/summary.cjs.map +0 -1
  893. package/dist/memory/summary.d.cts +0 -101
  894. package/dist/memory/summary.d.cts.map +0 -1
  895. package/dist/memory/summary.d.ts +0 -101
  896. package/dist/memory/summary.d.ts.map +0 -1
  897. package/dist/memory/summary.js +0 -125
  898. package/dist/memory/summary.js.map +0 -1
  899. package/dist/memory/summary_buffer.cjs +0 -117
  900. package/dist/memory/summary_buffer.cjs.map +0 -1
  901. package/dist/memory/summary_buffer.d.cts +0 -90
  902. package/dist/memory/summary_buffer.d.cts.map +0 -1
  903. package/dist/memory/summary_buffer.d.ts +0 -90
  904. package/dist/memory/summary_buffer.d.ts.map +0 -1
  905. package/dist/memory/summary_buffer.js +0 -116
  906. package/dist/memory/summary_buffer.js.map +0 -1
  907. package/dist/memory/vector_store.cjs +0 -87
  908. package/dist/memory/vector_store.cjs.map +0 -1
  909. package/dist/memory/vector_store.d.cts +0 -81
  910. package/dist/memory/vector_store.d.cts.map +0 -1
  911. package/dist/memory/vector_store.d.ts +0 -81
  912. package/dist/memory/vector_store.d.ts.map +0 -1
  913. package/dist/memory/vector_store.js +0 -86
  914. package/dist/memory/vector_store.js.map +0 -1
  915. package/dist/output_parsers/combining.cjs +0 -61
  916. package/dist/output_parsers/combining.cjs.map +0 -1
  917. package/dist/output_parsers/combining.d.cts +0 -46
  918. package/dist/output_parsers/combining.d.cts.map +0 -1
  919. package/dist/output_parsers/combining.d.ts +0 -46
  920. package/dist/output_parsers/combining.d.ts.map +0 -1
  921. package/dist/output_parsers/combining.js +0 -60
  922. package/dist/output_parsers/combining.js.map +0 -1
  923. package/dist/output_parsers/datetime.cjs +0 -46
  924. package/dist/output_parsers/datetime.cjs.map +0 -1
  925. package/dist/output_parsers/datetime.d.cts +0 -33
  926. package/dist/output_parsers/datetime.d.cts.map +0 -1
  927. package/dist/output_parsers/datetime.d.ts +0 -33
  928. package/dist/output_parsers/datetime.d.ts.map +0 -1
  929. package/dist/output_parsers/datetime.js +0 -45
  930. package/dist/output_parsers/datetime.js.map +0 -1
  931. package/dist/output_parsers/expression.cjs +0 -86
  932. package/dist/output_parsers/expression.cjs.map +0 -1
  933. package/dist/output_parsers/expression.d.cts +0 -53
  934. package/dist/output_parsers/expression.d.cts.map +0 -1
  935. package/dist/output_parsers/expression.d.ts +0 -53
  936. package/dist/output_parsers/expression.d.ts.map +0 -1
  937. package/dist/output_parsers/expression.js +0 -79
  938. package/dist/output_parsers/expression.js.map +0 -1
  939. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.cjs +0 -38
  940. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.cjs.map +0 -1
  941. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.js +0 -38
  942. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.js.map +0 -1
  943. package/dist/output_parsers/expression_type_handlers/base.cjs +0 -130
  944. package/dist/output_parsers/expression_type_handlers/base.cjs.map +0 -1
  945. package/dist/output_parsers/expression_type_handlers/base.d.cts +0 -108
  946. package/dist/output_parsers/expression_type_handlers/base.d.cts.map +0 -1
  947. package/dist/output_parsers/expression_type_handlers/base.d.ts +0 -108
  948. package/dist/output_parsers/expression_type_handlers/base.d.ts.map +0 -1
  949. package/dist/output_parsers/expression_type_handlers/base.js +0 -129
  950. package/dist/output_parsers/expression_type_handlers/base.js.map +0 -1
  951. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.cjs +0 -38
  952. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.cjs.map +0 -1
  953. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.js +0 -38
  954. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.js.map +0 -1
  955. package/dist/output_parsers/expression_type_handlers/call_expression_handler.cjs +0 -64
  956. package/dist/output_parsers/expression_type_handlers/call_expression_handler.cjs.map +0 -1
  957. package/dist/output_parsers/expression_type_handlers/call_expression_handler.js +0 -64
  958. package/dist/output_parsers/expression_type_handlers/call_expression_handler.js.map +0 -1
  959. package/dist/output_parsers/expression_type_handlers/factory.cjs +0 -68
  960. package/dist/output_parsers/expression_type_handlers/factory.cjs.map +0 -1
  961. package/dist/output_parsers/expression_type_handlers/factory.d.cts +0 -35
  962. package/dist/output_parsers/expression_type_handlers/factory.d.cts.map +0 -1
  963. package/dist/output_parsers/expression_type_handlers/factory.d.ts +0 -35
  964. package/dist/output_parsers/expression_type_handlers/factory.d.ts.map +0 -1
  965. package/dist/output_parsers/expression_type_handlers/factory.js +0 -68
  966. package/dist/output_parsers/expression_type_handlers/factory.js.map +0 -1
  967. package/dist/output_parsers/expression_type_handlers/grammar/parser_grammar.cjs +0 -299
  968. package/dist/output_parsers/expression_type_handlers/grammar/parser_grammar.cjs.map +0 -1
  969. package/dist/output_parsers/expression_type_handlers/grammar/parser_grammar.js +0 -298
  970. package/dist/output_parsers/expression_type_handlers/grammar/parser_grammar.js.map +0 -1
  971. package/dist/output_parsers/expression_type_handlers/identifier_handler.cjs +0 -40
  972. package/dist/output_parsers/expression_type_handlers/identifier_handler.cjs.map +0 -1
  973. package/dist/output_parsers/expression_type_handlers/identifier_handler.js +0 -40
  974. package/dist/output_parsers/expression_type_handlers/identifier_handler.js.map +0 -1
  975. package/dist/output_parsers/expression_type_handlers/member_expression_handler.cjs +0 -48
  976. package/dist/output_parsers/expression_type_handlers/member_expression_handler.cjs.map +0 -1
  977. package/dist/output_parsers/expression_type_handlers/member_expression_handler.js +0 -48
  978. package/dist/output_parsers/expression_type_handlers/member_expression_handler.js.map +0 -1
  979. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.cjs +0 -36
  980. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.cjs.map +0 -1
  981. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.js +0 -36
  982. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.js.map +0 -1
  983. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.cjs +0 -40
  984. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.cjs.map +0 -1
  985. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.js +0 -40
  986. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.js.map +0 -1
  987. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.cjs +0 -45
  988. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.cjs.map +0 -1
  989. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.js +0 -45
  990. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.js.map +0 -1
  991. package/dist/output_parsers/expression_type_handlers/string_literal_handler.cjs +0 -37
  992. package/dist/output_parsers/expression_type_handlers/string_literal_handler.cjs.map +0 -1
  993. package/dist/output_parsers/expression_type_handlers/string_literal_handler.js +0 -37
  994. package/dist/output_parsers/expression_type_handlers/string_literal_handler.js.map +0 -1
  995. package/dist/output_parsers/expression_type_handlers/types.d.cts +0 -95
  996. package/dist/output_parsers/expression_type_handlers/types.d.cts.map +0 -1
  997. package/dist/output_parsers/expression_type_handlers/types.d.ts +0 -95
  998. package/dist/output_parsers/expression_type_handlers/types.d.ts.map +0 -1
  999. package/dist/output_parsers/fix.cjs +0 -92
  1000. package/dist/output_parsers/fix.cjs.map +0 -1
  1001. package/dist/output_parsers/fix.d.cts +0 -60
  1002. package/dist/output_parsers/fix.d.cts.map +0 -1
  1003. package/dist/output_parsers/fix.d.ts +0 -60
  1004. package/dist/output_parsers/fix.d.ts.map +0 -1
  1005. package/dist/output_parsers/fix.js +0 -91
  1006. package/dist/output_parsers/fix.js.map +0 -1
  1007. package/dist/output_parsers/http_response.cjs +0 -53
  1008. package/dist/output_parsers/http_response.cjs.map +0 -1
  1009. package/dist/output_parsers/http_response.d.cts +0 -33
  1010. package/dist/output_parsers/http_response.d.cts.map +0 -1
  1011. package/dist/output_parsers/http_response.d.ts +0 -33
  1012. package/dist/output_parsers/http_response.d.ts.map +0 -1
  1013. package/dist/output_parsers/http_response.js +0 -52
  1014. package/dist/output_parsers/http_response.js.map +0 -1
  1015. package/dist/output_parsers/index.cjs +0 -74
  1016. package/dist/output_parsers/index.cjs.map +0 -1
  1017. package/dist/output_parsers/index.d.cts +0 -11
  1018. package/dist/output_parsers/index.d.ts +0 -11
  1019. package/dist/output_parsers/index.js +0 -37
  1020. package/dist/output_parsers/index.js.map +0 -1
  1021. package/dist/output_parsers/noop.cjs +0 -43
  1022. package/dist/output_parsers/noop.cjs.map +0 -1
  1023. package/dist/output_parsers/noop.js +0 -42
  1024. package/dist/output_parsers/noop.js.map +0 -1
  1025. package/dist/output_parsers/openai_functions.cjs +0 -145
  1026. package/dist/output_parsers/openai_functions.cjs.map +0 -1
  1027. package/dist/output_parsers/openai_functions.d.cts +0 -85
  1028. package/dist/output_parsers/openai_functions.d.cts.map +0 -1
  1029. package/dist/output_parsers/openai_functions.d.ts +0 -85
  1030. package/dist/output_parsers/openai_functions.d.ts.map +0 -1
  1031. package/dist/output_parsers/openai_functions.js +0 -142
  1032. package/dist/output_parsers/openai_functions.js.map +0 -1
  1033. package/dist/output_parsers/openai_tools.cjs +0 -89
  1034. package/dist/output_parsers/openai_tools.cjs.map +0 -1
  1035. package/dist/output_parsers/openai_tools.d.cts +0 -69
  1036. package/dist/output_parsers/openai_tools.d.cts.map +0 -1
  1037. package/dist/output_parsers/openai_tools.d.ts +0 -69
  1038. package/dist/output_parsers/openai_tools.d.ts.map +0 -1
  1039. package/dist/output_parsers/openai_tools.js +0 -87
  1040. package/dist/output_parsers/openai_tools.js.map +0 -1
  1041. package/dist/output_parsers/prompts.cjs +0 -25
  1042. package/dist/output_parsers/prompts.cjs.map +0 -1
  1043. package/dist/output_parsers/prompts.js +0 -24
  1044. package/dist/output_parsers/prompts.js.map +0 -1
  1045. package/dist/output_parsers/regex.cjs +0 -74
  1046. package/dist/output_parsers/regex.cjs.map +0 -1
  1047. package/dist/output_parsers/regex.d.cts +0 -49
  1048. package/dist/output_parsers/regex.d.cts.map +0 -1
  1049. package/dist/output_parsers/regex.d.ts +0 -49
  1050. package/dist/output_parsers/regex.d.ts.map +0 -1
  1051. package/dist/output_parsers/regex.js +0 -73
  1052. package/dist/output_parsers/regex.js.map +0 -1
  1053. package/dist/output_parsers/router.cjs +0 -40
  1054. package/dist/output_parsers/router.cjs.map +0 -1
  1055. package/dist/output_parsers/router.d.cts +0 -36
  1056. package/dist/output_parsers/router.d.cts.map +0 -1
  1057. package/dist/output_parsers/router.d.ts +0 -36
  1058. package/dist/output_parsers/router.d.ts.map +0 -1
  1059. package/dist/output_parsers/router.js +0 -39
  1060. package/dist/output_parsers/router.js.map +0 -1
  1061. package/dist/output_parsers/structured.cjs +0 -164
  1062. package/dist/output_parsers/structured.cjs.map +0 -1
  1063. package/dist/output_parsers/structured.d.cts +0 -97
  1064. package/dist/output_parsers/structured.d.cts.map +0 -1
  1065. package/dist/output_parsers/structured.d.ts +0 -97
  1066. package/dist/output_parsers/structured.d.ts.map +0 -1
  1067. package/dist/output_parsers/structured.js +0 -161
  1068. package/dist/output_parsers/structured.js.map +0 -1
  1069. package/dist/retrievers/contextual_compression.cjs +0 -53
  1070. package/dist/retrievers/contextual_compression.cjs.map +0 -1
  1071. package/dist/retrievers/contextual_compression.d.cts +0 -42
  1072. package/dist/retrievers/contextual_compression.d.cts.map +0 -1
  1073. package/dist/retrievers/contextual_compression.d.ts +0 -42
  1074. package/dist/retrievers/contextual_compression.d.ts.map +0 -1
  1075. package/dist/retrievers/contextual_compression.js +0 -47
  1076. package/dist/retrievers/contextual_compression.js.map +0 -1
  1077. package/dist/retrievers/document_compressors/chain_extract.cjs +0 -103
  1078. package/dist/retrievers/document_compressors/chain_extract.cjs.map +0 -1
  1079. package/dist/retrievers/document_compressors/chain_extract.d.cts +0 -47
  1080. package/dist/retrievers/document_compressors/chain_extract.d.cts.map +0 -1
  1081. package/dist/retrievers/document_compressors/chain_extract.d.ts +0 -47
  1082. package/dist/retrievers/document_compressors/chain_extract.d.ts.map +0 -1
  1083. package/dist/retrievers/document_compressors/chain_extract.js +0 -97
  1084. package/dist/retrievers/document_compressors/chain_extract.js.map +0 -1
  1085. package/dist/retrievers/document_compressors/chain_extract_prompt.cjs +0 -16
  1086. package/dist/retrievers/document_compressors/chain_extract_prompt.cjs.map +0 -1
  1087. package/dist/retrievers/document_compressors/chain_extract_prompt.js +0 -15
  1088. package/dist/retrievers/document_compressors/chain_extract_prompt.js.map +0 -1
  1089. package/dist/retrievers/document_compressors/embeddings_filter.cjs +0 -74
  1090. package/dist/retrievers/document_compressors/embeddings_filter.cjs.map +0 -1
  1091. package/dist/retrievers/document_compressors/embeddings_filter.d.cts +0 -58
  1092. package/dist/retrievers/document_compressors/embeddings_filter.d.cts.map +0 -1
  1093. package/dist/retrievers/document_compressors/embeddings_filter.d.ts +0 -58
  1094. package/dist/retrievers/document_compressors/embeddings_filter.d.ts.map +0 -1
  1095. package/dist/retrievers/document_compressors/embeddings_filter.js +0 -68
  1096. package/dist/retrievers/document_compressors/embeddings_filter.js.map +0 -1
  1097. package/dist/retrievers/document_compressors/index.cjs +0 -69
  1098. package/dist/retrievers/document_compressors/index.cjs.map +0 -1
  1099. package/dist/retrievers/document_compressors/index.d.cts +0 -61
  1100. package/dist/retrievers/document_compressors/index.d.cts.map +0 -1
  1101. package/dist/retrievers/document_compressors/index.d.ts +0 -61
  1102. package/dist/retrievers/document_compressors/index.d.ts.map +0 -1
  1103. package/dist/retrievers/document_compressors/index.js +0 -62
  1104. package/dist/retrievers/document_compressors/index.js.map +0 -1
  1105. package/dist/retrievers/ensemble.cjs +0 -76
  1106. package/dist/retrievers/ensemble.cjs.map +0 -1
  1107. package/dist/retrievers/ensemble.d.cts +0 -39
  1108. package/dist/retrievers/ensemble.d.cts.map +0 -1
  1109. package/dist/retrievers/ensemble.d.ts +0 -39
  1110. package/dist/retrievers/ensemble.d.ts.map +0 -1
  1111. package/dist/retrievers/ensemble.js +0 -70
  1112. package/dist/retrievers/ensemble.js.map +0 -1
  1113. package/dist/retrievers/hyde.cjs +0 -128
  1114. package/dist/retrievers/hyde.cjs.map +0 -1
  1115. package/dist/retrievers/hyde.d.cts +0 -61
  1116. package/dist/retrievers/hyde.d.cts.map +0 -1
  1117. package/dist/retrievers/hyde.d.ts +0 -61
  1118. package/dist/retrievers/hyde.d.ts.map +0 -1
  1119. package/dist/retrievers/hyde.js +0 -121
  1120. package/dist/retrievers/hyde.js.map +0 -1
  1121. package/dist/retrievers/matryoshka_retriever.cjs +0 -116
  1122. package/dist/retrievers/matryoshka_retriever.cjs.map +0 -1
  1123. package/dist/retrievers/matryoshka_retriever.d.cts +0 -99
  1124. package/dist/retrievers/matryoshka_retriever.d.cts.map +0 -1
  1125. package/dist/retrievers/matryoshka_retriever.d.ts +0 -99
  1126. package/dist/retrievers/matryoshka_retriever.d.ts.map +0 -1
  1127. package/dist/retrievers/matryoshka_retriever.js +0 -110
  1128. package/dist/retrievers/matryoshka_retriever.js.map +0 -1
  1129. package/dist/retrievers/multi_query.cjs +0 -150
  1130. package/dist/retrievers/multi_query.cjs.map +0 -1
  1131. package/dist/retrievers/multi_query.d.cts +0 -59
  1132. package/dist/retrievers/multi_query.d.cts.map +0 -1
  1133. package/dist/retrievers/multi_query.d.ts +0 -59
  1134. package/dist/retrievers/multi_query.d.ts.map +0 -1
  1135. package/dist/retrievers/multi_query.js +0 -144
  1136. package/dist/retrievers/multi_query.js.map +0 -1
  1137. package/dist/retrievers/multi_vector.cjs +0 -67
  1138. package/dist/retrievers/multi_vector.cjs.map +0 -1
  1139. package/dist/retrievers/multi_vector.d.cts +0 -51
  1140. package/dist/retrievers/multi_vector.d.cts.map +0 -1
  1141. package/dist/retrievers/multi_vector.d.ts +0 -51
  1142. package/dist/retrievers/multi_vector.d.ts.map +0 -1
  1143. package/dist/retrievers/multi_vector.js +0 -61
  1144. package/dist/retrievers/multi_vector.js.map +0 -1
  1145. package/dist/retrievers/parent_document.cjs +0 -137
  1146. package/dist/retrievers/parent_document.cjs.map +0 -1
  1147. package/dist/retrievers/parent_document.d.cts +0 -92
  1148. package/dist/retrievers/parent_document.d.cts.map +0 -1
  1149. package/dist/retrievers/parent_document.d.ts +0 -92
  1150. package/dist/retrievers/parent_document.d.ts.map +0 -1
  1151. package/dist/retrievers/parent_document.js +0 -131
  1152. package/dist/retrievers/parent_document.js.map +0 -1
  1153. package/dist/retrievers/score_threshold.cjs +0 -43
  1154. package/dist/retrievers/score_threshold.cjs.map +0 -1
  1155. package/dist/retrievers/score_threshold.d.cts +0 -20
  1156. package/dist/retrievers/score_threshold.d.cts.map +0 -1
  1157. package/dist/retrievers/score_threshold.d.ts +0 -20
  1158. package/dist/retrievers/score_threshold.d.ts.map +0 -1
  1159. package/dist/retrievers/score_threshold.js +0 -37
  1160. package/dist/retrievers/score_threshold.js.map +0 -1
  1161. package/dist/retrievers/self_query/functional.cjs +0 -21
  1162. package/dist/retrievers/self_query/functional.cjs.map +0 -1
  1163. package/dist/retrievers/self_query/functional.d.cts +0 -2
  1164. package/dist/retrievers/self_query/functional.d.ts +0 -2
  1165. package/dist/retrievers/self_query/functional.js +0 -10
  1166. package/dist/retrievers/self_query/functional.js.map +0 -1
  1167. package/dist/retrievers/self_query/index.cjs +0 -130
  1168. package/dist/retrievers/self_query/index.cjs.map +0 -1
  1169. package/dist/retrievers/self_query/index.d.cts +0 -79
  1170. package/dist/retrievers/self_query/index.d.cts.map +0 -1
  1171. package/dist/retrievers/self_query/index.d.ts +0 -79
  1172. package/dist/retrievers/self_query/index.d.ts.map +0 -1
  1173. package/dist/retrievers/self_query/index.js +0 -106
  1174. package/dist/retrievers/self_query/index.js.map +0 -1
  1175. package/dist/retrievers/time_weighted.cjs +0 -236
  1176. package/dist/retrievers/time_weighted.cjs.map +0 -1
  1177. package/dist/retrievers/time_weighted.d.cts +0 -142
  1178. package/dist/retrievers/time_weighted.d.cts.map +0 -1
  1179. package/dist/retrievers/time_weighted.d.ts +0 -142
  1180. package/dist/retrievers/time_weighted.d.ts.map +0 -1
  1181. package/dist/retrievers/time_weighted.js +0 -228
  1182. package/dist/retrievers/time_weighted.js.map +0 -1
  1183. package/dist/sql_db.cjs +0 -119
  1184. package/dist/sql_db.cjs.map +0 -1
  1185. package/dist/sql_db.d.cts +0 -60
  1186. package/dist/sql_db.d.cts.map +0 -1
  1187. package/dist/sql_db.d.ts +0 -60
  1188. package/dist/sql_db.d.ts.map +0 -1
  1189. package/dist/sql_db.js +0 -113
  1190. package/dist/sql_db.js.map +0 -1
  1191. package/dist/stores/doc/base.cjs +0 -20
  1192. package/dist/stores/doc/base.cjs.map +0 -1
  1193. package/dist/stores/doc/base.d.cts +0 -15
  1194. package/dist/stores/doc/base.d.cts.map +0 -1
  1195. package/dist/stores/doc/base.d.ts +0 -15
  1196. package/dist/stores/doc/base.d.ts.map +0 -1
  1197. package/dist/stores/doc/base.js +0 -14
  1198. package/dist/stores/doc/base.js.map +0 -1
  1199. package/dist/stores/doc/in_memory.cjs +0 -94
  1200. package/dist/stores/doc/in_memory.cjs.map +0 -1
  1201. package/dist/stores/doc/in_memory.d.cts +0 -53
  1202. package/dist/stores/doc/in_memory.d.cts.map +0 -1
  1203. package/dist/stores/doc/in_memory.d.ts +0 -53
  1204. package/dist/stores/doc/in_memory.d.ts.map +0 -1
  1205. package/dist/stores/doc/in_memory.js +0 -87
  1206. package/dist/stores/doc/in_memory.js.map +0 -1
  1207. package/dist/stores/file/base.cjs +0 -13
  1208. package/dist/stores/file/base.cjs.map +0 -1
  1209. package/dist/stores/file/base.d.cts +0 -15
  1210. package/dist/stores/file/base.d.cts.map +0 -1
  1211. package/dist/stores/file/base.d.ts +0 -15
  1212. package/dist/stores/file/base.d.ts.map +0 -1
  1213. package/dist/stores/file/base.js +0 -12
  1214. package/dist/stores/file/base.js.map +0 -1
  1215. package/dist/stores/file/in_memory.cjs +0 -53
  1216. package/dist/stores/file/in_memory.cjs.map +0 -1
  1217. package/dist/stores/file/in_memory.d.cts +0 -33
  1218. package/dist/stores/file/in_memory.d.cts.map +0 -1
  1219. package/dist/stores/file/in_memory.d.ts +0 -33
  1220. package/dist/stores/file/in_memory.d.ts.map +0 -1
  1221. package/dist/stores/file/in_memory.js +0 -47
  1222. package/dist/stores/file/in_memory.js.map +0 -1
  1223. package/dist/stores/file/node.cjs +0 -52
  1224. package/dist/stores/file/node.cjs.map +0 -1
  1225. package/dist/stores/file/node.d.cts +0 -29
  1226. package/dist/stores/file/node.d.cts.map +0 -1
  1227. package/dist/stores/file/node.d.ts +0 -29
  1228. package/dist/stores/file/node.d.ts.map +0 -1
  1229. package/dist/stores/file/node.js +0 -46
  1230. package/dist/stores/file/node.js.map +0 -1
  1231. package/dist/stores/message/in_memory.cjs +0 -21
  1232. package/dist/stores/message/in_memory.cjs.map +0 -1
  1233. package/dist/stores/message/in_memory.d.cts +0 -2
  1234. package/dist/stores/message/in_memory.d.ts +0 -2
  1235. package/dist/stores/message/in_memory.js +0 -10
  1236. package/dist/stores/message/in_memory.js.map +0 -1
  1237. package/dist/text_splitter.cjs +0 -22
  1238. package/dist/text_splitter.cjs.map +0 -1
  1239. package/dist/text_splitter.d.cts +0 -1
  1240. package/dist/text_splitter.d.ts +0 -1
  1241. package/dist/text_splitter.js +0 -12
  1242. package/dist/text_splitter.js.map +0 -1
  1243. package/dist/tools/chain.cjs +0 -36
  1244. package/dist/tools/chain.cjs.map +0 -1
  1245. package/dist/tools/chain.d.cts +0 -32
  1246. package/dist/tools/chain.d.cts.map +0 -1
  1247. package/dist/tools/chain.d.ts +0 -32
  1248. package/dist/tools/chain.d.ts.map +0 -1
  1249. package/dist/tools/chain.js +0 -30
  1250. package/dist/tools/chain.js.map +0 -1
  1251. package/dist/tools/fs.cjs +0 -56
  1252. package/dist/tools/fs.cjs.map +0 -1
  1253. package/dist/tools/fs.d.cts +0 -92
  1254. package/dist/tools/fs.d.cts.map +0 -1
  1255. package/dist/tools/fs.d.ts +0 -92
  1256. package/dist/tools/fs.d.ts.map +0 -1
  1257. package/dist/tools/fs.js +0 -54
  1258. package/dist/tools/fs.js.map +0 -1
  1259. package/dist/tools/index.cjs +0 -68
  1260. package/dist/tools/index.cjs.map +0 -1
  1261. package/dist/tools/index.d.cts +0 -8
  1262. package/dist/tools/index.d.ts +0 -8
  1263. package/dist/tools/index.js +0 -30
  1264. package/dist/tools/index.js.map +0 -1
  1265. package/dist/tools/json.cjs +0 -107
  1266. package/dist/tools/json.cjs.map +0 -1
  1267. package/dist/tools/json.d.cts +0 -65
  1268. package/dist/tools/json.d.cts.map +0 -1
  1269. package/dist/tools/json.d.ts +0 -65
  1270. package/dist/tools/json.d.ts.map +0 -1
  1271. package/dist/tools/json.js +0 -104
  1272. package/dist/tools/json.js.map +0 -1
  1273. package/dist/tools/render.cjs +0 -55
  1274. package/dist/tools/render.cjs.map +0 -1
  1275. package/dist/tools/render.d.cts +0 -32
  1276. package/dist/tools/render.d.cts.map +0 -1
  1277. package/dist/tools/render.d.ts +0 -32
  1278. package/dist/tools/render.d.ts.map +0 -1
  1279. package/dist/tools/render.js +0 -48
  1280. package/dist/tools/render.js.map +0 -1
  1281. package/dist/tools/requests.cjs +0 -73
  1282. package/dist/tools/requests.cjs.map +0 -1
  1283. package/dist/tools/requests.d.cts +0 -56
  1284. package/dist/tools/requests.d.cts.map +0 -1
  1285. package/dist/tools/requests.d.ts +0 -56
  1286. package/dist/tools/requests.d.ts.map +0 -1
  1287. package/dist/tools/requests.js +0 -71
  1288. package/dist/tools/requests.js.map +0 -1
  1289. package/dist/tools/retriever.cjs +0 -30
  1290. package/dist/tools/retriever.cjs.map +0 -1
  1291. package/dist/tools/retriever.d.cts +0 -19
  1292. package/dist/tools/retriever.d.cts.map +0 -1
  1293. package/dist/tools/retriever.d.ts +0 -19
  1294. package/dist/tools/retriever.d.ts.map +0 -1
  1295. package/dist/tools/retriever.js +0 -24
  1296. package/dist/tools/retriever.js.map +0 -1
  1297. package/dist/tools/sql.cjs +0 -165
  1298. package/dist/tools/sql.cjs.map +0 -1
  1299. package/dist/tools/sql.d.cts +0 -86
  1300. package/dist/tools/sql.d.cts.map +0 -1
  1301. package/dist/tools/sql.d.ts +0 -86
  1302. package/dist/tools/sql.d.ts.map +0 -1
  1303. package/dist/tools/sql.js +0 -156
  1304. package/dist/tools/sql.js.map +0 -1
  1305. package/dist/tools/vectorstore.cjs +0 -45
  1306. package/dist/tools/vectorstore.cjs.map +0 -1
  1307. package/dist/tools/vectorstore.d.cts +0 -40
  1308. package/dist/tools/vectorstore.d.cts.map +0 -1
  1309. package/dist/tools/vectorstore.d.ts +0 -40
  1310. package/dist/tools/vectorstore.d.ts.map +0 -1
  1311. package/dist/tools/vectorstore.js +0 -44
  1312. package/dist/tools/vectorstore.js.map +0 -1
  1313. package/dist/tools/webbrowser.cjs +0 -176
  1314. package/dist/tools/webbrowser.cjs.map +0 -1
  1315. package/dist/tools/webbrowser.d.cts +0 -69
  1316. package/dist/tools/webbrowser.d.cts.map +0 -1
  1317. package/dist/tools/webbrowser.d.ts +0 -69
  1318. package/dist/tools/webbrowser.d.ts.map +0 -1
  1319. package/dist/tools/webbrowser.js +0 -168
  1320. package/dist/tools/webbrowser.js.map +0 -1
  1321. package/dist/types/expression-parser.d.cts +0 -91
  1322. package/dist/types/expression-parser.d.cts.map +0 -1
  1323. package/dist/types/expression-parser.d.ts +0 -91
  1324. package/dist/types/expression-parser.d.ts.map +0 -1
  1325. package/dist/types/type-utils.d.cts +0 -7
  1326. package/dist/types/type-utils.d.cts.map +0 -1
  1327. package/dist/types/type-utils.d.ts +0 -7
  1328. package/dist/types/type-utils.d.ts.map +0 -1
  1329. package/dist/util/document.cjs +0 -23
  1330. package/dist/util/document.cjs.map +0 -1
  1331. package/dist/util/document.d.cts +0 -15
  1332. package/dist/util/document.d.cts.map +0 -1
  1333. package/dist/util/document.d.ts +0 -15
  1334. package/dist/util/document.d.ts.map +0 -1
  1335. package/dist/util/document.js +0 -17
  1336. package/dist/util/document.js.map +0 -1
  1337. package/dist/util/entrypoint_deprecation.cjs +0 -1
  1338. package/dist/util/entrypoint_deprecation.js +0 -1
  1339. package/dist/util/env.cjs +0 -2
  1340. package/dist/util/env.js +0 -1
  1341. package/dist/util/extname.cjs +0 -7
  1342. package/dist/util/extname.cjs.map +0 -1
  1343. package/dist/util/extname.js +0 -6
  1344. package/dist/util/extname.js.map +0 -1
  1345. package/dist/util/hub.cjs +0 -39
  1346. package/dist/util/hub.cjs.map +0 -1
  1347. package/dist/util/hub.js +0 -38
  1348. package/dist/util/hub.js.map +0 -1
  1349. package/dist/util/load.cjs +0 -15
  1350. package/dist/util/load.cjs.map +0 -1
  1351. package/dist/util/load.d.cts +0 -6
  1352. package/dist/util/load.d.cts.map +0 -1
  1353. package/dist/util/load.d.ts +0 -6
  1354. package/dist/util/load.d.ts.map +0 -1
  1355. package/dist/util/load.js +0 -14
  1356. package/dist/util/load.js.map +0 -1
  1357. package/dist/util/math.cjs +0 -22
  1358. package/dist/util/math.cjs.map +0 -1
  1359. package/dist/util/math.d.cts +0 -1
  1360. package/dist/util/math.d.ts +0 -1
  1361. package/dist/util/math.js +0 -12
  1362. package/dist/util/math.js.map +0 -1
  1363. package/dist/util/ml-distance/distances.cjs +0 -35
  1364. package/dist/util/ml-distance/distances.cjs.map +0 -1
  1365. package/dist/util/ml-distance/distances.js +0 -33
  1366. package/dist/util/ml-distance/distances.js.map +0 -1
  1367. package/dist/util/ml-distance/similarities.cjs +0 -23
  1368. package/dist/util/ml-distance/similarities.cjs.map +0 -1
  1369. package/dist/util/ml-distance/similarities.d.cts +0 -11
  1370. package/dist/util/ml-distance/similarities.d.cts.map +0 -1
  1371. package/dist/util/ml-distance/similarities.d.ts +0 -11
  1372. package/dist/util/ml-distance/similarities.d.ts.map +0 -1
  1373. package/dist/util/ml-distance/similarities.js +0 -22
  1374. package/dist/util/ml-distance/similarities.js.map +0 -1
  1375. package/dist/util/ml-distance-euclidean/euclidean.cjs +0 -14
  1376. package/dist/util/ml-distance-euclidean/euclidean.cjs.map +0 -1
  1377. package/dist/util/ml-distance-euclidean/euclidean.js +0 -13
  1378. package/dist/util/ml-distance-euclidean/euclidean.js.map +0 -1
  1379. package/dist/util/openapi.cjs +0 -149
  1380. package/dist/util/openapi.cjs.map +0 -1
  1381. package/dist/util/openapi.d.cts +0 -83
  1382. package/dist/util/openapi.d.cts.map +0 -1
  1383. package/dist/util/openapi.d.ts +0 -83
  1384. package/dist/util/openapi.d.ts.map +0 -1
  1385. package/dist/util/openapi.js +0 -148
  1386. package/dist/util/openapi.js.map +0 -1
  1387. package/dist/util/parse.cjs +0 -22
  1388. package/dist/util/parse.cjs.map +0 -1
  1389. package/dist/util/parse.js +0 -21
  1390. package/dist/util/parse.js.map +0 -1
  1391. package/dist/util/set.cjs +0 -35
  1392. package/dist/util/set.cjs.map +0 -1
  1393. package/dist/util/set.js +0 -32
  1394. package/dist/util/set.js.map +0 -1
  1395. package/dist/util/sql_utils.cjs +0 -178
  1396. package/dist/util/sql_utils.cjs.map +0 -1
  1397. package/dist/util/sql_utils.d.cts +0 -31
  1398. package/dist/util/sql_utils.d.cts.map +0 -1
  1399. package/dist/util/sql_utils.d.ts +0 -31
  1400. package/dist/util/sql_utils.d.ts.map +0 -1
  1401. package/dist/util/sql_utils.js +0 -173
  1402. package/dist/util/sql_utils.js.map +0 -1
  1403. package/dist/util/time.cjs +0 -25
  1404. package/dist/util/time.cjs.map +0 -1
  1405. package/dist/util/time.d.cts +0 -10
  1406. package/dist/util/time.d.cts.map +0 -1
  1407. package/dist/util/time.d.ts +0 -10
  1408. package/dist/util/time.d.ts.map +0 -1
  1409. package/dist/util/time.js +0 -19
  1410. package/dist/util/time.js.map +0 -1
  1411. package/dist/vectorstores/memory.cjs +0 -265
  1412. package/dist/vectorstores/memory.cjs.map +0 -1
  1413. package/dist/vectorstores/memory.d.cts +0 -216
  1414. package/dist/vectorstores/memory.d.cts.map +0 -1
  1415. package/dist/vectorstores/memory.d.ts +0 -216
  1416. package/dist/vectorstores/memory.d.ts.map +0 -1
  1417. package/dist/vectorstores/memory.js +0 -259
  1418. package/dist/vectorstores/memory.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ReactAgent.d.ts","names":["InteropZodObject","Command","CompiledStateGraph","IterableReadableStream","CreateAgentParams","AgentMiddleware","InferMiddlewareStates","InferMiddlewareInputStates","BuiltInState","InferMiddlewareContextInputs","InferContextInput","InvokeConfiguration","StreamConfiguration","AnyAnnotationRoot","ToAnnotationRoot","ResponseFormatUndefined","MergedAgentState","Record","StructuredResponseFormat","Omit","TMiddleware","InvokeStateParameter","AgentGraph","ContextSchema","ReactAgent","Promise","ArrayBuffer","Uint8Array"],"sources":["../../../src/agents/middlewareAgent/ReactAgent.d.ts"],"sourcesContent":["/* eslint-disable no-instanceof/no-instanceof */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { InteropZodObject } from \"@langchain/core/utils/types\";\nimport { Command, CompiledStateGraph } from \"@langchain/langgraph\";\nimport { IterableReadableStream } from \"@langchain/core/utils/stream\";\nimport type { CreateAgentParams, AgentMiddleware, InferMiddlewareStates, InferMiddlewareInputStates, BuiltInState, InferMiddlewareContextInputs, InferContextInput, InvokeConfiguration, StreamConfiguration } from \"./types.js\";\nimport { type AnyAnnotationRoot, type ToAnnotationRoot, type ResponseFormatUndefined } from \"../annotation.js\";\n// Helper type to get the state definition with middleware states\ntype MergedAgentState<StructuredResponseFormat extends Record<string, any> | ResponseFormatUndefined, TMiddleware extends readonly AgentMiddleware<any, any, any>[]> = (StructuredResponseFormat extends ResponseFormatUndefined ? Omit<BuiltInState, \"jumpTo\"> : Omit<BuiltInState, \"jumpTo\"> & {\n structuredResponse: StructuredResponseFormat;\n}) & InferMiddlewareStates<TMiddleware>;\ntype InvokeStateParameter<TMiddleware extends readonly AgentMiddleware<any, any, any>[]> = (BuiltInState & InferMiddlewareInputStates<TMiddleware>) | Command<any, any, any> | null;\ntype AgentGraph<StructuredResponseFormat extends Record<string, any> | ResponseFormatUndefined = Record<string, any>, ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot, TMiddleware extends readonly AgentMiddleware<any, any, any>[] = []> = CompiledStateGraph<any, any, any, any, MergedAgentState<StructuredResponseFormat, TMiddleware>, ToAnnotationRoot<ContextSchema>[\"spec\"], unknown>;\nexport declare class ReactAgent<StructuredResponseFormat extends Record<string, any> | ResponseFormatUndefined = Record<string, any>, ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot, TMiddleware extends readonly AgentMiddleware<any, any, any>[] = readonly AgentMiddleware<any, any, any>[]> {\n #private;\n options: CreateAgentParams<StructuredResponseFormat, ContextSchema>;\n constructor(options: CreateAgentParams<StructuredResponseFormat, ContextSchema>);\n /**\n * Get the compiled {@link https://docs.langchain.com/oss/javascript/langgraph/use-graph-api | StateGraph}.\n */\n get graph(): AgentGraph<StructuredResponseFormat, ContextSchema, TMiddleware>;\n /**\n * Executes the agent with the given state and returns the final state after all processing.\n *\n * This method runs the agent's entire workflow synchronously, including:\n * - Processing the input messages through any configured middleware\n * - Calling the language model to generate responses\n * - Executing any tool calls made by the model\n * - Running all middleware hooks (beforeModel, afterModel, etc.)\n *\n * @param state - The initial state for the agent execution. Can be:\n * - An object containing `messages` array and any middleware-specific state properties\n * - A Command object for more advanced control flow\n *\n * @param config - Optional runtime configuration including:\n * @param config.context - The context for the agent execution.\n * @param config.configurable - LangGraph configuration options like `thread_id`, `run_id`, etc.\n * @param config.store - The store for the agent execution for persisting state, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/memory#memory-storage | Memory storage}.\n * @param config.signal - An optional {@link https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal | `AbortSignal`} for the agent execution.\n * @param config.recursionLimit - The recursion limit for the agent execution.\n *\n * @returns A Promise that resolves to the final agent state after execution completes.\n * The returned state includes:\n * - a `messages` property containing an array with all messages (input, AI responses, tool calls/results)\n * - a `structuredResponse` property containing the structured response (if configured)\n * - all state values defined in the middleware\n *\n * @example\n * ```typescript\n * const agent = new ReactAgent({\n * llm: myModel,\n * tools: [calculator, webSearch],\n * responseFormat: z.object({\n * weather: z.string(),\n * }),\n * });\n *\n * const result = await agent.invoke({\n * messages: [{ role: \"human\", content: \"What's the weather in Paris?\" }]\n * });\n *\n * console.log(result.structuredResponse.weather); // outputs: \"It's sunny and 75°F.\"\n * ```\n */\n invoke(state: InvokeStateParameter<TMiddleware>, config?: InvokeConfiguration<InferContextInput<ContextSchema> & InferMiddlewareContextInputs<TMiddleware>>): Promise<MergedAgentState<StructuredResponseFormat, TMiddleware>>;\n /**\n * Executes the agent with streaming, returning an async iterable of events as they occur.\n *\n * This method runs the agent's workflow similar to `invoke`, but instead of waiting for\n * completion, it streams events in real-time. This allows you to:\n * - Display intermediate results to users as they're generated\n * - Monitor the agent's progress through each step\n * - Handle tool calls and results as they happen\n * - Update UI with streaming responses from the LLM\n *\n * @param state - The initial state for the agent execution. Can be:\n * - An object containing `messages` array and any middleware-specific state properties\n * - A Command object for more advanced control flow\n *\n * @param config - Optional runtime configuration including:\n * @param config.context - The context for the agent execution.\n * @param config.configurable - LangGraph configuration options like `thread_id`, `run_id`, etc.\n * @param config.store - The store for the agent execution for persisting state, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/memory#memory-storage | Memory storage}.\n * @param config.signal - An optional {@link https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal | `AbortSignal`} for the agent execution.\n * @param config.streamMode - The streaming mode for the agent execution, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/streaming#supported-stream-modes | Supported stream modes}.\n * @param config.recursionLimit - The recursion limit for the agent execution.\n *\n * @returns A Promise that resolves to an IterableReadableStream of events.\n * Events include:\n * - `on_chat_model_start`: When the LLM begins processing\n * - `on_chat_model_stream`: Streaming tokens from the LLM\n * - `on_chat_model_end`: When the LLM completes\n * - `on_tool_start`: When a tool execution begins\n * - `on_tool_end`: When a tool execution completes\n * - `on_chain_start`: When middleware chains begin\n * - `on_chain_end`: When middleware chains complete\n * - And other LangGraph v2 stream events\n *\n * @example\n * ```typescript\n * const agent = new ReactAgent({\n * llm: myModel,\n * tools: [calculator, webSearch]\n * });\n *\n * const stream = await agent.stream({\n * messages: [{ role: \"human\", content: \"What's 2+2 and the weather in NYC?\" }]\n * });\n *\n * for await (const event of stream) {\n * //\n * }\n * ```\n */\n stream(state: InvokeStateParameter<TMiddleware>, config?: StreamConfiguration<InferContextInput<ContextSchema> & InferMiddlewareContextInputs<TMiddleware>>): Promise<IterableReadableStream<any>>;\n /**\n * Visualize the graph as a PNG image.\n * @param params - Parameters for the drawMermaidPng method.\n * @param params.withStyles - Whether to include styles in the graph.\n * @param params.curveStyle - The style of the graph's curves.\n * @param params.nodeColors - The colors of the graph's nodes.\n * @param params.wrapLabelNWords - The maximum number of words to wrap in a node's label.\n * @param params.backgroundColor - The background color of the graph.\n * @returns PNG image as a buffer\n */\n drawMermaidPng(params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }): Promise<Uint8Array<ArrayBuffer>>;\n /**\n * Draw the graph as a Mermaid string.\n * @param params - Parameters for the drawMermaid method.\n * @param params.withStyles - Whether to include styles in the graph.\n * @param params.curveStyle - The style of the graph's curves.\n * @param params.nodeColors - The colors of the graph's nodes.\n * @param params.wrapLabelNWords - The maximum number of words to wrap in a node's label.\n * @param params.backgroundColor - The background color of the graph.\n * @returns Mermaid string\n */\n drawMermaid(params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }): Promise<string>;\n}\nexport {};\n"],"mappings":"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"}
1
+ {"version":3,"file":"ReactAgent.d.ts","names":["InteropZodObject","Command","CompiledStateGraph","GetStateOptions","CheckpointListOptions","IterableReadableStream","RunnableConfig","CreateAgentParams","AgentMiddleware","InferMiddlewareStates","InferMiddlewareInputStates","BuiltInState","InferMiddlewareContextInputs","InferContextInput","InvokeConfiguration","StreamConfiguration","UserInput","AnyAnnotationRoot","ToAnnotationRoot","ResponseFormatUndefined","MergedAgentState","Record","StructuredResponseFormat","Omit","TMiddleware","InvokeStateParameter","AgentGraph","ContextSchema","ReactAgent","Promise","ArrayBuffer","Uint8Array"],"sources":["../../../src/agents/middlewareAgent/ReactAgent.d.ts"],"sourcesContent":["/* eslint-disable no-instanceof/no-instanceof */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { InteropZodObject } from \"@langchain/core/utils/types\";\nimport { Command, CompiledStateGraph, type GetStateOptions } from \"@langchain/langgraph\";\nimport type { CheckpointListOptions } from \"@langchain/langgraph-checkpoint\";\nimport { IterableReadableStream } from \"@langchain/core/utils/stream\";\nimport type { RunnableConfig } from \"@langchain/core/runnables\";\nimport type { CreateAgentParams, AgentMiddleware, InferMiddlewareStates, InferMiddlewareInputStates, BuiltInState, InferMiddlewareContextInputs, InferContextInput, InvokeConfiguration, StreamConfiguration, UserInput } from \"./types.js\";\nimport { type AnyAnnotationRoot, type ToAnnotationRoot, type ResponseFormatUndefined } from \"../annotation.js\";\n// Helper type to get the state definition with middleware states\ntype MergedAgentState<StructuredResponseFormat extends Record<string, any> | ResponseFormatUndefined, TMiddleware extends readonly AgentMiddleware<any, any, any>[]> = (StructuredResponseFormat extends ResponseFormatUndefined ? Omit<BuiltInState, \"jumpTo\"> : Omit<BuiltInState, \"jumpTo\"> & {\n structuredResponse: StructuredResponseFormat;\n}) & InferMiddlewareStates<TMiddleware>;\ntype InvokeStateParameter<TMiddleware extends readonly AgentMiddleware<any, any, any>[]> = (UserInput & InferMiddlewareInputStates<TMiddleware>) | Command<any, any, any> | null;\ntype AgentGraph<StructuredResponseFormat extends Record<string, any> | ResponseFormatUndefined = Record<string, any>, ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot, TMiddleware extends readonly AgentMiddleware<any, any, any>[] = []> = CompiledStateGraph<any, any, any, any, MergedAgentState<StructuredResponseFormat, TMiddleware>, ToAnnotationRoot<ContextSchema>[\"spec\"], unknown>;\nexport declare class ReactAgent<StructuredResponseFormat extends Record<string, any> | ResponseFormatUndefined = Record<string, any>, ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot, TMiddleware extends readonly AgentMiddleware<any, any, any>[] = readonly AgentMiddleware<any, any, any>[]> {\n #private;\n options: CreateAgentParams<StructuredResponseFormat, ContextSchema>;\n constructor(options: CreateAgentParams<StructuredResponseFormat, ContextSchema>);\n /**\n * Get the compiled {@link https://docs.langchain.com/oss/javascript/langgraph/use-graph-api | StateGraph}.\n */\n get graph(): AgentGraph<StructuredResponseFormat, ContextSchema, TMiddleware>;\n /**\n * Executes the agent with the given state and returns the final state after all processing.\n *\n * This method runs the agent's entire workflow synchronously, including:\n * - Processing the input messages through any configured middleware\n * - Calling the language model to generate responses\n * - Executing any tool calls made by the model\n * - Running all middleware hooks (beforeModel, afterModel, etc.)\n *\n * @param state - The initial state for the agent execution. Can be:\n * - An object containing `messages` array and any middleware-specific state properties\n * - A Command object for more advanced control flow\n *\n * @param config - Optional runtime configuration including:\n * @param config.context - The context for the agent execution.\n * @param config.configurable - LangGraph configuration options like `thread_id`, `run_id`, etc.\n * @param config.store - The store for the agent execution for persisting state, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/memory#memory-storage | Memory storage}.\n * @param config.signal - An optional {@link https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal | `AbortSignal`} for the agent execution.\n * @param config.recursionLimit - The recursion limit for the agent execution.\n *\n * @returns A Promise that resolves to the final agent state after execution completes.\n * The returned state includes:\n * - a `messages` property containing an array with all messages (input, AI responses, tool calls/results)\n * - a `structuredResponse` property containing the structured response (if configured)\n * - all state values defined in the middleware\n *\n * @example\n * ```typescript\n * const agent = new ReactAgent({\n * llm: myModel,\n * tools: [calculator, webSearch],\n * responseFormat: z.object({\n * weather: z.string(),\n * }),\n * });\n *\n * const result = await agent.invoke({\n * messages: [{ role: \"human\", content: \"What's the weather in Paris?\" }]\n * });\n *\n * console.log(result.structuredResponse.weather); // outputs: \"It's sunny and 75°F.\"\n * ```\n */\n invoke(state: InvokeStateParameter<TMiddleware>, config?: InvokeConfiguration<InferContextInput<ContextSchema> & InferMiddlewareContextInputs<TMiddleware>>): Promise<MergedAgentState<StructuredResponseFormat, TMiddleware>>;\n /**\n * Executes the agent with streaming, returning an async iterable of state updates as they occur.\n *\n * This method runs the agent's workflow similar to `invoke`, but instead of waiting for\n * completion, it streams high-level state updates in real-time. This allows you to:\n * - Display intermediate results to users as they're generated\n * - Monitor the agent's progress through each step\n * - React to state changes as nodes complete\n *\n * For more granular event-level streaming (like individual LLM tokens), use `streamEvents` instead.\n *\n * @param state - The initial state for the agent execution. Can be:\n * - An object containing `messages` array and any middleware-specific state properties\n * - A Command object for more advanced control flow\n *\n * @param config - Optional runtime configuration including:\n * @param config.context - The context for the agent execution.\n * @param config.configurable - LangGraph configuration options like `thread_id`, `run_id`, etc.\n * @param config.store - The store for the agent execution for persisting state, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/memory#memory-storage | Memory storage}.\n * @param config.signal - An optional {@link https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal | `AbortSignal`} for the agent execution.\n * @param config.streamMode - The streaming mode for the agent execution, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/streaming#supported-stream-modes | Supported stream modes}.\n * @param config.recursionLimit - The recursion limit for the agent execution.\n *\n * @returns A Promise that resolves to an IterableReadableStream of state updates.\n * Each update contains the current state after a node completes.\n *\n * @example\n * ```typescript\n * const agent = new ReactAgent({\n * llm: myModel,\n * tools: [calculator, webSearch]\n * });\n *\n * const stream = await agent.stream({\n * messages: [{ role: \"human\", content: \"What's 2+2 and the weather in NYC?\" }]\n * });\n *\n * for await (const chunk of stream) {\n * console.log(chunk); // State update from each node\n * }\n * ```\n */\n stream(state: InvokeStateParameter<TMiddleware>, config?: StreamConfiguration<InferContextInput<ContextSchema> & InferMiddlewareContextInputs<TMiddleware>>): Promise<IterableReadableStream<any>>;\n /**\n * Executes the agent with low-level event streaming, returning detailed events as they occur.\n *\n * This method provides fine-grained control over streaming, emitting events for every\n * operation during execution. This is useful when you need to:\n * - Stream individual LLM tokens as they're generated\n * - Monitor detailed execution flow with timing information\n * - Handle specific event types (model start/end, tool calls, etc.)\n * - Debug or trace agent behavior at a granular level\n *\n * For simpler state-based streaming, use `stream` instead.\n *\n * @param state - The initial state for the agent execution. Can be:\n * - An object containing `messages` array and any middleware-specific state properties\n * - A Command object for more advanced control flow\n *\n * @param config - Optional runtime configuration including:\n * @param config.context - The context for the agent execution.\n * @param config.configurable - LangGraph configuration options like `thread_id`, `run_id`, etc.\n * @param config.store - The store for the agent execution for persisting state, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/memory#memory-storage | Memory storage}.\n * @param config.signal - An optional {@link https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal | `AbortSignal`} for the agent execution.\n * @param config.recursionLimit - The recursion limit for the agent execution.\n * @param config.streamMode - The streaming mode for the agent execution, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/streaming#supported-stream-modes | Supported stream modes}.\n *\n * @param streamOptions - Additional streaming options (passed to LangGraph's streamEvents).\n *\n * @returns An IterableReadableStream of detailed events including:\n * - `on_chat_model_start`: When the LLM begins processing\n * - `on_chat_model_stream`: Streaming tokens from the LLM\n * - `on_chat_model_end`: When the LLM completes\n * - `on_tool_start`: When a tool execution begins\n * - `on_tool_end`: When a tool execution completes\n * - `on_chain_start`: When middleware chains begin\n * - `on_chain_end`: When middleware chains complete\n * - And other LangGraph v2 stream events\n *\n * @example\n * ```typescript\n * const agent = new ReactAgent({\n * llm: myModel,\n * tools: [calculator, webSearch]\n * });\n *\n * const stream = await agent.streamEvents({\n * messages: [{ role: \"human\", content: \"What's 2+2 and the weather in NYC?\" }]\n * }, {\n * version: \"v2\"\n * });\n *\n * for await (const event of stream) {\n * if (event.event === \"on_chat_model_stream\") {\n * process.stdout.write(event.data.chunk.content); // Stream tokens\n * }\n * }\n * ```\n */\n streamEvents(state: InvokeStateParameter<TMiddleware>, config?: StreamConfiguration<InferContextInput<ContextSchema> & InferMiddlewareContextInputs<TMiddleware>> & {\n version?: \"v1\" | \"v2\";\n }, streamOptions?: any): Promise<IterableReadableStream<any>>;\n /**\n * Visualize the graph as a PNG image.\n * @param params - Parameters for the drawMermaidPng method.\n * @param params.withStyles - Whether to include styles in the graph.\n * @param params.curveStyle - The style of the graph's curves.\n * @param params.nodeColors - The colors of the graph's nodes.\n * @param params.wrapLabelNWords - The maximum number of words to wrap in a node's label.\n * @param params.backgroundColor - The background color of the graph.\n * @returns PNG image as a buffer\n */\n drawMermaidPng(params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }): Promise<Uint8Array<ArrayBuffer>>;\n /**\n * Draw the graph as a Mermaid string.\n * @param params - Parameters for the drawMermaid method.\n * @param params.withStyles - Whether to include styles in the graph.\n * @param params.curveStyle - The style of the graph's curves.\n * @param params.nodeColors - The colors of the graph's nodes.\n * @param params.wrapLabelNWords - The maximum number of words to wrap in a node's label.\n * @param params.backgroundColor - The background color of the graph.\n * @returns Mermaid string\n */\n drawMermaid(params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }): Promise<string>;\n /**\n * The following are internal methods to enable support for LangGraph Platform.\n * They are not part of the createAgent public API.\n *\n * Note: we intentionally return as `never` to avoid type errors due to type inference.\n */\n /**\n * @internal\n */\n getGraphAsync(config?: RunnableConfig): never;\n /**\n * @internal\n */\n getState(config: RunnableConfig, options?: GetStateOptions): never;\n /**\n * @internal\n */\n getStateHistory(config: RunnableConfig, options?: CheckpointListOptions): never;\n /**\n * @internal\n */\n getSubgraphs(namespace?: string, recurse?: boolean): never;\n /**\n * @internal\n */\n getSubgraphAsync(namespace?: string, recurse?: boolean): never;\n}\nexport {};\n"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { isClientTool } from "../utils.js";
2
2
  import { ToolNode } from "../nodes/ToolNode.js";
3
3
  import { createAgentAnnotationConditional } from "./annotation.js";
4
- import { initializeMiddlewareStates, parseJumpToTarget } from "./nodes/utils.js";
5
4
  import { AgentNode } from "./nodes/AgentNode.js";
5
+ import { initializeMiddlewareStates, parseJumpToTarget } from "./nodes/utils.js";
6
6
  import { BeforeModelNode } from "./nodes/BeforeModalNode.js";
7
7
  import { AfterModelNode } from "./nodes/AfterModalNode.js";
8
8
  import { AIMessage, ToolMessage } from "@langchain/core/messages";
@@ -12,6 +12,7 @@ import { Command, END, START, Send, StateGraph } from "@langchain/langgraph";
12
12
  var ReactAgent = class {
13
13
  #graph;
14
14
  #toolBehaviorVersion = "v2";
15
+ #agentNode;
15
16
  constructor(options) {
16
17
  this.options = options;
17
18
  this.#toolBehaviorVersion = options.version ?? this.#toolBehaviorVersion;
@@ -31,6 +32,20 @@ var ReactAgent = class {
31
32
  const beforeModelNodes = [];
32
33
  const afterModelNodes = [];
33
34
  const modifyModelRequestHookMiddleware = [];
35
+ const retryModelRequestHookMiddleware = [];
36
+ this.#agentNode = new AgentNode({
37
+ model: this.options.model,
38
+ systemPrompt: this.options.systemPrompt,
39
+ includeAgentName: this.options.includeAgentName,
40
+ name: this.options.name,
41
+ responseFormat: this.options.responseFormat,
42
+ middleware: this.options.middleware,
43
+ toolClasses,
44
+ shouldReturnDirect,
45
+ signal: this.options.signal,
46
+ modifyModelRequestHookMiddleware,
47
+ retryModelRequestHookMiddleware
48
+ });
34
49
  const middlewareNames = /* @__PURE__ */ new Set();
35
50
  const middleware = this.options.middleware ?? [];
36
51
  for (let i = 0; i < middleware.length; i++) {
@@ -40,7 +55,7 @@ var ReactAgent = class {
40
55
  if (middlewareNames.has(m.name)) throw new Error(`Middleware ${m.name} is defined multiple times`);
41
56
  middlewareNames.add(m.name);
42
57
  if (m.beforeModel) {
43
- beforeModelNode = new BeforeModelNode(m);
58
+ beforeModelNode = new BeforeModelNode(m, { getPrivateState: () => this.#agentNode.getState()._privateState });
44
59
  const name = `${m.name}.before_model`;
45
60
  beforeModelNodes.push({
46
61
  index: i,
@@ -50,7 +65,7 @@ var ReactAgent = class {
50
65
  allNodeWorkflows.addNode(name, beforeModelNode, beforeModelNode.nodeOptions);
51
66
  }
52
67
  if (m.afterModel) {
53
- afterModelNode = new AfterModelNode(m);
68
+ afterModelNode = new AfterModelNode(m, { getPrivateState: () => this.#agentNode.getState()._privateState });
54
69
  const name = `${m.name}.after_model`;
55
70
  afterModelNodes.push({
56
71
  index: i,
@@ -63,26 +78,19 @@ var ReactAgent = class {
63
78
  ...beforeModelNode?.getState(),
64
79
  ...afterModelNode?.getState()
65
80
  })]);
81
+ if (m.retryModelRequest) retryModelRequestHookMiddleware.push([m, () => ({
82
+ ...beforeModelNode?.getState(),
83
+ ...afterModelNode?.getState()
84
+ })]);
66
85
  }
67
86
  /**
68
87
  * Add Nodes
69
88
  */
70
- allNodeWorkflows.addNode("model_request", new AgentNode({
71
- model: this.options.model,
72
- systemPrompt: this.options.systemPrompt,
73
- includeAgentName: this.options.includeAgentName,
74
- name: this.options.name,
75
- responseFormat: this.options.responseFormat,
76
- middleware: this.options.middleware,
77
- toolClasses,
78
- shouldReturnDirect,
79
- signal: this.options.signal,
80
- modifyModelRequestHookMiddleware
81
- }), AgentNode.nodeOptions);
89
+ allNodeWorkflows.addNode("model_request", this.#agentNode, AgentNode.nodeOptions);
82
90
  /**
83
91
  * add single tool node for all tools
84
92
  */
85
- if (toolClasses.length > 0) {
93
+ if (toolClasses.filter(isClientTool).length > 0) {
86
94
  const toolNode = new ToolNode(toolClasses.filter(isClientTool), { signal: this.options.signal });
87
95
  allNodeWorkflows.addNode("tools", toolNode);
88
96
  }
@@ -132,7 +140,7 @@ var ReactAgent = class {
132
140
  /**
133
141
  * add edges for tools node
134
142
  */
135
- if (toolClasses.length > 0) {
143
+ if (toolClasses.filter(isClientTool).length > 0) {
136
144
  let toolReturnTarget;
137
145
  if (beforeModelNodes.length > 0) toolReturnTarget = beforeModelNodes[0].name;
138
146
  else toolReturnTarget = "model_request";
@@ -321,6 +329,24 @@ var ReactAgent = class {
321
329
  return updatedState;
322
330
  }
323
331
  /**
332
+ * Populate the private state of the agent node from the previous state.
333
+ */
334
+ async #populatePrivateState(config) {
335
+ /**
336
+ * not needed if thread_id is not provided
337
+ */
338
+ if (!config?.configurable?.thread_id) return;
339
+ const prevState = await this.#graph.getState(config);
340
+ /**
341
+ * not need if state is empty
342
+ */
343
+ if (!prevState.values._privateState) return;
344
+ this.#agentNode.setState({
345
+ structuredResponse: void 0,
346
+ _privateState: prevState.values._privateState
347
+ });
348
+ }
349
+ /**
324
350
  * Executes the agent with the given state and returns the final state after all processing.
325
351
  *
326
352
  * This method runs the agent's entire workflow synchronously, including:
@@ -365,17 +391,19 @@ var ReactAgent = class {
365
391
  */
366
392
  async invoke(state, config) {
367
393
  const initializedState = await this.#initializeMiddlewareStates(state);
394
+ await this.#populatePrivateState(config);
368
395
  return this.#graph.invoke(initializedState, config);
369
396
  }
370
397
  /**
371
- * Executes the agent with streaming, returning an async iterable of events as they occur.
398
+ * Executes the agent with streaming, returning an async iterable of state updates as they occur.
372
399
  *
373
400
  * This method runs the agent's workflow similar to `invoke`, but instead of waiting for
374
- * completion, it streams events in real-time. This allows you to:
401
+ * completion, it streams high-level state updates in real-time. This allows you to:
375
402
  * - Display intermediate results to users as they're generated
376
403
  * - Monitor the agent's progress through each step
377
- * - Handle tool calls and results as they happen
378
- * - Update UI with streaming responses from the LLM
404
+ * - React to state changes as nodes complete
405
+ *
406
+ * For more granular event-level streaming (like individual LLM tokens), use `streamEvents` instead.
379
407
  *
380
408
  * @param state - The initial state for the agent execution. Can be:
381
409
  * - An object containing `messages` array and any middleware-specific state properties
@@ -389,8 +417,56 @@ var ReactAgent = class {
389
417
  * @param config.streamMode - The streaming mode for the agent execution, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/streaming#supported-stream-modes | Supported stream modes}.
390
418
  * @param config.recursionLimit - The recursion limit for the agent execution.
391
419
  *
392
- * @returns A Promise that resolves to an IterableReadableStream of events.
393
- * Events include:
420
+ * @returns A Promise that resolves to an IterableReadableStream of state updates.
421
+ * Each update contains the current state after a node completes.
422
+ *
423
+ * @example
424
+ * ```typescript
425
+ * const agent = new ReactAgent({
426
+ * llm: myModel,
427
+ * tools: [calculator, webSearch]
428
+ * });
429
+ *
430
+ * const stream = await agent.stream({
431
+ * messages: [{ role: "human", content: "What's 2+2 and the weather in NYC?" }]
432
+ * });
433
+ *
434
+ * for await (const chunk of stream) {
435
+ * console.log(chunk); // State update from each node
436
+ * }
437
+ * ```
438
+ */
439
+ async stream(state, config) {
440
+ const initializedState = await this.#initializeMiddlewareStates(state);
441
+ return this.#graph.stream(initializedState, config);
442
+ }
443
+ /**
444
+ * Executes the agent with low-level event streaming, returning detailed events as they occur.
445
+ *
446
+ * This method provides fine-grained control over streaming, emitting events for every
447
+ * operation during execution. This is useful when you need to:
448
+ * - Stream individual LLM tokens as they're generated
449
+ * - Monitor detailed execution flow with timing information
450
+ * - Handle specific event types (model start/end, tool calls, etc.)
451
+ * - Debug or trace agent behavior at a granular level
452
+ *
453
+ * For simpler state-based streaming, use `stream` instead.
454
+ *
455
+ * @param state - The initial state for the agent execution. Can be:
456
+ * - An object containing `messages` array and any middleware-specific state properties
457
+ * - A Command object for more advanced control flow
458
+ *
459
+ * @param config - Optional runtime configuration including:
460
+ * @param config.context - The context for the agent execution.
461
+ * @param config.configurable - LangGraph configuration options like `thread_id`, `run_id`, etc.
462
+ * @param config.store - The store for the agent execution for persisting state, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/memory#memory-storage | Memory storage}.
463
+ * @param config.signal - An optional {@link https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal | `AbortSignal`} for the agent execution.
464
+ * @param config.recursionLimit - The recursion limit for the agent execution.
465
+ * @param config.streamMode - The streaming mode for the agent execution, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/streaming#supported-stream-modes | Supported stream modes}.
466
+ *
467
+ * @param streamOptions - Additional streaming options (passed to LangGraph's streamEvents).
468
+ *
469
+ * @returns An IterableReadableStream of detailed events including:
394
470
  * - `on_chat_model_start`: When the LLM begins processing
395
471
  * - `on_chat_model_stream`: Streaming tokens from the LLM
396
472
  * - `on_chat_model_end`: When the LLM completes
@@ -407,21 +483,26 @@ var ReactAgent = class {
407
483
  * tools: [calculator, webSearch]
408
484
  * });
409
485
  *
410
- * const stream = await agent.stream({
486
+ * const stream = await agent.streamEvents({
411
487
  * messages: [{ role: "human", content: "What's 2+2 and the weather in NYC?" }]
488
+ * }, {
489
+ * version: "v2"
412
490
  * });
413
491
  *
414
492
  * for await (const event of stream) {
415
- * //
493
+ * if (event.event === "on_chat_model_stream") {
494
+ * process.stdout.write(event.data.chunk.content); // Stream tokens
495
+ * }
416
496
  * }
417
497
  * ```
418
498
  */
419
- async stream(state, config) {
499
+ async streamEvents(state, config, streamOptions) {
420
500
  const initializedState = await this.#initializeMiddlewareStates(state);
501
+ await this.#populatePrivateState(config);
421
502
  return this.#graph.streamEvents(initializedState, {
422
503
  ...config,
423
- version: "v2"
424
- });
504
+ version: config?.version ?? "v2"
505
+ }, streamOptions);
425
506
  }
426
507
  /**
427
508
  * Visualize the graph as a PNG image.
@@ -454,6 +535,42 @@ var ReactAgent = class {
454
535
  const representation = await this.#graph.getGraphAsync();
455
536
  return representation.drawMermaid(params);
456
537
  }
538
+ /**
539
+ * The following are internal methods to enable support for LangGraph Platform.
540
+ * They are not part of the createAgent public API.
541
+ *
542
+ * Note: we intentionally return as `never` to avoid type errors due to type inference.
543
+ */
544
+ /**
545
+ * @internal
546
+ */
547
+ getGraphAsync(config) {
548
+ return this.#graph.getGraphAsync(config);
549
+ }
550
+ /**
551
+ * @internal
552
+ */
553
+ getState(config, options) {
554
+ return this.#graph.getState(config, options);
555
+ }
556
+ /**
557
+ * @internal
558
+ */
559
+ getStateHistory(config, options) {
560
+ return this.#graph.getStateHistory(config, options);
561
+ }
562
+ /**
563
+ * @internal
564
+ */
565
+ getSubgraphs(namespace, recurse) {
566
+ return this.#graph.getSubgraphs(namespace, recurse);
567
+ }
568
+ /**
569
+ * @internal
570
+ */
571
+ getSubgraphAsync(namespace, recurse) {
572
+ return this.#graph.getSubgraphsAsync(namespace, recurse);
573
+ }
457
574
  };
458
575
 
459
576
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"ReactAgent.js","names":["options: CreateAgentParams<StructuredResponseFormat, ContextSchema>","#toolBehaviorVersion","beforeModelNodes: {\n index: number;\n name: string;\n allowed?: string[];\n }[]","afterModelNodes: {\n index: number;\n name: string;\n allowed?: string[];\n }[]","modifyModelRequestHookMiddleware: [\n AgentMiddleware,\n /**\n * ToDo: better type to get the state of middleware\n */\n () => any\n ][]","beforeModelNode: BeforeModelNode | undefined","afterModelNode: AfterModelNode | undefined","#createBeforeModelRouter","#getModelPaths","#createModelRouter","#createAfterModelSequenceRouter","#createAfterModelRouter","toolReturnTarget: string","#createToolsRouter","#graph","toolClasses: (ClientTool | ServerTool)[]","includeModelRequest: boolean","paths: (\"tools\" | \"model_request\" | typeof END)[]","shouldReturnDirect: Set<string>","state: any","state: BuiltInState","allowJump: boolean","state: Omit<BuiltInState, \"jumpTo\"> & { jumpTo?: JumpTo }","allowed: string[]","nextDefault: string","#initializeMiddlewareStates","state: InvokeStateParameter<TMiddleware>","config?: InvokeConfiguration<\n InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n >","config?: StreamConfiguration<\n InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n >","params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }"],"sources":["../../../src/agents/middlewareAgent/ReactAgent.ts"],"sourcesContent":["/* eslint-disable no-instanceof/no-instanceof */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { InteropZodObject } from \"@langchain/core/utils/types\";\n\nimport {\n AnnotationRoot,\n StateGraph,\n END,\n START,\n Send,\n Command,\n CompiledStateGraph,\n} from \"@langchain/langgraph\";\nimport { ToolMessage, AIMessage } from \"@langchain/core/messages\";\nimport { IterableReadableStream } from \"@langchain/core/utils/stream\";\n\nimport { createAgentAnnotationConditional } from \"./annotation.js\";\nimport { isClientTool } from \"../utils.js\";\n\nimport { AgentNode } from \"./nodes/AgentNode.js\";\nimport { ToolNode } from \"../nodes/ToolNode.js\";\nimport { BeforeModelNode } from \"./nodes/BeforeModalNode.js\";\nimport { AfterModelNode } from \"./nodes/AfterModalNode.js\";\nimport {\n initializeMiddlewareStates,\n parseJumpToTarget,\n} from \"./nodes/utils.js\";\n\nimport type { ClientTool, ServerTool, WithStateGraphNodes } from \"../types.js\";\n\nimport type {\n CreateAgentParams,\n AgentMiddleware,\n InferMiddlewareStates,\n InferMiddlewareInputStates,\n BuiltInState,\n InferMiddlewareContextInputs,\n InferContextInput,\n InvokeConfiguration,\n StreamConfiguration,\n JumpTo,\n} from \"./types.js\";\n\nimport {\n type AnyAnnotationRoot,\n type ToAnnotationRoot,\n type ResponseFormatUndefined,\n} from \"../annotation.js\";\n\n// Helper type to get the state definition with middleware states\ntype MergedAgentState<\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined,\n TMiddleware extends readonly AgentMiddleware<any, any, any>[]\n> = (StructuredResponseFormat extends ResponseFormatUndefined\n ? Omit<BuiltInState, \"jumpTo\">\n : Omit<BuiltInState, \"jumpTo\"> & {\n structuredResponse: StructuredResponseFormat;\n }) &\n InferMiddlewareStates<TMiddleware>;\n\ntype InvokeStateParameter<\n TMiddleware extends readonly AgentMiddleware<any, any, any>[]\n> =\n | (BuiltInState & InferMiddlewareInputStates<TMiddleware>)\n | Command<any, any, any>\n | null;\n\ntype AgentGraph<\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends\n | AnyAnnotationRoot\n | InteropZodObject = AnyAnnotationRoot,\n TMiddleware extends readonly AgentMiddleware<any, any, any>[] = []\n> = CompiledStateGraph<\n any,\n any,\n any,\n any,\n MergedAgentState<StructuredResponseFormat, TMiddleware>,\n ToAnnotationRoot<ContextSchema>[\"spec\"],\n unknown\n>;\n\nexport class ReactAgent<\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends\n | AnyAnnotationRoot\n | InteropZodObject = AnyAnnotationRoot,\n TMiddleware extends readonly AgentMiddleware<\n any,\n any,\n any\n >[] = readonly AgentMiddleware<any, any, any>[]\n> {\n #graph: AgentGraph<StructuredResponseFormat, ContextSchema, TMiddleware>;\n\n #toolBehaviorVersion: \"v1\" | \"v2\" = \"v2\";\n\n constructor(\n public options: CreateAgentParams<StructuredResponseFormat, ContextSchema>\n ) {\n this.#toolBehaviorVersion = options.version ?? this.#toolBehaviorVersion;\n\n /**\n * define complete list of tools based on options and middleware\n */\n const middlewareTools = (this.options.middleware\n ?.filter((m) => m.tools)\n .flatMap((m) => m.tools) ?? []) as (ClientTool | ServerTool)[];\n const toolClasses = [\n ...((Array.isArray(options.tools)\n ? options.tools\n : options.tools?.tools) ?? []),\n ...middlewareTools,\n ];\n\n /**\n * If any of the tools are configured to return_directly after running,\n * our graph needs to check if these were called\n */\n const shouldReturnDirect = new Set(\n toolClasses\n .filter(isClientTool)\n .filter((tool) => \"returnDirect\" in tool && tool.returnDirect)\n .map((tool) => tool.name)\n );\n\n // Create a schema that merges agent base schema with middleware state schemas\n const schema = createAgentAnnotationConditional<\n StructuredResponseFormat,\n TMiddleware\n >(\n this.options.responseFormat !== undefined,\n this.options.middleware as TMiddleware\n );\n\n const workflow = new StateGraph(\n schema as AnnotationRoot<any>,\n this.options.contextSchema\n );\n\n const allNodeWorkflows = workflow as WithStateGraphNodes<\n \"tools\" | \"model_request\" | string,\n typeof workflow\n >;\n\n // Generate node names for middleware nodes that have hooks\n const beforeModelNodes: {\n index: number;\n name: string;\n allowed?: string[];\n }[] = [];\n const afterModelNodes: {\n index: number;\n name: string;\n allowed?: string[];\n }[] = [];\n const modifyModelRequestHookMiddleware: [\n AgentMiddleware,\n /**\n * ToDo: better type to get the state of middleware\n */\n () => any\n ][] = [];\n\n const middlewareNames = new Set<string>();\n const middleware = this.options.middleware ?? [];\n for (let i = 0; i < middleware.length; i++) {\n let beforeModelNode: BeforeModelNode | undefined;\n let afterModelNode: AfterModelNode | undefined;\n const m = middleware[i];\n if (middlewareNames.has(m.name)) {\n throw new Error(`Middleware ${m.name} is defined multiple times`);\n }\n\n middlewareNames.add(m.name);\n if (m.beforeModel) {\n beforeModelNode = new BeforeModelNode(m);\n const name = `${m.name}.before_model`;\n beforeModelNodes.push({\n index: i,\n name,\n allowed: m.beforeModelJumpTo,\n });\n allNodeWorkflows.addNode(\n name,\n beforeModelNode,\n beforeModelNode.nodeOptions\n );\n }\n if (m.afterModel) {\n afterModelNode = new AfterModelNode(m);\n const name = `${m.name}.after_model`;\n afterModelNodes.push({\n index: i,\n name,\n allowed: m.afterModelJumpTo,\n });\n allNodeWorkflows.addNode(\n name,\n afterModelNode,\n afterModelNode.nodeOptions\n );\n }\n\n if (m.modifyModelRequest) {\n modifyModelRequestHookMiddleware.push([\n m,\n () => ({\n ...beforeModelNode?.getState(),\n ...afterModelNode?.getState(),\n }),\n ]);\n }\n }\n\n /**\n * Add Nodes\n */\n allNodeWorkflows.addNode(\n \"model_request\",\n new AgentNode({\n model: this.options.model,\n systemPrompt: this.options.systemPrompt,\n includeAgentName: this.options.includeAgentName,\n name: this.options.name,\n responseFormat: this.options.responseFormat,\n middleware: this.options.middleware,\n toolClasses,\n shouldReturnDirect,\n signal: this.options.signal,\n modifyModelRequestHookMiddleware,\n }),\n AgentNode.nodeOptions\n );\n\n /**\n * add single tool node for all tools\n */\n if (toolClasses.length > 0) {\n const toolNode = new ToolNode(toolClasses.filter(isClientTool), {\n signal: this.options.signal,\n });\n allNodeWorkflows.addNode(\"tools\", toolNode);\n }\n\n /**\n * Add Edges\n */\n // Determine starting point based on what nodes exist\n if (beforeModelNodes.length > 0) {\n // If we have beforeModel nodes, start with the first one\n allNodeWorkflows.addEdge(START, beforeModelNodes[0].name);\n } else {\n // If no beforeModel nodes, go directly to agent\n allNodeWorkflows.addEdge(START, \"model_request\");\n }\n\n // Connect beforeModel nodes; add conditional routing ONLY if allowed jumps are specified\n for (let i = 0; i < beforeModelNodes.length; i++) {\n const node = beforeModelNodes[i];\n const current = node.name;\n const isLast = i === beforeModelNodes.length - 1;\n const nextDefault = isLast\n ? \"model_request\"\n : beforeModelNodes[i + 1].name;\n\n if (node.allowed && node.allowed.length > 0) {\n const hasTools = toolClasses.filter(isClientTool).length > 0;\n const allowedMapped = node.allowed\n .map((t) => parseJumpToTarget(t))\n .filter((dest) => dest !== \"tools\" || hasTools);\n const destinations = Array.from(\n new Set([nextDefault, ...allowedMapped])\n ) as (\"tools\" | \"model_request\" | typeof END)[];\n\n allNodeWorkflows.addConditionalEdges(\n current,\n this.#createBeforeModelRouter(\n toolClasses.filter(isClientTool),\n nextDefault\n ),\n destinations\n );\n } else {\n allNodeWorkflows.addEdge(current, nextDefault);\n }\n }\n\n // Connect agent to last afterModel node (for reverse order execution)\n const lastAfterModelNode = afterModelNodes.at(-1);\n if (afterModelNodes.length > 0 && lastAfterModelNode) {\n allNodeWorkflows.addEdge(\"model_request\", lastAfterModelNode.name);\n } else {\n // If no afterModel nodes, connect model_request directly to model paths\n const modelPaths = this.#getModelPaths(toolClasses.filter(isClientTool));\n if (modelPaths.length === 1) {\n allNodeWorkflows.addEdge(\"model_request\", modelPaths[0]);\n } else {\n allNodeWorkflows.addConditionalEdges(\n \"model_request\",\n this.#createModelRouter(),\n modelPaths\n );\n }\n }\n\n // Connect afterModel nodes in reverse sequence; add conditional routing ONLY if allowed jumps are specified per node\n for (let i = afterModelNodes.length - 1; i > 0; i--) {\n const node = afterModelNodes[i];\n const current = node.name;\n const nextDefault = afterModelNodes[i - 1].name;\n\n if (node.allowed && node.allowed.length > 0) {\n const hasTools = toolClasses.filter(isClientTool).length > 0;\n const allowedMapped = node.allowed\n .map((t) => parseJumpToTarget(t))\n .filter((dest) => dest !== \"tools\" || hasTools);\n const destinations = Array.from(\n new Set([nextDefault, ...allowedMapped])\n ) as (\"tools\" | \"model_request\" | typeof END)[];\n\n allNodeWorkflows.addConditionalEdges(\n current,\n this.#createAfterModelSequenceRouter(\n toolClasses.filter(isClientTool),\n node.allowed,\n nextDefault\n ),\n destinations\n );\n } else {\n allNodeWorkflows.addEdge(current, nextDefault);\n }\n }\n\n // Connect first afterModel node (last to execute) to model paths with jumpTo support\n if (afterModelNodes.length > 0) {\n const firstAfterModel = afterModelNodes[0];\n const firstAfterModelNode = firstAfterModel.name;\n const modelPaths = this.#getModelPaths(\n toolClasses.filter(isClientTool),\n true\n ).filter(\n (p) => p !== \"tools\" || toolClasses.filter(isClientTool).length > 0\n );\n\n const allowJump = Boolean(\n firstAfterModel.allowed && firstAfterModel.allowed.length > 0\n );\n\n const destinations = modelPaths;\n\n allNodeWorkflows.addConditionalEdges(\n firstAfterModelNode,\n this.#createAfterModelRouter(\n toolClasses.filter(isClientTool),\n allowJump\n ),\n destinations\n );\n }\n\n /**\n * add edges for tools node\n */\n if (toolClasses.length > 0) {\n // Tools should return to first beforeModel node or agent\n let toolReturnTarget: string;\n if (beforeModelNodes.length > 0) {\n toolReturnTarget = beforeModelNodes[0].name;\n } else {\n toolReturnTarget = \"model_request\";\n }\n\n if (shouldReturnDirect.size > 0) {\n allNodeWorkflows.addConditionalEdges(\n \"tools\",\n this.#createToolsRouter(shouldReturnDirect),\n [toolReturnTarget, END]\n );\n } else {\n allNodeWorkflows.addEdge(\"tools\", toolReturnTarget);\n }\n }\n\n /**\n * compile the graph\n */\n this.#graph = allNodeWorkflows.compile({\n checkpointer: this.options.checkpointer ?? this.options.checkpointSaver,\n store: this.options.store,\n name: this.options.name,\n description: this.options.description,\n }) as AgentGraph<StructuredResponseFormat, ContextSchema, TMiddleware>;\n }\n\n /**\n * Get the compiled {@link https://docs.langchain.com/oss/javascript/langgraph/use-graph-api | StateGraph}.\n */\n get graph(): AgentGraph<\n StructuredResponseFormat,\n ContextSchema,\n TMiddleware\n > {\n return this.#graph;\n }\n\n /**\n * Get possible edge destinations from model node.\n * @param toolClasses names of tools to call\n * @param includeModelRequest whether to include \"model_request\" as a valid path (for jumpTo routing)\n * @returns list of possible edge destinations\n */\n #getModelPaths(\n toolClasses: (ClientTool | ServerTool)[],\n includeModelRequest: boolean = false\n ): (\"tools\" | \"model_request\" | typeof END)[] {\n const paths: (\"tools\" | \"model_request\" | typeof END)[] = [];\n if (toolClasses.length > 0) {\n paths.push(\"tools\");\n }\n\n if (includeModelRequest) {\n paths.push(\"model_request\");\n }\n\n paths.push(END);\n\n return paths;\n }\n\n /**\n * Create routing function for tools node conditional edges.\n */\n #createToolsRouter(shouldReturnDirect: Set<string>) {\n /**\n * ToDo: fix type\n */\n return (state: any) => {\n const messages = state.messages;\n const lastMessage = messages[messages.length - 1];\n\n // Check if we just executed a returnDirect tool\n if (\n ToolMessage.isInstance(lastMessage) &&\n lastMessage.name &&\n shouldReturnDirect.has(lastMessage.name)\n ) {\n // If we have a response format, route to agent to generate structured response\n // Otherwise, return directly\n return this.options.responseFormat ? \"model_request\" : END;\n }\n\n // For non-returnDirect tools, always route back to agent\n return \"model_request\";\n };\n }\n\n /**\n * Create routing function for model node conditional edges.\n */\n #createModelRouter() {\n /**\n * determine if the agent should continue or not\n */\n return (state: BuiltInState) => {\n const messages = state.messages;\n const lastMessage = messages.at(-1);\n\n if (\n !AIMessage.isInstance(lastMessage) ||\n !lastMessage.tool_calls ||\n lastMessage.tool_calls.length === 0\n ) {\n return END;\n }\n\n // Check if all tool calls are for structured response extraction\n const hasOnlyStructuredResponseCalls = lastMessage.tool_calls.every(\n (toolCall) => toolCall.name.startsWith(\"extract-\")\n );\n\n if (hasOnlyStructuredResponseCalls) {\n // If all tool calls are for structured response extraction, go to END\n // The AgentNode will handle these internally and return the structured response\n return END;\n }\n\n /**\n * The tool node processes a single message.\n */\n if (this.#toolBehaviorVersion === \"v1\") {\n return \"tools\";\n }\n\n /**\n * Route to tools node (filter out any structured response tool calls)\n */\n const regularToolCalls = lastMessage.tool_calls.filter(\n (toolCall) => !toolCall.name.startsWith(\"extract-\")\n );\n\n if (regularToolCalls.length === 0) {\n return END;\n }\n\n return regularToolCalls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n };\n }\n\n /**\n * Create routing function for jumpTo functionality after afterModel hooks.\n *\n * This router checks if the `jumpTo` property is set in the state after afterModel middleware\n * execution. If set, it routes to the specified target (\"model_request\" or \"tools\").\n * If not set, it falls back to the normal model routing logic for afterModel context.\n *\n * The jumpTo property is automatically cleared after use to prevent infinite loops.\n *\n * @param toolClasses - Available tool classes for validation\n * @returns Router function that handles jumpTo logic and normal routing\n */\n #createAfterModelRouter(\n toolClasses: (ClientTool | ServerTool)[],\n allowJump: boolean\n ) {\n const hasStructuredResponse = Boolean(this.options.responseFormat);\n\n return (state: Omit<BuiltInState, \"jumpTo\"> & { jumpTo?: JumpTo }) => {\n // First, check if we just processed a structured response\n // If so, ignore any existing jumpTo and go to END\n const messages = state.messages;\n const lastMessage = messages.at(-1);\n if (\n AIMessage.isInstance(lastMessage) &&\n (!lastMessage.tool_calls || lastMessage.tool_calls.length === 0)\n ) {\n return END;\n }\n\n // Check if jumpTo is set in the state and allowed\n if (allowJump && state.jumpTo) {\n if (state.jumpTo === END) {\n return END;\n }\n if (state.jumpTo === \"tools\") {\n // If trying to jump to tools but no tools are available, go to END\n if (toolClasses.length === 0) {\n return END;\n }\n return new Send(\"tools\", { ...state, jumpTo: undefined });\n }\n // destination === \"model_request\"\n return new Send(\"model_request\", { ...state, jumpTo: undefined });\n }\n\n // check if there are pending tool calls\n const toolMessages = messages.filter(ToolMessage.isInstance);\n const lastAiMessage = messages.filter(AIMessage.isInstance).at(-1);\n const pendingToolCalls = lastAiMessage?.tool_calls?.filter(\n (call) => !toolMessages.some((m) => m.tool_call_id === call.id)\n );\n if (pendingToolCalls && pendingToolCalls.length > 0) {\n return pendingToolCalls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n }\n\n // if we exhausted all tool calls, but still have no structured response tool calls,\n // go back to model_request\n const hasStructuredResponseCalls = lastAiMessage?.tool_calls?.some(\n (toolCall) => toolCall.name.startsWith(\"extract-\")\n );\n\n if (\n pendingToolCalls &&\n pendingToolCalls.length === 0 &&\n !hasStructuredResponseCalls &&\n hasStructuredResponse\n ) {\n return \"model_request\";\n }\n\n if (\n !AIMessage.isInstance(lastMessage) ||\n !lastMessage.tool_calls ||\n lastMessage.tool_calls.length === 0\n ) {\n return END;\n }\n\n // Check if all tool calls are for structured response extraction\n const hasOnlyStructuredResponseCalls = lastMessage.tool_calls.every(\n (toolCall) => toolCall.name.startsWith(\"extract-\")\n );\n\n // Check if there are any regular tool calls (non-structured response)\n const hasRegularToolCalls = lastMessage.tool_calls.some(\n (toolCall) => !toolCall.name.startsWith(\"extract-\")\n );\n\n if (hasOnlyStructuredResponseCalls || !hasRegularToolCalls) {\n return END;\n }\n\n /**\n * For routing from afterModel nodes, always use simple string paths\n * The Send API is handled at the model_request node level\n */\n return \"tools\";\n };\n }\n\n /**\n * Router for afterModel sequence nodes (connecting later middlewares to earlier ones),\n * honoring allowed jump targets and defaulting to the next node.\n */\n #createAfterModelSequenceRouter(\n toolClasses: (ClientTool | ServerTool)[],\n allowed: string[],\n nextDefault: string\n ) {\n const allowedSet = new Set(allowed.map((t) => parseJumpToTarget(t)));\n return (state: BuiltInState) => {\n if (state.jumpTo) {\n const dest = parseJumpToTarget(state.jumpTo);\n if (dest === END && allowedSet.has(END)) {\n return END;\n }\n if (dest === \"tools\" && allowedSet.has(\"tools\")) {\n if (toolClasses.length === 0) return END;\n return new Send(\"tools\", { ...state, jumpTo: undefined });\n }\n if (dest === \"model_request\" && allowedSet.has(\"model_request\")) {\n return new Send(\"model_request\", { ...state, jumpTo: undefined });\n }\n }\n return nextDefault as any;\n };\n }\n\n /**\n * Create routing function for jumpTo functionality after beforeModel hooks.\n * Falls back to the default next node if no jumpTo is present.\n */\n #createBeforeModelRouter(\n toolClasses: (ClientTool | ServerTool)[],\n nextDefault: string\n ) {\n return (state: BuiltInState) => {\n if (!state.jumpTo) {\n return nextDefault;\n }\n const destination = parseJumpToTarget(state.jumpTo);\n if (destination === END) {\n return END;\n }\n if (destination === \"tools\") {\n if (toolClasses.length === 0) {\n return END;\n }\n return new Send(\"tools\", { ...state, jumpTo: undefined });\n }\n // destination === \"model_request\"\n return new Send(\"model_request\", { ...state, jumpTo: undefined });\n };\n }\n\n /**\n * Initialize middleware states if not already present in the input state.\n */\n async #initializeMiddlewareStates(\n state: InvokeStateParameter<TMiddleware>\n ): Promise<InvokeStateParameter<TMiddleware>> {\n if (\n !this.options.middleware ||\n this.options.middleware.length === 0 ||\n state instanceof Command ||\n !state\n ) {\n return state;\n }\n\n const defaultStates = await initializeMiddlewareStates(\n this.options.middleware,\n state\n );\n const updatedState = { ...state } as InvokeStateParameter<TMiddleware>;\n if (!updatedState) {\n return updatedState;\n }\n\n // Only add defaults for keys that don't exist in current state\n for (const [key, value] of Object.entries(defaultStates)) {\n if (!(key in updatedState)) {\n updatedState[key as keyof typeof updatedState] = value;\n }\n }\n\n return updatedState;\n }\n\n /**\n * Executes the agent with the given state and returns the final state after all processing.\n *\n * This method runs the agent's entire workflow synchronously, including:\n * - Processing the input messages through any configured middleware\n * - Calling the language model to generate responses\n * - Executing any tool calls made by the model\n * - Running all middleware hooks (beforeModel, afterModel, etc.)\n *\n * @param state - The initial state for the agent execution. Can be:\n * - An object containing `messages` array and any middleware-specific state properties\n * - A Command object for more advanced control flow\n *\n * @param config - Optional runtime configuration including:\n * @param config.context - The context for the agent execution.\n * @param config.configurable - LangGraph configuration options like `thread_id`, `run_id`, etc.\n * @param config.store - The store for the agent execution for persisting state, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/memory#memory-storage | Memory storage}.\n * @param config.signal - An optional {@link https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal | `AbortSignal`} for the agent execution.\n * @param config.recursionLimit - The recursion limit for the agent execution.\n *\n * @returns A Promise that resolves to the final agent state after execution completes.\n * The returned state includes:\n * - a `messages` property containing an array with all messages (input, AI responses, tool calls/results)\n * - a `structuredResponse` property containing the structured response (if configured)\n * - all state values defined in the middleware\n *\n * @example\n * ```typescript\n * const agent = new ReactAgent({\n * llm: myModel,\n * tools: [calculator, webSearch],\n * responseFormat: z.object({\n * weather: z.string(),\n * }),\n * });\n *\n * const result = await agent.invoke({\n * messages: [{ role: \"human\", content: \"What's the weather in Paris?\" }]\n * });\n *\n * console.log(result.structuredResponse.weather); // outputs: \"It's sunny and 75°F.\"\n * ```\n */\n async invoke(\n state: InvokeStateParameter<TMiddleware>,\n config?: InvokeConfiguration<\n InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n >\n ) {\n type FullState = MergedAgentState<StructuredResponseFormat, TMiddleware>;\n const initializedState = await this.#initializeMiddlewareStates(state);\n return this.#graph.invoke(\n initializedState,\n config as unknown as InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n ) as Promise<FullState>;\n }\n\n /**\n * Executes the agent with streaming, returning an async iterable of events as they occur.\n *\n * This method runs the agent's workflow similar to `invoke`, but instead of waiting for\n * completion, it streams events in real-time. This allows you to:\n * - Display intermediate results to users as they're generated\n * - Monitor the agent's progress through each step\n * - Handle tool calls and results as they happen\n * - Update UI with streaming responses from the LLM\n *\n * @param state - The initial state for the agent execution. Can be:\n * - An object containing `messages` array and any middleware-specific state properties\n * - A Command object for more advanced control flow\n *\n * @param config - Optional runtime configuration including:\n * @param config.context - The context for the agent execution.\n * @param config.configurable - LangGraph configuration options like `thread_id`, `run_id`, etc.\n * @param config.store - The store for the agent execution for persisting state, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/memory#memory-storage | Memory storage}.\n * @param config.signal - An optional {@link https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal | `AbortSignal`} for the agent execution.\n * @param config.streamMode - The streaming mode for the agent execution, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/streaming#supported-stream-modes | Supported stream modes}.\n * @param config.recursionLimit - The recursion limit for the agent execution.\n *\n * @returns A Promise that resolves to an IterableReadableStream of events.\n * Events include:\n * - `on_chat_model_start`: When the LLM begins processing\n * - `on_chat_model_stream`: Streaming tokens from the LLM\n * - `on_chat_model_end`: When the LLM completes\n * - `on_tool_start`: When a tool execution begins\n * - `on_tool_end`: When a tool execution completes\n * - `on_chain_start`: When middleware chains begin\n * - `on_chain_end`: When middleware chains complete\n * - And other LangGraph v2 stream events\n *\n * @example\n * ```typescript\n * const agent = new ReactAgent({\n * llm: myModel,\n * tools: [calculator, webSearch]\n * });\n *\n * const stream = await agent.stream({\n * messages: [{ role: \"human\", content: \"What's 2+2 and the weather in NYC?\" }]\n * });\n *\n * for await (const event of stream) {\n * //\n * }\n * ```\n */\n async stream(\n state: InvokeStateParameter<TMiddleware>,\n config?: StreamConfiguration<\n InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n >\n ): Promise<IterableReadableStream<any>> {\n const initializedState = await this.#initializeMiddlewareStates(state);\n return this.#graph.streamEvents(initializedState, {\n ...config,\n version: \"v2\",\n } as any) as IterableReadableStream<any>;\n }\n\n /**\n * Visualize the graph as a PNG image.\n * @param params - Parameters for the drawMermaidPng method.\n * @param params.withStyles - Whether to include styles in the graph.\n * @param params.curveStyle - The style of the graph's curves.\n * @param params.nodeColors - The colors of the graph's nodes.\n * @param params.wrapLabelNWords - The maximum number of words to wrap in a node's label.\n * @param params.backgroundColor - The background color of the graph.\n * @returns PNG image as a buffer\n */\n async drawMermaidPng(params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }) {\n const representation = await this.#graph.getGraphAsync();\n const image = await representation.drawMermaidPng(params);\n const arrayBuffer = await image.arrayBuffer();\n const buffer = new Uint8Array(arrayBuffer);\n return buffer;\n }\n\n /**\n * Draw the graph as a Mermaid string.\n * @param params - Parameters for the drawMermaid method.\n * @param params.withStyles - Whether to include styles in the graph.\n * @param params.curveStyle - The style of the graph's curves.\n * @param params.nodeColors - The colors of the graph's nodes.\n * @param params.wrapLabelNWords - The maximum number of words to wrap in a node's label.\n * @param params.backgroundColor - The background color of the graph.\n * @returns Mermaid string\n */\n async drawMermaid(params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }) {\n const representation = await this.#graph.getGraphAsync();\n return representation.drawMermaid(params);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ReactAgent.js","names":["options: CreateAgentParams<StructuredResponseFormat, ContextSchema>","#toolBehaviorVersion","beforeModelNodes: {\n index: number;\n name: string;\n allowed?: string[];\n }[]","afterModelNodes: {\n index: number;\n name: string;\n allowed?: string[];\n }[]","modifyModelRequestHookMiddleware: [\n AgentMiddleware,\n /**\n * ToDo: better type to get the state of middleware\n */\n () => any\n ][]","retryModelRequestHookMiddleware: [\n AgentMiddleware,\n /**\n * ToDo: better type to get the state of middleware\n */\n () => any\n ][]","#agentNode","beforeModelNode: BeforeModelNode | undefined","afterModelNode: AfterModelNode | undefined","#createBeforeModelRouter","#getModelPaths","#createModelRouter","#createAfterModelSequenceRouter","#createAfterModelRouter","toolReturnTarget: string","#createToolsRouter","#graph","toolClasses: (ClientTool | ServerTool)[]","includeModelRequest: boolean","paths: (\"tools\" | \"model_request\" | typeof END)[]","shouldReturnDirect: Set<string>","state: any","state: BuiltInState","allowJump: boolean","state: Omit<BuiltInState, \"jumpTo\"> & { jumpTo?: JumpTo }","allowed: string[]","nextDefault: string","#initializeMiddlewareStates","state: InvokeStateParameter<TMiddleware>","#populatePrivateState","config?: RunnableConfig","config?: InvokeConfiguration<\n InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n >","config?: StreamConfiguration<\n InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n >","config?: StreamConfiguration<\n InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n > & { version?: \"v1\" | \"v2\" }","streamOptions?: any","params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }","config: RunnableConfig","options?: GetStateOptions","options?: CheckpointListOptions","namespace?: string","recurse?: boolean"],"sources":["../../../src/agents/middlewareAgent/ReactAgent.ts"],"sourcesContent":["/* eslint-disable no-instanceof/no-instanceof */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { InteropZodObject } from \"@langchain/core/utils/types\";\n\nimport {\n AnnotationRoot,\n StateGraph,\n END,\n START,\n Send,\n Command,\n CompiledStateGraph,\n type GetStateOptions,\n} from \"@langchain/langgraph\";\nimport type { CheckpointListOptions } from \"@langchain/langgraph-checkpoint\";\nimport { ToolMessage, AIMessage } from \"@langchain/core/messages\";\nimport { IterableReadableStream } from \"@langchain/core/utils/stream\";\nimport type { RunnableConfig } from \"@langchain/core/runnables\";\n\nimport { createAgentAnnotationConditional } from \"./annotation.js\";\nimport { isClientTool } from \"../utils.js\";\n\nimport { AgentNode } from \"./nodes/AgentNode.js\";\nimport { ToolNode } from \"../nodes/ToolNode.js\";\nimport { BeforeModelNode } from \"./nodes/BeforeModalNode.js\";\nimport { AfterModelNode } from \"./nodes/AfterModalNode.js\";\nimport {\n initializeMiddlewareStates,\n parseJumpToTarget,\n} from \"./nodes/utils.js\";\n\nimport type { ClientTool, ServerTool, WithStateGraphNodes } from \"../types.js\";\n\nimport type {\n CreateAgentParams,\n AgentMiddleware,\n InferMiddlewareStates,\n InferMiddlewareInputStates,\n BuiltInState,\n InferMiddlewareContextInputs,\n InferContextInput,\n InvokeConfiguration,\n StreamConfiguration,\n JumpTo,\n UserInput,\n PrivateState,\n} from \"./types.js\";\n\nimport {\n type AnyAnnotationRoot,\n type ToAnnotationRoot,\n type ResponseFormatUndefined,\n} from \"../annotation.js\";\n\n// Helper type to get the state definition with middleware states\ntype MergedAgentState<\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined,\n TMiddleware extends readonly AgentMiddleware<any, any, any>[]\n> = (StructuredResponseFormat extends ResponseFormatUndefined\n ? Omit<BuiltInState, \"jumpTo\">\n : Omit<BuiltInState, \"jumpTo\"> & {\n structuredResponse: StructuredResponseFormat;\n }) &\n InferMiddlewareStates<TMiddleware>;\n\ntype InvokeStateParameter<\n TMiddleware extends readonly AgentMiddleware<any, any, any>[]\n> =\n | (UserInput & InferMiddlewareInputStates<TMiddleware>)\n | Command<any, any, any>\n | null;\n\ntype AgentGraph<\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends\n | AnyAnnotationRoot\n | InteropZodObject = AnyAnnotationRoot,\n TMiddleware extends readonly AgentMiddleware<any, any, any>[] = []\n> = CompiledStateGraph<\n any,\n any,\n any,\n any,\n MergedAgentState<StructuredResponseFormat, TMiddleware>,\n ToAnnotationRoot<ContextSchema>[\"spec\"],\n unknown\n>;\n\nexport class ReactAgent<\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends\n | AnyAnnotationRoot\n | InteropZodObject = AnyAnnotationRoot,\n TMiddleware extends readonly AgentMiddleware<\n any,\n any,\n any\n >[] = readonly AgentMiddleware<any, any, any>[]\n> {\n #graph: AgentGraph<StructuredResponseFormat, ContextSchema, TMiddleware>;\n\n #toolBehaviorVersion: \"v1\" | \"v2\" = \"v2\";\n\n #agentNode: AgentNode<any, AnyAnnotationRoot>;\n\n constructor(\n public options: CreateAgentParams<StructuredResponseFormat, ContextSchema>\n ) {\n this.#toolBehaviorVersion = options.version ?? this.#toolBehaviorVersion;\n\n /**\n * define complete list of tools based on options and middleware\n */\n const middlewareTools = (this.options.middleware\n ?.filter((m) => m.tools)\n .flatMap((m) => m.tools) ?? []) as (ClientTool | ServerTool)[];\n const toolClasses = [\n ...((Array.isArray(options.tools)\n ? options.tools\n : options.tools?.tools) ?? []),\n ...middlewareTools,\n ];\n\n /**\n * If any of the tools are configured to return_directly after running,\n * our graph needs to check if these were called\n */\n const shouldReturnDirect = new Set(\n toolClasses\n .filter(isClientTool)\n .filter((tool) => \"returnDirect\" in tool && tool.returnDirect)\n .map((tool) => tool.name)\n );\n\n // Create a schema that merges agent base schema with middleware state schemas\n const schema = createAgentAnnotationConditional<\n StructuredResponseFormat,\n TMiddleware\n >(\n this.options.responseFormat !== undefined,\n this.options.middleware as TMiddleware\n );\n\n const workflow = new StateGraph(\n schema as AnnotationRoot<any>,\n this.options.contextSchema\n );\n\n const allNodeWorkflows = workflow as WithStateGraphNodes<\n \"tools\" | \"model_request\" | string,\n typeof workflow\n >;\n\n // Generate node names for middleware nodes that have hooks\n const beforeModelNodes: {\n index: number;\n name: string;\n allowed?: string[];\n }[] = [];\n const afterModelNodes: {\n index: number;\n name: string;\n allowed?: string[];\n }[] = [];\n const modifyModelRequestHookMiddleware: [\n AgentMiddleware,\n /**\n * ToDo: better type to get the state of middleware\n */\n () => any\n ][] = [];\n const retryModelRequestHookMiddleware: [\n AgentMiddleware,\n /**\n * ToDo: better type to get the state of middleware\n */\n () => any\n ][] = [];\n\n this.#agentNode = new AgentNode({\n model: this.options.model,\n systemPrompt: this.options.systemPrompt,\n includeAgentName: this.options.includeAgentName,\n name: this.options.name,\n responseFormat: this.options.responseFormat,\n middleware: this.options.middleware,\n toolClasses,\n shouldReturnDirect,\n signal: this.options.signal,\n modifyModelRequestHookMiddleware,\n retryModelRequestHookMiddleware,\n });\n\n const middlewareNames = new Set<string>();\n const middleware = this.options.middleware ?? [];\n for (let i = 0; i < middleware.length; i++) {\n let beforeModelNode: BeforeModelNode | undefined;\n let afterModelNode: AfterModelNode | undefined;\n const m = middleware[i];\n if (middlewareNames.has(m.name)) {\n throw new Error(`Middleware ${m.name} is defined multiple times`);\n }\n\n middlewareNames.add(m.name);\n if (m.beforeModel) {\n beforeModelNode = new BeforeModelNode(m, {\n getPrivateState: () => this.#agentNode.getState()._privateState,\n });\n const name = `${m.name}.before_model`;\n beforeModelNodes.push({\n index: i,\n name,\n allowed: m.beforeModelJumpTo,\n });\n allNodeWorkflows.addNode(\n name,\n beforeModelNode,\n beforeModelNode.nodeOptions\n );\n }\n if (m.afterModel) {\n afterModelNode = new AfterModelNode(m, {\n getPrivateState: () => this.#agentNode.getState()._privateState,\n });\n const name = `${m.name}.after_model`;\n afterModelNodes.push({\n index: i,\n name,\n allowed: m.afterModelJumpTo,\n });\n allNodeWorkflows.addNode(\n name,\n afterModelNode,\n afterModelNode.nodeOptions\n );\n }\n\n if (m.modifyModelRequest) {\n modifyModelRequestHookMiddleware.push([\n m,\n () => ({\n ...beforeModelNode?.getState(),\n ...afterModelNode?.getState(),\n }),\n ]);\n }\n\n if (m.retryModelRequest) {\n retryModelRequestHookMiddleware.push([\n m,\n () => ({\n ...beforeModelNode?.getState(),\n ...afterModelNode?.getState(),\n }),\n ]);\n }\n }\n\n /**\n * Add Nodes\n */\n allNodeWorkflows.addNode(\n \"model_request\",\n this.#agentNode,\n AgentNode.nodeOptions\n );\n\n /**\n * add single tool node for all tools\n */\n if (toolClasses.filter(isClientTool).length > 0) {\n const toolNode = new ToolNode(toolClasses.filter(isClientTool), {\n signal: this.options.signal,\n });\n allNodeWorkflows.addNode(\"tools\", toolNode);\n }\n\n /**\n * Add Edges\n */\n // Determine starting point based on what nodes exist\n if (beforeModelNodes.length > 0) {\n // If we have beforeModel nodes, start with the first one\n allNodeWorkflows.addEdge(START, beforeModelNodes[0].name);\n } else {\n // If no beforeModel nodes, go directly to agent\n allNodeWorkflows.addEdge(START, \"model_request\");\n }\n\n // Connect beforeModel nodes; add conditional routing ONLY if allowed jumps are specified\n for (let i = 0; i < beforeModelNodes.length; i++) {\n const node = beforeModelNodes[i];\n const current = node.name;\n const isLast = i === beforeModelNodes.length - 1;\n const nextDefault = isLast\n ? \"model_request\"\n : beforeModelNodes[i + 1].name;\n\n if (node.allowed && node.allowed.length > 0) {\n const hasTools = toolClasses.filter(isClientTool).length > 0;\n const allowedMapped = node.allowed\n .map((t) => parseJumpToTarget(t))\n .filter((dest) => dest !== \"tools\" || hasTools);\n const destinations = Array.from(\n new Set([nextDefault, ...allowedMapped])\n ) as (\"tools\" | \"model_request\" | typeof END)[];\n\n allNodeWorkflows.addConditionalEdges(\n current,\n this.#createBeforeModelRouter(\n toolClasses.filter(isClientTool),\n nextDefault\n ),\n destinations\n );\n } else {\n allNodeWorkflows.addEdge(current, nextDefault);\n }\n }\n\n // Connect agent to last afterModel node (for reverse order execution)\n const lastAfterModelNode = afterModelNodes.at(-1);\n if (afterModelNodes.length > 0 && lastAfterModelNode) {\n allNodeWorkflows.addEdge(\"model_request\", lastAfterModelNode.name);\n } else {\n // If no afterModel nodes, connect model_request directly to model paths\n const modelPaths = this.#getModelPaths(toolClasses.filter(isClientTool));\n if (modelPaths.length === 1) {\n allNodeWorkflows.addEdge(\"model_request\", modelPaths[0]);\n } else {\n allNodeWorkflows.addConditionalEdges(\n \"model_request\",\n this.#createModelRouter(),\n modelPaths\n );\n }\n }\n\n // Connect afterModel nodes in reverse sequence; add conditional routing ONLY if allowed jumps are specified per node\n for (let i = afterModelNodes.length - 1; i > 0; i--) {\n const node = afterModelNodes[i];\n const current = node.name;\n const nextDefault = afterModelNodes[i - 1].name;\n\n if (node.allowed && node.allowed.length > 0) {\n const hasTools = toolClasses.filter(isClientTool).length > 0;\n const allowedMapped = node.allowed\n .map((t) => parseJumpToTarget(t))\n .filter((dest) => dest !== \"tools\" || hasTools);\n const destinations = Array.from(\n new Set([nextDefault, ...allowedMapped])\n ) as (\"tools\" | \"model_request\" | typeof END)[];\n\n allNodeWorkflows.addConditionalEdges(\n current,\n this.#createAfterModelSequenceRouter(\n toolClasses.filter(isClientTool),\n node.allowed,\n nextDefault\n ),\n destinations\n );\n } else {\n allNodeWorkflows.addEdge(current, nextDefault);\n }\n }\n\n // Connect first afterModel node (last to execute) to model paths with jumpTo support\n if (afterModelNodes.length > 0) {\n const firstAfterModel = afterModelNodes[0];\n const firstAfterModelNode = firstAfterModel.name;\n const modelPaths = this.#getModelPaths(\n toolClasses.filter(isClientTool),\n true\n ).filter(\n (p) => p !== \"tools\" || toolClasses.filter(isClientTool).length > 0\n );\n\n const allowJump = Boolean(\n firstAfterModel.allowed && firstAfterModel.allowed.length > 0\n );\n\n const destinations = modelPaths;\n\n allNodeWorkflows.addConditionalEdges(\n firstAfterModelNode,\n this.#createAfterModelRouter(\n toolClasses.filter(isClientTool),\n allowJump\n ),\n destinations\n );\n }\n\n /**\n * add edges for tools node\n */\n if (toolClasses.filter(isClientTool).length > 0) {\n // Tools should return to first beforeModel node or agent\n let toolReturnTarget: string;\n if (beforeModelNodes.length > 0) {\n toolReturnTarget = beforeModelNodes[0].name;\n } else {\n toolReturnTarget = \"model_request\";\n }\n\n if (shouldReturnDirect.size > 0) {\n allNodeWorkflows.addConditionalEdges(\n \"tools\",\n this.#createToolsRouter(shouldReturnDirect),\n [toolReturnTarget, END]\n );\n } else {\n allNodeWorkflows.addEdge(\"tools\", toolReturnTarget);\n }\n }\n\n /**\n * compile the graph\n */\n this.#graph = allNodeWorkflows.compile({\n checkpointer: this.options.checkpointer ?? this.options.checkpointSaver,\n store: this.options.store,\n name: this.options.name,\n description: this.options.description,\n }) as AgentGraph<StructuredResponseFormat, ContextSchema, TMiddleware>;\n }\n\n /**\n * Get the compiled {@link https://docs.langchain.com/oss/javascript/langgraph/use-graph-api | StateGraph}.\n */\n get graph(): AgentGraph<\n StructuredResponseFormat,\n ContextSchema,\n TMiddleware\n > {\n return this.#graph;\n }\n\n /**\n * Get possible edge destinations from model node.\n * @param toolClasses names of tools to call\n * @param includeModelRequest whether to include \"model_request\" as a valid path (for jumpTo routing)\n * @returns list of possible edge destinations\n */\n #getModelPaths(\n toolClasses: (ClientTool | ServerTool)[],\n includeModelRequest: boolean = false\n ): (\"tools\" | \"model_request\" | typeof END)[] {\n const paths: (\"tools\" | \"model_request\" | typeof END)[] = [];\n if (toolClasses.length > 0) {\n paths.push(\"tools\");\n }\n\n if (includeModelRequest) {\n paths.push(\"model_request\");\n }\n\n paths.push(END);\n\n return paths;\n }\n\n /**\n * Create routing function for tools node conditional edges.\n */\n #createToolsRouter(shouldReturnDirect: Set<string>) {\n /**\n * ToDo: fix type\n */\n return (state: any) => {\n const messages = state.messages;\n const lastMessage = messages[messages.length - 1];\n\n // Check if we just executed a returnDirect tool\n if (\n ToolMessage.isInstance(lastMessage) &&\n lastMessage.name &&\n shouldReturnDirect.has(lastMessage.name)\n ) {\n // If we have a response format, route to agent to generate structured response\n // Otherwise, return directly\n return this.options.responseFormat ? \"model_request\" : END;\n }\n\n // For non-returnDirect tools, always route back to agent\n return \"model_request\";\n };\n }\n\n /**\n * Create routing function for model node conditional edges.\n */\n #createModelRouter() {\n /**\n * determine if the agent should continue or not\n */\n return (state: BuiltInState) => {\n const messages = state.messages;\n const lastMessage = messages.at(-1);\n\n if (\n !AIMessage.isInstance(lastMessage) ||\n !lastMessage.tool_calls ||\n lastMessage.tool_calls.length === 0\n ) {\n return END;\n }\n\n // Check if all tool calls are for structured response extraction\n const hasOnlyStructuredResponseCalls = lastMessage.tool_calls.every(\n (toolCall) => toolCall.name.startsWith(\"extract-\")\n );\n\n if (hasOnlyStructuredResponseCalls) {\n // If all tool calls are for structured response extraction, go to END\n // The AgentNode will handle these internally and return the structured response\n return END;\n }\n\n /**\n * The tool node processes a single message.\n */\n if (this.#toolBehaviorVersion === \"v1\") {\n return \"tools\";\n }\n\n /**\n * Route to tools node (filter out any structured response tool calls)\n */\n const regularToolCalls = lastMessage.tool_calls.filter(\n (toolCall) => !toolCall.name.startsWith(\"extract-\")\n );\n\n if (regularToolCalls.length === 0) {\n return END;\n }\n\n return regularToolCalls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n };\n }\n\n /**\n * Create routing function for jumpTo functionality after afterModel hooks.\n *\n * This router checks if the `jumpTo` property is set in the state after afterModel middleware\n * execution. If set, it routes to the specified target (\"model_request\" or \"tools\").\n * If not set, it falls back to the normal model routing logic for afterModel context.\n *\n * The jumpTo property is automatically cleared after use to prevent infinite loops.\n *\n * @param toolClasses - Available tool classes for validation\n * @returns Router function that handles jumpTo logic and normal routing\n */\n #createAfterModelRouter(\n toolClasses: (ClientTool | ServerTool)[],\n allowJump: boolean\n ) {\n const hasStructuredResponse = Boolean(this.options.responseFormat);\n\n return (state: Omit<BuiltInState, \"jumpTo\"> & { jumpTo?: JumpTo }) => {\n // First, check if we just processed a structured response\n // If so, ignore any existing jumpTo and go to END\n const messages = state.messages;\n const lastMessage = messages.at(-1);\n if (\n AIMessage.isInstance(lastMessage) &&\n (!lastMessage.tool_calls || lastMessage.tool_calls.length === 0)\n ) {\n return END;\n }\n\n // Check if jumpTo is set in the state and allowed\n if (allowJump && state.jumpTo) {\n if (state.jumpTo === END) {\n return END;\n }\n if (state.jumpTo === \"tools\") {\n // If trying to jump to tools but no tools are available, go to END\n if (toolClasses.length === 0) {\n return END;\n }\n return new Send(\"tools\", { ...state, jumpTo: undefined });\n }\n // destination === \"model_request\"\n return new Send(\"model_request\", { ...state, jumpTo: undefined });\n }\n\n // check if there are pending tool calls\n const toolMessages = messages.filter(ToolMessage.isInstance);\n const lastAiMessage = messages.filter(AIMessage.isInstance).at(-1);\n const pendingToolCalls = lastAiMessage?.tool_calls?.filter(\n (call) => !toolMessages.some((m) => m.tool_call_id === call.id)\n );\n if (pendingToolCalls && pendingToolCalls.length > 0) {\n return pendingToolCalls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n }\n\n // if we exhausted all tool calls, but still have no structured response tool calls,\n // go back to model_request\n const hasStructuredResponseCalls = lastAiMessage?.tool_calls?.some(\n (toolCall) => toolCall.name.startsWith(\"extract-\")\n );\n\n if (\n pendingToolCalls &&\n pendingToolCalls.length === 0 &&\n !hasStructuredResponseCalls &&\n hasStructuredResponse\n ) {\n return \"model_request\";\n }\n\n if (\n !AIMessage.isInstance(lastMessage) ||\n !lastMessage.tool_calls ||\n lastMessage.tool_calls.length === 0\n ) {\n return END;\n }\n\n // Check if all tool calls are for structured response extraction\n const hasOnlyStructuredResponseCalls = lastMessage.tool_calls.every(\n (toolCall) => toolCall.name.startsWith(\"extract-\")\n );\n\n // Check if there are any regular tool calls (non-structured response)\n const hasRegularToolCalls = lastMessage.tool_calls.some(\n (toolCall) => !toolCall.name.startsWith(\"extract-\")\n );\n\n if (hasOnlyStructuredResponseCalls || !hasRegularToolCalls) {\n return END;\n }\n\n /**\n * For routing from afterModel nodes, always use simple string paths\n * The Send API is handled at the model_request node level\n */\n return \"tools\";\n };\n }\n\n /**\n * Router for afterModel sequence nodes (connecting later middlewares to earlier ones),\n * honoring allowed jump targets and defaulting to the next node.\n */\n #createAfterModelSequenceRouter(\n toolClasses: (ClientTool | ServerTool)[],\n allowed: string[],\n nextDefault: string\n ) {\n const allowedSet = new Set(allowed.map((t) => parseJumpToTarget(t)));\n return (state: BuiltInState) => {\n if (state.jumpTo) {\n const dest = parseJumpToTarget(state.jumpTo);\n if (dest === END && allowedSet.has(END)) {\n return END;\n }\n if (dest === \"tools\" && allowedSet.has(\"tools\")) {\n if (toolClasses.length === 0) return END;\n return new Send(\"tools\", { ...state, jumpTo: undefined });\n }\n if (dest === \"model_request\" && allowedSet.has(\"model_request\")) {\n return new Send(\"model_request\", { ...state, jumpTo: undefined });\n }\n }\n return nextDefault as any;\n };\n }\n\n /**\n * Create routing function for jumpTo functionality after beforeModel hooks.\n * Falls back to the default next node if no jumpTo is present.\n */\n #createBeforeModelRouter(\n toolClasses: (ClientTool | ServerTool)[],\n nextDefault: string\n ) {\n return (state: BuiltInState) => {\n if (!state.jumpTo) {\n return nextDefault;\n }\n const destination = parseJumpToTarget(state.jumpTo);\n if (destination === END) {\n return END;\n }\n if (destination === \"tools\") {\n if (toolClasses.length === 0) {\n return END;\n }\n return new Send(\"tools\", { ...state, jumpTo: undefined });\n }\n // destination === \"model_request\"\n return new Send(\"model_request\", { ...state, jumpTo: undefined });\n };\n }\n\n /**\n * Initialize middleware states if not already present in the input state.\n */\n async #initializeMiddlewareStates(\n state: InvokeStateParameter<TMiddleware>\n ): Promise<InvokeStateParameter<TMiddleware>> {\n if (\n !this.options.middleware ||\n this.options.middleware.length === 0 ||\n state instanceof Command ||\n !state\n ) {\n return state;\n }\n\n const defaultStates = await initializeMiddlewareStates(\n this.options.middleware,\n state\n );\n const updatedState = { ...state } as InvokeStateParameter<TMiddleware>;\n if (!updatedState) {\n return updatedState;\n }\n\n // Only add defaults for keys that don't exist in current state\n for (const [key, value] of Object.entries(defaultStates)) {\n if (!(key in updatedState)) {\n updatedState[key as keyof typeof updatedState] = value;\n }\n }\n\n return updatedState;\n }\n\n /**\n * Populate the private state of the agent node from the previous state.\n */\n async #populatePrivateState(config?: RunnableConfig) {\n /**\n * not needed if thread_id is not provided\n */\n if (!config?.configurable?.thread_id) {\n return;\n }\n const prevState = (await this.#graph.getState(config as any)) as {\n values: {\n _privateState: PrivateState;\n };\n };\n\n /**\n * not need if state is empty\n */\n if (!prevState.values._privateState) {\n return;\n }\n\n this.#agentNode.setState({\n structuredResponse: undefined,\n _privateState: prevState.values._privateState,\n });\n }\n\n /**\n * Executes the agent with the given state and returns the final state after all processing.\n *\n * This method runs the agent's entire workflow synchronously, including:\n * - Processing the input messages through any configured middleware\n * - Calling the language model to generate responses\n * - Executing any tool calls made by the model\n * - Running all middleware hooks (beforeModel, afterModel, etc.)\n *\n * @param state - The initial state for the agent execution. Can be:\n * - An object containing `messages` array and any middleware-specific state properties\n * - A Command object for more advanced control flow\n *\n * @param config - Optional runtime configuration including:\n * @param config.context - The context for the agent execution.\n * @param config.configurable - LangGraph configuration options like `thread_id`, `run_id`, etc.\n * @param config.store - The store for the agent execution for persisting state, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/memory#memory-storage | Memory storage}.\n * @param config.signal - An optional {@link https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal | `AbortSignal`} for the agent execution.\n * @param config.recursionLimit - The recursion limit for the agent execution.\n *\n * @returns A Promise that resolves to the final agent state after execution completes.\n * The returned state includes:\n * - a `messages` property containing an array with all messages (input, AI responses, tool calls/results)\n * - a `structuredResponse` property containing the structured response (if configured)\n * - all state values defined in the middleware\n *\n * @example\n * ```typescript\n * const agent = new ReactAgent({\n * llm: myModel,\n * tools: [calculator, webSearch],\n * responseFormat: z.object({\n * weather: z.string(),\n * }),\n * });\n *\n * const result = await agent.invoke({\n * messages: [{ role: \"human\", content: \"What's the weather in Paris?\" }]\n * });\n *\n * console.log(result.structuredResponse.weather); // outputs: \"It's sunny and 75°F.\"\n * ```\n */\n async invoke(\n state: InvokeStateParameter<TMiddleware>,\n config?: InvokeConfiguration<\n InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n >\n ) {\n type FullState = MergedAgentState<StructuredResponseFormat, TMiddleware>;\n const initializedState = await this.#initializeMiddlewareStates(state);\n await this.#populatePrivateState(config);\n\n return this.#graph.invoke(\n initializedState,\n config as unknown as InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n ) as Promise<FullState>;\n }\n\n /**\n * Executes the agent with streaming, returning an async iterable of state updates as they occur.\n *\n * This method runs the agent's workflow similar to `invoke`, but instead of waiting for\n * completion, it streams high-level state updates in real-time. This allows you to:\n * - Display intermediate results to users as they're generated\n * - Monitor the agent's progress through each step\n * - React to state changes as nodes complete\n *\n * For more granular event-level streaming (like individual LLM tokens), use `streamEvents` instead.\n *\n * @param state - The initial state for the agent execution. Can be:\n * - An object containing `messages` array and any middleware-specific state properties\n * - A Command object for more advanced control flow\n *\n * @param config - Optional runtime configuration including:\n * @param config.context - The context for the agent execution.\n * @param config.configurable - LangGraph configuration options like `thread_id`, `run_id`, etc.\n * @param config.store - The store for the agent execution for persisting state, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/memory#memory-storage | Memory storage}.\n * @param config.signal - An optional {@link https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal | `AbortSignal`} for the agent execution.\n * @param config.streamMode - The streaming mode for the agent execution, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/streaming#supported-stream-modes | Supported stream modes}.\n * @param config.recursionLimit - The recursion limit for the agent execution.\n *\n * @returns A Promise that resolves to an IterableReadableStream of state updates.\n * Each update contains the current state after a node completes.\n *\n * @example\n * ```typescript\n * const agent = new ReactAgent({\n * llm: myModel,\n * tools: [calculator, webSearch]\n * });\n *\n * const stream = await agent.stream({\n * messages: [{ role: \"human\", content: \"What's 2+2 and the weather in NYC?\" }]\n * });\n *\n * for await (const chunk of stream) {\n * console.log(chunk); // State update from each node\n * }\n * ```\n */\n async stream(\n state: InvokeStateParameter<TMiddleware>,\n config?: StreamConfiguration<\n InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n >\n ): Promise<IterableReadableStream<any>> {\n const initializedState = await this.#initializeMiddlewareStates(state);\n return this.#graph.stream(initializedState, config as Record<string, any>);\n }\n\n /**\n * Executes the agent with low-level event streaming, returning detailed events as they occur.\n *\n * This method provides fine-grained control over streaming, emitting events for every\n * operation during execution. This is useful when you need to:\n * - Stream individual LLM tokens as they're generated\n * - Monitor detailed execution flow with timing information\n * - Handle specific event types (model start/end, tool calls, etc.)\n * - Debug or trace agent behavior at a granular level\n *\n * For simpler state-based streaming, use `stream` instead.\n *\n * @param state - The initial state for the agent execution. Can be:\n * - An object containing `messages` array and any middleware-specific state properties\n * - A Command object for more advanced control flow\n *\n * @param config - Optional runtime configuration including:\n * @param config.context - The context for the agent execution.\n * @param config.configurable - LangGraph configuration options like `thread_id`, `run_id`, etc.\n * @param config.store - The store for the agent execution for persisting state, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/memory#memory-storage | Memory storage}.\n * @param config.signal - An optional {@link https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal | `AbortSignal`} for the agent execution.\n * @param config.recursionLimit - The recursion limit for the agent execution.\n * @param config.streamMode - The streaming mode for the agent execution, see more in {@link https://docs.langchain.com/oss/javascript/langgraph/streaming#supported-stream-modes | Supported stream modes}.\n *\n * @param streamOptions - Additional streaming options (passed to LangGraph's streamEvents).\n *\n * @returns An IterableReadableStream of detailed events including:\n * - `on_chat_model_start`: When the LLM begins processing\n * - `on_chat_model_stream`: Streaming tokens from the LLM\n * - `on_chat_model_end`: When the LLM completes\n * - `on_tool_start`: When a tool execution begins\n * - `on_tool_end`: When a tool execution completes\n * - `on_chain_start`: When middleware chains begin\n * - `on_chain_end`: When middleware chains complete\n * - And other LangGraph v2 stream events\n *\n * @example\n * ```typescript\n * const agent = new ReactAgent({\n * llm: myModel,\n * tools: [calculator, webSearch]\n * });\n *\n * const stream = await agent.streamEvents({\n * messages: [{ role: \"human\", content: \"What's 2+2 and the weather in NYC?\" }]\n * }, {\n * version: \"v2\"\n * });\n *\n * for await (const event of stream) {\n * if (event.event === \"on_chat_model_stream\") {\n * process.stdout.write(event.data.chunk.content); // Stream tokens\n * }\n * }\n * ```\n */\n async streamEvents(\n state: InvokeStateParameter<TMiddleware>,\n config?: StreamConfiguration<\n InferContextInput<ContextSchema> &\n InferMiddlewareContextInputs<TMiddleware>\n > & { version?: \"v1\" | \"v2\" },\n streamOptions?: any\n ): Promise<IterableReadableStream<any>> {\n const initializedState = await this.#initializeMiddlewareStates(state);\n await this.#populatePrivateState(config);\n return this.#graph.streamEvents(\n initializedState,\n {\n ...(config as any),\n version: config?.version ?? \"v2\",\n },\n streamOptions\n ) as IterableReadableStream<any>;\n }\n\n /**\n * Visualize the graph as a PNG image.\n * @param params - Parameters for the drawMermaidPng method.\n * @param params.withStyles - Whether to include styles in the graph.\n * @param params.curveStyle - The style of the graph's curves.\n * @param params.nodeColors - The colors of the graph's nodes.\n * @param params.wrapLabelNWords - The maximum number of words to wrap in a node's label.\n * @param params.backgroundColor - The background color of the graph.\n * @returns PNG image as a buffer\n */\n async drawMermaidPng(params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }) {\n const representation = await this.#graph.getGraphAsync();\n const image = await representation.drawMermaidPng(params);\n const arrayBuffer = await image.arrayBuffer();\n const buffer = new Uint8Array(arrayBuffer);\n return buffer;\n }\n\n /**\n * Draw the graph as a Mermaid string.\n * @param params - Parameters for the drawMermaid method.\n * @param params.withStyles - Whether to include styles in the graph.\n * @param params.curveStyle - The style of the graph's curves.\n * @param params.nodeColors - The colors of the graph's nodes.\n * @param params.wrapLabelNWords - The maximum number of words to wrap in a node's label.\n * @param params.backgroundColor - The background color of the graph.\n * @returns Mermaid string\n */\n async drawMermaid(params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }) {\n const representation = await this.#graph.getGraphAsync();\n return representation.drawMermaid(params);\n }\n\n /**\n * The following are internal methods to enable support for LangGraph Platform.\n * They are not part of the createAgent public API.\n *\n * Note: we intentionally return as `never` to avoid type errors due to type inference.\n */\n\n /**\n * @internal\n */\n getGraphAsync(config?: RunnableConfig) {\n return this.#graph.getGraphAsync(config) as never;\n }\n /**\n * @internal\n */\n getState(config: RunnableConfig, options?: GetStateOptions) {\n return this.#graph.getState(config, options) as never;\n }\n /**\n * @internal\n */\n getStateHistory(config: RunnableConfig, options?: CheckpointListOptions) {\n return this.#graph.getStateHistory(config, options) as never;\n }\n /**\n * @internal\n */\n getSubgraphs(namespace?: string, recurse?: boolean) {\n return this.#graph.getSubgraphs(namespace, recurse) as never;\n }\n /**\n * @internal\n */\n getSubgraphAsync(namespace?: string, recurse?: boolean) {\n return this.#graph.getSubgraphsAsync(namespace, recurse) as never;\n }\n}\n"],"mappings":"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"}