@librechat/agents 3.2.31 → 3.2.33

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 (582) hide show
  1. package/dist/cjs/_virtual/_rolldown/runtime.cjs +23 -0
  2. package/dist/cjs/agents/AgentContext.cjs +844 -1046
  3. package/dist/cjs/agents/AgentContext.cjs.map +1 -1
  4. package/dist/cjs/common/constants.cjs +13 -13
  5. package/dist/cjs/common/constants.cjs.map +1 -1
  6. package/dist/cjs/common/enum.cjs +233 -240
  7. package/dist/cjs/common/enum.cjs.map +1 -1
  8. package/dist/cjs/common/index.cjs +2 -0
  9. package/dist/cjs/events.cjs +121 -169
  10. package/dist/cjs/events.cjs.map +1 -1
  11. package/dist/cjs/graphs/Graph.cjs +1389 -1807
  12. package/dist/cjs/graphs/Graph.cjs.map +1 -1
  13. package/dist/cjs/graphs/MultiAgentGraph.cjs +713 -945
  14. package/dist/cjs/graphs/MultiAgentGraph.cjs.map +1 -1
  15. package/dist/cjs/graphs/index.cjs +2 -0
  16. package/dist/cjs/hitl/askUserQuestion.cjs +60 -62
  17. package/dist/cjs/hitl/askUserQuestion.cjs.map +1 -1
  18. package/dist/cjs/hitl/index.cjs +1 -0
  19. package/dist/cjs/hooks/HookRegistry.cjs +176 -202
  20. package/dist/cjs/hooks/HookRegistry.cjs.map +1 -1
  21. package/dist/cjs/hooks/createToolPolicyHook.cjs +71 -101
  22. package/dist/cjs/hooks/createToolPolicyHook.cjs.map +1 -1
  23. package/dist/cjs/hooks/createWorkspacePolicyHook.cjs +170 -273
  24. package/dist/cjs/hooks/createWorkspacePolicyHook.cjs.map +1 -1
  25. package/dist/cjs/hooks/executeHooks.cjs +227 -282
  26. package/dist/cjs/hooks/executeHooks.cjs.map +1 -1
  27. package/dist/cjs/hooks/index.cjs +6 -0
  28. package/dist/cjs/hooks/matchers.cjs +196 -230
  29. package/dist/cjs/hooks/matchers.cjs.map +1 -1
  30. package/dist/cjs/hooks/types.cjs +24 -24
  31. package/dist/cjs/hooks/types.cjs.map +1 -1
  32. package/dist/cjs/instrumentation.cjs +110 -137
  33. package/dist/cjs/instrumentation.cjs.map +1 -1
  34. package/dist/cjs/langchain/google-common.cjs +0 -3
  35. package/dist/cjs/langchain/index.cjs +80 -43
  36. package/dist/cjs/langchain/language_models/chat_models.cjs +0 -3
  37. package/dist/cjs/langchain/messages/tool.cjs +0 -3
  38. package/dist/cjs/langchain/messages.cjs +35 -18
  39. package/dist/cjs/langchain/openai.cjs +0 -3
  40. package/dist/cjs/langchain/prompts.cjs +5 -8
  41. package/dist/cjs/langchain/runnables.cjs +11 -10
  42. package/dist/cjs/langchain/tools.cjs +14 -11
  43. package/dist/cjs/langchain/utils/env.cjs +5 -8
  44. package/dist/cjs/langfuse.cjs +60 -79
  45. package/dist/cjs/langfuse.cjs.map +1 -1
  46. package/dist/cjs/langfuseToolOutputTracing.cjs +267 -399
  47. package/dist/cjs/langfuseToolOutputTracing.cjs.map +1 -1
  48. package/dist/cjs/llm/anthropic/index.cjs +432 -562
  49. package/dist/cjs/llm/anthropic/index.cjs.map +1 -1
  50. package/dist/cjs/llm/anthropic/types.cjs +23 -47
  51. package/dist/cjs/llm/anthropic/types.cjs.map +1 -1
  52. package/dist/cjs/llm/anthropic/utils/message_inputs.cjs +441 -696
  53. package/dist/cjs/llm/anthropic/utils/message_inputs.cjs.map +1 -1
  54. package/dist/cjs/llm/anthropic/utils/message_outputs.cjs +171 -252
  55. package/dist/cjs/llm/anthropic/utils/message_outputs.cjs.map +1 -1
  56. package/dist/cjs/llm/anthropic/utils/output_parsers.cjs +2 -0
  57. package/dist/cjs/llm/anthropic/utils/tools.cjs +12 -26
  58. package/dist/cjs/llm/anthropic/utils/tools.cjs.map +1 -1
  59. package/dist/cjs/llm/bedrock/index.cjs +195 -240
  60. package/dist/cjs/llm/bedrock/index.cjs.map +1 -1
  61. package/dist/cjs/llm/bedrock/toolCache.cjs +84 -106
  62. package/dist/cjs/llm/bedrock/toolCache.cjs.map +1 -1
  63. package/dist/cjs/llm/bedrock/utils/index.cjs +2 -0
  64. package/dist/cjs/llm/bedrock/utils/message_inputs.cjs +357 -620
  65. package/dist/cjs/llm/bedrock/utils/message_inputs.cjs.map +1 -1
  66. package/dist/cjs/llm/bedrock/utils/message_outputs.cjs +105 -149
  67. package/dist/cjs/llm/bedrock/utils/message_outputs.cjs.map +1 -1
  68. package/dist/cjs/llm/fake.cjs +86 -96
  69. package/dist/cjs/llm/fake.cjs.map +1 -1
  70. package/dist/cjs/llm/google/index.cjs +183 -237
  71. package/dist/cjs/llm/google/index.cjs.map +1 -1
  72. package/dist/cjs/llm/google/utils/common.cjs +398 -674
  73. package/dist/cjs/llm/google/utils/common.cjs.map +1 -1
  74. package/dist/cjs/llm/google/utils/zod_to_genai_parameters.cjs +2 -0
  75. package/dist/cjs/llm/init.cjs +44 -53
  76. package/dist/cjs/llm/init.cjs.map +1 -1
  77. package/dist/cjs/llm/invoke.cjs +142 -182
  78. package/dist/cjs/llm/invoke.cjs.map +1 -1
  79. package/dist/cjs/llm/openai/index.cjs +991 -1276
  80. package/dist/cjs/llm/openai/index.cjs.map +1 -1
  81. package/dist/cjs/llm/openai/utils/index.cjs +189 -316
  82. package/dist/cjs/llm/openai/utils/index.cjs.map +1 -1
  83. package/dist/cjs/llm/openrouter/index.cjs +102 -153
  84. package/dist/cjs/llm/openrouter/index.cjs.map +1 -1
  85. package/dist/cjs/llm/openrouter/toolCache.cjs +35 -44
  86. package/dist/cjs/llm/openrouter/toolCache.cjs.map +1 -1
  87. package/dist/cjs/llm/providers.cjs +29 -37
  88. package/dist/cjs/llm/providers.cjs.map +1 -1
  89. package/dist/cjs/llm/request.cjs +20 -33
  90. package/dist/cjs/llm/request.cjs.map +1 -1
  91. package/dist/cjs/llm/vertexai/index.cjs +427 -453
  92. package/dist/cjs/llm/vertexai/index.cjs.map +1 -1
  93. package/dist/cjs/main.cjs +547 -528
  94. package/dist/cjs/messages/anthropicToolCache.cjs +68 -119
  95. package/dist/cjs/messages/anthropicToolCache.cjs.map +1 -1
  96. package/dist/cjs/messages/cache.cjs +308 -401
  97. package/dist/cjs/messages/cache.cjs.map +1 -1
  98. package/dist/cjs/messages/content.cjs +36 -49
  99. package/dist/cjs/messages/content.cjs.map +1 -1
  100. package/dist/cjs/messages/contextPruning.cjs +112 -145
  101. package/dist/cjs/messages/contextPruning.cjs.map +1 -1
  102. package/dist/cjs/messages/contextPruningSettings.cjs +36 -46
  103. package/dist/cjs/messages/contextPruningSettings.cjs.map +1 -1
  104. package/dist/cjs/messages/core.cjs +256 -397
  105. package/dist/cjs/messages/core.cjs.map +1 -1
  106. package/dist/cjs/messages/format.cjs +904 -1382
  107. package/dist/cjs/messages/format.cjs.map +1 -1
  108. package/dist/cjs/messages/ids.cjs +16 -20
  109. package/dist/cjs/messages/ids.cjs.map +1 -1
  110. package/dist/cjs/messages/index.cjs +12 -0
  111. package/dist/cjs/messages/langchain.cjs +18 -18
  112. package/dist/cjs/messages/langchain.cjs.map +1 -1
  113. package/dist/cjs/messages/prune.cjs +1054 -1517
  114. package/dist/cjs/messages/prune.cjs.map +1 -1
  115. package/dist/cjs/messages/recency.cjs +77 -95
  116. package/dist/cjs/messages/recency.cjs.map +1 -1
  117. package/dist/cjs/messages/reducer.cjs +63 -78
  118. package/dist/cjs/messages/reducer.cjs.map +1 -1
  119. package/dist/cjs/messages/tools.cjs +51 -79
  120. package/dist/cjs/messages/tools.cjs.map +1 -1
  121. package/dist/cjs/openai/index.cjs +171 -217
  122. package/dist/cjs/openai/index.cjs.map +1 -1
  123. package/dist/cjs/responses/index.cjs +302 -391
  124. package/dist/cjs/responses/index.cjs.map +1 -1
  125. package/dist/cjs/run.cjs +903 -1113
  126. package/dist/cjs/run.cjs.map +1 -1
  127. package/dist/cjs/session/AgentSession.cjs +805 -986
  128. package/dist/cjs/session/AgentSession.cjs.map +1 -1
  129. package/dist/cjs/session/JsonlSessionStore.cjs +327 -410
  130. package/dist/cjs/session/JsonlSessionStore.cjs.map +1 -1
  131. package/dist/cjs/session/handlers.cjs +192 -208
  132. package/dist/cjs/session/handlers.cjs.map +1 -1
  133. package/dist/cjs/session/ids.cjs +9 -10
  134. package/dist/cjs/session/ids.cjs.map +1 -1
  135. package/dist/cjs/session/index.cjs +4 -0
  136. package/dist/cjs/session/messageSerialization.cjs +94 -156
  137. package/dist/cjs/session/messageSerialization.cjs.map +1 -1
  138. package/dist/cjs/splitStream.cjs +147 -206
  139. package/dist/cjs/splitStream.cjs.map +1 -1
  140. package/dist/cjs/stream.cjs +856 -1344
  141. package/dist/cjs/stream.cjs.map +1 -1
  142. package/dist/cjs/summarization/index.cjs +57 -101
  143. package/dist/cjs/summarization/index.cjs.map +1 -1
  144. package/dist/cjs/summarization/node.cjs +643 -796
  145. package/dist/cjs/summarization/node.cjs.map +1 -1
  146. package/dist/cjs/tools/BashExecutor.cjs +110 -136
  147. package/dist/cjs/tools/BashExecutor.cjs.map +1 -1
  148. package/dist/cjs/tools/BashProgrammaticToolCalling.cjs +165 -245
  149. package/dist/cjs/tools/BashProgrammaticToolCalling.cjs.map +1 -1
  150. package/dist/cjs/tools/Calculator.cjs +36 -57
  151. package/dist/cjs/tools/Calculator.cjs.map +1 -1
  152. package/dist/cjs/tools/CodeExecutor.cjs +126 -168
  153. package/dist/cjs/tools/CodeExecutor.cjs.map +1 -1
  154. package/dist/cjs/tools/CodeSessionFileSummary.cjs +36 -46
  155. package/dist/cjs/tools/CodeSessionFileSummary.cjs.map +1 -1
  156. package/dist/cjs/tools/ProgrammaticToolCalling.cjs +459 -649
  157. package/dist/cjs/tools/ProgrammaticToolCalling.cjs.map +1 -1
  158. package/dist/cjs/tools/ReadFile.cjs +17 -20
  159. package/dist/cjs/tools/ReadFile.cjs.map +1 -1
  160. package/dist/cjs/tools/SkillTool.cjs +26 -27
  161. package/dist/cjs/tools/SkillTool.cjs.map +1 -1
  162. package/dist/cjs/tools/SubagentTool.cjs +59 -61
  163. package/dist/cjs/tools/SubagentTool.cjs.map +1 -1
  164. package/dist/cjs/tools/ToolNode.cjs +2109 -2686
  165. package/dist/cjs/tools/ToolNode.cjs.map +1 -1
  166. package/dist/cjs/tools/ToolSearch.cjs +663 -825
  167. package/dist/cjs/tools/ToolSearch.cjs.map +1 -1
  168. package/dist/cjs/tools/cloudflare/CloudflareBridgeRuntime.cjs +248 -340
  169. package/dist/cjs/tools/cloudflare/CloudflareBridgeRuntime.cjs.map +1 -1
  170. package/dist/cjs/tools/cloudflare/CloudflareProgrammaticToolCalling.cjs +170 -197
  171. package/dist/cjs/tools/cloudflare/CloudflareProgrammaticToolCalling.cjs.map +1 -1
  172. package/dist/cjs/tools/cloudflare/CloudflareSandboxExecutionEngine.cjs +425 -520
  173. package/dist/cjs/tools/cloudflare/CloudflareSandboxExecutionEngine.cjs.map +1 -1
  174. package/dist/cjs/tools/cloudflare/CloudflareSandboxTools.cjs +91 -124
  175. package/dist/cjs/tools/cloudflare/CloudflareSandboxTools.cjs.map +1 -1
  176. package/dist/cjs/tools/cloudflare/index.cjs +4 -0
  177. package/dist/cjs/tools/eagerEventExecution.cjs +75 -99
  178. package/dist/cjs/tools/eagerEventExecution.cjs.map +1 -1
  179. package/dist/cjs/tools/handlers.cjs +200 -262
  180. package/dist/cjs/tools/handlers.cjs.map +1 -1
  181. package/dist/cjs/tools/local/CompileCheckTool.cjs +150 -212
  182. package/dist/cjs/tools/local/CompileCheckTool.cjs.map +1 -1
  183. package/dist/cjs/tools/local/FileCheckpointer.cjs +77 -85
  184. package/dist/cjs/tools/local/FileCheckpointer.cjs.map +1 -1
  185. package/dist/cjs/tools/local/LocalCodingTools.cjs +763 -1022
  186. package/dist/cjs/tools/local/LocalCodingTools.cjs.map +1 -1
  187. package/dist/cjs/tools/local/LocalExecutionEngine.cjs +666 -941
  188. package/dist/cjs/tools/local/LocalExecutionEngine.cjs.map +1 -1
  189. package/dist/cjs/tools/local/LocalExecutionTools.cjs +49 -92
  190. package/dist/cjs/tools/local/LocalExecutionTools.cjs.map +1 -1
  191. package/dist/cjs/tools/local/LocalProgrammaticToolCalling.cjs +286 -354
  192. package/dist/cjs/tools/local/LocalProgrammaticToolCalling.cjs.map +1 -1
  193. package/dist/cjs/tools/local/attachments.cjs +108 -165
  194. package/dist/cjs/tools/local/attachments.cjs.map +1 -1
  195. package/dist/cjs/tools/local/bashAst.cjs +99 -113
  196. package/dist/cjs/tools/local/bashAst.cjs.map +1 -1
  197. package/dist/cjs/tools/local/editStrategies.cjs +126 -169
  198. package/dist/cjs/tools/local/editStrategies.cjs.map +1 -1
  199. package/dist/cjs/tools/local/index.cjs +12 -0
  200. package/dist/cjs/tools/local/resolveLocalExecutionTools.cjs +136 -218
  201. package/dist/cjs/tools/local/resolveLocalExecutionTools.cjs.map +1 -1
  202. package/dist/cjs/tools/local/syntaxCheck.cjs +142 -161
  203. package/dist/cjs/tools/local/syntaxCheck.cjs.map +1 -1
  204. package/dist/cjs/tools/local/textEncoding.cjs +25 -23
  205. package/dist/cjs/tools/local/textEncoding.cjs.map +1 -1
  206. package/dist/cjs/tools/local/workspaceFS.cjs +38 -46
  207. package/dist/cjs/tools/local/workspaceFS.cjs.map +1 -1
  208. package/dist/cjs/tools/ptcTimeout.cjs +27 -47
  209. package/dist/cjs/tools/ptcTimeout.cjs.map +1 -1
  210. package/dist/cjs/tools/schema.cjs +24 -23
  211. package/dist/cjs/tools/schema.cjs.map +1 -1
  212. package/dist/cjs/tools/search/anthropic.cjs +24 -33
  213. package/dist/cjs/tools/search/anthropic.cjs.map +1 -1
  214. package/dist/cjs/tools/search/content.cjs +95 -137
  215. package/dist/cjs/tools/search/content.cjs.map +1 -1
  216. package/dist/cjs/tools/search/firecrawl.cjs +141 -172
  217. package/dist/cjs/tools/search/firecrawl.cjs.map +1 -1
  218. package/dist/cjs/tools/search/format.cjs +128 -196
  219. package/dist/cjs/tools/search/format.cjs.map +1 -1
  220. package/dist/cjs/tools/search/highlights.cjs +165 -232
  221. package/dist/cjs/tools/search/highlights.cjs.map +1 -1
  222. package/dist/cjs/tools/search/index.cjs +2 -0
  223. package/dist/cjs/tools/search/rerankers.cjs +151 -174
  224. package/dist/cjs/tools/search/rerankers.cjs.map +1 -1
  225. package/dist/cjs/tools/search/schema.cjs +40 -39
  226. package/dist/cjs/tools/search/schema.cjs.map +1 -1
  227. package/dist/cjs/tools/search/search.cjs +428 -530
  228. package/dist/cjs/tools/search/search.cjs.map +1 -1
  229. package/dist/cjs/tools/search/serper-scraper.cjs +106 -127
  230. package/dist/cjs/tools/search/serper-scraper.cjs.map +1 -1
  231. package/dist/cjs/tools/search/tavily-scraper.cjs +129 -181
  232. package/dist/cjs/tools/search/tavily-scraper.cjs.map +1 -1
  233. package/dist/cjs/tools/search/tavily-search.cjs +295 -359
  234. package/dist/cjs/tools/search/tavily-search.cjs.map +1 -1
  235. package/dist/cjs/tools/search/tool.cjs +260 -299
  236. package/dist/cjs/tools/search/tool.cjs.map +1 -1
  237. package/dist/cjs/tools/search/utils.cjs +74 -117
  238. package/dist/cjs/tools/search/utils.cjs.map +1 -1
  239. package/dist/cjs/tools/skillCatalog.cjs +54 -72
  240. package/dist/cjs/tools/skillCatalog.cjs.map +1 -1
  241. package/dist/cjs/tools/streamedToolCallSeals.cjs +19 -36
  242. package/dist/cjs/tools/streamedToolCallSeals.cjs.map +1 -1
  243. package/dist/cjs/tools/subagent/SubagentExecutor.cjs +612 -771
  244. package/dist/cjs/tools/subagent/SubagentExecutor.cjs.map +1 -1
  245. package/dist/cjs/tools/subagent/index.cjs +1 -0
  246. package/dist/cjs/tools/toolOutputReferences.cjs +523 -630
  247. package/dist/cjs/tools/toolOutputReferences.cjs.map +1 -1
  248. package/dist/cjs/utils/callbacks.cjs +11 -21
  249. package/dist/cjs/utils/callbacks.cjs.map +1 -1
  250. package/dist/cjs/utils/errors.cjs +70 -95
  251. package/dist/cjs/utils/errors.cjs.map +1 -1
  252. package/dist/cjs/utils/events.cjs +32 -42
  253. package/dist/cjs/utils/events.cjs.map +1 -1
  254. package/dist/cjs/utils/graph.cjs +8 -12
  255. package/dist/cjs/utils/graph.cjs.map +1 -1
  256. package/dist/cjs/utils/handlers.cjs +60 -82
  257. package/dist/cjs/utils/handlers.cjs.map +1 -1
  258. package/dist/cjs/utils/index.cjs +9 -0
  259. package/dist/cjs/utils/llm.cjs +19 -27
  260. package/dist/cjs/utils/llm.cjs.map +1 -1
  261. package/dist/cjs/utils/misc.cjs +30 -46
  262. package/dist/cjs/utils/misc.cjs.map +1 -1
  263. package/dist/cjs/utils/run.cjs +50 -66
  264. package/dist/cjs/utils/run.cjs.map +1 -1
  265. package/dist/cjs/utils/schema.cjs +11 -19
  266. package/dist/cjs/utils/schema.cjs.map +1 -1
  267. package/dist/cjs/utils/title.cjs +71 -106
  268. package/dist/cjs/utils/title.cjs.map +1 -1
  269. package/dist/cjs/utils/tokens.cjs +186 -283
  270. package/dist/cjs/utils/tokens.cjs.map +1 -1
  271. package/dist/cjs/utils/truncation.cjs +95 -114
  272. package/dist/cjs/utils/truncation.cjs.map +1 -1
  273. package/dist/esm/agents/AgentContext.mjs +844 -1044
  274. package/dist/esm/agents/AgentContext.mjs.map +1 -1
  275. package/dist/esm/common/constants.mjs +13 -11
  276. package/dist/esm/common/constants.mjs.map +1 -1
  277. package/dist/esm/common/enum.mjs +221 -238
  278. package/dist/esm/common/enum.mjs.map +1 -1
  279. package/dist/esm/common/index.mjs +3 -0
  280. package/dist/esm/events.mjs +121 -167
  281. package/dist/esm/events.mjs.map +1 -1
  282. package/dist/esm/graphs/Graph.mjs +1388 -1804
  283. package/dist/esm/graphs/Graph.mjs.map +1 -1
  284. package/dist/esm/graphs/MultiAgentGraph.mjs +713 -943
  285. package/dist/esm/graphs/MultiAgentGraph.mjs.map +1 -1
  286. package/dist/esm/graphs/index.mjs +3 -0
  287. package/dist/esm/hitl/askUserQuestion.mjs +60 -60
  288. package/dist/esm/hitl/askUserQuestion.mjs.map +1 -1
  289. package/dist/esm/hitl/index.mjs +2 -0
  290. package/dist/esm/hooks/HookRegistry.mjs +176 -200
  291. package/dist/esm/hooks/HookRegistry.mjs.map +1 -1
  292. package/dist/esm/hooks/createToolPolicyHook.mjs +71 -99
  293. package/dist/esm/hooks/createToolPolicyHook.mjs.map +1 -1
  294. package/dist/esm/hooks/createWorkspacePolicyHook.mjs +170 -271
  295. package/dist/esm/hooks/createWorkspacePolicyHook.mjs.map +1 -1
  296. package/dist/esm/hooks/executeHooks.mjs +227 -280
  297. package/dist/esm/hooks/executeHooks.mjs.map +1 -1
  298. package/dist/esm/hooks/index.mjs +7 -0
  299. package/dist/esm/hooks/matchers.mjs +196 -228
  300. package/dist/esm/hooks/matchers.mjs.map +1 -1
  301. package/dist/esm/hooks/types.mjs +24 -22
  302. package/dist/esm/hooks/types.mjs.map +1 -1
  303. package/dist/esm/instrumentation.mjs +109 -132
  304. package/dist/esm/instrumentation.mjs.map +1 -1
  305. package/dist/esm/langchain/google-common.mjs +1 -2
  306. package/dist/esm/langchain/index.mjs +5 -5
  307. package/dist/esm/langchain/language_models/chat_models.mjs +1 -2
  308. package/dist/esm/langchain/messages/tool.mjs +1 -2
  309. package/dist/esm/langchain/messages.mjs +2 -2
  310. package/dist/esm/langchain/openai.mjs +1 -2
  311. package/dist/esm/langchain/prompts.mjs +2 -2
  312. package/dist/esm/langchain/runnables.mjs +2 -2
  313. package/dist/esm/langchain/tools.mjs +2 -2
  314. package/dist/esm/langchain/utils/env.mjs +2 -2
  315. package/dist/esm/langfuse.mjs +60 -76
  316. package/dist/esm/langfuse.mjs.map +1 -1
  317. package/dist/esm/langfuseToolOutputTracing.mjs +267 -395
  318. package/dist/esm/langfuseToolOutputTracing.mjs.map +1 -1
  319. package/dist/esm/llm/anthropic/index.mjs +432 -559
  320. package/dist/esm/llm/anthropic/index.mjs.map +1 -1
  321. package/dist/esm/llm/anthropic/types.mjs +23 -45
  322. package/dist/esm/llm/anthropic/types.mjs.map +1 -1
  323. package/dist/esm/llm/anthropic/utils/message_inputs.mjs +439 -690
  324. package/dist/esm/llm/anthropic/utils/message_inputs.mjs.map +1 -1
  325. package/dist/esm/llm/anthropic/utils/message_outputs.mjs +171 -249
  326. package/dist/esm/llm/anthropic/utils/message_outputs.mjs.map +1 -1
  327. package/dist/esm/llm/anthropic/utils/output_parsers.mjs +3 -0
  328. package/dist/esm/llm/anthropic/utils/tools.mjs +12 -24
  329. package/dist/esm/llm/anthropic/utils/tools.mjs.map +1 -1
  330. package/dist/esm/llm/bedrock/index.mjs +195 -238
  331. package/dist/esm/llm/bedrock/index.mjs.map +1 -1
  332. package/dist/esm/llm/bedrock/toolCache.mjs +84 -104
  333. package/dist/esm/llm/bedrock/toolCache.mjs.map +1 -1
  334. package/dist/esm/llm/bedrock/utils/index.mjs +3 -0
  335. package/dist/esm/llm/bedrock/utils/message_inputs.mjs +357 -618
  336. package/dist/esm/llm/bedrock/utils/message_inputs.mjs.map +1 -1
  337. package/dist/esm/llm/bedrock/utils/message_outputs.mjs +105 -147
  338. package/dist/esm/llm/bedrock/utils/message_outputs.mjs.map +1 -1
  339. package/dist/esm/llm/fake.mjs +86 -94
  340. package/dist/esm/llm/fake.mjs.map +1 -1
  341. package/dist/esm/llm/google/index.mjs +183 -235
  342. package/dist/esm/llm/google/index.mjs.map +1 -1
  343. package/dist/esm/llm/google/utils/common.mjs +397 -666
  344. package/dist/esm/llm/google/utils/common.mjs.map +1 -1
  345. package/dist/esm/llm/google/utils/zod_to_genai_parameters.mjs +3 -0
  346. package/dist/esm/llm/init.mjs +44 -51
  347. package/dist/esm/llm/init.mjs.map +1 -1
  348. package/dist/esm/llm/invoke.mjs +142 -180
  349. package/dist/esm/llm/invoke.mjs.map +1 -1
  350. package/dist/esm/llm/openai/index.mjs +991 -1271
  351. package/dist/esm/llm/openai/index.mjs.map +1 -1
  352. package/dist/esm/llm/openai/utils/index.mjs +188 -312
  353. package/dist/esm/llm/openai/utils/index.mjs.map +1 -1
  354. package/dist/esm/llm/openrouter/index.mjs +102 -151
  355. package/dist/esm/llm/openrouter/index.mjs.map +1 -1
  356. package/dist/esm/llm/openrouter/toolCache.mjs +35 -42
  357. package/dist/esm/llm/openrouter/toolCache.mjs.map +1 -1
  358. package/dist/esm/llm/providers.mjs +29 -34
  359. package/dist/esm/llm/providers.mjs.map +1 -1
  360. package/dist/esm/llm/request.mjs +20 -31
  361. package/dist/esm/llm/request.mjs.map +1 -1
  362. package/dist/esm/llm/vertexai/index.mjs +427 -449
  363. package/dist/esm/llm/vertexai/index.mjs.map +1 -1
  364. package/dist/esm/main.mjs +99 -87
  365. package/dist/esm/messages/anthropicToolCache.mjs +68 -117
  366. package/dist/esm/messages/anthropicToolCache.mjs.map +1 -1
  367. package/dist/esm/messages/cache.mjs +308 -399
  368. package/dist/esm/messages/cache.mjs.map +1 -1
  369. package/dist/esm/messages/content.mjs +36 -47
  370. package/dist/esm/messages/content.mjs.map +1 -1
  371. package/dist/esm/messages/contextPruning.mjs +112 -143
  372. package/dist/esm/messages/contextPruning.mjs.map +1 -1
  373. package/dist/esm/messages/contextPruningSettings.mjs +36 -44
  374. package/dist/esm/messages/contextPruningSettings.mjs.map +1 -1
  375. package/dist/esm/messages/core.mjs +254 -393
  376. package/dist/esm/messages/core.mjs.map +1 -1
  377. package/dist/esm/messages/format.mjs +902 -1378
  378. package/dist/esm/messages/format.mjs.map +1 -1
  379. package/dist/esm/messages/ids.mjs +16 -18
  380. package/dist/esm/messages/ids.mjs.map +1 -1
  381. package/dist/esm/messages/index.mjs +13 -0
  382. package/dist/esm/messages/langchain.mjs +18 -16
  383. package/dist/esm/messages/langchain.mjs.map +1 -1
  384. package/dist/esm/messages/prune.mjs +1053 -1514
  385. package/dist/esm/messages/prune.mjs.map +1 -1
  386. package/dist/esm/messages/recency.mjs +77 -93
  387. package/dist/esm/messages/recency.mjs.map +1 -1
  388. package/dist/esm/messages/reducer.mjs +63 -76
  389. package/dist/esm/messages/reducer.mjs.map +1 -1
  390. package/dist/esm/messages/tools.mjs +49 -75
  391. package/dist/esm/messages/tools.mjs.map +1 -1
  392. package/dist/esm/openai/index.mjs +170 -215
  393. package/dist/esm/openai/index.mjs.map +1 -1
  394. package/dist/esm/responses/index.mjs +301 -389
  395. package/dist/esm/responses/index.mjs.map +1 -1
  396. package/dist/esm/run.mjs +903 -1111
  397. package/dist/esm/run.mjs.map +1 -1
  398. package/dist/esm/session/AgentSession.mjs +806 -985
  399. package/dist/esm/session/AgentSession.mjs.map +1 -1
  400. package/dist/esm/session/JsonlSessionStore.mjs +326 -407
  401. package/dist/esm/session/JsonlSessionStore.mjs.map +1 -1
  402. package/dist/esm/session/handlers.mjs +192 -206
  403. package/dist/esm/session/handlers.mjs.map +1 -1
  404. package/dist/esm/session/ids.mjs +9 -8
  405. package/dist/esm/session/ids.mjs.map +1 -1
  406. package/dist/esm/session/index.mjs +5 -0
  407. package/dist/esm/session/messageSerialization.mjs +94 -154
  408. package/dist/esm/session/messageSerialization.mjs.map +1 -1
  409. package/dist/esm/splitStream.mjs +147 -204
  410. package/dist/esm/splitStream.mjs.map +1 -1
  411. package/dist/esm/stream.mjs +854 -1341
  412. package/dist/esm/stream.mjs.map +1 -1
  413. package/dist/esm/summarization/index.mjs +57 -99
  414. package/dist/esm/summarization/index.mjs.map +1 -1
  415. package/dist/esm/summarization/node.mjs +640 -790
  416. package/dist/esm/summarization/node.mjs.map +1 -1
  417. package/dist/esm/tools/BashExecutor.mjs +103 -129
  418. package/dist/esm/tools/BashExecutor.mjs.map +1 -1
  419. package/dist/esm/tools/BashProgrammaticToolCalling.mjs +162 -239
  420. package/dist/esm/tools/BashProgrammaticToolCalling.mjs.map +1 -1
  421. package/dist/esm/tools/Calculator.mjs +34 -36
  422. package/dist/esm/tools/Calculator.mjs.map +1 -1
  423. package/dist/esm/tools/CodeExecutor.mjs +123 -164
  424. package/dist/esm/tools/CodeExecutor.mjs.map +1 -1
  425. package/dist/esm/tools/CodeSessionFileSummary.mjs +36 -44
  426. package/dist/esm/tools/CodeSessionFileSummary.mjs.map +1 -1
  427. package/dist/esm/tools/ProgrammaticToolCalling.mjs +454 -644
  428. package/dist/esm/tools/ProgrammaticToolCalling.mjs.map +1 -1
  429. package/dist/esm/tools/ReadFile.mjs +17 -18
  430. package/dist/esm/tools/ReadFile.mjs.map +1 -1
  431. package/dist/esm/tools/SkillTool.mjs +26 -25
  432. package/dist/esm/tools/SkillTool.mjs.map +1 -1
  433. package/dist/esm/tools/SubagentTool.mjs +59 -59
  434. package/dist/esm/tools/SubagentTool.mjs.map +1 -1
  435. package/dist/esm/tools/ToolNode.mjs +2107 -2684
  436. package/dist/esm/tools/ToolNode.mjs.map +1 -1
  437. package/dist/esm/tools/ToolSearch.mjs +659 -804
  438. package/dist/esm/tools/ToolSearch.mjs.map +1 -1
  439. package/dist/esm/tools/cloudflare/CloudflareBridgeRuntime.mjs +248 -338
  440. package/dist/esm/tools/cloudflare/CloudflareBridgeRuntime.mjs.map +1 -1
  441. package/dist/esm/tools/cloudflare/CloudflareProgrammaticToolCalling.mjs +170 -195
  442. package/dist/esm/tools/cloudflare/CloudflareProgrammaticToolCalling.mjs.map +1 -1
  443. package/dist/esm/tools/cloudflare/CloudflareSandboxExecutionEngine.mjs +424 -517
  444. package/dist/esm/tools/cloudflare/CloudflareSandboxExecutionEngine.mjs.map +1 -1
  445. package/dist/esm/tools/cloudflare/CloudflareSandboxTools.mjs +91 -122
  446. package/dist/esm/tools/cloudflare/CloudflareSandboxTools.mjs.map +1 -1
  447. package/dist/esm/tools/cloudflare/index.mjs +5 -0
  448. package/dist/esm/tools/eagerEventExecution.mjs +75 -96
  449. package/dist/esm/tools/eagerEventExecution.mjs.map +1 -1
  450. package/dist/esm/tools/handlers.mjs +200 -260
  451. package/dist/esm/tools/handlers.mjs.map +1 -1
  452. package/dist/esm/tools/local/CompileCheckTool.mjs +150 -210
  453. package/dist/esm/tools/local/CompileCheckTool.mjs.map +1 -1
  454. package/dist/esm/tools/local/FileCheckpointer.mjs +77 -83
  455. package/dist/esm/tools/local/FileCheckpointer.mjs.map +1 -1
  456. package/dist/esm/tools/local/LocalCodingTools.mjs +760 -1017
  457. package/dist/esm/tools/local/LocalCodingTools.mjs.map +1 -1
  458. package/dist/esm/tools/local/LocalExecutionEngine.mjs +663 -936
  459. package/dist/esm/tools/local/LocalExecutionEngine.mjs.map +1 -1
  460. package/dist/esm/tools/local/LocalExecutionTools.mjs +49 -90
  461. package/dist/esm/tools/local/LocalExecutionTools.mjs.map +1 -1
  462. package/dist/esm/tools/local/LocalProgrammaticToolCalling.mjs +283 -349
  463. package/dist/esm/tools/local/LocalProgrammaticToolCalling.mjs.map +1 -1
  464. package/dist/esm/tools/local/attachments.mjs +108 -163
  465. package/dist/esm/tools/local/attachments.mjs.map +1 -1
  466. package/dist/esm/tools/local/bashAst.mjs +99 -111
  467. package/dist/esm/tools/local/bashAst.mjs.map +1 -1
  468. package/dist/esm/tools/local/editStrategies.mjs +126 -167
  469. package/dist/esm/tools/local/editStrategies.mjs.map +1 -1
  470. package/dist/esm/tools/local/index.mjs +13 -0
  471. package/dist/esm/tools/local/resolveLocalExecutionTools.mjs +136 -216
  472. package/dist/esm/tools/local/resolveLocalExecutionTools.mjs.map +1 -1
  473. package/dist/esm/tools/local/syntaxCheck.mjs +138 -155
  474. package/dist/esm/tools/local/syntaxCheck.mjs.map +1 -1
  475. package/dist/esm/tools/local/textEncoding.mjs +25 -21
  476. package/dist/esm/tools/local/textEncoding.mjs.map +1 -1
  477. package/dist/esm/tools/local/workspaceFS.mjs +38 -44
  478. package/dist/esm/tools/local/workspaceFS.mjs.map +1 -1
  479. package/dist/esm/tools/ptcTimeout.mjs +27 -42
  480. package/dist/esm/tools/ptcTimeout.mjs.map +1 -1
  481. package/dist/esm/tools/schema.mjs +24 -21
  482. package/dist/esm/tools/schema.mjs.map +1 -1
  483. package/dist/esm/tools/search/anthropic.mjs +24 -31
  484. package/dist/esm/tools/search/anthropic.mjs.map +1 -1
  485. package/dist/esm/tools/search/content.mjs +93 -116
  486. package/dist/esm/tools/search/content.mjs.map +1 -1
  487. package/dist/esm/tools/search/firecrawl.mjs +139 -169
  488. package/dist/esm/tools/search/firecrawl.mjs.map +1 -1
  489. package/dist/esm/tools/search/format.mjs +128 -194
  490. package/dist/esm/tools/search/format.mjs.map +1 -1
  491. package/dist/esm/tools/search/highlights.mjs +165 -230
  492. package/dist/esm/tools/search/highlights.mjs.map +1 -1
  493. package/dist/esm/tools/search/index.mjs +3 -0
  494. package/dist/esm/tools/search/rerankers.mjs +149 -168
  495. package/dist/esm/tools/search/rerankers.mjs.map +1 -1
  496. package/dist/esm/tools/search/schema.mjs +39 -37
  497. package/dist/esm/tools/search/schema.mjs.map +1 -1
  498. package/dist/esm/tools/search/search.mjs +426 -528
  499. package/dist/esm/tools/search/search.mjs.map +1 -1
  500. package/dist/esm/tools/search/serper-scraper.mjs +104 -124
  501. package/dist/esm/tools/search/serper-scraper.mjs.map +1 -1
  502. package/dist/esm/tools/search/tavily-scraper.mjs +127 -178
  503. package/dist/esm/tools/search/tavily-scraper.mjs.map +1 -1
  504. package/dist/esm/tools/search/tavily-search.mjs +293 -357
  505. package/dist/esm/tools/search/tavily-search.mjs.map +1 -1
  506. package/dist/esm/tools/search/tool.mjs +259 -297
  507. package/dist/esm/tools/search/tool.mjs.map +1 -1
  508. package/dist/esm/tools/search/utils.mjs +74 -115
  509. package/dist/esm/tools/search/utils.mjs.map +1 -1
  510. package/dist/esm/tools/skillCatalog.mjs +54 -70
  511. package/dist/esm/tools/skillCatalog.mjs.map +1 -1
  512. package/dist/esm/tools/streamedToolCallSeals.mjs +19 -31
  513. package/dist/esm/tools/streamedToolCallSeals.mjs.map +1 -1
  514. package/dist/esm/tools/subagent/SubagentExecutor.mjs +612 -768
  515. package/dist/esm/tools/subagent/SubagentExecutor.mjs.map +1 -1
  516. package/dist/esm/tools/subagent/index.mjs +2 -0
  517. package/dist/esm/tools/toolOutputReferences.mjs +523 -624
  518. package/dist/esm/tools/toolOutputReferences.mjs.map +1 -1
  519. package/dist/esm/utils/callbacks.mjs +11 -19
  520. package/dist/esm/utils/callbacks.mjs.map +1 -1
  521. package/dist/esm/utils/errors.mjs +70 -93
  522. package/dist/esm/utils/errors.mjs.map +1 -1
  523. package/dist/esm/utils/events.mjs +32 -40
  524. package/dist/esm/utils/events.mjs.map +1 -1
  525. package/dist/esm/utils/graph.mjs +8 -10
  526. package/dist/esm/utils/graph.mjs.map +1 -1
  527. package/dist/esm/utils/handlers.mjs +60 -80
  528. package/dist/esm/utils/handlers.mjs.map +1 -1
  529. package/dist/esm/utils/index.mjs +10 -0
  530. package/dist/esm/utils/llm.mjs +19 -25
  531. package/dist/esm/utils/llm.mjs.map +1 -1
  532. package/dist/esm/utils/misc.mjs +30 -44
  533. package/dist/esm/utils/misc.mjs.map +1 -1
  534. package/dist/esm/utils/run.mjs +50 -64
  535. package/dist/esm/utils/run.mjs.map +1 -1
  536. package/dist/esm/utils/schema.mjs +11 -17
  537. package/dist/esm/utils/schema.mjs.map +1 -1
  538. package/dist/esm/utils/title.mjs +71 -104
  539. package/dist/esm/utils/title.mjs.map +1 -1
  540. package/dist/esm/utils/tokens.mjs +186 -281
  541. package/dist/esm/utils/tokens.mjs.map +1 -1
  542. package/dist/esm/utils/truncation.mjs +95 -112
  543. package/dist/esm/utils/truncation.mjs.map +1 -1
  544. package/dist/types/messages/format.d.ts +5 -0
  545. package/dist/types/tools/search/tool.d.ts +17 -0
  546. package/dist/types/tools/search/types.d.ts +4 -0
  547. package/package.json +11 -17
  548. package/src/llm/anthropic/llm.spec.ts +36 -0
  549. package/src/llm/anthropic/utils/message_inputs.ts +45 -3
  550. package/src/llm/anthropic/utils/message_outputs.ts +6 -2
  551. package/src/llm/anthropic/utils/streaming-tool-input.test.ts +186 -0
  552. package/src/messages/cache.test.ts +122 -0
  553. package/src/messages/cache.ts +25 -1
  554. package/src/messages/format.ts +9 -0
  555. package/src/messages/formatAgentMessages.skills.test.ts +100 -0
  556. package/src/tools/search/highlights.ts +9 -1
  557. package/src/tools/search/search.ts +41 -3
  558. package/src/tools/search/source-processing.test.ts +373 -0
  559. package/src/tools/search/tool.ts +22 -2
  560. package/src/tools/search/types.ts +4 -0
  561. package/dist/cjs/langchain/google-common.cjs.map +0 -1
  562. package/dist/cjs/langchain/index.cjs.map +0 -1
  563. package/dist/cjs/langchain/language_models/chat_models.cjs.map +0 -1
  564. package/dist/cjs/langchain/messages/tool.cjs.map +0 -1
  565. package/dist/cjs/langchain/messages.cjs.map +0 -1
  566. package/dist/cjs/langchain/openai.cjs.map +0 -1
  567. package/dist/cjs/langchain/prompts.cjs.map +0 -1
  568. package/dist/cjs/langchain/runnables.cjs.map +0 -1
  569. package/dist/cjs/langchain/tools.cjs.map +0 -1
  570. package/dist/cjs/langchain/utils/env.cjs.map +0 -1
  571. package/dist/cjs/main.cjs.map +0 -1
  572. package/dist/esm/langchain/google-common.mjs.map +0 -1
  573. package/dist/esm/langchain/index.mjs.map +0 -1
  574. package/dist/esm/langchain/language_models/chat_models.mjs.map +0 -1
  575. package/dist/esm/langchain/messages/tool.mjs.map +0 -1
  576. package/dist/esm/langchain/messages.mjs.map +0 -1
  577. package/dist/esm/langchain/openai.mjs.map +0 -1
  578. package/dist/esm/langchain/prompts.mjs.map +0 -1
  579. package/dist/esm/langchain/runnables.mjs.map +0 -1
  580. package/dist/esm/langchain/tools.mjs.map +0 -1
  581. package/dist/esm/langchain/utils/env.mjs.map +0 -1
  582. package/dist/esm/main.mjs.map +0 -1
