@illuma-ai/agents 1.5.0 → 2.1.1

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 (424) hide show
  1. package/README.md +0 -62
  2. package/dist/cjs/agents/AgentContext.cjs +159 -258
  3. package/dist/cjs/agents/AgentContext.cjs.map +1 -1
  4. package/dist/cjs/graphs/Graph.cjs +25 -8
  5. package/dist/cjs/graphs/Graph.cjs.map +1 -1
  6. package/dist/cjs/llm/anthropic/utils/message_inputs.cjs +1 -5
  7. package/dist/cjs/llm/anthropic/utils/message_inputs.cjs.map +1 -1
  8. package/dist/cjs/llm/bedrock/index.cjs +33 -61
  9. package/dist/cjs/llm/bedrock/index.cjs.map +1 -1
  10. package/dist/cjs/llm/openai/utils/index.cjs +10 -27
  11. package/dist/cjs/llm/openai/utils/index.cjs.map +1 -1
  12. package/dist/cjs/main.cjs +3 -84
  13. package/dist/cjs/main.cjs.map +1 -1
  14. package/dist/cjs/messages/cache.cjs +0 -89
  15. package/dist/cjs/messages/cache.cjs.map +1 -1
  16. package/dist/cjs/messages/format.cjs +10 -68
  17. package/dist/cjs/messages/format.cjs.map +1 -1
  18. package/dist/cjs/tools/BashExecutor.cjs +11 -21
  19. package/dist/cjs/tools/BashExecutor.cjs.map +1 -1
  20. package/dist/cjs/tools/CodeExecutor.cjs +10 -37
  21. package/dist/cjs/tools/CodeExecutor.cjs.map +1 -1
  22. package/dist/cjs/tools/ProgrammaticToolCalling.cjs +11 -16
  23. package/dist/cjs/tools/ProgrammaticToolCalling.cjs.map +1 -1
  24. package/dist/cjs/tools/ToolNode.cjs +73 -8
  25. package/dist/cjs/tools/ToolNode.cjs.map +1 -1
  26. package/dist/cjs/tools/search/search.cjs +3 -11
  27. package/dist/cjs/tools/search/search.cjs.map +1 -1
  28. package/dist/cjs/tools/search/tool.cjs +4 -28
  29. package/dist/cjs/tools/search/tool.cjs.map +1 -1
  30. package/dist/cjs/tools/search/utils.cjs +3 -10
  31. package/dist/cjs/tools/search/utils.cjs.map +1 -1
  32. package/dist/cjs/tools/subagent/SubagentExecutor.cjs +48 -0
  33. package/dist/cjs/tools/subagent/SubagentExecutor.cjs.map +1 -1
  34. package/dist/cjs/types/graph.cjs.map +1 -1
  35. package/dist/esm/agents/AgentContext.mjs +159 -258
  36. package/dist/esm/agents/AgentContext.mjs.map +1 -1
  37. package/dist/esm/graphs/Graph.mjs +25 -8
  38. package/dist/esm/graphs/Graph.mjs.map +1 -1
  39. package/dist/esm/llm/anthropic/utils/message_inputs.mjs +1 -5
  40. package/dist/esm/llm/anthropic/utils/message_inputs.mjs.map +1 -1
  41. package/dist/esm/llm/bedrock/index.mjs +34 -61
  42. package/dist/esm/llm/bedrock/index.mjs.map +1 -1
  43. package/dist/esm/llm/openai/utils/index.mjs +10 -27
  44. package/dist/esm/llm/openai/utils/index.mjs.map +1 -1
  45. package/dist/esm/main.mjs +1 -5
  46. package/dist/esm/main.mjs.map +1 -1
  47. package/dist/esm/messages/cache.mjs +0 -89
  48. package/dist/esm/messages/cache.mjs.map +1 -1
  49. package/dist/esm/messages/format.mjs +10 -68
  50. package/dist/esm/messages/format.mjs.map +1 -1
  51. package/dist/esm/tools/BashExecutor.mjs +12 -22
  52. package/dist/esm/tools/BashExecutor.mjs.map +1 -1
  53. package/dist/esm/tools/CodeExecutor.mjs +11 -37
  54. package/dist/esm/tools/CodeExecutor.mjs.map +1 -1
  55. package/dist/esm/tools/ProgrammaticToolCalling.mjs +12 -17
  56. package/dist/esm/tools/ProgrammaticToolCalling.mjs.map +1 -1
  57. package/dist/esm/tools/ToolNode.mjs +73 -8
  58. package/dist/esm/tools/ToolNode.mjs.map +1 -1
  59. package/dist/esm/tools/search/search.mjs +3 -11
  60. package/dist/esm/tools/search/search.mjs.map +1 -1
  61. package/dist/esm/tools/search/tool.mjs +4 -28
  62. package/dist/esm/tools/search/tool.mjs.map +1 -1
  63. package/dist/esm/tools/search/utils.mjs +3 -10
  64. package/dist/esm/tools/search/utils.mjs.map +1 -1
  65. package/dist/esm/tools/subagent/SubagentExecutor.mjs +48 -0
  66. package/dist/esm/tools/subagent/SubagentExecutor.mjs.map +1 -1
  67. package/dist/esm/types/graph.mjs.map +1 -1
  68. package/dist/types/agents/AgentContext.d.ts +25 -95
  69. package/dist/types/index.d.ts +0 -1
  70. package/dist/types/llm/bedrock/index.d.ts +1 -54
  71. package/dist/types/messages/format.d.ts +1 -4
  72. package/dist/types/tools/CodeExecutor.d.ts +0 -6
  73. package/dist/types/tools/search/types.d.ts +5 -99
  74. package/dist/types/tools/search/utils.d.ts +2 -2
  75. package/dist/types/tools/subagent/SubagentExecutor.d.ts +29 -0
  76. package/dist/types/types/graph.d.ts +24 -27
  77. package/dist/types/types/index.d.ts +0 -1
  78. package/dist/types/types/run.d.ts +0 -2
  79. package/dist/types/types/tools.d.ts +0 -9
  80. package/package.json +1 -61
  81. package/src/agents/AgentContext.test.ts +176 -0
  82. package/src/agents/AgentContext.ts +178 -304
  83. package/src/agents/__tests__/AgentContext.test.ts +0 -632
  84. package/src/graphs/Graph.ts +27 -8
  85. package/src/index.ts +0 -6
  86. package/src/llm/anthropic/utils/message_inputs.ts +1 -10
  87. package/src/llm/bedrock/__tests__/bedrock-caching.test.ts +18 -166
  88. package/src/llm/bedrock/index.ts +41 -116
  89. package/src/llm/openai/utils/index.ts +14 -31
  90. package/src/messages/cache.test.ts +24 -62
  91. package/src/messages/cache.ts +0 -112
  92. package/src/messages/format.ts +10 -89
  93. package/src/scripts/subagent-configurable-inheritance.ts +263 -0
  94. package/src/specs/anthropic.simple.test.ts +0 -61
  95. package/src/tools/BashExecutor.ts +13 -37
  96. package/src/tools/CodeExecutor.ts +11 -55
  97. package/src/tools/ProgrammaticToolCalling.ts +14 -29
  98. package/src/tools/ToolNode.ts +69 -8
  99. package/src/tools/__tests__/ProgrammaticToolCalling.test.ts +0 -60
  100. package/src/tools/__tests__/SubagentExecutor.test.ts +157 -0
  101. package/src/tools/search/search.ts +2 -12
  102. package/src/tools/search/tool.ts +2 -36
  103. package/src/tools/search/types.ts +8 -133
  104. package/src/tools/search/utils.ts +5 -13
  105. package/src/tools/subagent/SubagentExecutor.ts +78 -0
  106. package/src/types/graph.ts +21 -27
  107. package/src/types/index.ts +0 -1
  108. package/src/types/run.ts +0 -2
  109. package/src/types/tools.ts +0 -9
  110. package/dist/cjs/langchain/google-common.cjs +0 -3
  111. package/dist/cjs/langchain/google-common.cjs.map +0 -1
  112. package/dist/cjs/langchain/index.cjs +0 -86
  113. package/dist/cjs/langchain/index.cjs.map +0 -1
  114. package/dist/cjs/langchain/language_models/chat_models.cjs +0 -3
  115. package/dist/cjs/langchain/language_models/chat_models.cjs.map +0 -1
  116. package/dist/cjs/langchain/messages/tool.cjs +0 -3
  117. package/dist/cjs/langchain/messages/tool.cjs.map +0 -1
  118. package/dist/cjs/langchain/messages.cjs +0 -51
  119. package/dist/cjs/langchain/messages.cjs.map +0 -1
  120. package/dist/cjs/langchain/openai.cjs +0 -3
  121. package/dist/cjs/langchain/openai.cjs.map +0 -1
  122. package/dist/cjs/langchain/prompts.cjs +0 -11
  123. package/dist/cjs/langchain/prompts.cjs.map +0 -1
  124. package/dist/cjs/langchain/runnables.cjs +0 -19
  125. package/dist/cjs/langchain/runnables.cjs.map +0 -1
  126. package/dist/cjs/langchain/tools.cjs +0 -23
  127. package/dist/cjs/langchain/tools.cjs.map +0 -1
  128. package/dist/cjs/langchain/utils/env.cjs +0 -11
  129. package/dist/cjs/langchain/utils/env.cjs.map +0 -1
  130. package/dist/cjs/llm/bedrock/cacheSupport.cjs +0 -55
  131. package/dist/cjs/llm/bedrock/cacheSupport.cjs.map +0 -1
  132. package/dist/cjs/tools/search/tavily-scraper.cjs +0 -189
  133. package/dist/cjs/tools/search/tavily-scraper.cjs.map +0 -1
  134. package/dist/cjs/tools/search/tavily-search.cjs +0 -372
  135. package/dist/cjs/tools/search/tavily-search.cjs.map +0 -1
  136. package/dist/cjs/types/agent-cache.cjs +0 -53
  137. package/dist/cjs/types/agent-cache.cjs.map +0 -1
  138. package/dist/esm/langchain/google-common.mjs +0 -2
  139. package/dist/esm/langchain/google-common.mjs.map +0 -1
  140. package/dist/esm/langchain/index.mjs +0 -5
  141. package/dist/esm/langchain/index.mjs.map +0 -1
  142. package/dist/esm/langchain/language_models/chat_models.mjs +0 -2
  143. package/dist/esm/langchain/language_models/chat_models.mjs.map +0 -1
  144. package/dist/esm/langchain/messages/tool.mjs +0 -2
  145. package/dist/esm/langchain/messages/tool.mjs.map +0 -1
  146. package/dist/esm/langchain/messages.mjs +0 -2
  147. package/dist/esm/langchain/messages.mjs.map +0 -1
  148. package/dist/esm/langchain/openai.mjs +0 -2
  149. package/dist/esm/langchain/openai.mjs.map +0 -1
  150. package/dist/esm/langchain/prompts.mjs +0 -2
  151. package/dist/esm/langchain/prompts.mjs.map +0 -1
  152. package/dist/esm/langchain/runnables.mjs +0 -2
  153. package/dist/esm/langchain/runnables.mjs.map +0 -1
  154. package/dist/esm/langchain/tools.mjs +0 -2
  155. package/dist/esm/langchain/tools.mjs.map +0 -1
  156. package/dist/esm/langchain/utils/env.mjs +0 -2
  157. package/dist/esm/langchain/utils/env.mjs.map +0 -1
  158. package/dist/esm/llm/bedrock/cacheSupport.mjs +0 -52
  159. package/dist/esm/llm/bedrock/cacheSupport.mjs.map +0 -1
  160. package/dist/esm/tools/search/tavily-scraper.mjs +0 -186
  161. package/dist/esm/tools/search/tavily-scraper.mjs.map +0 -1
  162. package/dist/esm/tools/search/tavily-search.mjs +0 -370
  163. package/dist/esm/tools/search/tavily-search.mjs.map +0 -1
  164. package/dist/esm/types/agent-cache.mjs +0 -51
  165. package/dist/esm/types/agent-cache.mjs.map +0 -1
  166. package/dist/types/langchain/google-common.d.ts +0 -1
  167. package/dist/types/langchain/index.d.ts +0 -8
  168. package/dist/types/langchain/language_models/chat_models.d.ts +0 -1
  169. package/dist/types/langchain/messages/tool.d.ts +0 -1
  170. package/dist/types/langchain/messages.d.ts +0 -2
  171. package/dist/types/langchain/openai.d.ts +0 -1
  172. package/dist/types/langchain/prompts.d.ts +0 -1
  173. package/dist/types/langchain/runnables.d.ts +0 -2
  174. package/dist/types/langchain/tools.d.ts +0 -2
  175. package/dist/types/langchain/utils/env.d.ts +0 -1
  176. package/dist/types/llm/bedrock/cacheSupport.d.ts +0 -35
  177. package/dist/types/tools/search/tavily-scraper.d.ts +0 -19
  178. package/dist/types/tools/search/tavily-search.d.ts +0 -4
  179. package/dist/types/tools/subagent/types.d.ts +0 -84
  180. package/dist/types/types/agent-cache.d.ts +0 -70
  181. package/src/agents/AgentContext.js.map +0 -1
  182. package/src/agents/AgentContext.test.js.map +0 -1
  183. package/src/agents/__tests__/AgentContext.cacheTtl.live.test.ts +0 -259
  184. package/src/agents/__tests__/AgentContext.crossAgentTier1.live.test.ts +0 -264
  185. package/src/agents/__tests__/AgentContext.crossUserCache.live.test.ts +0 -342
  186. package/src/agents/__tests__/AgentContext.test.js.map +0 -1
  187. package/src/agents/__tests__/resolveStructuredOutputMode.test.js.map +0 -1
  188. package/src/common/enum.js.map +0 -1
  189. package/src/common/index.js.map +0 -1
  190. package/src/events.js.map +0 -1
  191. package/src/graphs/Graph.js.map +0 -1
  192. package/src/graphs/MultiAgentGraph.js.map +0 -1
  193. package/src/graphs/__tests__/structured-output.integration.test.js.map +0 -1
  194. package/src/graphs/__tests__/structured-output.test.js.map +0 -1
  195. package/src/graphs/contextManagement.e2e.test.js.map +0 -1
  196. package/src/graphs/contextManagement.test.js.map +0 -1
  197. package/src/graphs/handoffValidation.test.js.map +0 -1
  198. package/src/graphs/index.js.map +0 -1
  199. package/src/index.js.map +0 -1
  200. package/src/instrumentation.js.map +0 -1
  201. package/src/langchain/google-common.ts +0 -1
  202. package/src/langchain/index.ts +0 -8
  203. package/src/langchain/language_models/chat_models.ts +0 -1
  204. package/src/langchain/messages/tool.ts +0 -5
  205. package/src/langchain/messages.ts +0 -21
  206. package/src/langchain/openai.ts +0 -1
  207. package/src/langchain/prompts.ts +0 -1
  208. package/src/langchain/runnables.ts +0 -7
  209. package/src/langchain/tools.ts +0 -8
  210. package/src/langchain/utils/env.ts +0 -1
  211. package/src/llm/anthropic/index.js.map +0 -1
  212. package/src/llm/anthropic/types.js.map +0 -1
  213. package/src/llm/anthropic/utils/message_inputs.js.map +0 -1
  214. package/src/llm/anthropic/utils/message_outputs.js.map +0 -1
  215. package/src/llm/anthropic/utils/output_parsers.js.map +0 -1
  216. package/src/llm/anthropic/utils/server-tool-inputs.test.ts +0 -436
  217. package/src/llm/anthropic/utils/tools.js.map +0 -1
  218. package/src/llm/bedrock/__tests__/bedrock-caching.test.js.map +0 -1
  219. package/src/llm/bedrock/cacheSupport.test.ts +0 -99
  220. package/src/llm/bedrock/cacheSupport.ts +0 -53
  221. package/src/llm/bedrock/index.js.map +0 -1
  222. package/src/llm/bedrock/types.js.map +0 -1
  223. package/src/llm/bedrock/utils/index.js.map +0 -1
  224. package/src/llm/bedrock/utils/message_inputs.js.map +0 -1
  225. package/src/llm/bedrock/utils/message_outputs.js.map +0 -1
  226. package/src/llm/fake.js.map +0 -1
  227. package/src/llm/google/index.js.map +0 -1
  228. package/src/llm/google/types.js.map +0 -1
  229. package/src/llm/google/utils/common.js.map +0 -1
  230. package/src/llm/google/utils/tools.js.map +0 -1
  231. package/src/llm/google/utils/zod_to_genai_parameters.js.map +0 -1
  232. package/src/llm/openai/index.js.map +0 -1
  233. package/src/llm/openai/types.js.map +0 -1
  234. package/src/llm/openai/utils/index.js.map +0 -1
  235. package/src/llm/openai/utils/isReasoningModel.test.js.map +0 -1
  236. package/src/llm/openrouter/index.js.map +0 -1
  237. package/src/llm/openrouter/reasoning.test.js.map +0 -1
  238. package/src/llm/providers.js.map +0 -1
  239. package/src/llm/text.js.map +0 -1
  240. package/src/llm/vertexai/index.js.map +0 -1
  241. package/src/messages/__tests__/tools.test.js.map +0 -1
  242. package/src/messages/cache.js.map +0 -1
  243. package/src/messages/cache.test.js.map +0 -1
  244. package/src/messages/content.js.map +0 -1
  245. package/src/messages/content.test.js.map +0 -1
  246. package/src/messages/core.js.map +0 -1
  247. package/src/messages/ensureThinkingBlock.test.js.map +0 -1
  248. package/src/messages/format.js.map +0 -1
  249. package/src/messages/formatAgentMessages.test.js.map +0 -1
  250. package/src/messages/formatAgentMessages.tools.test.js.map +0 -1
  251. package/src/messages/formatMessage.test.js.map +0 -1
  252. package/src/messages/ids.js.map +0 -1
  253. package/src/messages/index.js.map +0 -1
  254. package/src/messages/labelContentByAgent.test.js.map +0 -1
  255. package/src/messages/prune.js.map +0 -1
  256. package/src/messages/reducer.js.map +0 -1
  257. package/src/messages/shiftIndexTokenCountMap.test.js.map +0 -1
  258. package/src/messages/summarize.js.map +0 -1
  259. package/src/messages/summarize.test.js.map +0 -1
  260. package/src/messages/tools.js.map +0 -1
  261. package/src/mockStream.js.map +0 -1
  262. package/src/prompts/collab.js.map +0 -1
  263. package/src/prompts/index.js.map +0 -1
  264. package/src/prompts/taskmanager.js.map +0 -1
  265. package/src/run.js.map +0 -1
  266. package/src/schemas/index.js.map +0 -1
  267. package/src/schemas/schema-preparation.test.js.map +0 -1
  268. package/src/schemas/validate.js.map +0 -1
  269. package/src/schemas/validate.test.js.map +0 -1
  270. package/src/scripts/abort.js.map +0 -1
  271. package/src/scripts/ant_web_search.js.map +0 -1
  272. package/src/scripts/ant_web_search_edge_case.js.map +0 -1
  273. package/src/scripts/ant_web_search_error_edge_case.js.map +0 -1
  274. package/src/scripts/args.js.map +0 -1
  275. package/src/scripts/bedrock-cache-debug.js.map +0 -1
  276. package/src/scripts/bedrock-content-aggregation-test.js.map +0 -1
  277. package/src/scripts/bedrock-merge-test.js.map +0 -1
  278. package/src/scripts/bedrock-parallel-tools-test.js.map +0 -1
  279. package/src/scripts/caching.js.map +0 -1
  280. package/src/scripts/cli.js.map +0 -1
  281. package/src/scripts/cli2.js.map +0 -1
  282. package/src/scripts/cli3.js.map +0 -1
  283. package/src/scripts/cli4.js.map +0 -1
  284. package/src/scripts/cli5.js.map +0 -1
  285. package/src/scripts/code_exec.js.map +0 -1
  286. package/src/scripts/code_exec_files.js.map +0 -1
  287. package/src/scripts/code_exec_multi_session.js.map +0 -1
  288. package/src/scripts/code_exec_ptc.js.map +0 -1
  289. package/src/scripts/code_exec_session.js.map +0 -1
  290. package/src/scripts/code_exec_simple.js.map +0 -1
  291. package/src/scripts/content.js.map +0 -1
  292. package/src/scripts/empty_input.js.map +0 -1
  293. package/src/scripts/handoff-test.js.map +0 -1
  294. package/src/scripts/image.js.map +0 -1
  295. package/src/scripts/memory.js.map +0 -1
  296. package/src/scripts/multi-agent-chain.js.map +0 -1
  297. package/src/scripts/multi-agent-conditional.js.map +0 -1
  298. package/src/scripts/multi-agent-document-review-chain.js.map +0 -1
  299. package/src/scripts/multi-agent-hybrid-flow.js.map +0 -1
  300. package/src/scripts/multi-agent-parallel-start.js.map +0 -1
  301. package/src/scripts/multi-agent-parallel.js.map +0 -1
  302. package/src/scripts/multi-agent-sequence.js.map +0 -1
  303. package/src/scripts/multi-agent-supervisor.js.map +0 -1
  304. package/src/scripts/multi-agent-test.js.map +0 -1
  305. package/src/scripts/parallel-asymmetric-tools-test.js.map +0 -1
  306. package/src/scripts/parallel-full-metadata-test.js.map +0 -1
  307. package/src/scripts/parallel-tools-test.js.map +0 -1
  308. package/src/scripts/programmatic_exec.js.map +0 -1
  309. package/src/scripts/programmatic_exec_agent.js.map +0 -1
  310. package/src/scripts/search.js.map +0 -1
  311. package/src/scripts/sequential-full-metadata-test.js.map +0 -1
  312. package/src/scripts/simple.js.map +0 -1
  313. package/src/scripts/single-agent-metadata-test.js.map +0 -1
  314. package/src/scripts/stream.js.map +0 -1
  315. package/src/scripts/test-custom-prompt-key.js.map +0 -1
  316. package/src/scripts/test-handoff-input.js.map +0 -1
  317. package/src/scripts/test-handoff-preamble.js.map +0 -1
  318. package/src/scripts/test-handoff-steering.js.map +0 -1
  319. package/src/scripts/test-multi-agent-list-handoff.js.map +0 -1
  320. package/src/scripts/test-parallel-agent-labeling.js.map +0 -1
  321. package/src/scripts/test-parallel-handoffs.js.map +0 -1
  322. package/src/scripts/test-thinking-handoff-bedrock.js.map +0 -1
  323. package/src/scripts/test-thinking-handoff.js.map +0 -1
  324. package/src/scripts/test-thinking-to-thinking-handoff-bedrock.js.map +0 -1
  325. package/src/scripts/test-tool-before-handoff-role-order.js.map +0 -1
  326. package/src/scripts/test-tools-before-handoff.js.map +0 -1
  327. package/src/scripts/test_code_api.js.map +0 -1
  328. package/src/scripts/thinking-bedrock.js.map +0 -1
  329. package/src/scripts/thinking-vertexai.js.map +0 -1
  330. package/src/scripts/thinking.js.map +0 -1
  331. package/src/scripts/tool_search.js.map +0 -1
  332. package/src/scripts/tools.js.map +0 -1
  333. package/src/specs/agent-handoffs-bedrock.integration.test.js.map +0 -1
  334. package/src/specs/agent-handoffs.test.js.map +0 -1
  335. package/src/specs/anthropic.simple.test.js.map +0 -1
  336. package/src/specs/azure.simple.test.js.map +0 -1
  337. package/src/specs/cache.simple.test.js.map +0 -1
  338. package/src/specs/custom-event-await.test.js.map +0 -1
  339. package/src/specs/deepseek.simple.test.js.map +0 -1
  340. package/src/specs/emergency-prune.test.js.map +0 -1
  341. package/src/specs/moonshot.simple.test.js.map +0 -1
  342. package/src/specs/observability.integration.test.js.map +0 -1
  343. package/src/specs/openai.simple.test.js.map +0 -1
  344. package/src/specs/openrouter.simple.test.js.map +0 -1
  345. package/src/specs/prune.test.js.map +0 -1
  346. package/src/specs/reasoning.test.js.map +0 -1
  347. package/src/specs/spec.utils.js.map +0 -1
  348. package/src/specs/thinking-handoff.test.js.map +0 -1
  349. package/src/specs/thinking-prune.test.js.map +0 -1
  350. package/src/specs/token-distribution-edge-case.test.js.map +0 -1
  351. package/src/specs/token-memoization.test.js.map +0 -1
  352. package/src/specs/tokens.test.js.map +0 -1
  353. package/src/specs/tool-error.test.js.map +0 -1
  354. package/src/splitStream.js.map +0 -1
  355. package/src/splitStream.test.js.map +0 -1
  356. package/src/stream.js.map +0 -1
  357. package/src/stream.test.js.map +0 -1
  358. package/src/test/mockTools.js.map +0 -1
  359. package/src/tools/BrowserTools.js.map +0 -1
  360. package/src/tools/Calculator.js.map +0 -1
  361. package/src/tools/Calculator.test.js.map +0 -1
  362. package/src/tools/CodeExecutor.js.map +0 -1
  363. package/src/tools/ProgrammaticToolCalling.js.map +0 -1
  364. package/src/tools/StreamingToolCallBuffer.js.map +0 -1
  365. package/src/tools/ToolNode.js.map +0 -1
  366. package/src/tools/ToolSearch.js.map +0 -1
  367. package/src/tools/__tests__/BrowserTools.test.js.map +0 -1
  368. package/src/tools/__tests__/ProgrammaticToolCalling.integration.test.js.map +0 -1
  369. package/src/tools/__tests__/ProgrammaticToolCalling.test.js.map +0 -1
  370. package/src/tools/__tests__/StreamingToolCallBuffer.test.js.map +0 -1
  371. package/src/tools/__tests__/ToolApproval.test.js.map +0 -1
  372. package/src/tools/__tests__/ToolNode.recovery.test.js.map +0 -1
  373. package/src/tools/__tests__/ToolNode.session.test.js.map +0 -1
  374. package/src/tools/__tests__/ToolSearch.integration.test.js.map +0 -1
  375. package/src/tools/__tests__/ToolSearch.test.js.map +0 -1
  376. package/src/tools/__tests__/handlers.test.js.map +0 -1
  377. package/src/tools/__tests__/truncation-recovery.integration.test.js.map +0 -1
  378. package/src/tools/handlers.js.map +0 -1
  379. package/src/tools/schema.js.map +0 -1
  380. package/src/tools/search/anthropic.js.map +0 -1
  381. package/src/tools/search/content.js.map +0 -1
  382. package/src/tools/search/content.test.js.map +0 -1
  383. package/src/tools/search/firecrawl.js.map +0 -1
  384. package/src/tools/search/format.js.map +0 -1
  385. package/src/tools/search/highlights.js.map +0 -1
  386. package/src/tools/search/index.js.map +0 -1
  387. package/src/tools/search/jina-reranker.test.js.map +0 -1
  388. package/src/tools/search/rerankers.js.map +0 -1
  389. package/src/tools/search/schema.js.map +0 -1
  390. package/src/tools/search/search.js.map +0 -1
  391. package/src/tools/search/serper-scraper.js.map +0 -1
  392. package/src/tools/search/tavily-scraper.ts +0 -235
  393. package/src/tools/search/tavily-search.ts +0 -424
  394. package/src/tools/search/tavily.test.ts +0 -965
  395. package/src/tools/search/test.js.map +0 -1
  396. package/src/tools/search/tool.js.map +0 -1
  397. package/src/tools/search/types.js.map +0 -1
  398. package/src/tools/search/utils.js.map +0 -1
  399. package/src/tools/subagent/types.test.ts +0 -70
  400. package/src/tools/subagent/types.ts +0 -115
  401. package/src/types/agent-cache.ts +0 -73
  402. package/src/types/graph.js.map +0 -1
  403. package/src/types/graph.test.js.map +0 -1
  404. package/src/types/index.js.map +0 -1
  405. package/src/types/llm.js.map +0 -1
  406. package/src/types/messages.js.map +0 -1
  407. package/src/types/run.js.map +0 -1
  408. package/src/types/stream.js.map +0 -1
  409. package/src/types/tools.js.map +0 -1
  410. package/src/utils/contextAnalytics.js.map +0 -1
  411. package/src/utils/contextAnalytics.test.js.map +0 -1
  412. package/src/utils/events.js.map +0 -1
  413. package/src/utils/graph.js.map +0 -1
  414. package/src/utils/handlers.js.map +0 -1
  415. package/src/utils/index.js.map +0 -1
  416. package/src/utils/llm.js.map +0 -1
  417. package/src/utils/llmConfig.js.map +0 -1
  418. package/src/utils/logging.js.map +0 -1
  419. package/src/utils/misc.js.map +0 -1
  420. package/src/utils/run.js.map +0 -1
  421. package/src/utils/schema.js.map +0 -1
  422. package/src/utils/title.js.map +0 -1
  423. package/src/utils/tokens.js.map +0 -1
  424. package/src/utils/toonFormat.js.map +0 -1
