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
@@ -52,7 +52,7 @@ var ReactAgent = class {
52
52
  /**
53
53
  * add single tool node for all tools
54
54
  */
55
- if (toolClasses.length > 0) {
55
+ if (toolClasses.filter(require_utils.isClientTool).length > 0) {
56
56
  const toolNode = new require_ToolNode.ToolNode(toolClasses.filter(require_utils.isClientTool), { signal: this.options.signal });
57
57
  allNodeWorkflows.addNode("tools", toolNode);
58
58
  }
@@ -82,7 +82,7 @@ var ReactAgent = class {
82
82
  /**
83
83
  * add edges for tools node
84
84
  */
85
- if (toolClasses.length > 0) if (shouldReturnDirect.size > 0) allNodeWorkflows.addConditionalEdges("tools", this.#createToolsRouter(shouldReturnDirect), [this.#getEntryPoint(), __langchain_langgraph.END]);
85
+ if (toolClasses.filter(require_utils.isClientTool).length > 0) if (shouldReturnDirect.size > 0) allNodeWorkflows.addConditionalEdges("tools", this.#createToolsRouter(shouldReturnDirect), [this.#getEntryPoint(), __langchain_langgraph.END]);
86
86
  else allNodeWorkflows.addEdge("tools", this.#getEntryPoint());
87
87
  /**
88
88
  * compile the graph
@@ -1 +1 @@
1
- {"version":3,"file":"ReactAgent.cjs","names":["options: CreateAgentParams<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n >","#toolBehaviorVersion","validateLLMHasNoBoundTools","isClientTool","enhanceStateSchemaWithMessageReducer","createAgentAnnotationConditional","StateGraph","AgentNode","#inputSchema","ToolNode","START","#getEntryPoint","#getPostModelHookPaths","#createPostModelHookRouter","#getModelPaths","#createModelRouter","#createToolsRouter","END","#graph","toolClasses: (ClientTool | ServerTool)[]","paths: (typeof END | \"agent\" | \"pre_model_hook\" | \"tools\")[]","state: InternalAgentState<StructuredResponseFormat>","ToolMessage","AIMessage","Send","paths: (\"tools\" | typeof END)[]","shouldReturnDirect: Set<string>","params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }"],"sources":["../../src/agents/ReactAgent.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { InteropZodObject } from \"@langchain/core/utils/types\";\nimport {\n AnnotationRoot,\n StateGraph,\n END,\n START,\n Send,\n CompiledStateGraph,\n MessagesAnnotation,\n} from \"@langchain/langgraph\";\nimport { ToolMessage, AIMessage } from \"@langchain/core/messages\";\n\nimport {\n createAgentAnnotationConditional,\n ReactAgentAnnotation,\n} from \"./annotation.js\";\nimport { isClientTool, validateLLMHasNoBoundTools } from \"./utils.js\";\nimport { AgentNode } from \"./nodes/AgentNode.js\";\nimport { ToolNode } from \"./nodes/ToolNode.js\";\nimport type {\n CreateAgentParams,\n ClientTool,\n ServerTool,\n InternalAgentState,\n WithStateGraphNodes,\n} from \"./types.js\";\nimport {\n enhanceStateSchemaWithMessageReducer,\n type AnyAnnotationRoot,\n type ToAnnotationRoot,\n type ResponseFormatUndefined,\n} from \"./annotation.js\";\n\ntype AgentGraph<\n StateSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot,\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot\n> = CompiledStateGraph<\n ToAnnotationRoot<StateSchema>[\"State\"],\n ToAnnotationRoot<StateSchema>[\"Update\"],\n any,\n typeof MessagesAnnotation.spec & ToAnnotationRoot<StateSchema>[\"spec\"],\n ReactAgentAnnotation<StructuredResponseFormat>[\"spec\"] &\n ToAnnotationRoot<StateSchema>[\"spec\"],\n ToAnnotationRoot<ContextSchema>[\"spec\"],\n unknown\n>;\n\nexport class ReactAgent<\n StateSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot,\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot\n> {\n #graph: AgentGraph<StateSchema, StructuredResponseFormat, ContextSchema>;\n\n #inputSchema?: AnnotationRoot<ToAnnotationRoot<StateSchema>[\"spec\"]>;\n\n #toolBehaviorVersion: \"v1\" | \"v2\" = \"v2\";\n\n constructor(\n public options: CreateAgentParams<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n >\n ) {\n this.#toolBehaviorVersion = options.version ?? this.#toolBehaviorVersion;\n\n /**\n * Check if the LLM already has bound tools and throw if it does.\n */\n if (options.llm && typeof options.llm !== \"function\") {\n validateLLMHasNoBoundTools(options.llm);\n }\n\n /**\n * validate that model and llm options are not provided together\n */\n if (options.llm && options.model) {\n throw new Error(\"Cannot provide both `model` and `llm` options.\");\n }\n\n /**\n * validate that either model or llm option is provided\n */\n if (!options.llm && !options.model) {\n throw new Error(\n \"Either `model` or `llm` option must be provided to create an agent.\"\n );\n }\n\n const toolClasses = Array.isArray(options.tools)\n ? options.tools\n : options.tools.tools;\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 const schema = this.options.stateSchema\n ? enhanceStateSchemaWithMessageReducer(this.options.stateSchema)\n : createAgentAnnotationConditional<StructuredResponseFormat>(\n this.options.responseFormat !== undefined\n );\n\n const workflow = new StateGraph(schema, this.options.contextSchema);\n\n const allNodeWorkflows = workflow as WithStateGraphNodes<\n \"pre_model_hook\" | \"post_model_hook\" | \"tools\" | \"agent\",\n typeof workflow\n >;\n\n /**\n * Add Nodes\n */\n allNodeWorkflows.addNode(\n \"agent\",\n new AgentNode({\n llm: this.options.llm,\n model: this.options.model,\n prompt: this.options.prompt,\n includeAgentName: this.options.includeAgentName,\n name: this.options.name,\n responseFormat: this.options.responseFormat,\n toolClasses,\n shouldReturnDirect,\n signal: this.options.signal,\n }),\n {\n input: this.#inputSchema,\n }\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 * setup preModelHook\n */\n if (options.preModelHook) {\n allNodeWorkflows.addNode(\"pre_model_hook\", options.preModelHook);\n }\n\n /**\n * setup postModelHook\n */\n if (options.postModelHook) {\n allNodeWorkflows.addNode(\"post_model_hook\", options.postModelHook);\n }\n\n /**\n * Add Edges\n */\n allNodeWorkflows.addEdge(START, this.#getEntryPoint());\n\n if (this.options.preModelHook) {\n allNodeWorkflows.addEdge(\"pre_model_hook\", \"agent\");\n }\n\n if (this.options.postModelHook) {\n allNodeWorkflows.addEdge(\"agent\", \"post_model_hook\");\n const postHookPaths = this.#getPostModelHookPaths(\n toolClasses.filter(isClientTool)\n );\n if (postHookPaths.length === 1) {\n allNodeWorkflows.addEdge(\"post_model_hook\", postHookPaths[0]);\n } else {\n allNodeWorkflows.addConditionalEdges(\n \"post_model_hook\",\n this.#createPostModelHookRouter(),\n postHookPaths\n );\n }\n } else {\n const modelPaths = this.#getModelPaths(toolClasses.filter(isClientTool));\n if (modelPaths.length === 1) {\n allNodeWorkflows.addEdge(\"agent\", modelPaths[0]);\n } else {\n allNodeWorkflows.addConditionalEdges(\n \"agent\",\n this.#createModelRouter(),\n modelPaths\n );\n }\n }\n\n /**\n * add edges for tools node\n */\n if (toolClasses.length > 0) {\n if (shouldReturnDirect.size > 0) {\n allNodeWorkflows.addConditionalEdges(\n \"tools\",\n this.#createToolsRouter(shouldReturnDirect),\n [this.#getEntryPoint(), END]\n );\n } else {\n allNodeWorkflows.addEdge(\"tools\", this.#getEntryPoint());\n }\n }\n\n /**\n * compile the graph\n */\n this.#graph = allNodeWorkflows.compile({\n checkpointer: this.options.checkpointer ?? this.options.checkpointSaver,\n interruptBefore: this.options.interruptBefore,\n interruptAfter: this.options.interruptAfter,\n store: this.options.store,\n name: this.options.name,\n description: this.options.description,\n });\n }\n\n /**\n * Get the compiled graph.\n */\n get graph(): AgentGraph<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n > {\n return this.#graph;\n }\n\n #getEntryPoint() {\n const entryPoint = this.options.preModelHook ? \"pre_model_hook\" : \"agent\";\n return entryPoint;\n }\n\n /**\n * Get possible edge destinations from post_model_hook node.\n */\n #getPostModelHookPaths(toolClasses: (ClientTool | ServerTool)[]) {\n const paths: (typeof END | \"agent\" | \"pre_model_hook\" | \"tools\")[] = [];\n if (toolClasses.length > 0) {\n paths.push(this.#getEntryPoint(), \"tools\");\n }\n paths.push(END);\n return paths;\n }\n\n #createPostModelHookRouter() {\n return (state: InternalAgentState<StructuredResponseFormat>) => {\n const messages = state.messages;\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\n if (pendingToolCalls && pendingToolCalls.length > 0) {\n /**\n * The tool node processes a single message.\n * All tool calls in the message are executed in parallel within the tool node.\n * @deprecated likely to be removed in the next version of the agent\n */\n if (this.#toolBehaviorVersion === \"v1\") {\n return \"tools\";\n }\n\n /**\n * The tool node processes a single tool call. Tool calls are distributed across\n * multiple instances of the tool node using the Send API.\n */\n return pendingToolCalls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n }\n\n if (ToolMessage.isInstance(messages.at(-1))) {\n return this.#getEntryPoint();\n }\n\n return END;\n };\n }\n\n /**\n * Get possible edge destinations from model node.\n * @param toolClasses names of tools to call\n * @returns list of possible edge destinations\n */\n #getModelPaths(\n toolClasses: (ClientTool | ServerTool)[]\n ): (\"tools\" | typeof END)[] {\n const paths: (\"tools\" | typeof END)[] = [];\n if (toolClasses.length > 0) {\n paths.push(\"tools\");\n }\n\n paths.push(END);\n\n return paths;\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: InternalAgentState<StructuredResponseFormat>) => {\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 if (this.options.postModelHook) {\n return \"post_model_hook\";\n }\n\n return END;\n }\n\n if (this.options.postModelHook) {\n return \"post_model_hook\";\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\n */\n return lastMessage.tool_calls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n };\n }\n\n /**\n * Create routing function for tools node conditional edges.\n */\n #createToolsRouter(shouldReturnDirect: Set<string>) {\n return (state: InternalAgentState<StructuredResponseFormat>) => {\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 ? this.#getEntryPoint() : END;\n }\n\n // For non-returnDirect tools, always route back to agent\n return this.#getEntryPoint();\n };\n }\n\n /**\n * @inheritdoc\n */\n get invoke(): AgentGraph<StateSchema, StructuredResponseFormat>[\"invoke\"] {\n return this.#graph.invoke.bind(this.#graph);\n }\n\n /**\n * @inheritdoc\n */\n get stream(): AgentGraph<StateSchema, StructuredResponseFormat>[\"stream\"] {\n return this.#graph.stream.bind(this.#graph);\n }\n\n /**\n * @inheritdoc\n */\n get streamEvents(): AgentGraph<\n StateSchema,\n StructuredResponseFormat\n >[\"streamEvents\"] {\n return this.#graph.streamEvents.bind(this.#graph);\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.cjs","names":["options: CreateAgentParams<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n >","#toolBehaviorVersion","validateLLMHasNoBoundTools","isClientTool","enhanceStateSchemaWithMessageReducer","createAgentAnnotationConditional","StateGraph","AgentNode","#inputSchema","ToolNode","START","#getEntryPoint","#getPostModelHookPaths","#createPostModelHookRouter","#getModelPaths","#createModelRouter","#createToolsRouter","END","#graph","toolClasses: (ClientTool | ServerTool)[]","paths: (typeof END | \"agent\" | \"pre_model_hook\" | \"tools\")[]","state: InternalAgentState<StructuredResponseFormat>","ToolMessage","AIMessage","Send","paths: (\"tools\" | typeof END)[]","shouldReturnDirect: Set<string>","params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }"],"sources":["../../src/agents/ReactAgent.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { InteropZodObject } from \"@langchain/core/utils/types\";\nimport {\n AnnotationRoot,\n StateGraph,\n END,\n START,\n Send,\n CompiledStateGraph,\n MessagesAnnotation,\n} from \"@langchain/langgraph\";\nimport { ToolMessage, AIMessage } from \"@langchain/core/messages\";\n\nimport {\n createAgentAnnotationConditional,\n ReactAgentAnnotation,\n} from \"./annotation.js\";\nimport { isClientTool, validateLLMHasNoBoundTools } from \"./utils.js\";\nimport { AgentNode } from \"./nodes/AgentNode.js\";\nimport { ToolNode } from \"./nodes/ToolNode.js\";\nimport type {\n CreateAgentParams,\n ClientTool,\n ServerTool,\n InternalAgentState,\n WithStateGraphNodes,\n} from \"./types.js\";\nimport {\n enhanceStateSchemaWithMessageReducer,\n type AnyAnnotationRoot,\n type ToAnnotationRoot,\n type ResponseFormatUndefined,\n} from \"./annotation.js\";\n\ntype AgentGraph<\n StateSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot,\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot\n> = CompiledStateGraph<\n ToAnnotationRoot<StateSchema>[\"State\"],\n ToAnnotationRoot<StateSchema>[\"Update\"],\n any,\n typeof MessagesAnnotation.spec & ToAnnotationRoot<StateSchema>[\"spec\"],\n ReactAgentAnnotation<StructuredResponseFormat>[\"spec\"] &\n ToAnnotationRoot<StateSchema>[\"spec\"],\n ToAnnotationRoot<ContextSchema>[\"spec\"],\n unknown\n>;\n\nexport class ReactAgent<\n StateSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot,\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot\n> {\n #graph: AgentGraph<StateSchema, StructuredResponseFormat, ContextSchema>;\n\n #inputSchema?: AnnotationRoot<ToAnnotationRoot<StateSchema>[\"spec\"]>;\n\n #toolBehaviorVersion: \"v1\" | \"v2\" = \"v2\";\n\n constructor(\n public options: CreateAgentParams<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n >\n ) {\n this.#toolBehaviorVersion = options.version ?? this.#toolBehaviorVersion;\n\n /**\n * Check if the LLM already has bound tools and throw if it does.\n */\n if (options.llm && typeof options.llm !== \"function\") {\n validateLLMHasNoBoundTools(options.llm);\n }\n\n /**\n * validate that model and llm options are not provided together\n */\n if (options.llm && options.model) {\n throw new Error(\"Cannot provide both `model` and `llm` options.\");\n }\n\n /**\n * validate that either model or llm option is provided\n */\n if (!options.llm && !options.model) {\n throw new Error(\n \"Either `model` or `llm` option must be provided to create an agent.\"\n );\n }\n\n const toolClasses = Array.isArray(options.tools)\n ? options.tools\n : options.tools.tools;\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 const schema = this.options.stateSchema\n ? enhanceStateSchemaWithMessageReducer(this.options.stateSchema)\n : createAgentAnnotationConditional<StructuredResponseFormat>(\n this.options.responseFormat !== undefined\n );\n\n const workflow = new StateGraph(schema, this.options.contextSchema);\n\n const allNodeWorkflows = workflow as WithStateGraphNodes<\n \"pre_model_hook\" | \"post_model_hook\" | \"tools\" | \"agent\",\n typeof workflow\n >;\n\n /**\n * Add Nodes\n */\n allNodeWorkflows.addNode(\n \"agent\",\n new AgentNode({\n llm: this.options.llm,\n model: this.options.model,\n prompt: this.options.prompt,\n includeAgentName: this.options.includeAgentName,\n name: this.options.name,\n responseFormat: this.options.responseFormat,\n toolClasses,\n shouldReturnDirect,\n signal: this.options.signal,\n }),\n {\n input: this.#inputSchema,\n }\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 * setup preModelHook\n */\n if (options.preModelHook) {\n allNodeWorkflows.addNode(\"pre_model_hook\", options.preModelHook);\n }\n\n /**\n * setup postModelHook\n */\n if (options.postModelHook) {\n allNodeWorkflows.addNode(\"post_model_hook\", options.postModelHook);\n }\n\n /**\n * Add Edges\n */\n allNodeWorkflows.addEdge(START, this.#getEntryPoint());\n\n if (this.options.preModelHook) {\n allNodeWorkflows.addEdge(\"pre_model_hook\", \"agent\");\n }\n\n if (this.options.postModelHook) {\n allNodeWorkflows.addEdge(\"agent\", \"post_model_hook\");\n const postHookPaths = this.#getPostModelHookPaths(\n toolClasses.filter(isClientTool)\n );\n if (postHookPaths.length === 1) {\n allNodeWorkflows.addEdge(\"post_model_hook\", postHookPaths[0]);\n } else {\n allNodeWorkflows.addConditionalEdges(\n \"post_model_hook\",\n this.#createPostModelHookRouter(),\n postHookPaths\n );\n }\n } else {\n const modelPaths = this.#getModelPaths(toolClasses.filter(isClientTool));\n if (modelPaths.length === 1) {\n allNodeWorkflows.addEdge(\"agent\", modelPaths[0]);\n } else {\n allNodeWorkflows.addConditionalEdges(\n \"agent\",\n this.#createModelRouter(),\n modelPaths\n );\n }\n }\n\n /**\n * add edges for tools node\n */\n if (toolClasses.filter(isClientTool).length > 0) {\n if (shouldReturnDirect.size > 0) {\n allNodeWorkflows.addConditionalEdges(\n \"tools\",\n this.#createToolsRouter(shouldReturnDirect),\n [this.#getEntryPoint(), END]\n );\n } else {\n allNodeWorkflows.addEdge(\"tools\", this.#getEntryPoint());\n }\n }\n\n /**\n * compile the graph\n */\n this.#graph = allNodeWorkflows.compile({\n checkpointer: this.options.checkpointer ?? this.options.checkpointSaver,\n interruptBefore: this.options.interruptBefore,\n interruptAfter: this.options.interruptAfter,\n store: this.options.store,\n name: this.options.name,\n description: this.options.description,\n });\n }\n\n /**\n * Get the compiled graph.\n */\n get graph(): AgentGraph<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n > {\n return this.#graph;\n }\n\n #getEntryPoint() {\n const entryPoint = this.options.preModelHook ? \"pre_model_hook\" : \"agent\";\n return entryPoint;\n }\n\n /**\n * Get possible edge destinations from post_model_hook node.\n */\n #getPostModelHookPaths(toolClasses: (ClientTool | ServerTool)[]) {\n const paths: (typeof END | \"agent\" | \"pre_model_hook\" | \"tools\")[] = [];\n if (toolClasses.length > 0) {\n paths.push(this.#getEntryPoint(), \"tools\");\n }\n paths.push(END);\n return paths;\n }\n\n #createPostModelHookRouter() {\n return (state: InternalAgentState<StructuredResponseFormat>) => {\n const messages = state.messages;\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\n if (pendingToolCalls && pendingToolCalls.length > 0) {\n /**\n * The tool node processes a single message.\n * All tool calls in the message are executed in parallel within the tool node.\n * @deprecated likely to be removed in the next version of the agent\n */\n if (this.#toolBehaviorVersion === \"v1\") {\n return \"tools\";\n }\n\n /**\n * The tool node processes a single tool call. Tool calls are distributed across\n * multiple instances of the tool node using the Send API.\n */\n return pendingToolCalls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n }\n\n if (ToolMessage.isInstance(messages.at(-1))) {\n return this.#getEntryPoint();\n }\n\n return END;\n };\n }\n\n /**\n * Get possible edge destinations from model node.\n * @param toolClasses names of tools to call\n * @returns list of possible edge destinations\n */\n #getModelPaths(\n toolClasses: (ClientTool | ServerTool)[]\n ): (\"tools\" | typeof END)[] {\n const paths: (\"tools\" | typeof END)[] = [];\n if (toolClasses.length > 0) {\n paths.push(\"tools\");\n }\n\n paths.push(END);\n\n return paths;\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: InternalAgentState<StructuredResponseFormat>) => {\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 if (this.options.postModelHook) {\n return \"post_model_hook\";\n }\n\n return END;\n }\n\n if (this.options.postModelHook) {\n return \"post_model_hook\";\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\n */\n return lastMessage.tool_calls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n };\n }\n\n /**\n * Create routing function for tools node conditional edges.\n */\n #createToolsRouter(shouldReturnDirect: Set<string>) {\n return (state: InternalAgentState<StructuredResponseFormat>) => {\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 ? this.#getEntryPoint() : END;\n }\n\n // For non-returnDirect tools, always route back to agent\n return this.#getEntryPoint();\n };\n }\n\n /**\n * @inheritdoc\n */\n get invoke(): AgentGraph<StateSchema, StructuredResponseFormat>[\"invoke\"] {\n return this.#graph.invoke.bind(this.#graph);\n }\n\n /**\n * @inheritdoc\n */\n get stream(): AgentGraph<StateSchema, StructuredResponseFormat>[\"stream\"] {\n return this.#graph.stream.bind(this.#graph);\n }\n\n /**\n * @inheritdoc\n */\n get streamEvents(): AgentGraph<\n StateSchema,\n StructuredResponseFormat\n >[\"streamEvents\"] {\n return this.#graph.streamEvents.bind(this.#graph);\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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"}
@@ -51,7 +51,7 @@ var ReactAgent = class {
51
51
  /**
52
52
  * add single tool node for all tools
53
53
  */
54
- if (toolClasses.length > 0) {
54
+ if (toolClasses.filter(isClientTool).length > 0) {
55
55
  const toolNode = new ToolNode(toolClasses.filter(isClientTool), { signal: this.options.signal });
56
56
  allNodeWorkflows.addNode("tools", toolNode);
57
57
  }
@@ -81,7 +81,7 @@ var ReactAgent = class {
81
81
  /**
82
82
  * add edges for tools node
83
83
  */
84
- if (toolClasses.length > 0) if (shouldReturnDirect.size > 0) allNodeWorkflows.addConditionalEdges("tools", this.#createToolsRouter(shouldReturnDirect), [this.#getEntryPoint(), END]);
84
+ if (toolClasses.filter(isClientTool).length > 0) if (shouldReturnDirect.size > 0) allNodeWorkflows.addConditionalEdges("tools", this.#createToolsRouter(shouldReturnDirect), [this.#getEntryPoint(), END]);
85
85
  else allNodeWorkflows.addEdge("tools", this.#getEntryPoint());
86
86
  /**
87
87
  * compile the graph
@@ -1 +1 @@
1
- {"version":3,"file":"ReactAgent.js","names":["options: CreateAgentParams<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n >","#toolBehaviorVersion","#inputSchema","#getEntryPoint","#getPostModelHookPaths","#createPostModelHookRouter","#getModelPaths","#createModelRouter","#createToolsRouter","#graph","toolClasses: (ClientTool | ServerTool)[]","paths: (typeof END | \"agent\" | \"pre_model_hook\" | \"tools\")[]","state: InternalAgentState<StructuredResponseFormat>","paths: (\"tools\" | typeof END)[]","shouldReturnDirect: Set<string>","params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }"],"sources":["../../src/agents/ReactAgent.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { InteropZodObject } from \"@langchain/core/utils/types\";\nimport {\n AnnotationRoot,\n StateGraph,\n END,\n START,\n Send,\n CompiledStateGraph,\n MessagesAnnotation,\n} from \"@langchain/langgraph\";\nimport { ToolMessage, AIMessage } from \"@langchain/core/messages\";\n\nimport {\n createAgentAnnotationConditional,\n ReactAgentAnnotation,\n} from \"./annotation.js\";\nimport { isClientTool, validateLLMHasNoBoundTools } from \"./utils.js\";\nimport { AgentNode } from \"./nodes/AgentNode.js\";\nimport { ToolNode } from \"./nodes/ToolNode.js\";\nimport type {\n CreateAgentParams,\n ClientTool,\n ServerTool,\n InternalAgentState,\n WithStateGraphNodes,\n} from \"./types.js\";\nimport {\n enhanceStateSchemaWithMessageReducer,\n type AnyAnnotationRoot,\n type ToAnnotationRoot,\n type ResponseFormatUndefined,\n} from \"./annotation.js\";\n\ntype AgentGraph<\n StateSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot,\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot\n> = CompiledStateGraph<\n ToAnnotationRoot<StateSchema>[\"State\"],\n ToAnnotationRoot<StateSchema>[\"Update\"],\n any,\n typeof MessagesAnnotation.spec & ToAnnotationRoot<StateSchema>[\"spec\"],\n ReactAgentAnnotation<StructuredResponseFormat>[\"spec\"] &\n ToAnnotationRoot<StateSchema>[\"spec\"],\n ToAnnotationRoot<ContextSchema>[\"spec\"],\n unknown\n>;\n\nexport class ReactAgent<\n StateSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot,\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot\n> {\n #graph: AgentGraph<StateSchema, StructuredResponseFormat, ContextSchema>;\n\n #inputSchema?: AnnotationRoot<ToAnnotationRoot<StateSchema>[\"spec\"]>;\n\n #toolBehaviorVersion: \"v1\" | \"v2\" = \"v2\";\n\n constructor(\n public options: CreateAgentParams<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n >\n ) {\n this.#toolBehaviorVersion = options.version ?? this.#toolBehaviorVersion;\n\n /**\n * Check if the LLM already has bound tools and throw if it does.\n */\n if (options.llm && typeof options.llm !== \"function\") {\n validateLLMHasNoBoundTools(options.llm);\n }\n\n /**\n * validate that model and llm options are not provided together\n */\n if (options.llm && options.model) {\n throw new Error(\"Cannot provide both `model` and `llm` options.\");\n }\n\n /**\n * validate that either model or llm option is provided\n */\n if (!options.llm && !options.model) {\n throw new Error(\n \"Either `model` or `llm` option must be provided to create an agent.\"\n );\n }\n\n const toolClasses = Array.isArray(options.tools)\n ? options.tools\n : options.tools.tools;\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 const schema = this.options.stateSchema\n ? enhanceStateSchemaWithMessageReducer(this.options.stateSchema)\n : createAgentAnnotationConditional<StructuredResponseFormat>(\n this.options.responseFormat !== undefined\n );\n\n const workflow = new StateGraph(schema, this.options.contextSchema);\n\n const allNodeWorkflows = workflow as WithStateGraphNodes<\n \"pre_model_hook\" | \"post_model_hook\" | \"tools\" | \"agent\",\n typeof workflow\n >;\n\n /**\n * Add Nodes\n */\n allNodeWorkflows.addNode(\n \"agent\",\n new AgentNode({\n llm: this.options.llm,\n model: this.options.model,\n prompt: this.options.prompt,\n includeAgentName: this.options.includeAgentName,\n name: this.options.name,\n responseFormat: this.options.responseFormat,\n toolClasses,\n shouldReturnDirect,\n signal: this.options.signal,\n }),\n {\n input: this.#inputSchema,\n }\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 * setup preModelHook\n */\n if (options.preModelHook) {\n allNodeWorkflows.addNode(\"pre_model_hook\", options.preModelHook);\n }\n\n /**\n * setup postModelHook\n */\n if (options.postModelHook) {\n allNodeWorkflows.addNode(\"post_model_hook\", options.postModelHook);\n }\n\n /**\n * Add Edges\n */\n allNodeWorkflows.addEdge(START, this.#getEntryPoint());\n\n if (this.options.preModelHook) {\n allNodeWorkflows.addEdge(\"pre_model_hook\", \"agent\");\n }\n\n if (this.options.postModelHook) {\n allNodeWorkflows.addEdge(\"agent\", \"post_model_hook\");\n const postHookPaths = this.#getPostModelHookPaths(\n toolClasses.filter(isClientTool)\n );\n if (postHookPaths.length === 1) {\n allNodeWorkflows.addEdge(\"post_model_hook\", postHookPaths[0]);\n } else {\n allNodeWorkflows.addConditionalEdges(\n \"post_model_hook\",\n this.#createPostModelHookRouter(),\n postHookPaths\n );\n }\n } else {\n const modelPaths = this.#getModelPaths(toolClasses.filter(isClientTool));\n if (modelPaths.length === 1) {\n allNodeWorkflows.addEdge(\"agent\", modelPaths[0]);\n } else {\n allNodeWorkflows.addConditionalEdges(\n \"agent\",\n this.#createModelRouter(),\n modelPaths\n );\n }\n }\n\n /**\n * add edges for tools node\n */\n if (toolClasses.length > 0) {\n if (shouldReturnDirect.size > 0) {\n allNodeWorkflows.addConditionalEdges(\n \"tools\",\n this.#createToolsRouter(shouldReturnDirect),\n [this.#getEntryPoint(), END]\n );\n } else {\n allNodeWorkflows.addEdge(\"tools\", this.#getEntryPoint());\n }\n }\n\n /**\n * compile the graph\n */\n this.#graph = allNodeWorkflows.compile({\n checkpointer: this.options.checkpointer ?? this.options.checkpointSaver,\n interruptBefore: this.options.interruptBefore,\n interruptAfter: this.options.interruptAfter,\n store: this.options.store,\n name: this.options.name,\n description: this.options.description,\n });\n }\n\n /**\n * Get the compiled graph.\n */\n get graph(): AgentGraph<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n > {\n return this.#graph;\n }\n\n #getEntryPoint() {\n const entryPoint = this.options.preModelHook ? \"pre_model_hook\" : \"agent\";\n return entryPoint;\n }\n\n /**\n * Get possible edge destinations from post_model_hook node.\n */\n #getPostModelHookPaths(toolClasses: (ClientTool | ServerTool)[]) {\n const paths: (typeof END | \"agent\" | \"pre_model_hook\" | \"tools\")[] = [];\n if (toolClasses.length > 0) {\n paths.push(this.#getEntryPoint(), \"tools\");\n }\n paths.push(END);\n return paths;\n }\n\n #createPostModelHookRouter() {\n return (state: InternalAgentState<StructuredResponseFormat>) => {\n const messages = state.messages;\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\n if (pendingToolCalls && pendingToolCalls.length > 0) {\n /**\n * The tool node processes a single message.\n * All tool calls in the message are executed in parallel within the tool node.\n * @deprecated likely to be removed in the next version of the agent\n */\n if (this.#toolBehaviorVersion === \"v1\") {\n return \"tools\";\n }\n\n /**\n * The tool node processes a single tool call. Tool calls are distributed across\n * multiple instances of the tool node using the Send API.\n */\n return pendingToolCalls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n }\n\n if (ToolMessage.isInstance(messages.at(-1))) {\n return this.#getEntryPoint();\n }\n\n return END;\n };\n }\n\n /**\n * Get possible edge destinations from model node.\n * @param toolClasses names of tools to call\n * @returns list of possible edge destinations\n */\n #getModelPaths(\n toolClasses: (ClientTool | ServerTool)[]\n ): (\"tools\" | typeof END)[] {\n const paths: (\"tools\" | typeof END)[] = [];\n if (toolClasses.length > 0) {\n paths.push(\"tools\");\n }\n\n paths.push(END);\n\n return paths;\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: InternalAgentState<StructuredResponseFormat>) => {\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 if (this.options.postModelHook) {\n return \"post_model_hook\";\n }\n\n return END;\n }\n\n if (this.options.postModelHook) {\n return \"post_model_hook\";\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\n */\n return lastMessage.tool_calls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n };\n }\n\n /**\n * Create routing function for tools node conditional edges.\n */\n #createToolsRouter(shouldReturnDirect: Set<string>) {\n return (state: InternalAgentState<StructuredResponseFormat>) => {\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 ? this.#getEntryPoint() : END;\n }\n\n // For non-returnDirect tools, always route back to agent\n return this.#getEntryPoint();\n };\n }\n\n /**\n * @inheritdoc\n */\n get invoke(): AgentGraph<StateSchema, StructuredResponseFormat>[\"invoke\"] {\n return this.#graph.invoke.bind(this.#graph);\n }\n\n /**\n * @inheritdoc\n */\n get stream(): AgentGraph<StateSchema, StructuredResponseFormat>[\"stream\"] {\n return this.#graph.stream.bind(this.#graph);\n }\n\n /**\n * @inheritdoc\n */\n get streamEvents(): AgentGraph<\n StateSchema,\n StructuredResponseFormat\n >[\"streamEvents\"] {\n return this.#graph.streamEvents.bind(this.#graph);\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<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n >","#toolBehaviorVersion","#inputSchema","#getEntryPoint","#getPostModelHookPaths","#createPostModelHookRouter","#getModelPaths","#createModelRouter","#createToolsRouter","#graph","toolClasses: (ClientTool | ServerTool)[]","paths: (typeof END | \"agent\" | \"pre_model_hook\" | \"tools\")[]","state: InternalAgentState<StructuredResponseFormat>","paths: (\"tools\" | typeof END)[]","shouldReturnDirect: Set<string>","params?: {\n withStyles?: boolean;\n curveStyle?: string;\n nodeColors?: Record<string, string>;\n wrapLabelNWords?: number;\n backgroundColor?: string;\n }"],"sources":["../../src/agents/ReactAgent.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { InteropZodObject } from \"@langchain/core/utils/types\";\nimport {\n AnnotationRoot,\n StateGraph,\n END,\n START,\n Send,\n CompiledStateGraph,\n MessagesAnnotation,\n} from \"@langchain/langgraph\";\nimport { ToolMessage, AIMessage } from \"@langchain/core/messages\";\n\nimport {\n createAgentAnnotationConditional,\n ReactAgentAnnotation,\n} from \"./annotation.js\";\nimport { isClientTool, validateLLMHasNoBoundTools } from \"./utils.js\";\nimport { AgentNode } from \"./nodes/AgentNode.js\";\nimport { ToolNode } from \"./nodes/ToolNode.js\";\nimport type {\n CreateAgentParams,\n ClientTool,\n ServerTool,\n InternalAgentState,\n WithStateGraphNodes,\n} from \"./types.js\";\nimport {\n enhanceStateSchemaWithMessageReducer,\n type AnyAnnotationRoot,\n type ToAnnotationRoot,\n type ResponseFormatUndefined,\n} from \"./annotation.js\";\n\ntype AgentGraph<\n StateSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot,\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot\n> = CompiledStateGraph<\n ToAnnotationRoot<StateSchema>[\"State\"],\n ToAnnotationRoot<StateSchema>[\"Update\"],\n any,\n typeof MessagesAnnotation.spec & ToAnnotationRoot<StateSchema>[\"spec\"],\n ReactAgentAnnotation<StructuredResponseFormat>[\"spec\"] &\n ToAnnotationRoot<StateSchema>[\"spec\"],\n ToAnnotationRoot<ContextSchema>[\"spec\"],\n unknown\n>;\n\nexport class ReactAgent<\n StateSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot,\n StructuredResponseFormat extends\n | Record<string, any>\n | ResponseFormatUndefined = Record<string, any>,\n ContextSchema extends AnyAnnotationRoot | InteropZodObject = AnyAnnotationRoot\n> {\n #graph: AgentGraph<StateSchema, StructuredResponseFormat, ContextSchema>;\n\n #inputSchema?: AnnotationRoot<ToAnnotationRoot<StateSchema>[\"spec\"]>;\n\n #toolBehaviorVersion: \"v1\" | \"v2\" = \"v2\";\n\n constructor(\n public options: CreateAgentParams<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n >\n ) {\n this.#toolBehaviorVersion = options.version ?? this.#toolBehaviorVersion;\n\n /**\n * Check if the LLM already has bound tools and throw if it does.\n */\n if (options.llm && typeof options.llm !== \"function\") {\n validateLLMHasNoBoundTools(options.llm);\n }\n\n /**\n * validate that model and llm options are not provided together\n */\n if (options.llm && options.model) {\n throw new Error(\"Cannot provide both `model` and `llm` options.\");\n }\n\n /**\n * validate that either model or llm option is provided\n */\n if (!options.llm && !options.model) {\n throw new Error(\n \"Either `model` or `llm` option must be provided to create an agent.\"\n );\n }\n\n const toolClasses = Array.isArray(options.tools)\n ? options.tools\n : options.tools.tools;\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 const schema = this.options.stateSchema\n ? enhanceStateSchemaWithMessageReducer(this.options.stateSchema)\n : createAgentAnnotationConditional<StructuredResponseFormat>(\n this.options.responseFormat !== undefined\n );\n\n const workflow = new StateGraph(schema, this.options.contextSchema);\n\n const allNodeWorkflows = workflow as WithStateGraphNodes<\n \"pre_model_hook\" | \"post_model_hook\" | \"tools\" | \"agent\",\n typeof workflow\n >;\n\n /**\n * Add Nodes\n */\n allNodeWorkflows.addNode(\n \"agent\",\n new AgentNode({\n llm: this.options.llm,\n model: this.options.model,\n prompt: this.options.prompt,\n includeAgentName: this.options.includeAgentName,\n name: this.options.name,\n responseFormat: this.options.responseFormat,\n toolClasses,\n shouldReturnDirect,\n signal: this.options.signal,\n }),\n {\n input: this.#inputSchema,\n }\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 * setup preModelHook\n */\n if (options.preModelHook) {\n allNodeWorkflows.addNode(\"pre_model_hook\", options.preModelHook);\n }\n\n /**\n * setup postModelHook\n */\n if (options.postModelHook) {\n allNodeWorkflows.addNode(\"post_model_hook\", options.postModelHook);\n }\n\n /**\n * Add Edges\n */\n allNodeWorkflows.addEdge(START, this.#getEntryPoint());\n\n if (this.options.preModelHook) {\n allNodeWorkflows.addEdge(\"pre_model_hook\", \"agent\");\n }\n\n if (this.options.postModelHook) {\n allNodeWorkflows.addEdge(\"agent\", \"post_model_hook\");\n const postHookPaths = this.#getPostModelHookPaths(\n toolClasses.filter(isClientTool)\n );\n if (postHookPaths.length === 1) {\n allNodeWorkflows.addEdge(\"post_model_hook\", postHookPaths[0]);\n } else {\n allNodeWorkflows.addConditionalEdges(\n \"post_model_hook\",\n this.#createPostModelHookRouter(),\n postHookPaths\n );\n }\n } else {\n const modelPaths = this.#getModelPaths(toolClasses.filter(isClientTool));\n if (modelPaths.length === 1) {\n allNodeWorkflows.addEdge(\"agent\", modelPaths[0]);\n } else {\n allNodeWorkflows.addConditionalEdges(\n \"agent\",\n this.#createModelRouter(),\n modelPaths\n );\n }\n }\n\n /**\n * add edges for tools node\n */\n if (toolClasses.filter(isClientTool).length > 0) {\n if (shouldReturnDirect.size > 0) {\n allNodeWorkflows.addConditionalEdges(\n \"tools\",\n this.#createToolsRouter(shouldReturnDirect),\n [this.#getEntryPoint(), END]\n );\n } else {\n allNodeWorkflows.addEdge(\"tools\", this.#getEntryPoint());\n }\n }\n\n /**\n * compile the graph\n */\n this.#graph = allNodeWorkflows.compile({\n checkpointer: this.options.checkpointer ?? this.options.checkpointSaver,\n interruptBefore: this.options.interruptBefore,\n interruptAfter: this.options.interruptAfter,\n store: this.options.store,\n name: this.options.name,\n description: this.options.description,\n });\n }\n\n /**\n * Get the compiled graph.\n */\n get graph(): AgentGraph<\n StateSchema,\n StructuredResponseFormat,\n ContextSchema\n > {\n return this.#graph;\n }\n\n #getEntryPoint() {\n const entryPoint = this.options.preModelHook ? \"pre_model_hook\" : \"agent\";\n return entryPoint;\n }\n\n /**\n * Get possible edge destinations from post_model_hook node.\n */\n #getPostModelHookPaths(toolClasses: (ClientTool | ServerTool)[]) {\n const paths: (typeof END | \"agent\" | \"pre_model_hook\" | \"tools\")[] = [];\n if (toolClasses.length > 0) {\n paths.push(this.#getEntryPoint(), \"tools\");\n }\n paths.push(END);\n return paths;\n }\n\n #createPostModelHookRouter() {\n return (state: InternalAgentState<StructuredResponseFormat>) => {\n const messages = state.messages;\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\n if (pendingToolCalls && pendingToolCalls.length > 0) {\n /**\n * The tool node processes a single message.\n * All tool calls in the message are executed in parallel within the tool node.\n * @deprecated likely to be removed in the next version of the agent\n */\n if (this.#toolBehaviorVersion === \"v1\") {\n return \"tools\";\n }\n\n /**\n * The tool node processes a single tool call. Tool calls are distributed across\n * multiple instances of the tool node using the Send API.\n */\n return pendingToolCalls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n }\n\n if (ToolMessage.isInstance(messages.at(-1))) {\n return this.#getEntryPoint();\n }\n\n return END;\n };\n }\n\n /**\n * Get possible edge destinations from model node.\n * @param toolClasses names of tools to call\n * @returns list of possible edge destinations\n */\n #getModelPaths(\n toolClasses: (ClientTool | ServerTool)[]\n ): (\"tools\" | typeof END)[] {\n const paths: (\"tools\" | typeof END)[] = [];\n if (toolClasses.length > 0) {\n paths.push(\"tools\");\n }\n\n paths.push(END);\n\n return paths;\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: InternalAgentState<StructuredResponseFormat>) => {\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 if (this.options.postModelHook) {\n return \"post_model_hook\";\n }\n\n return END;\n }\n\n if (this.options.postModelHook) {\n return \"post_model_hook\";\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\n */\n return lastMessage.tool_calls.map(\n (toolCall) => new Send(\"tools\", { ...state, lg_tool_call: toolCall })\n );\n };\n }\n\n /**\n * Create routing function for tools node conditional edges.\n */\n #createToolsRouter(shouldReturnDirect: Set<string>) {\n return (state: InternalAgentState<StructuredResponseFormat>) => {\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 ? this.#getEntryPoint() : END;\n }\n\n // For non-returnDirect tools, always route back to agent\n return this.#getEntryPoint();\n };\n }\n\n /**\n * @inheritdoc\n */\n get invoke(): AgentGraph<StateSchema, StructuredResponseFormat>[\"invoke\"] {\n return this.#graph.invoke.bind(this.#graph);\n }\n\n /**\n * @inheritdoc\n */\n get stream(): AgentGraph<StateSchema, StructuredResponseFormat>[\"stream\"] {\n return this.#graph.stream.bind(this.#graph);\n }\n\n /**\n * @inheritdoc\n */\n get streamEvents(): AgentGraph<\n StateSchema,\n StructuredResponseFormat\n >[\"streamEvents\"] {\n return this.#graph.streamEvents.bind(this.#graph);\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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"}
@@ -21,6 +21,16 @@ var RunnableCallable = class extends __langchain_core_runnables.Runnable {
21
21
  getState() {
22
22
  return this.#state;
23
23
  }
24
+ /**
25
+ * This allows us to set the state of the runnable, e.g. for model and middleware nodes.
26
+ * @internal
27
+ */
28
+ setState(state) {
29
+ this.#state = {
30
+ ...this.#state,
31
+ ...state
32
+ };
33
+ }
24
34
  async invoke(input, options) {
25
35
  const mergedConfig = (0, __langchain_core_runnables.mergeConfigs)(this.config, options);
26
36
  const returnValue = await __langchain_core_singletons.AsyncLocalStorageProviderSingleton.runWithConfig(mergedConfig, async () => this.func(input, mergedConfig));
@@ -1 +1 @@
1
- {"version":3,"file":"RunnableCallable.cjs","names":["Runnable","fields: RunnableCallableArgs<I, O>","#state","input: I","options?: Partial<RunnableConfig> | undefined","AsyncLocalStorageProviderSingleton"],"sources":["../../src/agents/RunnableCallable.ts"],"sourcesContent":["import {\n mergeConfigs,\n Runnable,\n RunnableConfig,\n} from \"@langchain/core/runnables\";\nimport { AsyncLocalStorageProviderSingleton } from \"@langchain/core/singletons\";\n\nexport interface RunnableCallableArgs<I, O> {\n /**\n * The name of the runnable.\n */\n name?: string;\n /**\n * The function to call.\n */\n func: (...args: I[]) => O | Promise<O>;\n /**\n * The tags to add to the runnable.\n */\n tags?: string[];\n /**\n * Whether to recurse the runnable.\n */\n recurse?: boolean;\n}\n\nexport class RunnableCallable<I = unknown, O = unknown> extends Runnable<I, O> {\n lc_namespace: string[] = [\"langgraph\"];\n\n func: RunnableCallableArgs<I, O>[\"func\"];\n\n tags?: RunnableCallableArgs<I, O>[\"tags\"];\n\n config?: RunnableConfig;\n\n trace = true;\n\n recurse = true;\n\n #state: Awaited<O>;\n\n constructor(fields: RunnableCallableArgs<I, O>) {\n super();\n this.name = fields.name ?? fields.func.name;\n this.func = fields.func;\n this.config = fields.tags ? { tags: fields.tags } : undefined;\n this.recurse = fields.recurse ?? this.recurse;\n }\n\n getState(): Awaited<O> {\n return this.#state;\n }\n\n async invoke(\n input: I,\n options?: Partial<RunnableConfig> | undefined\n ): Promise<O> {\n const mergedConfig = mergeConfigs(this.config, options);\n\n const returnValue = await AsyncLocalStorageProviderSingleton.runWithConfig(\n mergedConfig,\n async () => this.func(input, mergedConfig as I)\n );\n\n if (Runnable.isRunnable(returnValue) && this.recurse) {\n return await AsyncLocalStorageProviderSingleton.runWithConfig(\n mergedConfig,\n async () => (returnValue as Runnable<I, O>).invoke(input, mergedConfig)\n );\n }\n\n this.#state = returnValue;\n return returnValue;\n }\n}\n"],"mappings":";;;;;AA0BA,IAAa,mBAAb,cAAgEA,oCAAe;CAC7E,eAAyB,CAAC,WAAY;CAEtC;CAEA;CAEA;CAEA,QAAQ;CAER,UAAU;CAEV;CAEA,YAAYC,QAAoC;EAC9C,OAAO;EACP,KAAK,OAAO,OAAO,QAAQ,OAAO,KAAK;EACvC,KAAK,OAAO,OAAO;EACnB,KAAK,SAAS,OAAO,OAAO,EAAE,MAAM,OAAO,KAAM,IAAG;EACpD,KAAK,UAAU,OAAO,WAAW,KAAK;CACvC;CAED,WAAuB;AACrB,SAAO,KAAKC;CACb;CAED,MAAM,OACJC,OACAC,SACY;EACZ,MAAM,4DAA4B,KAAK,QAAQ,QAAQ;EAEvD,MAAM,cAAc,MAAMC,+DAAmC,cAC3D,cACA,YAAY,KAAK,KAAK,OAAO,aAAkB,CAChD;AAED,MAAIL,oCAAS,WAAW,YAAY,IAAI,KAAK,QAC3C,QAAO,MAAMK,+DAAmC,cAC9C,cACA,YAAa,YAA+B,OAAO,OAAO,aAAa,CACxE;EAGH,KAAKH,SAAS;AACd,SAAO;CACR;AACF"}
1
+ {"version":3,"file":"RunnableCallable.cjs","names":["Runnable","fields: RunnableCallableArgs<I, O>","#state","state: Awaited<O>","input: I","options?: Partial<RunnableConfig> | undefined","AsyncLocalStorageProviderSingleton"],"sources":["../../src/agents/RunnableCallable.ts"],"sourcesContent":["import {\n mergeConfigs,\n Runnable,\n RunnableConfig,\n} from \"@langchain/core/runnables\";\nimport { AsyncLocalStorageProviderSingleton } from \"@langchain/core/singletons\";\n\nexport interface RunnableCallableArgs<I, O> {\n /**\n * The name of the runnable.\n */\n name?: string;\n /**\n * The function to call.\n */\n func: (...args: I[]) => O | Promise<O>;\n /**\n * The tags to add to the runnable.\n */\n tags?: string[];\n /**\n * Whether to recurse the runnable.\n */\n recurse?: boolean;\n}\n\nexport class RunnableCallable<I = unknown, O = unknown> extends Runnable<I, O> {\n lc_namespace: string[] = [\"langgraph\"];\n\n func: RunnableCallableArgs<I, O>[\"func\"];\n\n tags?: RunnableCallableArgs<I, O>[\"tags\"];\n\n config?: RunnableConfig;\n\n trace = true;\n\n recurse = true;\n\n #state: Awaited<O>;\n\n constructor(fields: RunnableCallableArgs<I, O>) {\n super();\n this.name = fields.name ?? fields.func.name;\n this.func = fields.func;\n this.config = fields.tags ? { tags: fields.tags } : undefined;\n this.recurse = fields.recurse ?? this.recurse;\n }\n\n getState(): Awaited<O> {\n return this.#state;\n }\n\n /**\n * This allows us to set the state of the runnable, e.g. for model and middleware nodes.\n * @internal\n */\n setState(state: Awaited<O>) {\n this.#state = {\n ...this.#state,\n ...state,\n };\n }\n\n async invoke(\n input: I,\n options?: Partial<RunnableConfig> | undefined\n ): Promise<O> {\n const mergedConfig = mergeConfigs(this.config, options);\n\n const returnValue = await AsyncLocalStorageProviderSingleton.runWithConfig(\n mergedConfig,\n async () => this.func(input, mergedConfig as I)\n );\n\n if (Runnable.isRunnable(returnValue) && this.recurse) {\n return await AsyncLocalStorageProviderSingleton.runWithConfig(\n mergedConfig,\n async () => (returnValue as Runnable<I, O>).invoke(input, mergedConfig)\n );\n }\n\n this.#state = returnValue;\n return returnValue;\n }\n}\n"],"mappings":";;;;;AA0BA,IAAa,mBAAb,cAAgEA,oCAAe;CAC7E,eAAyB,CAAC,WAAY;CAEtC;CAEA;CAEA;CAEA,QAAQ;CAER,UAAU;CAEV;CAEA,YAAYC,QAAoC;EAC9C,OAAO;EACP,KAAK,OAAO,OAAO,QAAQ,OAAO,KAAK;EACvC,KAAK,OAAO,OAAO;EACnB,KAAK,SAAS,OAAO,OAAO,EAAE,MAAM,OAAO,KAAM,IAAG;EACpD,KAAK,UAAU,OAAO,WAAW,KAAK;CACvC;CAED,WAAuB;AACrB,SAAO,KAAKC;CACb;;;;;CAMD,SAASC,OAAmB;EAC1B,KAAKD,SAAS;GACZ,GAAG,KAAKA;GACR,GAAG;EACJ;CACF;CAED,MAAM,OACJE,OACAC,SACY;EACZ,MAAM,4DAA4B,KAAK,QAAQ,QAAQ;EAEvD,MAAM,cAAc,MAAMC,+DAAmC,cAC3D,cACA,YAAY,KAAK,KAAK,OAAO,aAAkB,CAChD;AAED,MAAIN,oCAAS,WAAW,YAAY,IAAI,KAAK,QAC3C,QAAO,MAAMM,+DAAmC,cAC9C,cACA,YAAa,YAA+B,OAAO,OAAO,aAAa,CACxE;EAGH,KAAKJ,SAAS;AACd,SAAO;CACR;AACF"}
@@ -29,6 +29,11 @@ declare class RunnableCallable<I = unknown, O = unknown> extends Runnable<I, O>
29
29
  recurse: boolean;
30
30
  constructor(fields: RunnableCallableArgs<I, O>);
31
31
  getState(): Awaited<O>;
32
+ /**
33
+ * This allows us to set the state of the runnable, e.g. for model and middleware nodes.
34
+ * @internal
35
+ */
36
+ setState(state: Awaited<O>): void;
32
37
  invoke(input: I, options?: Partial<RunnableConfig> | undefined): Promise<O>;
33
38
  }
34
39
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"RunnableCallable.d.cts","names":["Runnable","RunnableConfig","RunnableCallableArgs","I","O","Promise","RunnableCallable","Awaited","Partial"],"sources":["../../src/agents/RunnableCallable.d.ts"],"sourcesContent":["import { Runnable, RunnableConfig } from \"@langchain/core/runnables\";\nexport interface RunnableCallableArgs<I, O> {\n /**\n * The name of the runnable.\n */\n name?: string;\n /**\n * The function to call.\n */\n func: (...args: I[]) => O | Promise<O>;\n /**\n * The tags to add to the runnable.\n */\n tags?: string[];\n /**\n * Whether to recurse the runnable.\n */\n recurse?: boolean;\n}\nexport declare class RunnableCallable<I = unknown, O = unknown> extends Runnable<I, O> {\n #private;\n lc_namespace: string[];\n func: RunnableCallableArgs<I, O>[\"func\"];\n tags?: RunnableCallableArgs<I, O>[\"tags\"];\n config?: RunnableConfig;\n trace: boolean;\n recurse: boolean;\n constructor(fields: RunnableCallableArgs<I, O>);\n getState(): Awaited<O>;\n invoke(input: I, options?: Partial<RunnableConfig> | undefined): Promise<O>;\n}\n"],"mappings":";;;UACiBE;;AAAjB;;EAAqC,IAQjBC,CAAAA,EAAAA,MAAAA;EAAC;;;EAAkB,IAAA,EAAA,CAAA,GAAA,IAAA,EAAnBA,CAAmB,EAAA,EAAA,GAAXC,CAAW,GAAPC,OAAO,CAACD,CAAD,CAAA;EAUlBE;;;EAA6D,IAAEF,CAAAA,EAAAA,MAAAA,EAAAA;EAAC;;;EAGvD,OACED,CAAAA,EAAAA,OAAAA;;AAArBD,cAJUI,gBAIVJ,CAAAA,IAAAA,OAAAA,EAAAA,IAAAA,OAAAA,CAAAA,SAJ6DF,QAI7DE,CAJsEC,CAItED,EAJyEE,CAIzEF,CAAAA,CAAAA;EAAoB,CAAA,OAClBD;EAAc,YAGkBE,EAAAA,MAAAA,EAAAA;EAAC,IAAEC,EALtCF,oBAKsCE,CALjBD,CAKiBC,EALdA,CAKcA,CAAAA,CAAAA,MAAAA,CAAAA;EAAC,IAAzBF,CAAAA,EAJbA,oBAIaA,CAJQC,CAIRD,EAJWE,CAIXF,CAAAA,CAAAA,MAAAA,CAAAA;EAAoB,MACpBE,CAAAA,EAJXH,cAIWG;EAAC,KAATG,EAAAA,OAAAA;EAAO,OACLJ,EAAAA,OAAAA;EAAC,WAAoBF,CAAAA,MAAAA,EAFfC,oBAEeD,CAFME,CAENF,EAFSG,CAETH,CAAAA;EAAc,QAAtBO,CAAAA,CAAAA,EADfD,OACeC,CADPJ,CACOI,CAAAA;EAAO,MAAuCJ,CAAAA,KAAAA,EAA3DD,CAA2DC,EAAAA,OAAAA,CAAAA,EAA9CI,OAA8CJ,CAAtCH,cAAsCG,CAAAA,GAAAA,SAAAA,CAAAA,EAARC,OAAQD,CAAAA,CAAAA,CAAAA"}
1
+ {"version":3,"file":"RunnableCallable.d.cts","names":["Runnable","RunnableConfig","RunnableCallableArgs","I","O","Promise","RunnableCallable","Awaited","Partial"],"sources":["../../src/agents/RunnableCallable.d.ts"],"sourcesContent":["import { Runnable, RunnableConfig } from \"@langchain/core/runnables\";\nexport interface RunnableCallableArgs<I, O> {\n /**\n * The name of the runnable.\n */\n name?: string;\n /**\n * The function to call.\n */\n func: (...args: I[]) => O | Promise<O>;\n /**\n * The tags to add to the runnable.\n */\n tags?: string[];\n /**\n * Whether to recurse the runnable.\n */\n recurse?: boolean;\n}\nexport declare class RunnableCallable<I = unknown, O = unknown> extends Runnable<I, O> {\n #private;\n lc_namespace: string[];\n func: RunnableCallableArgs<I, O>[\"func\"];\n tags?: RunnableCallableArgs<I, O>[\"tags\"];\n config?: RunnableConfig;\n trace: boolean;\n recurse: boolean;\n constructor(fields: RunnableCallableArgs<I, O>);\n getState(): Awaited<O>;\n /**\n * This allows us to set the state of the runnable, e.g. for model and middleware nodes.\n * @internal\n */\n setState(state: Awaited<O>): void;\n invoke(input: I, options?: Partial<RunnableConfig> | undefined): Promise<O>;\n}\n"],"mappings":";;;UACiBE;;AAAjB;;EAAqC,IAQjBC,CAAAA,EAAAA,MAAAA;EAAC;;;EAAkB,IAAA,EAAA,CAAA,GAAA,IAAA,EAAnBA,CAAmB,EAAA,EAAA,GAAXC,CAAW,GAAPC,OAAO,CAACD,CAAD,CAAA;EAUlBE;;;EAA6D,IAAEF,CAAAA,EAAAA,MAAAA,EAAAA;EAAC;;;EAGvD,OACED,CAAAA,EAAAA,OAAAA;;AAArBD,cAJUI,gBAIVJ,CAAAA,IAAAA,OAAAA,EAAAA,IAAAA,OAAAA,CAAAA,SAJ6DF,QAI7DE,CAJsEC,CAItED,EAJyEE,CAIzEF,CAAAA,CAAAA;EAAoB,CAAA,OAClBD;EAAc,YAGkBE,EAAAA,MAAAA,EAAAA;EAAC,IAAEC,EALtCF,oBAKsCE,CALjBD,CAKiBC,EALdA,CAKcA,CAAAA,CAAAA,MAAAA,CAAAA;EAAC,IAAzBF,CAAAA,EAJbA,oBAIaA,CAJQC,CAIRD,EAJWE,CAIXF,CAAAA,CAAAA,MAAAA,CAAAA;EAAoB,MACpBE,CAAAA,EAJXH,cAIWG;EAAC,KAATG,EAAAA,OAAAA;EAAO,OAKKH,EAAAA,OAAAA;EAAC,WAATG,CAAAA,MAAAA,EANIL,oBAMJK,CANyBJ,CAMzBI,EAN4BH,CAM5BG,CAAAA;EAAO,QACTJ,CAAAA,CAAAA,EANFI,OAMEJ,CANMC,CAMND,CAAAA;EAAC;;;;EAAyD,QAfJH,CAAAA,KAAAA,EAcpDO,OAdoDP,CAc5CI,CAd4CJ,CAAAA,CAAAA,EAAAA,IAAAA;EAAQ,MAAA,CAAA,KAAA,EAe9DG,CAf8D,EAAA,OAAA,CAAA,EAejDK,OAfiD,CAezCP,cAfyC,CAAA,GAAA,SAAA,CAAA,EAeXI,OAfW,CAeHD,CAfG,CAAA"}
@@ -29,6 +29,11 @@ declare class RunnableCallable<I = unknown, O = unknown> extends Runnable<I, O>
29
29
  recurse: boolean;
30
30
  constructor(fields: RunnableCallableArgs<I, O>);
31
31
  getState(): Awaited<O>;
32
+ /**
33
+ * This allows us to set the state of the runnable, e.g. for model and middleware nodes.
34
+ * @internal
35
+ */
36
+ setState(state: Awaited<O>): void;
32
37
  invoke(input: I, options?: Partial<RunnableConfig> | undefined): Promise<O>;
33
38
  }
34
39
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"RunnableCallable.d.ts","names":["Runnable","RunnableConfig","RunnableCallableArgs","I","O","Promise","RunnableCallable","Awaited","Partial"],"sources":["../../src/agents/RunnableCallable.d.ts"],"sourcesContent":["import { Runnable, RunnableConfig } from \"@langchain/core/runnables\";\nexport interface RunnableCallableArgs<I, O> {\n /**\n * The name of the runnable.\n */\n name?: string;\n /**\n * The function to call.\n */\n func: (...args: I[]) => O | Promise<O>;\n /**\n * The tags to add to the runnable.\n */\n tags?: string[];\n /**\n * Whether to recurse the runnable.\n */\n recurse?: boolean;\n}\nexport declare class RunnableCallable<I = unknown, O = unknown> extends Runnable<I, O> {\n #private;\n lc_namespace: string[];\n func: RunnableCallableArgs<I, O>[\"func\"];\n tags?: RunnableCallableArgs<I, O>[\"tags\"];\n config?: RunnableConfig;\n trace: boolean;\n recurse: boolean;\n constructor(fields: RunnableCallableArgs<I, O>);\n getState(): Awaited<O>;\n invoke(input: I, options?: Partial<RunnableConfig> | undefined): Promise<O>;\n}\n"],"mappings":";;;UACiBE;;AAAjB;;EAAqC,IAQjBC,CAAAA,EAAAA,MAAAA;EAAC;;;EAAkB,IAAA,EAAA,CAAA,GAAA,IAAA,EAAnBA,CAAmB,EAAA,EAAA,GAAXC,CAAW,GAAPC,OAAO,CAACD,CAAD,CAAA;EAUlBE;;;EAA6D,IAAEF,CAAAA,EAAAA,MAAAA,EAAAA;EAAC;;;EAGvD,OACED,CAAAA,EAAAA,OAAAA;;AAArBD,cAJUI,gBAIVJ,CAAAA,IAAAA,OAAAA,EAAAA,IAAAA,OAAAA,CAAAA,SAJ6DF,QAI7DE,CAJsEC,CAItED,EAJyEE,CAIzEF,CAAAA,CAAAA;EAAoB,CAAA,OAClBD;EAAc,YAGkBE,EAAAA,MAAAA,EAAAA;EAAC,IAAEC,EALtCF,oBAKsCE,CALjBD,CAKiBC,EALdA,CAKcA,CAAAA,CAAAA,MAAAA,CAAAA;EAAC,IAAzBF,CAAAA,EAJbA,oBAIaA,CAJQC,CAIRD,EAJWE,CAIXF,CAAAA,CAAAA,MAAAA,CAAAA;EAAoB,MACpBE,CAAAA,EAJXH,cAIWG;EAAC,KAATG,EAAAA,OAAAA;EAAO,OACLJ,EAAAA,OAAAA;EAAC,WAAoBF,CAAAA,MAAAA,EAFfC,oBAEeD,CAFME,CAENF,EAFSG,CAETH,CAAAA;EAAc,QAAtBO,CAAAA,CAAAA,EADfD,OACeC,CADPJ,CACOI,CAAAA;EAAO,MAAuCJ,CAAAA,KAAAA,EAA3DD,CAA2DC,EAAAA,OAAAA,CAAAA,EAA9CI,OAA8CJ,CAAtCH,cAAsCG,CAAAA,GAAAA,SAAAA,CAAAA,EAARC,OAAQD,CAAAA,CAAAA,CAAAA"}
1
+ {"version":3,"file":"RunnableCallable.d.ts","names":["Runnable","RunnableConfig","RunnableCallableArgs","I","O","Promise","RunnableCallable","Awaited","Partial"],"sources":["../../src/agents/RunnableCallable.d.ts"],"sourcesContent":["import { Runnable, RunnableConfig } from \"@langchain/core/runnables\";\nexport interface RunnableCallableArgs<I, O> {\n /**\n * The name of the runnable.\n */\n name?: string;\n /**\n * The function to call.\n */\n func: (...args: I[]) => O | Promise<O>;\n /**\n * The tags to add to the runnable.\n */\n tags?: string[];\n /**\n * Whether to recurse the runnable.\n */\n recurse?: boolean;\n}\nexport declare class RunnableCallable<I = unknown, O = unknown> extends Runnable<I, O> {\n #private;\n lc_namespace: string[];\n func: RunnableCallableArgs<I, O>[\"func\"];\n tags?: RunnableCallableArgs<I, O>[\"tags\"];\n config?: RunnableConfig;\n trace: boolean;\n recurse: boolean;\n constructor(fields: RunnableCallableArgs<I, O>);\n getState(): Awaited<O>;\n /**\n * This allows us to set the state of the runnable, e.g. for model and middleware nodes.\n * @internal\n */\n setState(state: Awaited<O>): void;\n invoke(input: I, options?: Partial<RunnableConfig> | undefined): Promise<O>;\n}\n"],"mappings":";;;UACiBE;;AAAjB;;EAAqC,IAQjBC,CAAAA,EAAAA,MAAAA;EAAC;;;EAAkB,IAAA,EAAA,CAAA,GAAA,IAAA,EAAnBA,CAAmB,EAAA,EAAA,GAAXC,CAAW,GAAPC,OAAO,CAACD,CAAD,CAAA;EAUlBE;;;EAA6D,IAAEF,CAAAA,EAAAA,MAAAA,EAAAA;EAAC;;;EAGvD,OACED,CAAAA,EAAAA,OAAAA;;AAArBD,cAJUI,gBAIVJ,CAAAA,IAAAA,OAAAA,EAAAA,IAAAA,OAAAA,CAAAA,SAJ6DF,QAI7DE,CAJsEC,CAItED,EAJyEE,CAIzEF,CAAAA,CAAAA;EAAoB,CAAA,OAClBD;EAAc,YAGkBE,EAAAA,MAAAA,EAAAA;EAAC,IAAEC,EALtCF,oBAKsCE,CALjBD,CAKiBC,EALdA,CAKcA,CAAAA,CAAAA,MAAAA,CAAAA;EAAC,IAAzBF,CAAAA,EAJbA,oBAIaA,CAJQC,CAIRD,EAJWE,CAIXF,CAAAA,CAAAA,MAAAA,CAAAA;EAAoB,MACpBE,CAAAA,EAJXH,cAIWG;EAAC,KAATG,EAAAA,OAAAA;EAAO,OAKKH,EAAAA,OAAAA;EAAC,WAATG,CAAAA,MAAAA,EANIL,oBAMJK,CANyBJ,CAMzBI,EAN4BH,CAM5BG,CAAAA;EAAO,QACTJ,CAAAA,CAAAA,EANFI,OAMEJ,CANMC,CAMND,CAAAA;EAAC;;;;EAAyD,QAfJH,CAAAA,KAAAA,EAcpDO,OAdoDP,CAc5CI,CAd4CJ,CAAAA,CAAAA,EAAAA,IAAAA;EAAQ,MAAA,CAAA,KAAA,EAe9DG,CAf8D,EAAA,OAAA,CAAA,EAejDK,OAfiD,CAezCP,cAfyC,CAAA,GAAA,SAAA,CAAA,EAeXI,OAfW,CAeHD,CAfG,CAAA"}
@@ -20,6 +20,16 @@ var RunnableCallable = class extends Runnable {
20
20
  getState() {
21
21
  return this.#state;
22
22
  }
23
+ /**
24
+ * This allows us to set the state of the runnable, e.g. for model and middleware nodes.
25
+ * @internal
26
+ */
27
+ setState(state) {
28
+ this.#state = {
29
+ ...this.#state,
30
+ ...state
31
+ };
32
+ }
23
33
  async invoke(input, options) {
24
34
  const mergedConfig = mergeConfigs(this.config, options);
25
35
  const returnValue = await AsyncLocalStorageProviderSingleton.runWithConfig(mergedConfig, async () => this.func(input, mergedConfig));
@@ -1 +1 @@
1
- {"version":3,"file":"RunnableCallable.js","names":["fields: RunnableCallableArgs<I, O>","#state","input: I","options?: Partial<RunnableConfig> | undefined"],"sources":["../../src/agents/RunnableCallable.ts"],"sourcesContent":["import {\n mergeConfigs,\n Runnable,\n RunnableConfig,\n} from \"@langchain/core/runnables\";\nimport { AsyncLocalStorageProviderSingleton } from \"@langchain/core/singletons\";\n\nexport interface RunnableCallableArgs<I, O> {\n /**\n * The name of the runnable.\n */\n name?: string;\n /**\n * The function to call.\n */\n func: (...args: I[]) => O | Promise<O>;\n /**\n * The tags to add to the runnable.\n */\n tags?: string[];\n /**\n * Whether to recurse the runnable.\n */\n recurse?: boolean;\n}\n\nexport class RunnableCallable<I = unknown, O = unknown> extends Runnable<I, O> {\n lc_namespace: string[] = [\"langgraph\"];\n\n func: RunnableCallableArgs<I, O>[\"func\"];\n\n tags?: RunnableCallableArgs<I, O>[\"tags\"];\n\n config?: RunnableConfig;\n\n trace = true;\n\n recurse = true;\n\n #state: Awaited<O>;\n\n constructor(fields: RunnableCallableArgs<I, O>) {\n super();\n this.name = fields.name ?? fields.func.name;\n this.func = fields.func;\n this.config = fields.tags ? { tags: fields.tags } : undefined;\n this.recurse = fields.recurse ?? this.recurse;\n }\n\n getState(): Awaited<O> {\n return this.#state;\n }\n\n async invoke(\n input: I,\n options?: Partial<RunnableConfig> | undefined\n ): Promise<O> {\n const mergedConfig = mergeConfigs(this.config, options);\n\n const returnValue = await AsyncLocalStorageProviderSingleton.runWithConfig(\n mergedConfig,\n async () => this.func(input, mergedConfig as I)\n );\n\n if (Runnable.isRunnable(returnValue) && this.recurse) {\n return await AsyncLocalStorageProviderSingleton.runWithConfig(\n mergedConfig,\n async () => (returnValue as Runnable<I, O>).invoke(input, mergedConfig)\n );\n }\n\n this.#state = returnValue;\n return returnValue;\n }\n}\n"],"mappings":";;;;AA0BA,IAAa,mBAAb,cAAgE,SAAe;CAC7E,eAAyB,CAAC,WAAY;CAEtC;CAEA;CAEA;CAEA,QAAQ;CAER,UAAU;CAEV;CAEA,YAAYA,QAAoC;EAC9C,OAAO;EACP,KAAK,OAAO,OAAO,QAAQ,OAAO,KAAK;EACvC,KAAK,OAAO,OAAO;EACnB,KAAK,SAAS,OAAO,OAAO,EAAE,MAAM,OAAO,KAAM,IAAG;EACpD,KAAK,UAAU,OAAO,WAAW,KAAK;CACvC;CAED,WAAuB;AACrB,SAAO,KAAKC;CACb;CAED,MAAM,OACJC,OACAC,SACY;EACZ,MAAM,eAAe,aAAa,KAAK,QAAQ,QAAQ;EAEvD,MAAM,cAAc,MAAM,mCAAmC,cAC3D,cACA,YAAY,KAAK,KAAK,OAAO,aAAkB,CAChD;AAED,MAAI,SAAS,WAAW,YAAY,IAAI,KAAK,QAC3C,QAAO,MAAM,mCAAmC,cAC9C,cACA,YAAa,YAA+B,OAAO,OAAO,aAAa,CACxE;EAGH,KAAKF,SAAS;AACd,SAAO;CACR;AACF"}
1
+ {"version":3,"file":"RunnableCallable.js","names":["fields: RunnableCallableArgs<I, O>","#state","state: Awaited<O>","input: I","options?: Partial<RunnableConfig> | undefined"],"sources":["../../src/agents/RunnableCallable.ts"],"sourcesContent":["import {\n mergeConfigs,\n Runnable,\n RunnableConfig,\n} from \"@langchain/core/runnables\";\nimport { AsyncLocalStorageProviderSingleton } from \"@langchain/core/singletons\";\n\nexport interface RunnableCallableArgs<I, O> {\n /**\n * The name of the runnable.\n */\n name?: string;\n /**\n * The function to call.\n */\n func: (...args: I[]) => O | Promise<O>;\n /**\n * The tags to add to the runnable.\n */\n tags?: string[];\n /**\n * Whether to recurse the runnable.\n */\n recurse?: boolean;\n}\n\nexport class RunnableCallable<I = unknown, O = unknown> extends Runnable<I, O> {\n lc_namespace: string[] = [\"langgraph\"];\n\n func: RunnableCallableArgs<I, O>[\"func\"];\n\n tags?: RunnableCallableArgs<I, O>[\"tags\"];\n\n config?: RunnableConfig;\n\n trace = true;\n\n recurse = true;\n\n #state: Awaited<O>;\n\n constructor(fields: RunnableCallableArgs<I, O>) {\n super();\n this.name = fields.name ?? fields.func.name;\n this.func = fields.func;\n this.config = fields.tags ? { tags: fields.tags } : undefined;\n this.recurse = fields.recurse ?? this.recurse;\n }\n\n getState(): Awaited<O> {\n return this.#state;\n }\n\n /**\n * This allows us to set the state of the runnable, e.g. for model and middleware nodes.\n * @internal\n */\n setState(state: Awaited<O>) {\n this.#state = {\n ...this.#state,\n ...state,\n };\n }\n\n async invoke(\n input: I,\n options?: Partial<RunnableConfig> | undefined\n ): Promise<O> {\n const mergedConfig = mergeConfigs(this.config, options);\n\n const returnValue = await AsyncLocalStorageProviderSingleton.runWithConfig(\n mergedConfig,\n async () => this.func(input, mergedConfig as I)\n );\n\n if (Runnable.isRunnable(returnValue) && this.recurse) {\n return await AsyncLocalStorageProviderSingleton.runWithConfig(\n mergedConfig,\n async () => (returnValue as Runnable<I, O>).invoke(input, mergedConfig)\n );\n }\n\n this.#state = returnValue;\n return returnValue;\n }\n}\n"],"mappings":";;;;AA0BA,IAAa,mBAAb,cAAgE,SAAe;CAC7E,eAAyB,CAAC,WAAY;CAEtC;CAEA;CAEA;CAEA,QAAQ;CAER,UAAU;CAEV;CAEA,YAAYA,QAAoC;EAC9C,OAAO;EACP,KAAK,OAAO,OAAO,QAAQ,OAAO,KAAK;EACvC,KAAK,OAAO,OAAO;EACnB,KAAK,SAAS,OAAO,OAAO,EAAE,MAAM,OAAO,KAAM,IAAG;EACpD,KAAK,UAAU,OAAO,WAAW,KAAK;CACvC;CAED,WAAuB;AACrB,SAAO,KAAKC;CACb;;;;;CAMD,SAASC,OAAmB;EAC1B,KAAKD,SAAS;GACZ,GAAG,KAAKA;GACR,GAAG;EACJ;CACF;CAED,MAAM,OACJE,OACAC,SACY;EACZ,MAAM,eAAe,aAAa,KAAK,QAAQ,QAAQ;EAEvD,MAAM,cAAc,MAAM,mCAAmC,cAC3D,cACA,YAAY,KAAK,KAAK,OAAO,aAAkB,CAChD;AAED,MAAI,SAAS,WAAW,YAAY,IAAI,KAAK,QAC3C,QAAO,MAAM,mCAAmC,cAC9C,cACA,YAAa,YAA+B,OAAO,OAAO,aAAa,CACxE;EAGH,KAAKH,SAAS;AACd,SAAO;CACR;AACF"}
@@ -13,6 +13,17 @@ const PreHookAnnotation = __langchain_langgraph.Annotation.Root({
13
13
  default: () => []
14
14
  })
15
15
  });
16
+ const createAgentBaseAnnotation = () => __langchain_langgraph.Annotation.Root({ messages: (0, __langchain_langgraph.Annotation)({
17
+ reducer: __langchain_langgraph.messagesStateReducer,
18
+ default: () => []
19
+ }) });
20
+ const createAgentAnnotation = () => __langchain_langgraph.Annotation.Root({
21
+ messages: (0, __langchain_langgraph.Annotation)({
22
+ reducer: __langchain_langgraph.messagesStateReducer,
23
+ default: () => []
24
+ }),
25
+ structuredResponse: (0, __langchain_langgraph.Annotation)()
26
+ });
16
27
  function createAgentAnnotationConditional(hasStructuredResponse = true) {
17
28
  const baseAnnotation = { messages: (0, __langchain_langgraph.Annotation)({
18
29
  reducer: __langchain_langgraph.messagesStateReducer,
@@ -144,6 +155,9 @@ function createAnnotationForZodType(zodType) {
144
155
  }
145
156
 
146
157
  //#endregion
158
+ exports.PreHookAnnotation = PreHookAnnotation;
159
+ exports.createAgentAnnotation = createAgentAnnotation;
147
160
  exports.createAgentAnnotationConditional = createAgentAnnotationConditional;
161
+ exports.createAgentBaseAnnotation = createAgentBaseAnnotation;
148
162
  exports.enhanceStateSchemaWithMessageReducer = enhanceStateSchemaWithMessageReducer;
149
163
  //# sourceMappingURL=annotation.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"annotation.cjs","names":["PreHookAnnotation: AnnotationRoot<{\n llmInputMessages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}>","Annotation","messagesStateReducer","stateSchema: AnyAnnotationRoot | InteropZodObject","annotationFields: Record<string, any>","_: unknown","update: unknown","current: unknown[]","update: unknown[]","config: (typeof ZOD_TYPE_CONFIGS)[keyof typeof ZOD_TYPE_CONFIGS]","defaultValueFn: () => unknown","zodType: any","config"],"sources":["../../src/agents/annotation.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { BaseMessage } from \"@langchain/core/messages\";\nimport {\n Annotation,\n Messages,\n AnnotationRoot,\n messagesStateReducer,\n type BinaryOperatorAggregate,\n type LastValue,\n} from \"@langchain/langgraph\";\nimport type { InteropZodToStateDefinition } from \"@langchain/langgraph/zod\";\nimport {\n isInteropZodSchema,\n getInteropZodObjectShape,\n getInteropZodDefaultGetter,\n type InteropZodObject,\n} from \"@langchain/core/utils/types\";\n\n/**\n * Special type to indicate that no response format is provided.\n * When this type is used, the structuredResponse property should not be present in the result.\n */\nexport type ResponseFormatUndefined = {\n __responseFormatUndefined: true;\n};\n\nexport const PreHookAnnotation: AnnotationRoot<{\n llmInputMessages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}> = Annotation.Root({\n llmInputMessages: Annotation<BaseMessage[], Messages>({\n reducer: (_, update) => messagesStateReducer([], update),\n default: () => [],\n }),\n messages: Annotation<BaseMessage[], Messages>({\n reducer: messagesStateReducer,\n default: () => [],\n }),\n});\nexport type PreHookAnnotation = typeof PreHookAnnotation;\n\n// Base annotation without structuredResponse (for ResponseFormatUndefined)\nexport const createAgentBaseAnnotation = () =>\n Annotation.Root({\n messages: Annotation<BaseMessage[], Messages>({\n reducer: messagesStateReducer,\n default: () => [],\n }),\n });\n\n// Full annotation with structuredResponse (for regular cases)\nexport const createAgentAnnotation = <\n T extends Record<string, any> = Record<string, any>\n>(): AnnotationRoot<{\n structuredResponse: LastValue<T>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}> =>\n Annotation.Root({\n messages: Annotation<BaseMessage[], Messages>({\n reducer: messagesStateReducer,\n default: () => [],\n }),\n structuredResponse: Annotation<T>(),\n });\n\n// Create annotation conditionally - for ResponseFormatUndefined, don't include structuredResponse\nexport function createAgentAnnotationConditional<\n T extends Record<string, any> | ResponseFormatUndefined\n>(\n hasStructuredResponse = true\n): AnnotationRoot<{\n structuredResponse: LastValue<T extends ResponseFormatUndefined ? never : T>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}> {\n const baseAnnotation = {\n messages: Annotation<BaseMessage[], Messages>({\n reducer: messagesStateReducer,\n default: () => [],\n }),\n };\n\n if (!hasStructuredResponse) {\n return Annotation.Root(baseAnnotation) as AnnotationRoot<{\n structuredResponse: LastValue<\n T extends ResponseFormatUndefined ? never : T\n >;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n }>;\n }\n\n return Annotation.Root({\n ...baseAnnotation,\n structuredResponse:\n Annotation<T extends ResponseFormatUndefined ? never : T>(),\n });\n}\n\n// Helper type to select the right annotation based on the response format type\nexport type ReactAgentAnnotation<\n T extends Record<string, any> | ResponseFormatUndefined\n> = T extends ResponseFormatUndefined\n ? ReturnType<typeof createAgentBaseAnnotation>\n : T extends Record<string, any>\n ? ReturnType<typeof createAgentAnnotation<T>>\n : never;\n\nexport type ToAnnotationRoot<A extends AnyAnnotationRoot | InteropZodObject> =\n A extends AnyAnnotationRoot\n ? A\n : A extends InteropZodObject\n ? AnnotationRoot<InteropZodToStateDefinition<A>>\n : never;\n\nexport type AnyAnnotationRoot = AnnotationRoot<any>;\n\n/**\n * Enhances a state schema to ensure proper message handling.\n * If a Zod schema is provided, it creates an annotation that includes the messagesStateReducer\n * and infers appropriate reducers for all other fields.\n *\n * @param stateSchema - The state schema to enhance.\n * @returns The enhanced state schema.\n */\nexport function enhanceStateSchemaWithMessageReducer(\n stateSchema: AnyAnnotationRoot | InteropZodObject\n) {\n /**\n * If it's already an annotation, return as-is\n */\n if (typeof stateSchema === \"object\" && \"State\" in stateSchema) {\n return stateSchema;\n }\n\n /**\n * If it's a Zod schema, create annotations for all fields\n */\n if (isInteropZodSchema(stateSchema)) {\n const shape = getInteropZodObjectShape(stateSchema);\n const annotationFields: Record<string, any> = {};\n\n /**\n * Process each field in the Zod schema\n */\n for (const [key, zodType] of Object.entries(shape)) {\n annotationFields[key] =\n key === \"messages\"\n ? /**\n * Special handling for messages field - always use messagesStateReducer\n */\n Annotation<BaseMessage[]>({\n reducer: messagesStateReducer,\n default: () => [],\n })\n : /**\n * For other fields, create appropriate annotations based on type\n */\n createAnnotationForZodType(zodType);\n }\n\n /**\n * Ensure messages field exists even if not in the Zod schema\n */\n if (!annotationFields.messages) {\n annotationFields.messages = Annotation<BaseMessage[]>({\n reducer: messagesStateReducer,\n default: () => [],\n });\n }\n\n return Annotation.Root(annotationFields);\n }\n\n /**\n * Fallback: create a base annotation with message reducer only\n */\n return Annotation.Root({\n messages: Annotation<BaseMessage[]>({\n reducer: messagesStateReducer,\n default: () => [],\n }),\n });\n}\n\n/**\n * Type configuration for different Zod types\n */\nconst ZOD_TYPE_CONFIGS = {\n ZodString: {\n reducer: (_: unknown, update: unknown) => update,\n fallbackDefault: \"\",\n },\n ZodNumber: {\n reducer: (_: unknown, update: unknown) => update,\n fallbackDefault: 0,\n },\n ZodBoolean: {\n reducer: (_: unknown, update: unknown) => update,\n fallbackDefault: false,\n },\n ZodArray: {\n reducer: (_: unknown, update: unknown) => update,\n fallbackDefault: [] as unknown[],\n },\n ZodRecord: {\n reducer: (current: unknown[], update: unknown[]) => ({\n ...current,\n ...update,\n }),\n fallbackDefault: {} as Record<string, unknown>,\n },\n ZodObject: {\n reducer: (current: unknown[], update: unknown[]) => ({\n ...current,\n ...update,\n }),\n fallbackDefault: {} as Record<string, unknown>,\n },\n} as const;\n\n/**\n * Creates an annotation based on type configuration and default value\n */\nfunction createAnnotationFromConfig(\n config: (typeof ZOD_TYPE_CONFIGS)[keyof typeof ZOD_TYPE_CONFIGS],\n defaultValueFn: () => unknown\n) {\n return Annotation<any>({\n reducer: config.reducer,\n default: defaultValueFn,\n });\n}\n\n/**\n * Creates an appropriate annotation for a given Zod type.\n */\nfunction createAnnotationForZodType(zodType: any): any {\n const typeName = zodType._def?.typeName;\n const defaultGetter = getInteropZodDefaultGetter(zodType);\n const isOptional = typeName === \"ZodOptional\";\n\n /**\n * Handle Zod wrapper first\n */\n if (\n typeName === \"ZodDefault\" ||\n typeName === \"ZodOptional\" ||\n typeName === \"ZodNullable\"\n ) {\n const innerTypeName = zodType._def.innerType._def?.typeName;\n const config =\n ZOD_TYPE_CONFIGS[innerTypeName as keyof typeof ZOD_TYPE_CONFIGS];\n return config\n ? createAnnotationFromConfig(\n config,\n () =>\n defaultGetter?.() ||\n (isOptional ? undefined : config?.fallbackDefault)\n )\n : Annotation<unknown>({\n reducer: (_: unknown, update: unknown) => update,\n default: () => defaultGetter?.(),\n });\n }\n\n /**\n * Handle regular types\n */\n const config = ZOD_TYPE_CONFIGS[typeName as keyof typeof ZOD_TYPE_CONFIGS];\n if (config) {\n return createAnnotationFromConfig(\n config,\n () => defaultGetter?.() || config?.fallbackDefault\n );\n }\n\n /**\n * Fallback for unknown types\n */\n return Annotation<unknown>({\n reducer: (_: unknown, update: unknown) => update,\n default: () => defaultGetter?.(),\n });\n}\n"],"mappings":";;;;;AA0BA,MAAaA,oBAGRC,iCAAW,KAAK;CACnB,wDAAsD;EACpD,SAAS,CAAC,GAAG,2DAAgC,CAAE,GAAE,OAAO;EACxD,SAAS,MAAM,CAAE;CAClB,EAAC;CACF,gDAA8C;EAC5C,SAASC;EACT,SAAS,MAAM,CAAE;CAClB,EAAC;AACH,EAAC;AA4BF,SAAgB,iCAGd,wBAAwB,MAIvB;CACD,MAAM,iBAAiB,EACrB,gDAA8C;EAC5C,SAASA;EACT,SAAS,MAAM,CAAE;CAClB,EAAC,CACH;AAED,KAAI,CAAC,sBACH,QAAOD,iCAAW,KAAK,eAAe;AAQxC,QAAOA,iCAAW,KAAK;EACrB,GAAG;EACH,2DAC6D;CAC9D,EAAC;AACH;;;;;;;;;AA4BD,SAAgB,qCACdE,aACA;;;;AAIA,KAAI,OAAO,gBAAgB,YAAY,WAAW,YAChD,QAAO;;;;AAMT,0DAAuB,YAAY,EAAE;EACnC,MAAM,mEAAiC,YAAY;EACnD,MAAMC,mBAAwC,CAAE;;;;AAKhD,OAAK,MAAM,CAAC,KAAK,QAAQ,IAAI,OAAO,QAAQ,MAAM,EAChD,iBAAiB,OACf,QAAQ,mDAIsB;GACxB,SAASF;GACT,SAAS,MAAM,CAAE;EAClB,EAAC,GAIF,2BAA2B,QAAQ;;;;AAM3C,MAAI,CAAC,iBAAiB,UACpB,iBAAiB,iDAAqC;GACpD,SAASA;GACT,SAAS,MAAM,CAAE;EAClB,EAAC;AAGJ,SAAOD,iCAAW,KAAK,iBAAiB;CACzC;;;;AAKD,QAAOA,iCAAW,KAAK,EACrB,gDAAoC;EAClC,SAASC;EACT,SAAS,MAAM,CAAE;CAClB,EAAC,CACH,EAAC;AACH;;;;AAKD,MAAM,mBAAmB;CACvB,WAAW;EACT,SAAS,CAACG,GAAYC,WAAoB;EAC1C,iBAAiB;CAClB;CACD,WAAW;EACT,SAAS,CAACD,GAAYC,WAAoB;EAC1C,iBAAiB;CAClB;CACD,YAAY;EACV,SAAS,CAACD,GAAYC,WAAoB;EAC1C,iBAAiB;CAClB;CACD,UAAU;EACR,SAAS,CAACD,GAAYC,WAAoB;EAC1C,iBAAiB,CAAE;CACpB;CACD,WAAW;EACT,SAAS,CAACC,SAAoBC,YAAuB;GACnD,GAAG;GACH,GAAG;EACJ;EACD,iBAAiB,CAAE;CACpB;CACD,WAAW;EACT,SAAS,CAACD,SAAoBC,YAAuB;GACnD,GAAG;GACH,GAAG;EACJ;EACD,iBAAiB,CAAE;CACpB;AACF;;;;AAKD,SAAS,2BACPC,QACAC,gBACA;AACA,8CAAuB;EACrB,SAAS,OAAO;EAChB,SAAS;CACV,EAAC;AACH;;;;AAKD,SAAS,2BAA2BC,SAAmB;CACrD,MAAM,WAAW,QAAQ,MAAM;CAC/B,MAAM,6EAA2C,QAAQ;CACzD,MAAM,aAAa,aAAa;;;;AAKhC,KACE,aAAa,gBACb,aAAa,iBACb,aAAa,eACb;EACA,MAAM,gBAAgB,QAAQ,KAAK,UAAU,MAAM;EACnD,MAAMC,WACJ,iBAAiB;AACnB,SAAOA,WACH,2BACEA,UACA,MACE,iBAAiB,KAChB,aAAa,SAAYA,UAAQ,iBACrC,yCACmB;GAClB,SAAS,CAACP,GAAYC,WAAoB;GAC1C,SAAS,MAAM,iBAAiB;EACjC,EAAC;CACP;;;;CAKD,MAAM,SAAS,iBAAiB;AAChC,KAAI,OACF,QAAO,2BACL,QACA,MAAM,iBAAiB,IAAI,QAAQ,gBACpC;;;;AAMH,8CAA2B;EACzB,SAAS,CAACD,GAAYC,WAAoB;EAC1C,SAAS,MAAM,iBAAiB;CACjC,EAAC;AACH"}
1
+ {"version":3,"file":"annotation.cjs","names":["PreHookAnnotation: AnnotationRoot<{\n llmInputMessages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}>","Annotation","messagesStateReducer","stateSchema: AnyAnnotationRoot | InteropZodObject","annotationFields: Record<string, any>","_: unknown","update: unknown","current: unknown[]","update: unknown[]","config: (typeof ZOD_TYPE_CONFIGS)[keyof typeof ZOD_TYPE_CONFIGS]","defaultValueFn: () => unknown","zodType: any","config"],"sources":["../../src/agents/annotation.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { BaseMessage } from \"@langchain/core/messages\";\nimport {\n Annotation,\n Messages,\n AnnotationRoot,\n messagesStateReducer,\n type BinaryOperatorAggregate,\n type LastValue,\n} from \"@langchain/langgraph\";\nimport type { InteropZodToStateDefinition } from \"@langchain/langgraph/zod\";\nimport {\n isInteropZodSchema,\n getInteropZodObjectShape,\n getInteropZodDefaultGetter,\n type InteropZodObject,\n} from \"@langchain/core/utils/types\";\n\n/**\n * Special type to indicate that no response format is provided.\n * When this type is used, the structuredResponse property should not be present in the result.\n */\nexport type ResponseFormatUndefined = {\n __responseFormatUndefined: true;\n};\n\nexport const PreHookAnnotation: AnnotationRoot<{\n llmInputMessages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}> = Annotation.Root({\n llmInputMessages: Annotation<BaseMessage[], Messages>({\n reducer: (_, update) => messagesStateReducer([], update),\n default: () => [],\n }),\n messages: Annotation<BaseMessage[], Messages>({\n reducer: messagesStateReducer,\n default: () => [],\n }),\n});\nexport type PreHookAnnotation = typeof PreHookAnnotation;\n\n// Base annotation without structuredResponse (for ResponseFormatUndefined)\nexport const createAgentBaseAnnotation = () =>\n Annotation.Root({\n messages: Annotation<BaseMessage[], Messages>({\n reducer: messagesStateReducer,\n default: () => [],\n }),\n });\n\n// Full annotation with structuredResponse (for regular cases)\nexport const createAgentAnnotation = <\n T extends Record<string, any> = Record<string, any>\n>(): AnnotationRoot<{\n structuredResponse: LastValue<T>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}> =>\n Annotation.Root({\n messages: Annotation<BaseMessage[], Messages>({\n reducer: messagesStateReducer,\n default: () => [],\n }),\n structuredResponse: Annotation<T>(),\n });\n\n// Create annotation conditionally - for ResponseFormatUndefined, don't include structuredResponse\nexport function createAgentAnnotationConditional<\n T extends Record<string, any> | ResponseFormatUndefined\n>(\n hasStructuredResponse = true\n): AnnotationRoot<{\n structuredResponse: LastValue<T extends ResponseFormatUndefined ? never : T>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}> {\n const baseAnnotation = {\n messages: Annotation<BaseMessage[], Messages>({\n reducer: messagesStateReducer,\n default: () => [],\n }),\n };\n\n if (!hasStructuredResponse) {\n return Annotation.Root(baseAnnotation) as AnnotationRoot<{\n structuredResponse: LastValue<\n T extends ResponseFormatUndefined ? never : T\n >;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n }>;\n }\n\n return Annotation.Root({\n ...baseAnnotation,\n structuredResponse:\n Annotation<T extends ResponseFormatUndefined ? never : T>(),\n });\n}\n\n// Helper type to select the right annotation based on the response format type\nexport type ReactAgentAnnotation<\n T extends Record<string, any> | ResponseFormatUndefined\n> = T extends ResponseFormatUndefined\n ? ReturnType<typeof createAgentBaseAnnotation>\n : T extends Record<string, any>\n ? ReturnType<typeof createAgentAnnotation<T>>\n : never;\n\nexport type ToAnnotationRoot<A extends AnyAnnotationRoot | InteropZodObject> =\n A extends AnyAnnotationRoot\n ? A\n : A extends InteropZodObject\n ? AnnotationRoot<InteropZodToStateDefinition<A>>\n : never;\n\nexport type AnyAnnotationRoot = AnnotationRoot<any>;\n\n/**\n * Enhances a state schema to ensure proper message handling.\n * If a Zod schema is provided, it creates an annotation that includes the messagesStateReducer\n * and infers appropriate reducers for all other fields.\n *\n * @param stateSchema - The state schema to enhance.\n * @returns The enhanced state schema.\n */\nexport function enhanceStateSchemaWithMessageReducer(\n stateSchema: AnyAnnotationRoot | InteropZodObject\n) {\n /**\n * If it's already an annotation, return as-is\n */\n if (typeof stateSchema === \"object\" && \"State\" in stateSchema) {\n return stateSchema;\n }\n\n /**\n * If it's a Zod schema, create annotations for all fields\n */\n if (isInteropZodSchema(stateSchema)) {\n const shape = getInteropZodObjectShape(stateSchema);\n const annotationFields: Record<string, any> = {};\n\n /**\n * Process each field in the Zod schema\n */\n for (const [key, zodType] of Object.entries(shape)) {\n annotationFields[key] =\n key === \"messages\"\n ? /**\n * Special handling for messages field - always use messagesStateReducer\n */\n Annotation<BaseMessage[]>({\n reducer: messagesStateReducer,\n default: () => [],\n })\n : /**\n * For other fields, create appropriate annotations based on type\n */\n createAnnotationForZodType(zodType);\n }\n\n /**\n * Ensure messages field exists even if not in the Zod schema\n */\n if (!annotationFields.messages) {\n annotationFields.messages = Annotation<BaseMessage[]>({\n reducer: messagesStateReducer,\n default: () => [],\n });\n }\n\n return Annotation.Root(annotationFields);\n }\n\n /**\n * Fallback: create a base annotation with message reducer only\n */\n return Annotation.Root({\n messages: Annotation<BaseMessage[]>({\n reducer: messagesStateReducer,\n default: () => [],\n }),\n });\n}\n\n/**\n * Type configuration for different Zod types\n */\nconst ZOD_TYPE_CONFIGS = {\n ZodString: {\n reducer: (_: unknown, update: unknown) => update,\n fallbackDefault: \"\",\n },\n ZodNumber: {\n reducer: (_: unknown, update: unknown) => update,\n fallbackDefault: 0,\n },\n ZodBoolean: {\n reducer: (_: unknown, update: unknown) => update,\n fallbackDefault: false,\n },\n ZodArray: {\n reducer: (_: unknown, update: unknown) => update,\n fallbackDefault: [] as unknown[],\n },\n ZodRecord: {\n reducer: (current: unknown[], update: unknown[]) => ({\n ...current,\n ...update,\n }),\n fallbackDefault: {} as Record<string, unknown>,\n },\n ZodObject: {\n reducer: (current: unknown[], update: unknown[]) => ({\n ...current,\n ...update,\n }),\n fallbackDefault: {} as Record<string, unknown>,\n },\n} as const;\n\n/**\n * Creates an annotation based on type configuration and default value\n */\nfunction createAnnotationFromConfig(\n config: (typeof ZOD_TYPE_CONFIGS)[keyof typeof ZOD_TYPE_CONFIGS],\n defaultValueFn: () => unknown\n) {\n return Annotation<any>({\n reducer: config.reducer,\n default: defaultValueFn,\n });\n}\n\n/**\n * Creates an appropriate annotation for a given Zod type.\n */\nfunction createAnnotationForZodType(zodType: any): any {\n const typeName = zodType._def?.typeName;\n const defaultGetter = getInteropZodDefaultGetter(zodType);\n const isOptional = typeName === \"ZodOptional\";\n\n /**\n * Handle Zod wrapper first\n */\n if (\n typeName === \"ZodDefault\" ||\n typeName === \"ZodOptional\" ||\n typeName === \"ZodNullable\"\n ) {\n const innerTypeName = zodType._def.innerType._def?.typeName;\n const config =\n ZOD_TYPE_CONFIGS[innerTypeName as keyof typeof ZOD_TYPE_CONFIGS];\n return config\n ? createAnnotationFromConfig(\n config,\n () =>\n defaultGetter?.() ||\n (isOptional ? undefined : config?.fallbackDefault)\n )\n : Annotation<unknown>({\n reducer: (_: unknown, update: unknown) => update,\n default: () => defaultGetter?.(),\n });\n }\n\n /**\n * Handle regular types\n */\n const config = ZOD_TYPE_CONFIGS[typeName as keyof typeof ZOD_TYPE_CONFIGS];\n if (config) {\n return createAnnotationFromConfig(\n config,\n () => defaultGetter?.() || config?.fallbackDefault\n );\n }\n\n /**\n * Fallback for unknown types\n */\n return Annotation<unknown>({\n reducer: (_: unknown, update: unknown) => update,\n default: () => defaultGetter?.(),\n });\n}\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { InteropZodObject } from "@langchain/core/utils/types";
2
- import { AnnotationRoot, BinaryOperatorAggregate, LastValue, Messages } from "@langchain/langgraph";
3
- import * as _langchain_core_messages23 from "@langchain/core/messages";
2
+ import * as _langchain_core_messages0 from "@langchain/core/messages";
4
3
  import { BaseMessage } from "@langchain/core/messages";
4
+ import { AnnotationRoot, BinaryOperatorAggregate, LastValue, Messages } from "@langchain/langgraph";
5
5
  import { InteropZodToStateDefinition } from "@langchain/langgraph/zod";
6
6
 
7
7
  //#region src/agents/annotation.d.ts
@@ -20,15 +20,18 @@ declare const PreHookAnnotation: AnnotationRoot<{
20
20
  type PreHookAnnotation = typeof PreHookAnnotation;
21
21
  // Base annotation without structuredResponse (for ResponseFormatUndefined)
22
22
  declare const createAgentBaseAnnotation: () => AnnotationRoot<{
23
- messages: BinaryOperatorAggregate<BaseMessage<_langchain_core_messages23.MessageStructure, _langchain_core_messages23.MessageType>[], Messages>;
23
+ messages: BinaryOperatorAggregate<BaseMessage<_langchain_core_messages0.MessageStructure, _langchain_core_messages0.MessageType>[], Messages>;
24
24
  }>;
25
25
  // Full annotation with structuredResponse (for regular cases)
26
26
  declare const createAgentAnnotation: <T extends Record<string, any> = Record<string, any>>() => AnnotationRoot<{
27
27
  structuredResponse: LastValue<T>;
28
- messages: BinaryOperatorAggregate<BaseMessage<_langchain_core_messages23.MessageStructure, _langchain_core_messages23.MessageType>[], Messages>;
28
+ messages: BinaryOperatorAggregate<BaseMessage<_langchain_core_messages0.MessageStructure, _langchain_core_messages0.MessageType>[], Messages>;
29
29
  }>;
30
30
  // Create annotation conditionally - for ResponseFormatUndefined, don't include structuredResponse
31
-
31
+ declare function createAgentAnnotationConditional<T extends Record<string, any> | ResponseFormatUndefined>(hasStructuredResponse?: boolean): AnnotationRoot<{
32
+ structuredResponse: LastValue<T extends ResponseFormatUndefined ? never : T>;
33
+ messages: BinaryOperatorAggregate<BaseMessage[], Messages>;
34
+ }>;
32
35
  // Helper type to select the right annotation based on the response format type
33
36
  type ReactAgentAnnotation<T extends Record<string, any> | ResponseFormatUndefined> = T extends ResponseFormatUndefined ? ReturnType<typeof createAgentBaseAnnotation> : T extends Record<string, any> ? ReturnType<typeof createAgentAnnotation<T>> : never;
34
37
  type ToAnnotationRoot<A extends AnyAnnotationRoot | InteropZodObject> = A extends AnyAnnotationRoot ? A : A extends InteropZodObject ? AnnotationRoot<InteropZodToStateDefinition<A>> : never;
@@ -41,7 +44,9 @@ type AnyAnnotationRoot = AnnotationRoot<any>;
41
44
  * @param stateSchema - The state schema to enhance.
42
45
  * @returns The enhanced state schema.
43
46
  */
44
-
47
+ declare function enhanceStateSchemaWithMessageReducer(stateSchema: AnyAnnotationRoot | InteropZodObject): AnnotationRoot<{
48
+ messages: BinaryOperatorAggregate<BaseMessage<_langchain_core_messages0.MessageStructure, _langchain_core_messages0.MessageType>[], BaseMessage<_langchain_core_messages0.MessageStructure, _langchain_core_messages0.MessageType>[]>;
49
+ }> | AnyAnnotationRoot;
45
50
  //#endregion
46
- export { AnyAnnotationRoot, PreHookAnnotation, ReactAgentAnnotation, ResponseFormatUndefined, ToAnnotationRoot };
51
+ export { AnyAnnotationRoot, PreHookAnnotation, ReactAgentAnnotation, ResponseFormatUndefined, ToAnnotationRoot, createAgentAnnotation, createAgentAnnotationConditional, createAgentBaseAnnotation, enhanceStateSchemaWithMessageReducer };
47
52
  //# sourceMappingURL=annotation.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"annotation.d.cts","names":["BaseMessage","Messages","AnnotationRoot","BinaryOperatorAggregate","LastValue","InteropZodToStateDefinition","InteropZodObject","ResponseFormatUndefined","PreHookAnnotation","createAgentBaseAnnotation","_langchain_core_messages23","MessageStructure","MessageType","createAgentAnnotation","Record","T","createAgentAnnotationConditional","ReactAgentAnnotation","ReturnType","ToAnnotationRoot","AnyAnnotationRoot","A","enhanceStateSchemaWithMessageReducer"],"sources":["../../src/agents/annotation.d.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { BaseMessage } from \"@langchain/core/messages\";\nimport { Messages, AnnotationRoot, type BinaryOperatorAggregate, type LastValue } from \"@langchain/langgraph\";\nimport type { InteropZodToStateDefinition } from \"@langchain/langgraph/zod\";\nimport { type InteropZodObject } from \"@langchain/core/utils/types\";\n/**\n * Special type to indicate that no response format is provided.\n * When this type is used, the structuredResponse property should not be present in the result.\n */\nexport type ResponseFormatUndefined = {\n __responseFormatUndefined: true;\n};\nexport declare const PreHookAnnotation: AnnotationRoot<{\n llmInputMessages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}>;\nexport type PreHookAnnotation = typeof PreHookAnnotation;\n// Base annotation without structuredResponse (for ResponseFormatUndefined)\nexport declare const createAgentBaseAnnotation: () => AnnotationRoot<{\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], Messages>;\n}>;\n// Full annotation with structuredResponse (for regular cases)\nexport declare const createAgentAnnotation: <T extends Record<string, any> = Record<string, any>>() => AnnotationRoot<{\n structuredResponse: LastValue<T>;\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], Messages>;\n}>;\n// Create annotation conditionally - for ResponseFormatUndefined, don't include structuredResponse\nexport declare function createAgentAnnotationConditional<T extends Record<string, any> | ResponseFormatUndefined>(hasStructuredResponse?: boolean): AnnotationRoot<{\n structuredResponse: LastValue<T extends ResponseFormatUndefined ? never : T>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}>;\n// Helper type to select the right annotation based on the response format type\nexport type ReactAgentAnnotation<T extends Record<string, any> | ResponseFormatUndefined> = T extends ResponseFormatUndefined ? ReturnType<typeof createAgentBaseAnnotation> : T extends Record<string, any> ? ReturnType<typeof createAgentAnnotation<T>> : never;\nexport type ToAnnotationRoot<A extends AnyAnnotationRoot | InteropZodObject> = A extends AnyAnnotationRoot ? A : A extends InteropZodObject ? AnnotationRoot<InteropZodToStateDefinition<A>> : never;\nexport type AnyAnnotationRoot = AnnotationRoot<any>;\n/**\n * Enhances a state schema to ensure proper message handling.\n * If a Zod schema is provided, it creates an annotation that includes the messagesStateReducer\n * and infers appropriate reducers for all other fields.\n *\n * @param stateSchema - The state schema to enhance.\n * @returns The enhanced state schema.\n */\nexport declare function enhanceStateSchemaWithMessageReducer(stateSchema: AnyAnnotationRoot | InteropZodObject): AnnotationRoot<{\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[]>;\n}> | AnyAnnotationRoot;\n"],"mappings":";;;;;;;;;;AASA;AAGA;AAGE,KANUO,uBAAAA,GAMV;EAAA,yBAF4CP,EAAAA,IAAAA;CAAW;AAAnCG,cADDK,iBACCL,EADkBD,cAClBC,CAAAA;EAAuB,gBACPH,EADhBG,uBACgBH,CADQA,WACRA,EAAAA,EADuBC,QACvBD,CAAAA;EAAW,QAAIC,EAAvCE,uBAAuCF,CAAfD,WAAeC,EAAAA,EAAAA,QAAAA,CAAAA;CAAQ,CAAA;AAFrBC,KAI5BM,iBAAAA,GAJ4BN,OAIDM,iBAJCN;AAAc;AAI1CM,cAESC,yBAFkBD,EAAAA,GAAAA,GAEeN,cAFE,CAAA;EAEnCO,QAAAA,EACPN,uBACZ,CADoCH,WACpC,CAAAU,0BAAAA,CADmFC,gBAAAA,EAAgBD,0BAAAA,CAAqCE,WAAAA,CACxI,EAAA,EADwJX,QACxJ,CAAA;CAAA,CAAA;;AADmGS,cAGhFG,qBAHqHD,EAAAA,CAAAA,UAGnFE,MAHmFF,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAG7DE,MAH6DF,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,CAAAA,GAAAA,GAGnCV,cAHmCU,CAAAA;EAAW,kBAA/GZ,EAIdI,SAJcJ,CAIJe,CAJIf,CAAAA;EAAW,QAAyGC,EAK5IE,uBAL4IF,CAKpHD,WALoHC,CAIzHS,0BAAAA,CACoDC,gBAAAA,EAAgBD,0BAAAA,CAAqCE,WAAAA,CALgBX,EAAAA,EAKAA,QALAA,CAAAA;CAAQ,CAAA;;;;AAIhIc,KAStBE,oBATsBF,CAAAA,UASSD,MATTC,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAS+BR,uBAT/BQ,CAAAA,GAS0DA,CAT1DA,SASoER,uBATpEQ,GAS8FG,UAT9FH,CAAAA,OASgHN,yBAThHM,CAAAA,GAS6IA,CAT7IA,SASuJD,MATvJC,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAS6KG,UAT7KH,CAAAA,OAS+LF,qBAT/LE,CASqNA,CATrNA,CAAAA,CAAAA,GAAAA,KAAAA;AAAVX,KAUZe,gBAVYf,CAAAA,UAUegB,iBAVfhB,GAUmCE,gBAVnCF,CAAAA,GAUuDiB,CAVvDjB,SAUiEgB,iBAVjEhB,GAUqFiB,CAVrFjB,GAUyFiB,CAVzFjB,SAUmGE,gBAVnGF,GAUsHF,cAVtHE,CAUqIC,2BAVrID,CAUiKiB,CAVjKjB,CAAAA,CAAAA,GAAAA,KAAAA;AAASM,KAWrBU,iBAAAA,GAAoBlB,cAVqDS,CAAAA,GAAAA,CAAAA;;;;;;AAFgC;AAUrH"}
1
+ {"version":3,"file":"annotation.d.cts","names":["BaseMessage","Messages","AnnotationRoot","BinaryOperatorAggregate","LastValue","InteropZodToStateDefinition","InteropZodObject","ResponseFormatUndefined","PreHookAnnotation","createAgentBaseAnnotation","_langchain_core_messages0","MessageStructure","MessageType","createAgentAnnotation","Record","T","createAgentAnnotationConditional","ReactAgentAnnotation","ReturnType","ToAnnotationRoot","AnyAnnotationRoot","A","enhanceStateSchemaWithMessageReducer"],"sources":["../../src/agents/annotation.d.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { BaseMessage } from \"@langchain/core/messages\";\nimport { Messages, AnnotationRoot, type BinaryOperatorAggregate, type LastValue } from \"@langchain/langgraph\";\nimport type { InteropZodToStateDefinition } from \"@langchain/langgraph/zod\";\nimport { type InteropZodObject } from \"@langchain/core/utils/types\";\n/**\n * Special type to indicate that no response format is provided.\n * When this type is used, the structuredResponse property should not be present in the result.\n */\nexport type ResponseFormatUndefined = {\n __responseFormatUndefined: true;\n};\nexport declare const PreHookAnnotation: AnnotationRoot<{\n llmInputMessages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}>;\nexport type PreHookAnnotation = typeof PreHookAnnotation;\n// Base annotation without structuredResponse (for ResponseFormatUndefined)\nexport declare const createAgentBaseAnnotation: () => AnnotationRoot<{\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], Messages>;\n}>;\n// Full annotation with structuredResponse (for regular cases)\nexport declare const createAgentAnnotation: <T extends Record<string, any> = Record<string, any>>() => AnnotationRoot<{\n structuredResponse: LastValue<T>;\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], Messages>;\n}>;\n// Create annotation conditionally - for ResponseFormatUndefined, don't include structuredResponse\nexport declare function createAgentAnnotationConditional<T extends Record<string, any> | ResponseFormatUndefined>(hasStructuredResponse?: boolean): AnnotationRoot<{\n structuredResponse: LastValue<T extends ResponseFormatUndefined ? never : T>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}>;\n// Helper type to select the right annotation based on the response format type\nexport type ReactAgentAnnotation<T extends Record<string, any> | ResponseFormatUndefined> = T extends ResponseFormatUndefined ? ReturnType<typeof createAgentBaseAnnotation> : T extends Record<string, any> ? ReturnType<typeof createAgentAnnotation<T>> : never;\nexport type ToAnnotationRoot<A extends AnyAnnotationRoot | InteropZodObject> = A extends AnyAnnotationRoot ? A : A extends InteropZodObject ? AnnotationRoot<InteropZodToStateDefinition<A>> : never;\nexport type AnyAnnotationRoot = AnnotationRoot<any>;\n/**\n * Enhances a state schema to ensure proper message handling.\n * If a Zod schema is provided, it creates an annotation that includes the messagesStateReducer\n * and infers appropriate reducers for all other fields.\n *\n * @param stateSchema - The state schema to enhance.\n * @returns The enhanced state schema.\n */\nexport declare function enhanceStateSchemaWithMessageReducer(stateSchema: AnyAnnotationRoot | InteropZodObject): AnnotationRoot<{\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[]>;\n}> | AnyAnnotationRoot;\n"],"mappings":";;;;;;;;;;AASA;AAGA;AAGE,KANUO,uBAAAA,GAMV;EAAA,yBAF4CP,EAAAA,IAAAA;CAAW;AAAnCG,cADDK,iBACCL,EADkBD,cAClBC,CAAAA;EAAuB,gBACPH,EADhBG,uBACgBH,CADQA,WACRA,EAAAA,EADuBC,QACvBD,CAAAA;EAAW,QAAIC,EAAvCE,uBAAuCF,CAAfD,WAAeC,EAAAA,EAAAA,QAAAA,CAAAA;CAAQ,CAAA;AAFrBC,KAI5BM,iBAAAA,GAJ4BN,OAIDM,iBAJCN;AAAc;AAI1CM,cAESC,yBAFkBD,EAAAA,GAAAA,GAEeN,cAFE,CAAA;EAEnCO,QAAAA,EACPN,uBACZ,CADoCH,WACpC,CAAAU,yBAAAA,CADmFC,gBAAAA,EAAgBD,yBAAAA,CAAqCE,WAAAA,CACxI,EAAA,EADwJX,QACxJ,CAAA;CAAA,CAAA;;AADmGS,cAGhFG,qBAHqHD,EAAAA,CAAAA,UAGnFE,MAHmFF,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAG7DE,MAH6DF,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,CAAAA,GAAAA,GAGnCV,cAHmCU,CAAAA;EAAW,kBAA/GZ,EAIdI,SAJcJ,CAIJe,CAJIf,CAAAA;EAAW,QAAyGC,EAK5IE,uBAL4IF,CAKpHD,WALoHC,CAIzHS,yBAAAA,CACoDC,gBAAAA,EAAgBD,yBAAAA,CAAqCE,WAAAA,CALgBX,EAAAA,EAKAA,QALAA,CAAAA;CAAQ,CAAA;;AAD9F,iBAS5Ce,gCAT4C,CAAA,UASDF,MATC,CAAA,MAAA,EAAA,GAAA,CAAA,GASqBP,uBATrB,CAAA,CAAA,qBAAA,CAAA,EAAA,OAAA,CAAA,EASgFL,cAThF,CAAA;EAI/CW,kBAAAA,EAMGT,SAHtB,CAGgCW,CAHhC,SAG0CR,uBAH1C,GAAA,KAAA,GAG4EQ,CAH5E,CAAA;EAAA,QAAA,EAIYZ,uBAJZ,CAIoCH,WAJpC,EAAA,EAImDC,QAJnD,CAAA;CAAA,CAAA;;AAFgCc,KAStBE,oBATsBF,CAAAA,UASSD,MATTC,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAS+BR,uBAT/BQ,CAAAA,GAS0DA,CAT1DA,SASoER,uBATpEQ,GAS8FG,UAT9FH,CAAAA,OASgHN,yBAThHM,CAAAA,GAS6IA,CAT7IA,SASuJD,MATvJC,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAS6KG,UAT7KH,CAAAA,OAS+LF,qBAT/LE,CASqNA,CATrNA,CAAAA,CAAAA,GAAAA,KAAAA;AAAVX,KAUZe,gBAVYf,CAAAA,UAUegB,iBAVfhB,GAUmCE,gBAVnCF,CAAAA,GAUuDiB,CAVvDjB,SAUiEgB,iBAVjEhB,GAUqFiB,CAVrFjB,GAUyFiB,CAVzFjB,SAUmGE,gBAVnGF,GAUsHF,cAVtHE,CAUqIC,2BAVrID,CAUiKiB,CAVjKjB,CAAAA,CAAAA,GAAAA,KAAAA;AAASM,KAWrBU,iBAAAA,GAAoBlB,cAVqDS,CAAAA,GAAAA,CAAAA;;;;;;AAFgC;AAKrH;;AAAmEG,iBAgB3CQ,oCAAAA,CAhB2CR,WAAAA,EAgBOM,iBAhBPN,GAgB2BR,gBAhB3BQ,CAAAA,EAgB8CZ,cAhB9CY,CAAAA;EAAM,QAAgBP,EAiB3EJ,uBAjB2EI,CAiBnDP,WAjBmDO,CAgBqBG,yBAAAA,CACzBC,gBAAAA,EAAgBD,yBAAAA,CAAqCE,WAAAA,CAjBjDL,EAAAA,EAiBiEP,WAjBjEO,CAiBxCG,yBAAAA,CAAwJC,gBAAAA,EAAgBD,yBAAAA,CAAqCE,WAAAA,CAjBrKL,EAAAA,CAAAA;CAAuB,CAAA,GAkB3Ga,iBAjB6BL"}
@@ -1,4 +1,4 @@
1
- import * as _langchain_core_messages23 from "@langchain/core/messages";
1
+ import * as _langchain_core_messages0 from "@langchain/core/messages";
2
2
  import { BaseMessage } from "@langchain/core/messages";
3
3
  import { AnnotationRoot, BinaryOperatorAggregate, LastValue, Messages } from "@langchain/langgraph";
4
4
  import { InteropZodObject } from "@langchain/core/utils/types";
@@ -20,15 +20,18 @@ declare const PreHookAnnotation: AnnotationRoot<{
20
20
  type PreHookAnnotation = typeof PreHookAnnotation;
21
21
  // Base annotation without structuredResponse (for ResponseFormatUndefined)
22
22
  declare const createAgentBaseAnnotation: () => AnnotationRoot<{
23
- messages: BinaryOperatorAggregate<BaseMessage<_langchain_core_messages23.MessageStructure, _langchain_core_messages23.MessageType>[], Messages>;
23
+ messages: BinaryOperatorAggregate<BaseMessage<_langchain_core_messages0.MessageStructure, _langchain_core_messages0.MessageType>[], Messages>;
24
24
  }>;
25
25
  // Full annotation with structuredResponse (for regular cases)
26
26
  declare const createAgentAnnotation: <T extends Record<string, any> = Record<string, any>>() => AnnotationRoot<{
27
27
  structuredResponse: LastValue<T>;
28
- messages: BinaryOperatorAggregate<BaseMessage<_langchain_core_messages23.MessageStructure, _langchain_core_messages23.MessageType>[], Messages>;
28
+ messages: BinaryOperatorAggregate<BaseMessage<_langchain_core_messages0.MessageStructure, _langchain_core_messages0.MessageType>[], Messages>;
29
29
  }>;
30
30
  // Create annotation conditionally - for ResponseFormatUndefined, don't include structuredResponse
31
-
31
+ declare function createAgentAnnotationConditional<T extends Record<string, any> | ResponseFormatUndefined>(hasStructuredResponse?: boolean): AnnotationRoot<{
32
+ structuredResponse: LastValue<T extends ResponseFormatUndefined ? never : T>;
33
+ messages: BinaryOperatorAggregate<BaseMessage[], Messages>;
34
+ }>;
32
35
  // Helper type to select the right annotation based on the response format type
33
36
  type ReactAgentAnnotation<T extends Record<string, any> | ResponseFormatUndefined> = T extends ResponseFormatUndefined ? ReturnType<typeof createAgentBaseAnnotation> : T extends Record<string, any> ? ReturnType<typeof createAgentAnnotation<T>> : never;
34
37
  type ToAnnotationRoot<A extends AnyAnnotationRoot | InteropZodObject> = A extends AnyAnnotationRoot ? A : A extends InteropZodObject ? AnnotationRoot<InteropZodToStateDefinition<A>> : never;
@@ -41,7 +44,9 @@ type AnyAnnotationRoot = AnnotationRoot<any>;
41
44
  * @param stateSchema - The state schema to enhance.
42
45
  * @returns The enhanced state schema.
43
46
  */
44
-
47
+ declare function enhanceStateSchemaWithMessageReducer(stateSchema: AnyAnnotationRoot | InteropZodObject): AnnotationRoot<{
48
+ messages: BinaryOperatorAggregate<BaseMessage<_langchain_core_messages0.MessageStructure, _langchain_core_messages0.MessageType>[], BaseMessage<_langchain_core_messages0.MessageStructure, _langchain_core_messages0.MessageType>[]>;
49
+ }> | AnyAnnotationRoot;
45
50
  //#endregion
46
- export { AnyAnnotationRoot, PreHookAnnotation, ReactAgentAnnotation, ResponseFormatUndefined, ToAnnotationRoot };
51
+ export { AnyAnnotationRoot, PreHookAnnotation, ReactAgentAnnotation, ResponseFormatUndefined, ToAnnotationRoot, createAgentAnnotation, createAgentAnnotationConditional, createAgentBaseAnnotation, enhanceStateSchemaWithMessageReducer };
47
52
  //# sourceMappingURL=annotation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"annotation.d.ts","names":["BaseMessage","Messages","AnnotationRoot","BinaryOperatorAggregate","LastValue","InteropZodToStateDefinition","InteropZodObject","ResponseFormatUndefined","PreHookAnnotation","createAgentBaseAnnotation","_langchain_core_messages23","MessageStructure","MessageType","createAgentAnnotation","Record","T","createAgentAnnotationConditional","ReactAgentAnnotation","ReturnType","ToAnnotationRoot","AnyAnnotationRoot","A","enhanceStateSchemaWithMessageReducer"],"sources":["../../src/agents/annotation.d.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { BaseMessage } from \"@langchain/core/messages\";\nimport { Messages, AnnotationRoot, type BinaryOperatorAggregate, type LastValue } from \"@langchain/langgraph\";\nimport type { InteropZodToStateDefinition } from \"@langchain/langgraph/zod\";\nimport { type InteropZodObject } from \"@langchain/core/utils/types\";\n/**\n * Special type to indicate that no response format is provided.\n * When this type is used, the structuredResponse property should not be present in the result.\n */\nexport type ResponseFormatUndefined = {\n __responseFormatUndefined: true;\n};\nexport declare const PreHookAnnotation: AnnotationRoot<{\n llmInputMessages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}>;\nexport type PreHookAnnotation = typeof PreHookAnnotation;\n// Base annotation without structuredResponse (for ResponseFormatUndefined)\nexport declare const createAgentBaseAnnotation: () => AnnotationRoot<{\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], Messages>;\n}>;\n// Full annotation with structuredResponse (for regular cases)\nexport declare const createAgentAnnotation: <T extends Record<string, any> = Record<string, any>>() => AnnotationRoot<{\n structuredResponse: LastValue<T>;\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], Messages>;\n}>;\n// Create annotation conditionally - for ResponseFormatUndefined, don't include structuredResponse\nexport declare function createAgentAnnotationConditional<T extends Record<string, any> | ResponseFormatUndefined>(hasStructuredResponse?: boolean): AnnotationRoot<{\n structuredResponse: LastValue<T extends ResponseFormatUndefined ? never : T>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}>;\n// Helper type to select the right annotation based on the response format type\nexport type ReactAgentAnnotation<T extends Record<string, any> | ResponseFormatUndefined> = T extends ResponseFormatUndefined ? ReturnType<typeof createAgentBaseAnnotation> : T extends Record<string, any> ? ReturnType<typeof createAgentAnnotation<T>> : never;\nexport type ToAnnotationRoot<A extends AnyAnnotationRoot | InteropZodObject> = A extends AnyAnnotationRoot ? A : A extends InteropZodObject ? AnnotationRoot<InteropZodToStateDefinition<A>> : never;\nexport type AnyAnnotationRoot = AnnotationRoot<any>;\n/**\n * Enhances a state schema to ensure proper message handling.\n * If a Zod schema is provided, it creates an annotation that includes the messagesStateReducer\n * and infers appropriate reducers for all other fields.\n *\n * @param stateSchema - The state schema to enhance.\n * @returns The enhanced state schema.\n */\nexport declare function enhanceStateSchemaWithMessageReducer(stateSchema: AnyAnnotationRoot | InteropZodObject): AnnotationRoot<{\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[]>;\n}> | AnyAnnotationRoot;\n"],"mappings":";;;;;;;;;;AASA;AAGA;AAGE,KANUO,uBAAAA,GAMV;EAAA,yBAF4CP,EAAAA,IAAAA;CAAW;AAAnCG,cADDK,iBACCL,EADkBD,cAClBC,CAAAA;EAAuB,gBACPH,EADhBG,uBACgBH,CADQA,WACRA,EAAAA,EADuBC,QACvBD,CAAAA;EAAW,QAAIC,EAAvCE,uBAAuCF,CAAfD,WAAeC,EAAAA,EAAAA,QAAAA,CAAAA;CAAQ,CAAA;AAFrBC,KAI5BM,iBAAAA,GAJ4BN,OAIDM,iBAJCN;AAAc;AAI1CM,cAESC,yBAFkBD,EAAAA,GAAAA,GAEeN,cAFE,CAAA;EAEnCO,QAAAA,EACPN,uBACZ,CADoCH,WACpC,CAAAU,0BAAAA,CADmFC,gBAAAA,EAAgBD,0BAAAA,CAAqCE,WAAAA,CACxI,EAAA,EADwJX,QACxJ,CAAA;CAAA,CAAA;;AADmGS,cAGhFG,qBAHqHD,EAAAA,CAAAA,UAGnFE,MAHmFF,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAG7DE,MAH6DF,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,CAAAA,GAAAA,GAGnCV,cAHmCU,CAAAA;EAAW,kBAA/GZ,EAIdI,SAJcJ,CAIJe,CAJIf,CAAAA;EAAW,QAAyGC,EAK5IE,uBAL4IF,CAKpHD,WALoHC,CAIzHS,0BAAAA,CACoDC,gBAAAA,EAAgBD,0BAAAA,CAAqCE,WAAAA,CALgBX,EAAAA,EAKAA,QALAA,CAAAA;CAAQ,CAAA;;;;AAIhIc,KAStBE,oBATsBF,CAAAA,UASSD,MATTC,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAS+BR,uBAT/BQ,CAAAA,GAS0DA,CAT1DA,SASoER,uBATpEQ,GAS8FG,UAT9FH,CAAAA,OASgHN,yBAThHM,CAAAA,GAS6IA,CAT7IA,SASuJD,MATvJC,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAS6KG,UAT7KH,CAAAA,OAS+LF,qBAT/LE,CASqNA,CATrNA,CAAAA,CAAAA,GAAAA,KAAAA;AAAVX,KAUZe,gBAVYf,CAAAA,UAUegB,iBAVfhB,GAUmCE,gBAVnCF,CAAAA,GAUuDiB,CAVvDjB,SAUiEgB,iBAVjEhB,GAUqFiB,CAVrFjB,GAUyFiB,CAVzFjB,SAUmGE,gBAVnGF,GAUsHF,cAVtHE,CAUqIC,2BAVrID,CAUiKiB,CAVjKjB,CAAAA,CAAAA,GAAAA,KAAAA;AAASM,KAWrBU,iBAAAA,GAAoBlB,cAVqDS,CAAAA,GAAAA,CAAAA;;;;;;AAFgC;AAUrH"}
1
+ {"version":3,"file":"annotation.d.ts","names":["BaseMessage","Messages","AnnotationRoot","BinaryOperatorAggregate","LastValue","InteropZodToStateDefinition","InteropZodObject","ResponseFormatUndefined","PreHookAnnotation","createAgentBaseAnnotation","_langchain_core_messages0","MessageStructure","MessageType","createAgentAnnotation","Record","T","createAgentAnnotationConditional","ReactAgentAnnotation","ReturnType","ToAnnotationRoot","AnyAnnotationRoot","A","enhanceStateSchemaWithMessageReducer"],"sources":["../../src/agents/annotation.d.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { BaseMessage } from \"@langchain/core/messages\";\nimport { Messages, AnnotationRoot, type BinaryOperatorAggregate, type LastValue } from \"@langchain/langgraph\";\nimport type { InteropZodToStateDefinition } from \"@langchain/langgraph/zod\";\nimport { type InteropZodObject } from \"@langchain/core/utils/types\";\n/**\n * Special type to indicate that no response format is provided.\n * When this type is used, the structuredResponse property should not be present in the result.\n */\nexport type ResponseFormatUndefined = {\n __responseFormatUndefined: true;\n};\nexport declare const PreHookAnnotation: AnnotationRoot<{\n llmInputMessages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}>;\nexport type PreHookAnnotation = typeof PreHookAnnotation;\n// Base annotation without structuredResponse (for ResponseFormatUndefined)\nexport declare const createAgentBaseAnnotation: () => AnnotationRoot<{\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], Messages>;\n}>;\n// Full annotation with structuredResponse (for regular cases)\nexport declare const createAgentAnnotation: <T extends Record<string, any> = Record<string, any>>() => AnnotationRoot<{\n structuredResponse: LastValue<T>;\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], Messages>;\n}>;\n// Create annotation conditionally - for ResponseFormatUndefined, don't include structuredResponse\nexport declare function createAgentAnnotationConditional<T extends Record<string, any> | ResponseFormatUndefined>(hasStructuredResponse?: boolean): AnnotationRoot<{\n structuredResponse: LastValue<T extends ResponseFormatUndefined ? never : T>;\n messages: BinaryOperatorAggregate<BaseMessage[], Messages>;\n}>;\n// Helper type to select the right annotation based on the response format type\nexport type ReactAgentAnnotation<T extends Record<string, any> | ResponseFormatUndefined> = T extends ResponseFormatUndefined ? ReturnType<typeof createAgentBaseAnnotation> : T extends Record<string, any> ? ReturnType<typeof createAgentAnnotation<T>> : never;\nexport type ToAnnotationRoot<A extends AnyAnnotationRoot | InteropZodObject> = A extends AnyAnnotationRoot ? A : A extends InteropZodObject ? AnnotationRoot<InteropZodToStateDefinition<A>> : never;\nexport type AnyAnnotationRoot = AnnotationRoot<any>;\n/**\n * Enhances a state schema to ensure proper message handling.\n * If a Zod schema is provided, it creates an annotation that includes the messagesStateReducer\n * and infers appropriate reducers for all other fields.\n *\n * @param stateSchema - The state schema to enhance.\n * @returns The enhanced state schema.\n */\nexport declare function enhanceStateSchemaWithMessageReducer(stateSchema: AnyAnnotationRoot | InteropZodObject): AnnotationRoot<{\n messages: BinaryOperatorAggregate<BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[], BaseMessage<import(\"@langchain/core/messages\").MessageStructure, import(\"@langchain/core/messages\").MessageType>[]>;\n}> | AnyAnnotationRoot;\n"],"mappings":";;;;;;;;;;AASA;AAGA;AAGE,KANUO,uBAAAA,GAMV;EAAA,yBAF4CP,EAAAA,IAAAA;CAAW;AAAnCG,cADDK,iBACCL,EADkBD,cAClBC,CAAAA;EAAuB,gBACPH,EADhBG,uBACgBH,CADQA,WACRA,EAAAA,EADuBC,QACvBD,CAAAA;EAAW,QAAIC,EAAvCE,uBAAuCF,CAAfD,WAAeC,EAAAA,EAAAA,QAAAA,CAAAA;CAAQ,CAAA;AAFrBC,KAI5BM,iBAAAA,GAJ4BN,OAIDM,iBAJCN;AAAc;AAI1CM,cAESC,yBAFkBD,EAAAA,GAAAA,GAEeN,cAFE,CAAA;EAEnCO,QAAAA,EACPN,uBACZ,CADoCH,WACpC,CAAAU,yBAAAA,CADmFC,gBAAAA,EAAgBD,yBAAAA,CAAqCE,WAAAA,CACxI,EAAA,EADwJX,QACxJ,CAAA;CAAA,CAAA;;AADmGS,cAGhFG,qBAHqHD,EAAAA,CAAAA,UAGnFE,MAHmFF,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAG7DE,MAH6DF,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,CAAAA,GAAAA,GAGnCV,cAHmCU,CAAAA;EAAW,kBAA/GZ,EAIdI,SAJcJ,CAIJe,CAJIf,CAAAA;EAAW,QAAyGC,EAK5IE,uBAL4IF,CAKpHD,WALoHC,CAIzHS,yBAAAA,CACoDC,gBAAAA,EAAgBD,yBAAAA,CAAqCE,WAAAA,CALgBX,EAAAA,EAKAA,QALAA,CAAAA;CAAQ,CAAA;;AAD9F,iBAS5Ce,gCAT4C,CAAA,UASDF,MATC,CAAA,MAAA,EAAA,GAAA,CAAA,GASqBP,uBATrB,CAAA,CAAA,qBAAA,CAAA,EAAA,OAAA,CAAA,EASgFL,cAThF,CAAA;EAI/CW,kBAAAA,EAMGT,SAHtB,CAGgCW,CAHhC,SAG0CR,uBAH1C,GAAA,KAAA,GAG4EQ,CAH5E,CAAA;EAAA,QAAA,EAIYZ,uBAJZ,CAIoCH,WAJpC,EAAA,EAImDC,QAJnD,CAAA;CAAA,CAAA;;AAFgCc,KAStBE,oBATsBF,CAAAA,UASSD,MATTC,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAS+BR,uBAT/BQ,CAAAA,GAS0DA,CAT1DA,SASoER,uBATpEQ,GAS8FG,UAT9FH,CAAAA,OASgHN,yBAThHM,CAAAA,GAS6IA,CAT7IA,SASuJD,MATvJC,CAAAA,MAAAA,EAAAA,GAAAA,CAAAA,GAS6KG,UAT7KH,CAAAA,OAS+LF,qBAT/LE,CASqNA,CATrNA,CAAAA,CAAAA,GAAAA,KAAAA;AAAVX,KAUZe,gBAVYf,CAAAA,UAUegB,iBAVfhB,GAUmCE,gBAVnCF,CAAAA,GAUuDiB,CAVvDjB,SAUiEgB,iBAVjEhB,GAUqFiB,CAVrFjB,GAUyFiB,CAVzFjB,SAUmGE,gBAVnGF,GAUsHF,cAVtHE,CAUqIC,2BAVrID,CAUiKiB,CAVjKjB,CAAAA,CAAAA,GAAAA,KAAAA;AAASM,KAWrBU,iBAAAA,GAAoBlB,cAVqDS,CAAAA,GAAAA,CAAAA;;;;;;AAFgC;AAKrH;;AAAmEG,iBAgB3CQ,oCAAAA,CAhB2CR,WAAAA,EAgBOM,iBAhBPN,GAgB2BR,gBAhB3BQ,CAAAA,EAgB8CZ,cAhB9CY,CAAAA;EAAM,QAAgBP,EAiB3EJ,uBAjB2EI,CAiBnDP,WAjBmDO,CAgBqBG,yBAAAA,CACzBC,gBAAAA,EAAgBD,yBAAAA,CAAqCE,WAAAA,CAjBjDL,EAAAA,EAiBiEP,WAjBjEO,CAiBxCG,yBAAAA,CAAwJC,gBAAAA,EAAgBD,yBAAAA,CAAqCE,WAAAA,CAjBrKL,EAAAA,CAAAA;CAAuB,CAAA,GAkB3Ga,iBAjB6BL"}