@@ -1,370 +1,306 @@
1
- import axios from 'axios';
2
-
3
- const DEFAULT_TAVILY_TIMEOUT = 15000;
1
+ import axios from "axios";
2
+ //#region src/tools/search/tavily-search.ts
3
+ const DEFAULT_TAVILY_TIMEOUT = 15e3;
4
4
  const TAVILY_COUNTRY_ALIASES = {
5
- ba: 'bosnia and herzegovina',
6
- cg: 'congo',
7
- cz: 'czech republic',
8
- gb: 'united kingdom',
9
- mm: 'myanmar',
10
- tr: 'turkey',
11
- tt: 'trinidad and tobago',
12
- uk: 'united kingdom',
5
+ ba: "bosnia and herzegovina",
6
+ cg: "congo",
7
+ cz: "czech republic",
8
+ gb: "united kingdom",
9
+ mm: "myanmar",
10
+ tr: "turkey",
11
+ tt: "trinidad and tobago",
12
+ uk: "united kingdom"
13
13
  };
14
14
  const TAVILY_SUPPORTED_COUNTRIES = new Set([
15
- 'afghanistan',
16
- 'albania',
17
- 'algeria',
18
- 'andorra',
19
- 'angola',
20
- 'argentina',
21
- 'armenia',
22
- 'australia',
23
- 'austria',
24
- 'azerbaijan',
25
- 'bahamas',
26
- 'bahrain',
27
- 'bangladesh',
28
- 'barbados',
29
- 'belarus',
30
- 'belgium',
31
- 'belize',
32
- 'benin',
33
- 'bhutan',
34
- 'bolivia',
35
- 'bosnia and herzegovina',
36
- 'botswana',
37
- 'brazil',
38
- 'brunei',
39
- 'bulgaria',
40
- 'burkina faso',
41
- 'burundi',
42
- 'cambodia',
43
- 'cameroon',
44
- 'canada',
45
- 'cape verde',
46
- 'central african republic',
47
- 'chad',
48
- 'chile',
49
- 'china',
50
- 'colombia',
51
- 'comoros',
52
- 'congo',
53
- 'costa rica',
54
- 'croatia',
55
- 'cuba',
56
- 'cyprus',
57
- 'czech republic',
58
- 'denmark',
59
- 'djibouti',
60
- 'dominican republic',
61
- 'ecuador',
62
- 'egypt',
63
- 'el salvador',
64
- 'equatorial guinea',
65
- 'eritrea',
66
- 'estonia',
67
- 'ethiopia',
68
- 'fiji',
69
- 'finland',
70
- 'france',
71
- 'gabon',
72
- 'gambia',
73
- 'georgia',
74
- 'germany',
75
- 'ghana',
76
- 'greece',
77
- 'guatemala',
78
- 'guinea',
79
- 'haiti',
80
- 'honduras',
81
- 'hungary',
82
- 'iceland',
83
- 'india',
84
- 'indonesia',
85
- 'iran',
86
- 'iraq',
87
- 'ireland',
88
- 'israel',
89
- 'italy',
90
- 'jamaica',
91
- 'japan',
92
- 'jordan',
93
- 'kazakhstan',
94
- 'kenya',
95
- 'kuwait',
96
- 'kyrgyzstan',
97
- 'latvia',
98
- 'lebanon',
99
- 'lesotho',
100
- 'liberia',
101
- 'libya',
102
- 'liechtenstein',
103
- 'lithuania',
104
- 'luxembourg',
105
- 'madagascar',
106
- 'malawi',
107
- 'malaysia',
108
- 'maldives',
109
- 'mali',
110
- 'malta',
111
- 'mauritania',
112
- 'mauritius',
113
- 'mexico',
114
- 'moldova',
115
- 'monaco',
116
- 'mongolia',
117
- 'montenegro',
118
- 'morocco',
119
- 'mozambique',
120
- 'myanmar',
121
- 'namibia',
122
- 'nepal',
123
- 'netherlands',
124
- 'new zealand',
125
- 'nicaragua',
126
- 'niger',
127
- 'nigeria',
128
- 'north korea',
129
- 'north macedonia',
130
- 'norway',
131
- 'oman',
132
- 'pakistan',
133
- 'panama',
134
- 'papua new guinea',
135
- 'paraguay',
136
- 'peru',
137
- 'philippines',
138
- 'poland',
139
- 'portugal',
140
- 'qatar',
141
- 'romania',
142
- 'russia',
143
- 'rwanda',
144
- 'saudi arabia',
145
- 'senegal',
146
- 'serbia',
147
- 'singapore',
148
- 'slovakia',
149
- 'slovenia',
150
- 'somalia',
151
- 'south africa',
152
- 'south korea',
153
- 'south sudan',
154
- 'spain',
155
- 'sri lanka',
156
- 'sudan',
157
- 'sweden',
158
- 'switzerland',
159
- 'syria',
160
- 'taiwan',
161
- 'tajikistan',
162
- 'tanzania',
163
- 'thailand',
164
- 'togo',
165
- 'trinidad and tobago',
166
- 'tunisia',
167
- 'turkey',
168
- 'turkmenistan',
169
- 'uganda',
170
- 'ukraine',
171
- 'united arab emirates',
172
- 'united kingdom',
173
- 'united states',
174
- 'uruguay',
175
- 'uzbekistan',
176
- 'venezuela',
177
- 'vietnam',
178
- 'yemen',
179
- 'zambia',
180
- 'zimbabwe',
15
+ "afghanistan",
16
+ "albania",
17
+ "algeria",
18
+ "andorra",
19
+ "angola",
20
+ "argentina",
21
+ "armenia",
22
+ "australia",
23
+ "austria",
24
+ "azerbaijan",
25
+ "bahamas",
26
+ "bahrain",
27
+ "bangladesh",
28
+ "barbados",
29
+ "belarus",
30
+ "belgium",
31
+ "belize",
32
+ "benin",
33
+ "bhutan",
34
+ "bolivia",
35
+ "bosnia and herzegovina",
36
+ "botswana",
37
+ "brazil",
38
+ "brunei",
39
+ "bulgaria",
40
+ "burkina faso",
41
+ "burundi",
42
+ "cambodia",
43
+ "cameroon",
44
+ "canada",
45
+ "cape verde",
46
+ "central african republic",
47
+ "chad",
48
+ "chile",
49
+ "china",
50
+ "colombia",
51
+ "comoros",
52
+ "congo",
53
+ "costa rica",
54
+ "croatia",
55
+ "cuba",
56
+ "cyprus",
57
+ "czech republic",
58
+ "denmark",
59
+ "djibouti",
60
+ "dominican republic",
61
+ "ecuador",
62
+ "egypt",
63
+ "el salvador",
64
+ "equatorial guinea",
65
+ "eritrea",
66
+ "estonia",
67
+ "ethiopia",
68
+ "fiji",
69
+ "finland",
70
+ "france",
71
+ "gabon",
72
+ "gambia",
73
+ "georgia",
74
+ "germany",
75
+ "ghana",
76
+ "greece",
77
+ "guatemala",
78
+ "guinea",
79
+ "haiti",
80
+ "honduras",
81
+ "hungary",
82
+ "iceland",
83
+ "india",
84
+ "indonesia",
85
+ "iran",
86
+ "iraq",
87
+ "ireland",
88
+ "israel",
89
+ "italy",
90
+ "jamaica",
91
+ "japan",
92
+ "jordan",
93
+ "kazakhstan",
94
+ "kenya",
95
+ "kuwait",
96
+ "kyrgyzstan",
97
+ "latvia",
98
+ "lebanon",
99
+ "lesotho",
100
+ "liberia",
101
+ "libya",
102
+ "liechtenstein",
103
+ "lithuania",
104
+ "luxembourg",
105
+ "madagascar",
106
+ "malawi",
107
+ "malaysia",
108
+ "maldives",
109
+ "mali",
110
+ "malta",
111
+ "mauritania",
112
+ "mauritius",
113
+ "mexico",
114
+ "moldova",
115
+ "monaco",
116
+ "mongolia",
117
+ "montenegro",
118
+ "morocco",
119
+ "mozambique",
120
+ "myanmar",
121
+ "namibia",
122
+ "nepal",
123
+ "netherlands",
124
+ "new zealand",
125
+ "nicaragua",
126
+ "niger",
127
+ "nigeria",
128
+ "north korea",
129
+ "north macedonia",
130
+ "norway",
131
+ "oman",
132
+ "pakistan",
133
+ "panama",
134
+ "papua new guinea",
135
+ "paraguay",
136
+ "peru",
137
+ "philippines",
138
+ "poland",
139
+ "portugal",
140
+ "qatar",
141
+ "romania",
142
+ "russia",
143
+ "rwanda",
144
+ "saudi arabia",
145
+ "senegal",
146
+ "serbia",
147
+ "singapore",
148
+ "slovakia",
149
+ "slovenia",
150
+ "somalia",
151
+ "south africa",
152
+ "south korea",
153
+ "south sudan",
154
+ "spain",
155
+ "sri lanka",
156
+ "sudan",
157
+ "sweden",
158
+ "switzerland",
159
+ "syria",
160
+ "taiwan",
161
+ "tajikistan",
162
+ "tanzania",
163
+ "thailand",
164
+ "togo",
165
+ "trinidad and tobago",
166
+ "tunisia",
167
+ "turkey",
168
+ "turkmenistan",
169
+ "uganda",
170
+ "ukraine",
171
+ "united arab emirates",
172
+ "united kingdom",
173
+ "united states",
174
+ "uruguay",
175
+ "uzbekistan",
176
+ "venezuela",
177
+ "vietnam",
178
+ "yemen",
179
+ "zambia",
180
+ "zimbabwe"
181
181
  ]);