@@ -1,424 +0,0 @@
1
- import axios from 'axios';
2
- import type * as t from './types';
3
-
4
- const DEFAULT_TAVILY_TIMEOUT = 15000;
5
-
6
- const TAVILY_COUNTRY_ALIASES: Record<string, string> = {
7
- ba: 'bosnia and herzegovina',
8
- cg: 'congo',
9
- cz: 'czech republic',
10
- gb: 'united kingdom',
11
- mm: 'myanmar',
12
- tr: 'turkey',
13
- tt: 'trinidad and tobago',
14
- uk: 'united kingdom',
15
- };
16
-
17
- const TAVILY_SUPPORTED_COUNTRIES = new Set([
18
- 'afghanistan',
19
- 'albania',
20
- 'algeria',
21
- 'andorra',
22
- 'angola',
23
- 'argentina',
24
- 'armenia',
25
- 'australia',
26
- 'austria',
27
- 'azerbaijan',
28
- 'bahamas',
29
- 'bahrain',
30
- 'bangladesh',
31
- 'barbados',
32
- 'belarus',
33
- 'belgium',
34
- 'belize',
35
- 'benin',
36
- 'bhutan',
37
- 'bolivia',
38
- 'bosnia and herzegovina',
39
- 'botswana',
40
- 'brazil',
41
- 'brunei',
42
- 'bulgaria',
43
- 'burkina faso',
44
- 'burundi',
45
- 'cambodia',
46
- 'cameroon',
47
- 'canada',
48
- 'cape verde',
49
- 'central african republic',
50
- 'chad',
51
- 'chile',
52
- 'china',
53
- 'colombia',
54
- 'comoros',
55
- 'congo',
56
- 'costa rica',
57
- 'croatia',
58
- 'cuba',
59
- 'cyprus',
60
- 'czech republic',
61
- 'denmark',
62
- 'djibouti',
63
- 'dominican republic',
64
- 'ecuador',
65
- 'egypt',
66
- 'el salvador',
67
- 'equatorial guinea',
68
- 'eritrea',
69
- 'estonia',
70
- 'ethiopia',
71
- 'fiji',
72
- 'finland',
73
- 'france',
74
- 'gabon',
75
- 'gambia',
76
- 'georgia',
77
- 'germany',
78
- 'ghana',
79
- 'greece',
80
- 'guatemala',
81
- 'guinea',
82
- 'haiti',
83
- 'honduras',
84
- 'hungary',
85
- 'iceland',
86
- 'india',
87
- 'indonesia',
88
- 'iran',
89
- 'iraq',
90
- 'ireland',
91
- 'israel',
92
- 'italy',
93
- 'jamaica',
94
- 'japan',
95
- 'jordan',
96
- 'kazakhstan',
97
- 'kenya',
98
- 'kuwait',
99
- 'kyrgyzstan',
100
- 'latvia',
101
- 'lebanon',
102
- 'lesotho',
103
- 'liberia',
104
- 'libya',
105
- 'liechtenstein',
106
- 'lithuania',
107
- 'luxembourg',
108
- 'madagascar',
109
- 'malawi',
110
- 'malaysia',
111
- 'maldives',
112
- 'mali',
113
- 'malta',
114
- 'mauritania',
115
- 'mauritius',
116
- 'mexico',
117
- 'moldova',
118
- 'monaco',
119
- 'mongolia',
120
- 'montenegro',
121
- 'morocco',
122
- 'mozambique',
123
- 'myanmar',
124
- 'namibia',
125
- 'nepal',
126
- 'netherlands',
127
- 'new zealand',
128
- 'nicaragua',
129
- 'niger',
130
- 'nigeria',
131
- 'north korea',
132
- 'north macedonia',
133
- 'norway',
134
- 'oman',
135
- 'pakistan',
136
- 'panama',
137
- 'papua new guinea',
138
- 'paraguay',
139
- 'peru',
140
- 'philippines',
141
- 'poland',
142
- 'portugal',
143
- 'qatar',
144
- 'romania',
145
- 'russia',
146
- 'rwanda',
147
- 'saudi arabia',
148
- 'senegal',
149
- 'serbia',
150
- 'singapore',
151
- 'slovakia',
152
- 'slovenia',
153
- 'somalia',
154
- 'south africa',
155
- 'south korea',
156
- 'south sudan',
157
- 'spain',
158
- 'sri lanka',
159
- 'sudan',
160
- 'sweden',
161
- 'switzerland',
162
- 'syria',
163
- 'taiwan',
164
- 'tajikistan',
165
- 'tanzania',
166
- 'thailand',
167
- 'togo',
168
- 'trinidad and tobago',
169
- 'tunisia',
170
- 'turkey',
171
- 'turkmenistan',
172
- 'uganda',
173
- 'ukraine',
174
- 'united arab emirates',
175
- 'united kingdom',
176
- 'united states',
177
- 'uruguay',
178
- 'uzbekistan',
179
- 'venezuela',
180
- 'vietnam',
181
- 'yemen',
182
- 'zambia',
183
- 'zimbabwe',
184
- ]);
185
-
186
- const TAVILY_REGION_NAMES = new Intl.DisplayNames(['en'], {
187
- type: 'region',
188
- });
189
-
190
- const normalizeTavilyCountryName = (country: string): string =>
191
- country
192
- .toLowerCase()
193
- .replace(/\s*\([^)]*\)/g, '')
194
- .replace(/\s*&\s*/g, ' and ')
195
- .normalize('NFD')
196
- .replace(/\p{Diacritic}/gu, '');
197
-
198
- const normalizeTavilyCountry = (country?: string): string | undefined => {
199
- const normalizedCountry = country?.trim().toLowerCase();
200
- if (normalizedCountry == null || normalizedCountry === '') {
201
- return undefined;
202
- }
203
-
204
- const countryAlias = TAVILY_COUNTRY_ALIASES[normalizedCountry];
205
- if (countryAlias != null) {
206
- return TAVILY_SUPPORTED_COUNTRIES.has(countryAlias)
207
- ? countryAlias
208
- : undefined;
209
- }
210
-
211
- if (/^[a-z]{2}$/.test(normalizedCountry)) {
212
- const regionName = TAVILY_REGION_NAMES.of(normalizedCountry.toUpperCase());
213
- if (regionName == null) {
214
- return undefined;
215
- }
216
- const countryName = normalizeTavilyCountryName(regionName);
217
- return TAVILY_SUPPORTED_COUNTRIES.has(countryName)
218
- ? countryName
219
- : undefined;
220
- }
221
-
222
- const countryName = normalizeTavilyCountryName(normalizedCountry);
223
- return TAVILY_SUPPORTED_COUNTRIES.has(countryName) ? countryName : undefined;
224
- };
225
-
226
- const normalizeTavilyTimeRange = (
227
- timeRange?: t.TavilyTimeRangeInput
228
- ): t.TavilyTimeRange | undefined => {
229
- switch (timeRange) {
230
- case 'h':
231
- case 'd':
232
- return 'day';
233
- case 'w':
234
- return 'week';
235
- case 'm':
236
- return 'month';
237
- case 'y':
238
- return 'year';
239
- case 'day':
240
- case 'week':
241
- case 'month':
242
- case 'year':
243
- return timeRange;
244
- default:
245
- return undefined;
246
- }
247
- };
248
-
249
- const getHostname = (link: string): string => {
250
- try {
251
- return new URL(link).hostname;
252
- } catch {
253
- return link;
254
- }
255
- };
256
-
257
- export const createTavilyAPI = (
258
- apiKey?: string,
259
- apiUrl?: string,
260
- options?: t.TavilySearchOptions
261
- ): {
262
- getSources: (params: t.GetSourcesParams) => Promise<t.SearchResult>;
263
- } => {
264
- const config = {
265
- apiKey: apiKey ?? process.env.TAVILY_API_KEY,
266
- apiUrl:
267
- apiUrl ??
268
- process.env.TAVILY_SEARCH_URL ??
269
- 'https://api.tavily.com/search',
270
- timeout: options?.timeout ?? DEFAULT_TAVILY_TIMEOUT,
271
- };
272
-
273
- if (config.apiKey == null || config.apiKey === '') {
274
- throw new Error('TAVILY_API_KEY is required for Tavily API');
275
- }
276
-
277
- const getSources = async ({
278
- query,
279
- date,
280
- country,
281
- numResults = 8,
282
- type,
283
- news,
284
- }: t.GetSourcesParams): Promise<t.SearchResult> => {
285
- if (!query.trim()) {
286
- return { success: false, error: 'Query cannot be empty' };
287
- }
288
-
289
- try {
290
- const timeRange =
291
- normalizeTavilyTimeRange(options?.timeRange) ??
292
- (date != null ? (normalizeTavilyTimeRange(date) ?? 'day') : undefined);
293
- const topic =
294
- news === true || type === 'news'
295
- ? 'news'
296
- : (options?.topic ?? 'general');
297
- const maxResults = options?.maxResults ?? numResults;
298
- const searchDepth = options?.searchDepth ?? 'basic';
299
-
300
- const payload: t.TavilySearchPayload = {
301
- query,
302
- search_depth: searchDepth,
303
- topic,
304
- max_results: Math.min(Math.max(1, maxResults), 20),
305
- };
306
-
307
- if (
308
- options?.safeSearch != null &&
309
- searchDepth !== 'fast' &&
310
- searchDepth !== 'ultra-fast'
311
- ) {
312
- payload.safe_search = options.safeSearch;
313
- }
314
- if (timeRange != null) {
315
- payload.time_range = timeRange;
316
- }
317
- const tavilyCountry =
318
- topic === 'general' ? normalizeTavilyCountry(country) : undefined;
319
- if (tavilyCountry != null) {
320
- payload.country = tavilyCountry;
321
- }
322
- if (type === 'images' || options?.includeImages) {
323
- payload.include_images = true;
324
- }
325
- if (options?.includeAnswer != null) {
326
- payload.include_answer = options.includeAnswer;
327
- }
328
- if (options?.includeRawContent != null) {
329
- payload.include_raw_content = options.includeRawContent;
330
- }
331
- if (
332
- options?.includeDomains != null &&
333
- options.includeDomains.length > 0
334
- ) {
335
- payload.include_domains = options.includeDomains;
336
- }
337
- if (
338
- options?.excludeDomains != null &&
339
- options.excludeDomains.length > 0
340
- ) {
341
- payload.exclude_domains = options.excludeDomains;
342
- }
343
- if (options?.includeImageDescriptions != null) {
344
- payload.include_image_descriptions = options.includeImageDescriptions;
345
- }
346
- if (options?.includeFavicon != null) {
347
- payload.include_favicon = options.includeFavicon;
348
- }
349
- if (options?.chunksPerSource != null && searchDepth === 'advanced') {
350
- payload.chunks_per_source = options.chunksPerSource;
351
- }
352
-
353
- const response = await axios.post<t.TavilySearchResponse>(
354
- config.apiUrl,
355
- payload,
356
- {
357
- headers: {
358
- Authorization: `Bearer ${config.apiKey}`,
359
- 'Content-Type': 'application/json',
360
- },
361
- timeout: config.timeout,
362
- }
363
- );
364
-
365
- const data = response.data;
366
-
367
- const organicResults: t.OrganicResult[] = (data.results ?? []).map(
368
- (result: t.TavilySearchResult) => ({
369
- title: result.title ?? '',
370
- link: result.url ?? '',
371
- snippet: result.content ?? '',
372
- date: result.published_date,
373
- })
374
- );
375
-
376
- const imageResults: t.ImageResult[] = Array.isArray(data.images)
377
- ? data.images.slice(0, 6).reduce<t.ImageResult[]>((acc, image) => {
378
- const imageUrl = typeof image === 'string' ? image : image.url;
379
- if (imageUrl == null || imageUrl === '') {
380
- return acc;
381
- }
382
- acc.push({
383
- imageUrl,
384
- title: typeof image === 'string' ? undefined : image.description,
385
- position: acc.length + 1,
386
- });
387
- return acc;
388
- }, [])
389
- : [];
390
-
391
- const newsResults: t.NewsResult[] =
392
- topic === 'news'
393
- ? organicResults.map((r) => ({
394
- title: r.title,
395
- link: r.link,
396
- snippet: r.snippet,
397
- date: r.date,
398
- source: getHostname(r.link),
399
- }))
400
- : [];
401
-
402
- const results: t.SearchResultData = {
403
- organic: organicResults,
404
- images: imageResults,
405
- topStories: [],
406
- videos: [],
407
- news: newsResults,
408
- answerBox: data.answer != null ? { snippet: data.answer } : undefined,
409
- relatedSearches: [],
410
- };
411
-
412
- return { success: true, data: results };
413
- } catch (error) {
414
- const errorMessage =
415
- error instanceof Error ? error.message : String(error);
416
- return {
417
- success: false,
418
- error: `Tavily API request failed: ${errorMessage}`,
419
- };
420
- }
421
- };
422
-
423
- return { getSources };
424
- };