182
- const TAVILY_REGION_NAMES = new Intl.DisplayNames(['en'], {
183
- type: 'region',
184
- });
185
- const normalizeTavilyCountryName = (country) => country
186
- .toLowerCase()
187
- .replace(/\s*\([^)]*\)/g, '')
188
- .replace(/\s*&\s*/g, ' and ')
189
- .normalize('NFD')
190
- .replace(/\p{Diacritic}/gu, '');
182
+ const TAVILY_REGION_NAMES = new Intl.DisplayNames(["en"], { type: "region" });
183
+ const normalizeTavilyCountryName = (country) => country.toLowerCase().replace(/\s*\([^)]*\)/g, "").replace(/\s*&\s*/g, " and ").normalize("NFD").replace(/\p{Diacritic}/gu, "");
191
184
  const normalizeTavilyCountry = (country) => {
192
- const normalizedCountry = country?.trim().toLowerCase();
193
- if (normalizedCountry == null || normalizedCountry === '') {
194
- return undefined;
195
- }
196
- const countryAlias = TAVILY_COUNTRY_ALIASES[normalizedCountry];
197
- if (countryAlias != null) {
198
- return TAVILY_SUPPORTED_COUNTRIES.has(countryAlias)
199
- ? countryAlias
200
- : undefined;
201
- }
202
- if (/^[a-z]{2}$/.test(normalizedCountry)) {
203
- const regionName = TAVILY_REGION_NAMES.of(normalizedCountry.toUpperCase());
204
- if (regionName == null) {
205
- return undefined;
206
- }
207
- const countryName = normalizeTavilyCountryName(regionName);
208
- return TAVILY_SUPPORTED_COUNTRIES.has(countryName)
209
- ? countryName
210
- : undefined;
211
- }
212
- const countryName = normalizeTavilyCountryName(normalizedCountry);
213
- return TAVILY_SUPPORTED_COUNTRIES.has(countryName) ? countryName : undefined;
185
+ const normalizedCountry = country?.trim().toLowerCase();
186
+ if (normalizedCountry == null || normalizedCountry === "") return;
187
+ const countryAlias = TAVILY_COUNTRY_ALIASES[normalizedCountry];
188
+ if (countryAlias != null) return TAVILY_SUPPORTED_COUNTRIES.has(countryAlias) ? countryAlias : void 0;
189
+ if (/^[a-z]{2}$/.test(normalizedCountry)) {
190
+ const regionName = TAVILY_REGION_NAMES.of(normalizedCountry.toUpperCase());
191
+ if (regionName == null) return;
192
+ const countryName = normalizeTavilyCountryName(regionName);
193
+ return TAVILY_SUPPORTED_COUNTRIES.has(countryName) ? countryName : void 0;
194
+ }
195
+ const countryName = normalizeTavilyCountryName(normalizedCountry);
196
+ return TAVILY_SUPPORTED_COUNTRIES.has(countryName) ? countryName : void 0;
214
197
  };
215
198
  const normalizeTavilyTimeRange = (timeRange) => {
216
- switch (timeRange) {
217
- case 'h':
218
- case 'd':
219
- return 'day';
220
- case 'w':
221
- return 'week';
222
- case 'm':
223
- return 'month';
224
- case 'y':
225
- return 'year';
226
- case 'day':
227
- case 'week':
228
- case 'month':
229
- case 'year':
230
- return timeRange;
231
- default:
232
- return undefined;
233
- }
199
+ switch (timeRange) {
200
+ case "h":
201
+ case "d": return "day";
202
+ case "w": return "week";
203
+ case "m": return "month";
204
+ case "y": return "year";
205
+ case "day":
206
+ case "week":
207
+ case "month":
208
+ case "year": return timeRange;
209
+ default: return;
210
+ }
234
211
  };
235
212
  const getHostname = (link) => {
236
- try {
237
- return new URL(link).hostname;
238
- }
239
- catch {
240
- return link;
241
- }
213
+ try {
214
+ return new URL(link).hostname;
215
+ } catch {
216
+ return link;
217
+ }
242
218
  };
243
219
  const createTavilyAPI = (apiKey, apiUrl, options) => {
244
- const config = {
245
- apiKey: apiKey ?? process.env.TAVILY_API_KEY,
246
- apiUrl: apiUrl ??
247
- process.env.TAVILY_SEARCH_URL ??
248
- 'https://api.tavily.com/search',
249
- timeout: options?.timeout ?? DEFAULT_TAVILY_TIMEOUT,
250
- };
251
- if (config.apiKey == null || config.apiKey === '') {
252
- throw new Error('TAVILY_API_KEY is required for Tavily API');
253
- }
254
- const getSources = async ({ query, date, country, numResults = 8, type, news, }) => {
255
- if (!query.trim()) {
256
- return { success: false, error: 'Query cannot be empty' };
257
- }
258
- try {
259
- const timeRange = normalizeTavilyTimeRange(options?.timeRange) ??
260
- (date != null ? (normalizeTavilyTimeRange(date) ?? 'day') : undefined);
261
- const topic = news === true || type === 'news'
262
- ? 'news'
263
- : (options?.topic ?? 'general');
264
- const maxResults = options?.maxResults ?? numResults;
265
- const searchDepth = options?.searchDepth ?? 'basic';
266
- const payload = {
267
- query,
268
- search_depth: searchDepth,
269
- topic,
270
- max_results: Math.min(Math.max(1, maxResults), 20),
271
- };
272
- if (options?.safeSearch != null &&
273
- searchDepth !== 'fast' &&
274
- searchDepth !== 'ultra-fast') {
275
- payload.safe_search = options.safeSearch;
276
- }
277
- if (timeRange != null) {
278
- payload.time_range = timeRange;
279
- }
280
- const tavilyCountry = topic === 'general' ? normalizeTavilyCountry(country) : undefined;
281
- if (tavilyCountry != null) {
282
- payload.country = tavilyCountry;
283
- }
284
- if (type === 'images' || options?.includeImages === true) {
285
- payload.include_images = true;
286
- }
287
- if (options?.includeAnswer != null) {
288
- payload.include_answer = options.includeAnswer;
289
- }
290
- if (options?.includeRawContent != null) {
291
- payload.include_raw_content = options.includeRawContent;
292
- }
293
- if (options?.includeDomains != null &&
294
- options.includeDomains.length > 0) {
295
- payload.include_domains = options.includeDomains;
296
- }
297
- if (options?.excludeDomains != null &&
298
- options.excludeDomains.length > 0) {
299
- payload.exclude_domains = options.excludeDomains;
300
- }
301
- if (options?.includeImageDescriptions != null) {
302
- payload.include_image_descriptions = options.includeImageDescriptions;
303
- }
304
- if (options?.includeFavicon != null) {
305
- payload.include_favicon = options.includeFavicon;
306
- }
307
- if (options?.chunksPerSource != null && searchDepth === 'advanced') {
308
- payload.chunks_per_source = options.chunksPerSource;
309
- }
310
- const response = await axios.post(config.apiUrl, payload, {
311
- headers: {
312
- Authorization: `Bearer ${config.apiKey}`,
313
- 'Content-Type': 'application/json',
314
- },
315
- timeout: config.timeout,
316
- });
317
- const data = response.data;
318
- const organicResults = (data.results ?? []).map((result) => ({
319
- title: result.title ?? '',
320
- link: result.url ?? '',
321
- snippet: result.content ?? '',
322
- date: result.published_date,
323
- }));
324
- const imageResults = Array.isArray(data.images)
325
- ? data.images.slice(0, 6).reduce((acc, image) => {
326
- const imageUrl = typeof image === 'string' ? image : image.url;
327
- if (imageUrl == null || imageUrl === '') {
328
- return acc;
329
- }
330
- acc.push({
331
- imageUrl,
332
- title: typeof image === 'string' ? undefined : image.description,
333
- position: acc.length + 1,
334
- });
335
- return acc;
336
- }, [])
337
- : [];
338
- const newsResults = topic === 'news'
339
- ? organicResults.map((r) => ({
340
- title: r.title,
341
- link: r.link,
342
- snippet: r.snippet,
343
- date: r.date,
344
- source: getHostname(r.link),
345
- }))
346
- : [];
347
- const results = {
348
- organic: organicResults,
349
- images: imageResults,
350
- topStories: [],
351
- videos: [],
352
- news: newsResults,
353
- answerBox: data.answer != null ? { snippet: data.answer } : undefined,
354
- relatedSearches: [],
355
- };
356
- return { success: true, data: results };
357
- }
358
- catch (error) {
359
- const errorMessage = error instanceof Error ? error.message : String(error);
360
- return {
361
- success: false,
362
- error: `Tavily API request failed: ${errorMessage}`,
363
- };
364
- }
365
- };
366
- return { getSources };
220
+ const config = {
221
+ apiKey: apiKey ?? process.env.TAVILY_API_KEY,
222
+ apiUrl: apiUrl ?? process.env.TAVILY_SEARCH_URL ?? "https://api.tavily.com/search",
223
+ timeout: options?.timeout ?? DEFAULT_TAVILY_TIMEOUT
224
+ };
225
+ if (config.apiKey == null || config.apiKey === "") throw new Error("TAVILY_API_KEY is required for Tavily API");
226
+ const getSources = async ({ query, date, country, numResults = 8, type, news }) => {
227
+ if (!query.trim()) return {
228
+ success: false,
229
+ error: "Query cannot be empty"
230
+ };
231
+ try {
232
+ const timeRange = normalizeTavilyTimeRange(options?.timeRange) ?? (date != null ? normalizeTavilyTimeRange(date) ?? "day" : void 0);
233
+ const topic = news === true || type === "news" ? "news" : options?.topic ?? "general";
234
+ const maxResults = options?.maxResults ?? numResults;
235
+ const searchDepth = options?.searchDepth ?? "basic";
236
+ const payload = {
237
+ query,
238
+ search_depth: searchDepth,
239
+ topic,
240
+ max_results: Math.min(Math.max(1, maxResults), 20)
241
+ };
242
+ if (options?.safeSearch != null && searchDepth !== "fast" && searchDepth !== "ultra-fast") payload.safe_search = options.safeSearch;
243
+ if (timeRange != null) payload.time_range = timeRange;
244
+ const tavilyCountry = topic === "general" ? normalizeTavilyCountry(country) : void 0;
245
+ if (tavilyCountry != null) payload.country = tavilyCountry;
246
+ if (type === "images" || options?.includeImages === true) payload.include_images = true;
247
+ if (options?.includeAnswer != null) payload.include_answer = options.includeAnswer;
248
+ if (options?.includeRawContent != null) payload.include_raw_content = options.includeRawContent;
249
+ if (options?.includeDomains != null && options.includeDomains.length > 0) payload.include_domains = options.includeDomains;
250
+ if (options?.excludeDomains != null && options.excludeDomains.length > 0) payload.exclude_domains = options.excludeDomains;
251
+ if (options?.includeImageDescriptions != null) payload.include_image_descriptions = options.includeImageDescriptions;
252
+ if (options?.includeFavicon != null) payload.include_favicon = options.includeFavicon;
253
+ if (options?.chunksPerSource != null && searchDepth === "advanced") payload.chunks_per_source = options.chunksPerSource;
254
+ const data = (await axios.post(config.apiUrl, payload, {
255
+ headers: {
256
+ Authorization: `Bearer ${config.apiKey}`,
257
+ "Content-Type": "application/json"
258
+ },
259
+ timeout: config.timeout
260
+ })).data;
261
+ const organicResults = (data.results ?? []).map((result) => ({
262
+ title: result.title ?? "",
263
+ link: result.url ?? "",
264
+ snippet: result.content ?? "",
265
+ date: result.published_date
266
+ }));
267
+ return {
268
+ success: true,
269
+ data: {
270
+ organic: organicResults,
271
+ images: Array.isArray(data.images) ? data.images.slice(0, 6).reduce((acc, image) => {
272
+ const imageUrl = typeof image === "string" ? image : image.url;
273
+ if (imageUrl == null || imageUrl === "") return acc;
274
+ acc.push({
275
+ imageUrl,
276
+ title: typeof image === "string" ? void 0 : image.description,
277
+ position: acc.length + 1
278
+ });
279
+ return acc;
280
+ }, []) : [],
281
+ topStories: [],
282
+ videos: [],
283
+ news: topic === "news" ? organicResults.map((r) => ({
284
+ title: r.title,
285
+ link: r.link,
286
+ snippet: r.snippet,
287
+ date: r.date,
288
+ source: getHostname(r.link)
289
+ })) : [],
290
+ answerBox: data.answer != null ? { snippet: data.answer } : void 0,
291
+ relatedSearches: []
292
+ }
293
+ };
294
+ } catch (error) {
295
+ return {
296
+ success: false,
297
+ error: `Tavily API request failed: ${error instanceof Error ? error.message : String(error)}`
298
+ };
299
+ }
300
+ };
301
+ return { getSources };
367
302
  };
368
-
303
+ //#endregion
369
304
  export { createTavilyAPI };
370
- //# sourceMappingURL=tavily-search.mjs.map
305
+
306
+ //# sourceMappingURL=tavily-search.mjs.map