@librechat/agents 3.4.6 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1027) hide show
  1. package/dist/cjs/agents/AgentContext.cjs +0 -356
  2. package/dist/cjs/agents/AgentContext.cjs.map +1 -1
  3. package/dist/cjs/agents/projection.cjs +0 -9
  4. package/dist/cjs/agents/projection.cjs.map +1 -1
  5. package/dist/cjs/common/constants.cjs +0 -26
  6. package/dist/cjs/common/constants.cjs.map +1 -1
  7. package/dist/cjs/common/enum.cjs +0 -85
  8. package/dist/cjs/common/enum.cjs.map +1 -1
  9. package/dist/cjs/events.cjs +0 -14
  10. package/dist/cjs/events.cjs.map +1 -1
  11. package/dist/cjs/graphs/Graph.cjs +1 -909
  12. package/dist/cjs/graphs/Graph.cjs.map +1 -1
  13. package/dist/cjs/graphs/MultiAgentGraph.cjs +7 -272
  14. package/dist/cjs/graphs/MultiAgentGraph.cjs.map +1 -1
  15. package/dist/cjs/graphs/applyGraphRuntimeConfig.cjs.map +1 -1
  16. package/dist/cjs/graphs/createGraph.cjs.map +1 -1
  17. package/dist/cjs/hitl/askUserQuestion.cjs +0 -53
  18. package/dist/cjs/hitl/askUserQuestion.cjs.map +1 -1
  19. package/dist/cjs/hitl/askUserQuestions.cjs +0 -20
  20. package/dist/cjs/hitl/askUserQuestions.cjs.map +1 -1
  21. package/dist/cjs/hitl/askUserQuestionsInterrupt.cjs +0 -6
  22. package/dist/cjs/hitl/askUserQuestionsInterrupt.cjs.map +1 -1
  23. package/dist/cjs/hooks/HookRegistry.cjs +0 -127
  24. package/dist/cjs/hooks/HookRegistry.cjs.map +1 -1
  25. package/dist/cjs/hooks/createToolPolicyHook.cjs +0 -38
  26. package/dist/cjs/hooks/createToolPolicyHook.cjs.map +1 -1
  27. package/dist/cjs/hooks/createWorkspacePolicyHook.cjs +0 -77
  28. package/dist/cjs/hooks/createWorkspacePolicyHook.cjs.map +1 -1
  29. package/dist/cjs/hooks/executeHooks.cjs +0 -79
  30. package/dist/cjs/hooks/executeHooks.cjs.map +1 -1
  31. package/dist/cjs/hooks/index.cjs +0 -16
  32. package/dist/cjs/hooks/index.cjs.map +1 -1
  33. package/dist/cjs/hooks/matchers.cjs +0 -104
  34. package/dist/cjs/hooks/matchers.cjs.map +1 -1
  35. package/dist/cjs/hooks/types.cjs +0 -8
  36. package/dist/cjs/hooks/types.cjs.map +1 -1
  37. package/dist/cjs/instrumentation.cjs +0 -14
  38. package/dist/cjs/instrumentation.cjs.map +1 -1
  39. package/dist/cjs/langfuse.cjs +0 -75
  40. package/dist/cjs/langfuse.cjs.map +1 -1
  41. package/dist/cjs/langfuseConfig.cjs.map +1 -1
  42. package/dist/cjs/langfuseRuntimeContext.cjs +0 -13
  43. package/dist/cjs/langfuseRuntimeContext.cjs.map +1 -1
  44. package/dist/cjs/langfuseRuntimeScope.cjs +0 -4
  45. package/dist/cjs/langfuseRuntimeScope.cjs.map +1 -1
  46. package/dist/cjs/langfuseSpanRegistry.cjs +0 -28
  47. package/dist/cjs/langfuseSpanRegistry.cjs.map +1 -1
  48. package/dist/cjs/langfuseToolOutputTracing.cjs +0 -3
  49. package/dist/cjs/langfuseToolOutputTracing.cjs.map +1 -1
  50. package/dist/cjs/langfuseTraceShaping.cjs +0 -74
  51. package/dist/cjs/langfuseTraceShaping.cjs.map +1 -1
  52. package/dist/cjs/llm/anthropic/index.cjs +0 -3
  53. package/dist/cjs/llm/anthropic/index.cjs.map +1 -1
  54. package/dist/cjs/llm/anthropic/types.cjs.map +1 -1
  55. package/dist/cjs/llm/anthropic/utils/message_inputs.cjs +1 -111
  56. package/dist/cjs/llm/anthropic/utils/message_inputs.cjs.map +1 -1
  57. package/dist/cjs/llm/anthropic/utils/message_outputs.cjs +0 -1
  58. package/dist/cjs/llm/anthropic/utils/message_outputs.cjs.map +1 -1
  59. package/dist/cjs/llm/anthropic/utils/stream_events.cjs +0 -8
  60. package/dist/cjs/llm/anthropic/utils/stream_events.cjs.map +1 -1
  61. package/dist/cjs/llm/anthropic/utils/tools.cjs.map +1 -1
  62. package/dist/cjs/llm/bedrock/cachePoints.cjs.map +1 -1
  63. package/dist/cjs/llm/bedrock/index.cjs +1 -95
  64. package/dist/cjs/llm/bedrock/index.cjs.map +1 -1
  65. package/dist/cjs/llm/bedrock/toolCache.cjs.map +1 -1
  66. package/dist/cjs/llm/bedrock/utils/message_inputs.cjs +0 -78
  67. package/dist/cjs/llm/bedrock/utils/message_inputs.cjs.map +1 -1
  68. package/dist/cjs/llm/bedrock/utils/message_outputs.cjs +0 -24
  69. package/dist/cjs/llm/bedrock/utils/message_outputs.cjs.map +1 -1
  70. package/dist/cjs/llm/contextOverflowRecovery.cjs +0 -62
  71. package/dist/cjs/llm/contextOverflowRecovery.cjs.map +1 -1
  72. package/dist/cjs/llm/fake.cjs.map +1 -1
  73. package/dist/cjs/llm/google/index.cjs +2 -21
  74. package/dist/cjs/llm/google/index.cjs.map +1 -1
  75. package/dist/cjs/llm/google/utils/common.cjs +5 -35
  76. package/dist/cjs/llm/google/utils/common.cjs.map +1 -1
  77. package/dist/cjs/llm/init.cjs +0 -9
  78. package/dist/cjs/llm/init.cjs.map +1 -1
  79. package/dist/cjs/llm/invoke.cjs +1 -270
  80. package/dist/cjs/llm/invoke.cjs.map +1 -1
  81. package/dist/cjs/llm/mistral/index.cjs.map +1 -1
  82. package/dist/cjs/llm/openai/index.cjs +0 -99
  83. package/dist/cjs/llm/openai/index.cjs.map +1 -1
  84. package/dist/cjs/llm/openai/streamMetadata.cjs +0 -21
  85. package/dist/cjs/llm/openai/streamMetadata.cjs.map +1 -1
  86. package/dist/cjs/llm/openai/utils/index.cjs.map +1 -1
  87. package/dist/cjs/llm/openrouter/index.cjs +0 -1
  88. package/dist/cjs/llm/openrouter/index.cjs.map +1 -1
  89. package/dist/cjs/llm/openrouter/toolCache.cjs +0 -6
  90. package/dist/cjs/llm/openrouter/toolCache.cjs.map +1 -1
  91. package/dist/cjs/llm/preempt.cjs +0 -75
  92. package/dist/cjs/llm/preempt.cjs.map +1 -1
  93. package/dist/cjs/llm/providers.cjs.map +1 -1
  94. package/dist/cjs/llm/request.cjs +0 -10
  95. package/dist/cjs/llm/request.cjs.map +1 -1
  96. package/dist/cjs/llm/stream/chunkAdapters.cjs +0 -62
  97. package/dist/cjs/llm/stream/chunkAdapters.cjs.map +1 -1
  98. package/dist/cjs/llm/stream/smoother.cjs +0 -58
  99. package/dist/cjs/llm/stream/smoother.cjs.map +1 -1
  100. package/dist/cjs/llm/streamLimits.cjs +4 -293
  101. package/dist/cjs/llm/streamLimits.cjs.map +1 -1
  102. package/dist/cjs/llm/truncation.cjs +0 -36
  103. package/dist/cjs/llm/truncation.cjs.map +1 -1
  104. package/dist/cjs/llm/vertexai/index.cjs +0 -330
  105. package/dist/cjs/llm/vertexai/index.cjs.map +1 -1
  106. package/dist/cjs/messages/alternation.cjs +0 -43
  107. package/dist/cjs/messages/alternation.cjs.map +1 -1
  108. package/dist/cjs/messages/anthropicToolCache.cjs +0 -45
  109. package/dist/cjs/messages/anthropicToolCache.cjs.map +1 -1
  110. package/dist/cjs/messages/assistantPhase.cjs +0 -12
  111. package/dist/cjs/messages/assistantPhase.cjs.map +1 -1
  112. package/dist/cjs/messages/budget.cjs +0 -9
  113. package/dist/cjs/messages/budget.cjs.map +1 -1
  114. package/dist/cjs/messages/cache.cjs +0 -172
  115. package/dist/cjs/messages/cache.cjs.map +1 -1
  116. package/dist/cjs/messages/content.cjs +0 -9
  117. package/dist/cjs/messages/content.cjs.map +1 -1
  118. package/dist/cjs/messages/contextPruning.cjs +0 -15
  119. package/dist/cjs/messages/contextPruning.cjs.map +1 -1
  120. package/dist/cjs/messages/contextPruningSettings.cjs +0 -3
  121. package/dist/cjs/messages/contextPruningSettings.cjs.map +1 -1
  122. package/dist/cjs/messages/core.cjs +0 -48
  123. package/dist/cjs/messages/core.cjs.map +1 -1
  124. package/dist/cjs/messages/format.cjs +1 -345
  125. package/dist/cjs/messages/format.cjs.map +1 -1
  126. package/dist/cjs/messages/handoffCue.cjs +0 -36
  127. package/dist/cjs/messages/handoffCue.cjs.map +1 -1
  128. package/dist/cjs/messages/ids.cjs.map +1 -1
  129. package/dist/cjs/messages/injected.cjs +0 -33
  130. package/dist/cjs/messages/injected.cjs.map +1 -1
  131. package/dist/cjs/messages/langchain.cjs +0 -14
  132. package/dist/cjs/messages/langchain.cjs.map +1 -1
  133. package/dist/cjs/messages/prune.cjs +1 -184
  134. package/dist/cjs/messages/prune.cjs.map +1 -1
  135. package/dist/cjs/messages/recency.cjs +0 -32
  136. package/dist/cjs/messages/recency.cjs.map +1 -1
  137. package/dist/cjs/messages/reducer.cjs +0 -30
  138. package/dist/cjs/messages/reducer.cjs.map +1 -1
  139. package/dist/cjs/messages/tools.cjs +0 -14
  140. package/dist/cjs/messages/tools.cjs.map +1 -1
  141. package/dist/cjs/openai/index.cjs.map +1 -1
  142. package/dist/cjs/prompts/activityLabel.cjs +9 -79
  143. package/dist/cjs/prompts/activityLabel.cjs.map +1 -1
  144. package/dist/cjs/responses/index.cjs.map +1 -1
  145. package/dist/cjs/run.cjs +2 -538
  146. package/dist/cjs/run.cjs.map +1 -1
  147. package/dist/cjs/session/AgentSession.cjs +1 -17
  148. package/dist/cjs/session/AgentSession.cjs.map +1 -1
  149. package/dist/cjs/session/JsonlSessionStore.cjs.map +1 -1
  150. package/dist/cjs/session/handlers.cjs +0 -7
  151. package/dist/cjs/session/handlers.cjs.map +1 -1
  152. package/dist/cjs/session/ids.cjs.map +1 -1
  153. package/dist/cjs/session/messageSerialization.cjs +0 -4
  154. package/dist/cjs/session/messageSerialization.cjs.map +1 -1
  155. package/dist/cjs/stream.cjs +1 -93
  156. package/dist/cjs/stream.cjs.map +1 -1
  157. package/dist/cjs/summarization/index.cjs +0 -27
  158. package/dist/cjs/summarization/index.cjs.map +1 -1
  159. package/dist/cjs/summarization/node.cjs +0 -273
  160. package/dist/cjs/summarization/node.cjs.map +1 -1
  161. package/dist/cjs/tools/BashExecutor.cjs +0 -35
  162. package/dist/cjs/tools/BashExecutor.cjs.map +1 -1
  163. package/dist/cjs/tools/BashProgrammaticToolCalling.cjs +0 -24
  164. package/dist/cjs/tools/BashProgrammaticToolCalling.cjs.map +1 -1
  165. package/dist/cjs/tools/Calculator.cjs.map +1 -1
  166. package/dist/cjs/tools/CodeExecutor.cjs +0 -13
  167. package/dist/cjs/tools/CodeExecutor.cjs.map +1 -1
  168. package/dist/cjs/tools/CodeSessionFileSummary.cjs.map +1 -1
  169. package/dist/cjs/tools/ProgrammaticToolCalling.cjs +0 -101
  170. package/dist/cjs/tools/ProgrammaticToolCalling.cjs.map +1 -1
  171. package/dist/cjs/tools/ReadFile.cjs.map +1 -1
  172. package/dist/cjs/tools/SkillTool.cjs +0 -5
  173. package/dist/cjs/tools/SkillTool.cjs.map +1 -1
  174. package/dist/cjs/tools/SubagentTool.cjs +0 -10
  175. package/dist/cjs/tools/SubagentTool.cjs.map +1 -1
  176. package/dist/cjs/tools/ToolNode.cjs +6 -1038
  177. package/dist/cjs/tools/ToolNode.cjs.map +1 -1
  178. package/dist/cjs/tools/ToolSearch.cjs +0 -179
  179. package/dist/cjs/tools/ToolSearch.cjs.map +1 -1
  180. package/dist/cjs/tools/cloudflare/CloudflareBridgeRuntime.cjs.map +1 -1
  181. package/dist/cjs/tools/cloudflare/CloudflareProgrammaticToolCalling.cjs.map +1 -1
  182. package/dist/cjs/tools/cloudflare/CloudflareSandboxExecutionEngine.cjs +0 -39
  183. package/dist/cjs/tools/cloudflare/CloudflareSandboxExecutionEngine.cjs.map +1 -1
  184. package/dist/cjs/tools/cloudflare/CloudflareSandboxTools.cjs.map +1 -1
  185. package/dist/cjs/tools/eagerEventExecution.cjs +0 -6
  186. package/dist/cjs/tools/eagerEventExecution.cjs.map +1 -1
  187. package/dist/cjs/tools/handlers.cjs +1 -41
  188. package/dist/cjs/tools/handlers.cjs.map +1 -1
  189. package/dist/cjs/tools/intentArg.cjs +1 -132
  190. package/dist/cjs/tools/intentArg.cjs.map +1 -1
  191. package/dist/cjs/tools/local/CompileCheckTool.cjs +0 -25
  192. package/dist/cjs/tools/local/CompileCheckTool.cjs.map +1 -1
  193. package/dist/cjs/tools/local/FileCheckpointer.cjs +0 -23
  194. package/dist/cjs/tools/local/FileCheckpointer.cjs.map +1 -1
  195. package/dist/cjs/tools/local/LocalCodingTools.cjs +0 -80
  196. package/dist/cjs/tools/local/LocalCodingTools.cjs.map +1 -1
  197. package/dist/cjs/tools/local/LocalExecutionEngine.cjs +0 -126
  198. package/dist/cjs/tools/local/LocalExecutionEngine.cjs.map +1 -1
  199. package/dist/cjs/tools/local/LocalExecutionTools.cjs.map +1 -1
  200. package/dist/cjs/tools/local/LocalProgrammaticToolCalling.cjs +0 -12
  201. package/dist/cjs/tools/local/LocalProgrammaticToolCalling.cjs.map +1 -1
  202. package/dist/cjs/tools/local/attachments.cjs +0 -44
  203. package/dist/cjs/tools/local/attachments.cjs.map +1 -1
  204. package/dist/cjs/tools/local/bashAst.cjs +0 -16
  205. package/dist/cjs/tools/local/bashAst.cjs.map +1 -1
  206. package/dist/cjs/tools/local/editStrategies.cjs +0 -14
  207. package/dist/cjs/tools/local/editStrategies.cjs.map +1 -1
  208. package/dist/cjs/tools/local/resolveLocalExecutionTools.cjs.map +1 -1
  209. package/dist/cjs/tools/local/syntaxCheck.cjs +0 -31
  210. package/dist/cjs/tools/local/syntaxCheck.cjs.map +1 -1
  211. package/dist/cjs/tools/local/textEncoding.cjs +0 -11
  212. package/dist/cjs/tools/local/textEncoding.cjs.map +1 -1
  213. package/dist/cjs/tools/local/workspaceFS.cjs +0 -33
  214. package/dist/cjs/tools/local/workspaceFS.cjs.map +1 -1
  215. package/dist/cjs/tools/ptcTimeout.cjs.map +1 -1
  216. package/dist/cjs/tools/schema.cjs +0 -8
  217. package/dist/cjs/tools/schema.cjs.map +1 -1
  218. package/dist/cjs/tools/search/anthropic.cjs +0 -9
  219. package/dist/cjs/tools/search/anthropic.cjs.map +1 -1
  220. package/dist/cjs/tools/search/content.cjs.map +1 -1
  221. package/dist/cjs/tools/search/crw-scraper.cjs +0 -33
  222. package/dist/cjs/tools/search/crw-scraper.cjs.map +1 -1
  223. package/dist/cjs/tools/search/crw-search.cjs +0 -2
  224. package/dist/cjs/tools/search/crw-search.cjs.map +1 -1
  225. package/dist/cjs/tools/search/firecrawl.cjs +0 -25
  226. package/dist/cjs/tools/search/firecrawl.cjs.map +1 -1
  227. package/dist/cjs/tools/search/format.cjs +0 -30
  228. package/dist/cjs/tools/search/format.cjs.map +1 -1
  229. package/dist/cjs/tools/search/highlights.cjs +0 -16
  230. package/dist/cjs/tools/search/highlights.cjs.map +1 -1
  231. package/dist/cjs/tools/search/keenable-scraper.cjs +0 -8
  232. package/dist/cjs/tools/search/keenable-scraper.cjs.map +1 -1
  233. package/dist/cjs/tools/search/keenable-search.cjs +0 -7
  234. package/dist/cjs/tools/search/keenable-search.cjs.map +1 -1
  235. package/dist/cjs/tools/search/rerankers.cjs +0 -35
  236. package/dist/cjs/tools/search/rerankers.cjs.map +1 -1
  237. package/dist/cjs/tools/search/schema.cjs +0 -1
  238. package/dist/cjs/tools/search/schema.cjs.map +1 -1
  239. package/dist/cjs/tools/search/search.cjs +1 -14
  240. package/dist/cjs/tools/search/search.cjs.map +1 -1
  241. package/dist/cjs/tools/search/serper-scraper.cjs +0 -46
  242. package/dist/cjs/tools/search/serper-scraper.cjs.map +1 -1
  243. package/dist/cjs/tools/search/tavily-scraper.cjs.map +1 -1
  244. package/dist/cjs/tools/search/tavily-search.cjs.map +1 -1
  245. package/dist/cjs/tools/search/tool.cjs +0 -25
  246. package/dist/cjs/tools/search/tool.cjs.map +1 -1
  247. package/dist/cjs/tools/search/utils.cjs +0 -8
  248. package/dist/cjs/tools/search/utils.cjs.map +1 -1
  249. package/dist/cjs/tools/skillCatalog.cjs +0 -6
  250. package/dist/cjs/tools/skillCatalog.cjs.map +1 -1
  251. package/dist/cjs/tools/streamedToolCallSeals.cjs +0 -6
  252. package/dist/cjs/tools/streamedToolCallSeals.cjs.map +1 -1
  253. package/dist/cjs/tools/subagent/SubagentExecutionRegistry.cjs +0 -2
  254. package/dist/cjs/tools/subagent/SubagentExecutionRegistry.cjs.map +1 -1
  255. package/dist/cjs/tools/subagent/SubagentExecutor.cjs +3 -213
  256. package/dist/cjs/tools/subagent/SubagentExecutor.cjs.map +1 -1
  257. package/dist/cjs/tools/subagent/SubagentReplay.cjs.map +1 -1
  258. package/dist/cjs/tools/subagent/childGraphConfig.cjs +0 -4
  259. package/dist/cjs/tools/subagent/childGraphConfig.cjs.map +1 -1
  260. package/dist/cjs/tools/subagent/runtimeLimits.cjs.map +1 -1
  261. package/dist/cjs/tools/toolOutputReferences.cjs +1 -322
  262. package/dist/cjs/tools/toolOutputReferences.cjs.map +1 -1
  263. package/dist/cjs/types/hitl.cjs +0 -5
  264. package/dist/cjs/types/hitl.cjs.map +1 -1
  265. package/dist/cjs/utils/callbacks.cjs.map +1 -1
  266. package/dist/cjs/utils/errors.cjs +14 -165
  267. package/dist/cjs/utils/errors.cjs.map +1 -1
  268. package/dist/cjs/utils/events.cjs +0 -10
  269. package/dist/cjs/utils/events.cjs.map +1 -1
  270. package/dist/cjs/utils/graph.cjs.map +1 -1
  271. package/dist/cjs/utils/handlers.cjs +0 -3
  272. package/dist/cjs/utils/handlers.cjs.map +1 -1
  273. package/dist/cjs/utils/llm.cjs +0 -1
  274. package/dist/cjs/utils/llm.cjs.map +1 -1
  275. package/dist/cjs/utils/misc.cjs +0 -16
  276. package/dist/cjs/utils/misc.cjs.map +1 -1
  277. package/dist/cjs/utils/proxy.cjs +0 -26
  278. package/dist/cjs/utils/proxy.cjs.map +1 -1
  279. package/dist/cjs/utils/run.cjs +0 -6
  280. package/dist/cjs/utils/run.cjs.map +1 -1
  281. package/dist/cjs/utils/schema.cjs +0 -5
  282. package/dist/cjs/utils/schema.cjs.map +1 -1
  283. package/dist/cjs/utils/title.cjs +0 -6
  284. package/dist/cjs/utils/title.cjs.map +1 -1
  285. package/dist/cjs/utils/tokens.cjs +0 -113
  286. package/dist/cjs/utils/tokens.cjs.map +1 -1
  287. package/dist/cjs/utils/toolContent.cjs +0 -41
  288. package/dist/cjs/utils/toolContent.cjs.map +1 -1
  289. package/dist/cjs/utils/truncation.cjs +0 -61
  290. package/dist/cjs/utils/truncation.cjs.map +1 -1
  291. package/dist/esm/agents/AgentContext.mjs +0 -356
  292. package/dist/esm/agents/AgentContext.mjs.map +1 -1
  293. package/dist/esm/agents/projection.mjs +0 -9
  294. package/dist/esm/agents/projection.mjs.map +1 -1
  295. package/dist/esm/common/constants.mjs +0 -26
  296. package/dist/esm/common/constants.mjs.map +1 -1
  297. package/dist/esm/common/enum.mjs +0 -85
  298. package/dist/esm/common/enum.mjs.map +1 -1
  299. package/dist/esm/events.mjs +0 -14
  300. package/dist/esm/events.mjs.map +1 -1
  301. package/dist/esm/graphs/Graph.mjs +1 -909
  302. package/dist/esm/graphs/Graph.mjs.map +1 -1
  303. package/dist/esm/graphs/MultiAgentGraph.mjs +7 -272
  304. package/dist/esm/graphs/MultiAgentGraph.mjs.map +1 -1
  305. package/dist/esm/graphs/applyGraphRuntimeConfig.mjs.map +1 -1
  306. package/dist/esm/graphs/createGraph.mjs.map +1 -1
  307. package/dist/esm/hitl/askUserQuestion.mjs +0 -53
  308. package/dist/esm/hitl/askUserQuestion.mjs.map +1 -1
  309. package/dist/esm/hitl/askUserQuestions.mjs +0 -20
  310. package/dist/esm/hitl/askUserQuestions.mjs.map +1 -1
  311. package/dist/esm/hitl/askUserQuestionsInterrupt.mjs +0 -6
  312. package/dist/esm/hitl/askUserQuestionsInterrupt.mjs.map +1 -1
  313. package/dist/esm/hooks/HookRegistry.mjs +0 -127
  314. package/dist/esm/hooks/HookRegistry.mjs.map +1 -1
  315. package/dist/esm/hooks/createToolPolicyHook.mjs +0 -38
  316. package/dist/esm/hooks/createToolPolicyHook.mjs.map +1 -1
  317. package/dist/esm/hooks/createWorkspacePolicyHook.mjs +0 -77
  318. package/dist/esm/hooks/createWorkspacePolicyHook.mjs.map +1 -1
  319. package/dist/esm/hooks/executeHooks.mjs +0 -79
  320. package/dist/esm/hooks/executeHooks.mjs.map +1 -1
  321. package/dist/esm/hooks/index.mjs +0 -16
  322. package/dist/esm/hooks/index.mjs.map +1 -1
  323. package/dist/esm/hooks/matchers.mjs +0 -104
  324. package/dist/esm/hooks/matchers.mjs.map +1 -1
  325. package/dist/esm/hooks/types.mjs +0 -8
  326. package/dist/esm/hooks/types.mjs.map +1 -1
  327. package/dist/esm/instrumentation.mjs +0 -14
  328. package/dist/esm/instrumentation.mjs.map +1 -1
  329. package/dist/esm/langfuse.mjs +0 -75
  330. package/dist/esm/langfuse.mjs.map +1 -1
  331. package/dist/esm/langfuseConfig.mjs.map +1 -1
  332. package/dist/esm/langfuseRuntimeContext.mjs +0 -13
  333. package/dist/esm/langfuseRuntimeContext.mjs.map +1 -1
  334. package/dist/esm/langfuseRuntimeScope.mjs +0 -4
  335. package/dist/esm/langfuseRuntimeScope.mjs.map +1 -1
  336. package/dist/esm/langfuseSpanRegistry.mjs +0 -28
  337. package/dist/esm/langfuseSpanRegistry.mjs.map +1 -1
  338. package/dist/esm/langfuseToolOutputTracing.mjs +0 -3
  339. package/dist/esm/langfuseToolOutputTracing.mjs.map +1 -1
  340. package/dist/esm/langfuseTraceShaping.mjs +0 -74
  341. package/dist/esm/langfuseTraceShaping.mjs.map +1 -1
  342. package/dist/esm/llm/anthropic/index.mjs +0 -3
  343. package/dist/esm/llm/anthropic/index.mjs.map +1 -1
  344. package/dist/esm/llm/anthropic/types.mjs.map +1 -1
  345. package/dist/esm/llm/anthropic/utils/message_inputs.mjs +1 -111
  346. package/dist/esm/llm/anthropic/utils/message_inputs.mjs.map +1 -1
  347. package/dist/esm/llm/anthropic/utils/message_outputs.mjs +0 -1
  348. package/dist/esm/llm/anthropic/utils/message_outputs.mjs.map +1 -1
  349. package/dist/esm/llm/anthropic/utils/stream_events.mjs +0 -8
  350. package/dist/esm/llm/anthropic/utils/stream_events.mjs.map +1 -1
  351. package/dist/esm/llm/anthropic/utils/tools.mjs.map +1 -1
  352. package/dist/esm/llm/bedrock/cachePoints.mjs.map +1 -1
  353. package/dist/esm/llm/bedrock/index.mjs +1 -95
  354. package/dist/esm/llm/bedrock/index.mjs.map +1 -1
  355. package/dist/esm/llm/bedrock/toolCache.mjs.map +1 -1
  356. package/dist/esm/llm/bedrock/utils/message_inputs.mjs +0 -78
  357. package/dist/esm/llm/bedrock/utils/message_inputs.mjs.map +1 -1
  358. package/dist/esm/llm/bedrock/utils/message_outputs.mjs +0 -24
  359. package/dist/esm/llm/bedrock/utils/message_outputs.mjs.map +1 -1
  360. package/dist/esm/llm/contextOverflowRecovery.mjs +0 -62
  361. package/dist/esm/llm/contextOverflowRecovery.mjs.map +1 -1
  362. package/dist/esm/llm/fake.mjs.map +1 -1
  363. package/dist/esm/llm/google/index.mjs +2 -21
  364. package/dist/esm/llm/google/index.mjs.map +1 -1
  365. package/dist/esm/llm/google/utils/common.mjs +5 -35
  366. package/dist/esm/llm/google/utils/common.mjs.map +1 -1
  367. package/dist/esm/llm/init.mjs +0 -9
  368. package/dist/esm/llm/init.mjs.map +1 -1
  369. package/dist/esm/llm/invoke.mjs +1 -270
  370. package/dist/esm/llm/invoke.mjs.map +1 -1
  371. package/dist/esm/llm/mistral/index.mjs.map +1 -1
  372. package/dist/esm/llm/openai/index.mjs +0 -99
  373. package/dist/esm/llm/openai/index.mjs.map +1 -1
  374. package/dist/esm/llm/openai/streamMetadata.mjs +0 -21
  375. package/dist/esm/llm/openai/streamMetadata.mjs.map +1 -1
  376. package/dist/esm/llm/openai/utils/index.mjs.map +1 -1
  377. package/dist/esm/llm/openrouter/index.mjs +0 -1
  378. package/dist/esm/llm/openrouter/index.mjs.map +1 -1
  379. package/dist/esm/llm/openrouter/toolCache.mjs +0 -6
  380. package/dist/esm/llm/openrouter/toolCache.mjs.map +1 -1
  381. package/dist/esm/llm/preempt.mjs +0 -75
  382. package/dist/esm/llm/preempt.mjs.map +1 -1
  383. package/dist/esm/llm/providers.mjs.map +1 -1
  384. package/dist/esm/llm/request.mjs +0 -10
  385. package/dist/esm/llm/request.mjs.map +1 -1
  386. package/dist/esm/llm/stream/chunkAdapters.mjs +0 -62
  387. package/dist/esm/llm/stream/chunkAdapters.mjs.map +1 -1
  388. package/dist/esm/llm/stream/smoother.mjs +0 -58
  389. package/dist/esm/llm/stream/smoother.mjs.map +1 -1
  390. package/dist/esm/llm/streamLimits.mjs +4 -293
  391. package/dist/esm/llm/streamLimits.mjs.map +1 -1
  392. package/dist/esm/llm/truncation.mjs +0 -36
  393. package/dist/esm/llm/truncation.mjs.map +1 -1
  394. package/dist/esm/llm/vertexai/index.mjs +0 -330
  395. package/dist/esm/llm/vertexai/index.mjs.map +1 -1
  396. package/dist/esm/messages/alternation.mjs +0 -43
  397. package/dist/esm/messages/alternation.mjs.map +1 -1
  398. package/dist/esm/messages/anthropicToolCache.mjs +0 -45
  399. package/dist/esm/messages/anthropicToolCache.mjs.map +1 -1
  400. package/dist/esm/messages/assistantPhase.mjs +0 -12
  401. package/dist/esm/messages/assistantPhase.mjs.map +1 -1
  402. package/dist/esm/messages/budget.mjs +0 -9
  403. package/dist/esm/messages/budget.mjs.map +1 -1
  404. package/dist/esm/messages/cache.mjs +0 -172
  405. package/dist/esm/messages/cache.mjs.map +1 -1
  406. package/dist/esm/messages/content.mjs +0 -9
  407. package/dist/esm/messages/content.mjs.map +1 -1
  408. package/dist/esm/messages/contextPruning.mjs +0 -15
  409. package/dist/esm/messages/contextPruning.mjs.map +1 -1
  410. package/dist/esm/messages/contextPruningSettings.mjs +0 -3
  411. package/dist/esm/messages/contextPruningSettings.mjs.map +1 -1
  412. package/dist/esm/messages/core.mjs +0 -48
  413. package/dist/esm/messages/core.mjs.map +1 -1
  414. package/dist/esm/messages/format.mjs +1 -345
  415. package/dist/esm/messages/format.mjs.map +1 -1
  416. package/dist/esm/messages/handoffCue.mjs +0 -36
  417. package/dist/esm/messages/handoffCue.mjs.map +1 -1
  418. package/dist/esm/messages/ids.mjs.map +1 -1
  419. package/dist/esm/messages/injected.mjs +0 -33
  420. package/dist/esm/messages/injected.mjs.map +1 -1
  421. package/dist/esm/messages/langchain.mjs +0 -14
  422. package/dist/esm/messages/langchain.mjs.map +1 -1
  423. package/dist/esm/messages/prune.mjs +1 -184
  424. package/dist/esm/messages/prune.mjs.map +1 -1
  425. package/dist/esm/messages/recency.mjs +0 -32
  426. package/dist/esm/messages/recency.mjs.map +1 -1
  427. package/dist/esm/messages/reducer.mjs +0 -30
  428. package/dist/esm/messages/reducer.mjs.map +1 -1
  429. package/dist/esm/messages/tools.mjs +0 -14
  430. package/dist/esm/messages/tools.mjs.map +1 -1
  431. package/dist/esm/openai/index.mjs.map +1 -1
  432. package/dist/esm/prompts/activityLabel.mjs +9 -79
  433. package/dist/esm/prompts/activityLabel.mjs.map +1 -1
  434. package/dist/esm/responses/index.mjs.map +1 -1
  435. package/dist/esm/run.mjs +2 -538
  436. package/dist/esm/run.mjs.map +1 -1
  437. package/dist/esm/session/AgentSession.mjs +1 -17
  438. package/dist/esm/session/AgentSession.mjs.map +1 -1
  439. package/dist/esm/session/JsonlSessionStore.mjs.map +1 -1
  440. package/dist/esm/session/handlers.mjs +0 -7
  441. package/dist/esm/session/handlers.mjs.map +1 -1
  442. package/dist/esm/session/ids.mjs.map +1 -1
  443. package/dist/esm/session/messageSerialization.mjs +0 -4
  444. package/dist/esm/session/messageSerialization.mjs.map +1 -1
  445. package/dist/esm/stream.mjs +1 -93
  446. package/dist/esm/stream.mjs.map +1 -1
  447. package/dist/esm/summarization/index.mjs +0 -27
  448. package/dist/esm/summarization/index.mjs.map +1 -1
  449. package/dist/esm/summarization/node.mjs +0 -273
  450. package/dist/esm/summarization/node.mjs.map +1 -1
  451. package/dist/esm/tools/BashExecutor.mjs +0 -35
  452. package/dist/esm/tools/BashExecutor.mjs.map +1 -1
  453. package/dist/esm/tools/BashProgrammaticToolCalling.mjs +0 -24
  454. package/dist/esm/tools/BashProgrammaticToolCalling.mjs.map +1 -1
  455. package/dist/esm/tools/Calculator.mjs.map +1 -1
  456. package/dist/esm/tools/CodeExecutor.mjs +0 -13
  457. package/dist/esm/tools/CodeExecutor.mjs.map +1 -1
  458. package/dist/esm/tools/CodeSessionFileSummary.mjs.map +1 -1
  459. package/dist/esm/tools/ProgrammaticToolCalling.mjs +0 -101
  460. package/dist/esm/tools/ProgrammaticToolCalling.mjs.map +1 -1
  461. package/dist/esm/tools/ReadFile.mjs.map +1 -1
  462. package/dist/esm/tools/SkillTool.mjs +0 -5
  463. package/dist/esm/tools/SkillTool.mjs.map +1 -1
  464. package/dist/esm/tools/SubagentTool.mjs +0 -10
  465. package/dist/esm/tools/SubagentTool.mjs.map +1 -1
  466. package/dist/esm/tools/ToolNode.mjs +6 -1038
  467. package/dist/esm/tools/ToolNode.mjs.map +1 -1
  468. package/dist/esm/tools/ToolSearch.mjs +0 -179
  469. package/dist/esm/tools/ToolSearch.mjs.map +1 -1
  470. package/dist/esm/tools/cloudflare/CloudflareBridgeRuntime.mjs.map +1 -1
  471. package/dist/esm/tools/cloudflare/CloudflareProgrammaticToolCalling.mjs.map +1 -1
  472. package/dist/esm/tools/cloudflare/CloudflareSandboxExecutionEngine.mjs +0 -39
  473. package/dist/esm/tools/cloudflare/CloudflareSandboxExecutionEngine.mjs.map +1 -1
  474. package/dist/esm/tools/cloudflare/CloudflareSandboxTools.mjs.map +1 -1
  475. package/dist/esm/tools/eagerEventExecution.mjs +0 -6
  476. package/dist/esm/tools/eagerEventExecution.mjs.map +1 -1
  477. package/dist/esm/tools/handlers.mjs +1 -41
  478. package/dist/esm/tools/handlers.mjs.map +1 -1
  479. package/dist/esm/tools/intentArg.mjs +1 -132
  480. package/dist/esm/tools/intentArg.mjs.map +1 -1
  481. package/dist/esm/tools/local/CompileCheckTool.mjs +0 -25
  482. package/dist/esm/tools/local/CompileCheckTool.mjs.map +1 -1
  483. package/dist/esm/tools/local/FileCheckpointer.mjs +0 -23
  484. package/dist/esm/tools/local/FileCheckpointer.mjs.map +1 -1
  485. package/dist/esm/tools/local/LocalCodingTools.mjs +0 -80
  486. package/dist/esm/tools/local/LocalCodingTools.mjs.map +1 -1
  487. package/dist/esm/tools/local/LocalExecutionEngine.mjs +0 -126
  488. package/dist/esm/tools/local/LocalExecutionEngine.mjs.map +1 -1
  489. package/dist/esm/tools/local/LocalExecutionTools.mjs.map +1 -1
  490. package/dist/esm/tools/local/LocalProgrammaticToolCalling.mjs +0 -12
  491. package/dist/esm/tools/local/LocalProgrammaticToolCalling.mjs.map +1 -1
  492. package/dist/esm/tools/local/attachments.mjs +0 -44
  493. package/dist/esm/tools/local/attachments.mjs.map +1 -1
  494. package/dist/esm/tools/local/bashAst.mjs +0 -16
  495. package/dist/esm/tools/local/bashAst.mjs.map +1 -1
  496. package/dist/esm/tools/local/editStrategies.mjs +0 -14
  497. package/dist/esm/tools/local/editStrategies.mjs.map +1 -1
  498. package/dist/esm/tools/local/resolveLocalExecutionTools.mjs.map +1 -1
  499. package/dist/esm/tools/local/syntaxCheck.mjs +0 -31
  500. package/dist/esm/tools/local/syntaxCheck.mjs.map +1 -1
  501. package/dist/esm/tools/local/textEncoding.mjs +0 -11
  502. package/dist/esm/tools/local/textEncoding.mjs.map +1 -1
  503. package/dist/esm/tools/local/workspaceFS.mjs +0 -33
  504. package/dist/esm/tools/local/workspaceFS.mjs.map +1 -1
  505. package/dist/esm/tools/ptcTimeout.mjs.map +1 -1
  506. package/dist/esm/tools/schema.mjs +0 -8
  507. package/dist/esm/tools/schema.mjs.map +1 -1
  508. package/dist/esm/tools/search/anthropic.mjs +0 -9
  509. package/dist/esm/tools/search/anthropic.mjs.map +1 -1
  510. package/dist/esm/tools/search/content.mjs.map +1 -1
  511. package/dist/esm/tools/search/crw-scraper.mjs +0 -33
  512. package/dist/esm/tools/search/crw-scraper.mjs.map +1 -1
  513. package/dist/esm/tools/search/crw-search.mjs +0 -2
  514. package/dist/esm/tools/search/crw-search.mjs.map +1 -1
  515. package/dist/esm/tools/search/firecrawl.mjs +0 -25
  516. package/dist/esm/tools/search/firecrawl.mjs.map +1 -1
  517. package/dist/esm/tools/search/format.mjs +0 -30
  518. package/dist/esm/tools/search/format.mjs.map +1 -1
  519. package/dist/esm/tools/search/highlights.mjs +0 -16
  520. package/dist/esm/tools/search/highlights.mjs.map +1 -1
  521. package/dist/esm/tools/search/keenable-scraper.mjs +0 -8
  522. package/dist/esm/tools/search/keenable-scraper.mjs.map +1 -1
  523. package/dist/esm/tools/search/keenable-search.mjs +0 -7
  524. package/dist/esm/tools/search/keenable-search.mjs.map +1 -1
  525. package/dist/esm/tools/search/rerankers.mjs +0 -35
  526. package/dist/esm/tools/search/rerankers.mjs.map +1 -1
  527. package/dist/esm/tools/search/schema.mjs +0 -1
  528. package/dist/esm/tools/search/schema.mjs.map +1 -1
  529. package/dist/esm/tools/search/search.mjs +1 -14
  530. package/dist/esm/tools/search/search.mjs.map +1 -1
  531. package/dist/esm/tools/search/serper-scraper.mjs +0 -46
  532. package/dist/esm/tools/search/serper-scraper.mjs.map +1 -1
  533. package/dist/esm/tools/search/tavily-scraper.mjs.map +1 -1
  534. package/dist/esm/tools/search/tavily-search.mjs.map +1 -1
  535. package/dist/esm/tools/search/tool.mjs +0 -25
  536. package/dist/esm/tools/search/tool.mjs.map +1 -1
  537. package/dist/esm/tools/search/utils.mjs +0 -8
  538. package/dist/esm/tools/search/utils.mjs.map +1 -1
  539. package/dist/esm/tools/skillCatalog.mjs +0 -6
  540. package/dist/esm/tools/skillCatalog.mjs.map +1 -1
  541. package/dist/esm/tools/streamedToolCallSeals.mjs +0 -6
  542. package/dist/esm/tools/streamedToolCallSeals.mjs.map +1 -1
  543. package/dist/esm/tools/subagent/SubagentExecutionRegistry.mjs +0 -2
  544. package/dist/esm/tools/subagent/SubagentExecutionRegistry.mjs.map +1 -1
  545. package/dist/esm/tools/subagent/SubagentExecutor.mjs +3 -213
  546. package/dist/esm/tools/subagent/SubagentExecutor.mjs.map +1 -1
  547. package/dist/esm/tools/subagent/SubagentReplay.mjs.map +1 -1
  548. package/dist/esm/tools/subagent/childGraphConfig.mjs +0 -4
  549. package/dist/esm/tools/subagent/childGraphConfig.mjs.map +1 -1
  550. package/dist/esm/tools/subagent/runtimeLimits.mjs.map +1 -1
  551. package/dist/esm/tools/toolOutputReferences.mjs +1 -322
  552. package/dist/esm/tools/toolOutputReferences.mjs.map +1 -1
  553. package/dist/esm/types/hitl.mjs +0 -5
  554. package/dist/esm/types/hitl.mjs.map +1 -1
  555. package/dist/esm/utils/callbacks.mjs.map +1 -1
  556. package/dist/esm/utils/errors.mjs +14 -165
  557. package/dist/esm/utils/errors.mjs.map +1 -1
  558. package/dist/esm/utils/events.mjs +0 -10
  559. package/dist/esm/utils/events.mjs.map +1 -1
  560. package/dist/esm/utils/graph.mjs.map +1 -1
  561. package/dist/esm/utils/handlers.mjs +0 -3
  562. package/dist/esm/utils/handlers.mjs.map +1 -1
  563. package/dist/esm/utils/llm.mjs +0 -1
  564. package/dist/esm/utils/llm.mjs.map +1 -1
  565. package/dist/esm/utils/misc.mjs +0 -16
  566. package/dist/esm/utils/misc.mjs.map +1 -1
  567. package/dist/esm/utils/proxy.mjs +0 -26
  568. package/dist/esm/utils/proxy.mjs.map +1 -1
  569. package/dist/esm/utils/run.mjs +0 -6
  570. package/dist/esm/utils/run.mjs.map +1 -1
  571. package/dist/esm/utils/schema.mjs +0 -5
  572. package/dist/esm/utils/schema.mjs.map +1 -1
  573. package/dist/esm/utils/title.mjs +0 -6
  574. package/dist/esm/utils/title.mjs.map +1 -1
  575. package/dist/esm/utils/tokens.mjs +0 -113
  576. package/dist/esm/utils/tokens.mjs.map +1 -1
  577. package/dist/esm/utils/toolContent.mjs +0 -41
  578. package/dist/esm/utils/toolContent.mjs.map +1 -1
  579. package/dist/esm/utils/truncation.mjs +0 -61
  580. package/dist/esm/utils/truncation.mjs.map +1 -1
  581. package/dist/types/agents/AgentContext.d.ts +3 -3
  582. package/dist/types/agents/__tests__/promptCacheLiveHelpers.d.ts +3 -3
  583. package/dist/types/agents/projection.d.ts +1 -1
  584. package/dist/types/events.d.ts +2 -2
  585. package/dist/types/graphs/Graph.d.ts +11 -11
  586. package/dist/types/graphs/MultiAgentGraph.d.ts +2 -2
  587. package/dist/types/graphs/createGraph.d.ts +4 -4
  588. package/dist/types/graphs/graphFactory.d.ts +1 -1
  589. package/dist/types/hitl/askUserQuestion.d.ts +1 -1
  590. package/dist/types/hitl/askUserQuestions.d.ts +1 -1
  591. package/dist/types/hitl/askUserQuestionsInterrupt.d.ts +1 -1
  592. package/dist/types/hooks/types.d.ts +1 -1
  593. package/dist/types/instrumentation.d.ts +1 -1
  594. package/dist/types/langfuse.d.ts +3 -3
  595. package/dist/types/langfuseConfig.d.ts +2 -2
  596. package/dist/types/langfuseRuntimeContext.d.ts +1 -1
  597. package/dist/types/langfuseRuntimeScope.d.ts +2 -2
  598. package/dist/types/langfuseSpanRegistry.d.ts +1 -1
  599. package/dist/types/langfuseToolOutputTracing.d.ts +3 -3
  600. package/dist/types/llm/anthropic/index.d.ts +1 -1
  601. package/dist/types/llm/bedrock/index.d.ts +1 -1
  602. package/dist/types/llm/bedrock/toolCache.d.ts +2 -2
  603. package/dist/types/llm/contextOverflowRecovery.d.ts +2 -2
  604. package/dist/types/llm/google/index.d.ts +1 -1
  605. package/dist/types/llm/init.d.ts +2 -2
  606. package/dist/types/llm/invoke.d.ts +6 -6
  607. package/dist/types/llm/mistral/index.d.ts +1 -1
  608. package/dist/types/llm/openai/index.d.ts +2 -2
  609. package/dist/types/llm/openrouter/index.d.ts +2 -2
  610. package/dist/types/llm/openrouter/toolCache.d.ts +2 -2
  611. package/dist/types/llm/providers.d.ts +2 -2
  612. package/dist/types/llm/request.d.ts +2 -2
  613. package/dist/types/llm/stream/chunkAdapters.d.ts +1 -1
  614. package/dist/types/llm/streamLimits.d.ts +1 -1
  615. package/dist/types/llm/truncation.d.ts +1 -1
  616. package/dist/types/llm/vertexai/index.d.ts +1 -1
  617. package/dist/types/messages/alternation.d.ts +1 -1
  618. package/dist/types/messages/anthropicToolCache.d.ts +2 -2
  619. package/dist/types/messages/assistantPhase.d.ts +3 -3
  620. package/dist/types/messages/budget.d.ts +1 -1
  621. package/dist/types/messages/cache.d.ts +1 -1
  622. package/dist/types/messages/contextPruning.d.ts +2 -2
  623. package/dist/types/messages/core.d.ts +2 -2
  624. package/dist/types/messages/format.d.ts +2 -2
  625. package/dist/types/messages/ids.d.ts +2 -2
  626. package/dist/types/messages/injected.d.ts +1 -1
  627. package/dist/types/messages/langchain.d.ts +1 -1
  628. package/dist/types/messages/prune.d.ts +3 -3
  629. package/dist/types/openai/index.d.ts +1 -1
  630. package/dist/types/prompts/activityLabel.d.ts +2 -2
  631. package/dist/types/responses/index.d.ts +1 -1
  632. package/dist/types/run.d.ts +3 -3
  633. package/dist/types/session/handlers.d.ts +1 -1
  634. package/dist/types/session/types.d.ts +1 -1
  635. package/dist/types/stream.d.ts +4 -4
  636. package/dist/types/summarization/index.d.ts +1 -1
  637. package/dist/types/summarization/node.d.ts +6 -6
  638. package/dist/types/test/mockTools.d.ts +1 -1
  639. package/dist/types/tools/BashExecutor.d.ts +2 -2
  640. package/dist/types/tools/BashProgrammaticToolCalling.d.ts +2 -2
  641. package/dist/types/tools/CodeExecutor.d.ts +3 -3
  642. package/dist/types/tools/CodeSessionFileSummary.d.ts +1 -1
  643. package/dist/types/tools/ProgrammaticToolCalling.d.ts +2 -2
  644. package/dist/types/tools/ReadFile.d.ts +1 -1
  645. package/dist/types/tools/SkillTool.d.ts +1 -1
  646. package/dist/types/tools/SubagentTool.d.ts +3 -3
  647. package/dist/types/tools/ToolNode.d.ts +5 -5
  648. package/dist/types/tools/ToolSearch.d.ts +2 -2
  649. package/dist/types/tools/cloudflare/CloudflareBridgeRuntime.d.ts +1 -1
  650. package/dist/types/tools/cloudflare/CloudflareProgrammaticToolCalling.d.ts +1 -1
  651. package/dist/types/tools/cloudflare/CloudflareSandboxExecutionEngine.d.ts +2 -2
  652. package/dist/types/tools/cloudflare/CloudflareSandboxTools.d.ts +1 -1
  653. package/dist/types/tools/eagerEventExecution.d.ts +1 -1
  654. package/dist/types/tools/handlers.d.ts +3 -3
  655. package/dist/types/tools/intentArg.d.ts +1 -1
  656. package/dist/types/tools/local/CompileCheckTool.d.ts +2 -2
  657. package/dist/types/tools/local/FileCheckpointer.d.ts +1 -1
  658. package/dist/types/tools/local/LocalCodingTools.d.ts +2 -2
  659. package/dist/types/tools/local/LocalExecutionEngine.d.ts +1 -1
  660. package/dist/types/tools/local/LocalExecutionTools.d.ts +1 -1
  661. package/dist/types/tools/local/LocalProgrammaticToolCalling.d.ts +1 -1
  662. package/dist/types/tools/local/bashAst.d.ts +1 -1
  663. package/dist/types/tools/local/resolveLocalExecutionTools.d.ts +1 -1
  664. package/dist/types/tools/local/syntaxCheck.d.ts +1 -1
  665. package/dist/types/tools/ptcTimeout.d.ts +1 -1
  666. package/dist/types/tools/schema.d.ts +1 -1
  667. package/dist/types/tools/search/anthropic.d.ts +1 -1
  668. package/dist/types/tools/skillCatalog.d.ts +1 -1
  669. package/dist/types/tools/subagent/SubagentExecutor.d.ts +5 -5
  670. package/dist/types/tools/subagent/SubagentReplay.d.ts +3 -3
  671. package/dist/types/tools/subagent/childGraphConfig.d.ts +2 -2
  672. package/dist/types/types/activityLabel.d.ts +3 -3
  673. package/dist/types/types/graph.d.ts +7 -7
  674. package/dist/types/types/llm.d.ts +9 -9
  675. package/dist/types/types/run.d.ts +7 -7
  676. package/dist/types/types/stream.d.ts +5 -5
  677. package/dist/types/types/summarize.d.ts +2 -2
  678. package/dist/types/types/tools.d.ts +5 -5
  679. package/dist/types/utils/__tests__/fixtures/contextOverflowSignatures.d.ts +1 -1
  680. package/dist/types/utils/errors.d.ts +1 -1
  681. package/dist/types/utils/events.d.ts +1 -1
  682. package/dist/types/utils/handlers.d.ts +3 -3
  683. package/dist/types/utils/llm.d.ts +1 -1
  684. package/dist/types/utils/llmConfig.d.ts +1 -1
  685. package/dist/types/utils/title.d.ts +1 -1
  686. package/package.json +10 -3
  687. package/src/llm/google/utils/common.ts +6 -4
  688. package/src/__tests__/stream.eagerArgsDivergence.test.ts +0 -911
  689. package/src/__tests__/stream.eagerEventExecution.test.ts +0 -5046
  690. package/src/__tests__/stream.streamLimits.test.ts +0 -1982
  691. package/src/agents/__tests__/AgentContext.anthropic.live.test.ts +0 -448
  692. package/src/agents/__tests__/AgentContext.bedrock.live.test.ts +0 -655
  693. package/src/agents/__tests__/AgentContext.openrouter.live.test.ts +0 -128
  694. package/src/agents/__tests__/AgentContext.overflow.test.ts +0 -205
  695. package/src/agents/__tests__/AgentContext.test.ts +0 -2425
  696. package/src/agents/__tests__/projection.test.ts +0 -73
  697. package/src/agents/__tests__/promptCacheLiveHelpers.ts +0 -175
  698. package/src/aggregator.test.ts +0 -1214
  699. package/src/graphs/__tests__/Graph.breakerLifecycle.test.ts +0 -273
  700. package/src/graphs/__tests__/Graph.closeRunStep.test.ts +0 -385
  701. package/src/graphs/__tests__/Graph.contextOverflow.test.ts +0 -1766
  702. package/src/graphs/__tests__/Graph.preemptSignal.test.ts +0 -126
  703. package/src/graphs/__tests__/Graph.reasoning.test.ts +0 -1717
  704. package/src/graphs/__tests__/Graph.subagentResumeState.test.ts +0 -80
  705. package/src/graphs/__tests__/MultiAgentGraph.test.ts +0 -177
  706. package/src/graphs/__tests__/composition.smoke.test.ts +0 -509
  707. package/src/graphs/__tests__/createGraph.test.ts +0 -206
  708. package/src/hooks/__tests__/HookRegistry.test.ts +0 -334
  709. package/src/hooks/__tests__/compactHooks.test.ts +0 -250
  710. package/src/hooks/__tests__/createToolPolicyHook.test.ts +0 -268
  711. package/src/hooks/__tests__/createWorkspacePolicyHook.test.ts +0 -405
  712. package/src/hooks/__tests__/executeHooks.test.ts +0 -1294
  713. package/src/hooks/__tests__/integration.test.ts +0 -337
  714. package/src/hooks/__tests__/matchers.test.ts +0 -238
  715. package/src/hooks/__tests__/preemptBoundary.test.ts +0 -152
  716. package/src/hooks/__tests__/toolHooks.test.ts +0 -669
  717. package/src/llm/__tests__/contextOverflowRecovery.test.ts +0 -401
  718. package/src/llm/__tests__/fallbackOverflow.test.ts +0 -287
  719. package/src/llm/anthropic/Jacob_Lee_Resume_2023.pdf +0 -0
  720. package/src/llm/anthropic/inherited-content-utils.spec.ts +0 -249
  721. package/src/llm/anthropic/inherited-stream-events.spec.ts +0 -1259
  722. package/src/llm/anthropic/inherited-strict.spec.ts +0 -302
  723. package/src/llm/anthropic/llm.spec.ts +0 -3394
  724. package/src/llm/anthropic/utils/cross-provider-reasoning.test.ts +0 -383
  725. package/src/llm/anthropic/utils/cross-provider-server-tools.test.ts +0 -110
  726. package/src/llm/anthropic/utils/server-tool-inputs.test.ts +0 -508
  727. package/src/llm/anthropic/utils/streaming-tool-input.test.ts +0 -361
  728. package/src/llm/anthropic/utils/stripPrefillCache.test.ts +0 -111
  729. package/src/llm/anthropic/utils/tool-id-normalization.test.ts +0 -287
  730. package/src/llm/bedrock/inherited-cache.spec.ts +0 -144
  731. package/src/llm/bedrock/inherited.spec.ts +0 -724
  732. package/src/llm/bedrock/llm.spec.ts +0 -1533
  733. package/src/llm/bedrock/streamSealDispatch.test.ts +0 -331
  734. package/src/llm/bedrock/toolCache.test.ts +0 -194
  735. package/src/llm/bedrock/utils/cross-provider-reasoning.test.ts +0 -131
  736. package/src/llm/bedrock/utils/cross-provider-server-tools.test.ts +0 -122
  737. package/src/llm/bedrock/utils/message_inputs.test.ts +0 -650
  738. package/src/llm/bedrock/utils/message_outputs.test.ts +0 -85
  739. package/src/llm/bedrock/utils/toolResultCachePoint.test.ts +0 -118
  740. package/src/llm/custom-chat-models.smoke.test.ts +0 -1966
  741. package/src/llm/google/data/gettysburg10.wav +0 -0
  742. package/src/llm/google/data/hotdog.jpg +0 -0
  743. package/src/llm/google/inherited-stream-events.spec.ts +0 -350
  744. package/src/llm/google/llm.spec.ts +0 -1388
  745. package/src/llm/google/streamSmoothing.test.ts +0 -121
  746. package/src/llm/google/utils/common.test.ts +0 -185
  747. package/src/llm/invoke.alternation.test.ts +0 -87
  748. package/src/llm/invoke.handoffCue.test.ts +0 -112
  749. package/src/llm/invoke.streamLimits.test.ts +0 -142
  750. package/src/llm/invoke.test.ts +0 -1198
  751. package/src/llm/mistral/streamSmoothing.test.ts +0 -97
  752. package/src/llm/openai/cacheWriteTokens.test.ts +0 -112
  753. package/src/llm/openai/contentBlocks.test.ts +0 -381
  754. package/src/llm/openai/deepseek.test.ts +0 -747
  755. package/src/llm/openai/inherited-deepseek.spec.ts +0 -347
  756. package/src/llm/openai/inherited-xai.spec.ts +0 -416
  757. package/src/llm/openai/llm.spec.ts +0 -1774
  758. package/src/llm/openai/managedRequests.test.ts +0 -182
  759. package/src/llm/openai/sequentialToolCallSeals.test.ts +0 -199
  760. package/src/llm/openai/streamMetadata.spec.ts +0 -86
  761. package/src/llm/openai/streamMetadataDedup.spec.ts +0 -166
  762. package/src/llm/openai/utils/isReasoningModel.test.ts +0 -90
  763. package/src/llm/openai/utils/messages.test.ts +0 -488
  764. package/src/llm/openrouter/reasoning.test.ts +0 -561
  765. package/src/llm/openrouter/toolCache.test.ts +0 -134
  766. package/src/llm/preempt.test.ts +0 -323
  767. package/src/llm/stream/chunkAdapters.test.ts +0 -202
  768. package/src/llm/stream/reassembly.test.ts +0 -241
  769. package/src/llm/stream/smoother.bench.test.ts +0 -155
  770. package/src/llm/stream/smoother.test.ts +0 -519
  771. package/src/llm/streamLimits.test.ts +0 -450
  772. package/src/llm/truncation.test.ts +0 -242
  773. package/src/llm/vertexai/fixThoughtSignatures.test.ts +0 -154
  774. package/src/llm/vertexai/inherited-stream-events.spec.ts +0 -271
  775. package/src/llm/vertexai/llm.spec.ts +0 -159
  776. package/src/llm/vertexai/repairUsageMetadata.test.ts +0 -54
  777. package/src/llm/vertexai/sealStreamedToolCalls.test.ts +0 -88
  778. package/src/llm/vertexai/streamSealDispatch.test.ts +0 -148
  779. package/src/llm/vertexai/streamSmoothing.test.ts +0 -109
  780. package/src/messages/__tests__/anthropicToolCache.test.ts +0 -339
  781. package/src/messages/__tests__/observationMasking.test.ts +0 -312
  782. package/src/messages/__tests__/recency.test.ts +0 -267
  783. package/src/messages/__tests__/tools.test.ts +0 -473
  784. package/src/messages/alternation.test.ts +0 -212
  785. package/src/messages/assistantPhase.test.ts +0 -75
  786. package/src/messages/cache.tail.test.ts +0 -533
  787. package/src/messages/cache.test.ts +0 -2166
  788. package/src/messages/content.test.ts +0 -362
  789. package/src/messages/contextPruning.test.ts +0 -184
  790. package/src/messages/ensureThinkingBlock.test.ts +0 -1427
  791. package/src/messages/foldToollessToolBlocks.test.ts +0 -596
  792. package/src/messages/formatAgentMessages.reducer.test.ts +0 -162
  793. package/src/messages/formatAgentMessages.skills.test.ts +0 -513
  794. package/src/messages/formatAgentMessages.steer.test.ts +0 -598
  795. package/src/messages/formatAgentMessages.test.ts +0 -8111
  796. package/src/messages/formatAgentMessages.tools.test.ts +0 -522
  797. package/src/messages/formatMessage.test.ts +0 -693
  798. package/src/messages/handoffCue.test.ts +0 -96
  799. package/src/messages/injected.test.ts +0 -107
  800. package/src/messages/labelContentByAgent.test.ts +0 -962
  801. package/src/messages/reducer.spec.ts +0 -32
  802. package/src/messages/shiftIndexTokenCountMap.test.ts +0 -81
  803. package/src/messages/tailCacheConversion.test.ts +0 -161
  804. package/src/openai/__tests__/openai.test.ts +0 -337
  805. package/src/responses/__tests__/responses.test.ts +0 -652
  806. package/src/scripts/abort.ts +0 -157
  807. package/src/scripts/activity-labels/captured.json +0 -56
  808. package/src/scripts/activity-labels/checks.cjs +0 -205
  809. package/src/scripts/activity-labels/corpus.cjs +0 -473
  810. package/src/scripts/activity-labels/report.cjs +0 -203
  811. package/src/scripts/activity-labels/rescore.cjs +0 -102
  812. package/src/scripts/activity-labels/run.ts +0 -705
  813. package/src/scripts/activity-labels/variants.ts +0 -71
  814. package/src/scripts/ant_web_search.ts +0 -159
  815. package/src/scripts/ant_web_search_edge_case.ts +0 -163
  816. package/src/scripts/ant_web_search_error_edge_case.ts +0 -149
  817. package/src/scripts/args.ts +0 -48
  818. package/src/scripts/bedrock-cache-debug.ts +0 -250
  819. package/src/scripts/bedrock-content-aggregation-test.ts +0 -266
  820. package/src/scripts/bedrock-merge-test.ts +0 -107
  821. package/src/scripts/bedrock-parallel-tools-test.ts +0 -204
  822. package/src/scripts/bench-prompt-cache.ts +0 -479
  823. package/src/scripts/caching.ts +0 -132
  824. package/src/scripts/cli.ts +0 -172
  825. package/src/scripts/cli2.ts +0 -133
  826. package/src/scripts/cli3.ts +0 -184
  827. package/src/scripts/cli4.ts +0 -191
  828. package/src/scripts/cli5.ts +0 -191
  829. package/src/scripts/code_exec.ts +0 -214
  830. package/src/scripts/code_exec_files.ts +0 -237
  831. package/src/scripts/code_exec_multi_session.ts +0 -237
  832. package/src/scripts/code_exec_ptc.ts +0 -335
  833. package/src/scripts/code_exec_session.ts +0 -283
  834. package/src/scripts/code_exec_simple.ts +0 -148
  835. package/src/scripts/compare_pi_vs_ours.ts +0 -1259
  836. package/src/scripts/content.ts +0 -139
  837. package/src/scripts/context-overflow-probe.ts +0 -997
  838. package/src/scripts/empty_input.ts +0 -137
  839. package/src/scripts/handoff-test.ts +0 -134
  840. package/src/scripts/local_engine.ts +0 -166
  841. package/src/scripts/local_engine_checkpointer.ts +0 -205
  842. package/src/scripts/local_engine_compile.ts +0 -263
  843. package/src/scripts/local_engine_hooks.ts +0 -226
  844. package/src/scripts/local_engine_image.ts +0 -201
  845. package/src/scripts/local_engine_ptc.ts +0 -151
  846. package/src/scripts/local_engine_workspace.ts +0 -258
  847. package/src/scripts/memory.ts +0 -107
  848. package/src/scripts/multi-agent-chain.ts +0 -332
  849. package/src/scripts/multi-agent-conditional.ts +0 -222
  850. package/src/scripts/multi-agent-document-review-chain.ts +0 -198
  851. package/src/scripts/multi-agent-hybrid-flow.ts +0 -311
  852. package/src/scripts/multi-agent-parallel-start.ts +0 -265
  853. package/src/scripts/multi-agent-parallel.ts +0 -395
  854. package/src/scripts/multi-agent-sequence.ts +0 -217
  855. package/src/scripts/multi-agent-subagent.ts +0 -246
  856. package/src/scripts/multi-agent-supervisor.ts +0 -366
  857. package/src/scripts/multi-agent-test.ts +0 -187
  858. package/src/scripts/openrouter_prompt_cache_live.ts +0 -310
  859. package/src/scripts/parallel-asymmetric-tools-test.ts +0 -275
  860. package/src/scripts/parallel-full-metadata-test.ts +0 -241
  861. package/src/scripts/parallel-tools-test.ts +0 -341
  862. package/src/scripts/preempt-probe.ts +0 -330
  863. package/src/scripts/preempt-scenarios.ts +0 -388
  864. package/src/scripts/programmatic_exec.ts +0 -387
  865. package/src/scripts/programmatic_exec_agent.ts +0 -232
  866. package/src/scripts/search.ts +0 -147
  867. package/src/scripts/sequential-full-metadata-test.ts +0 -198
  868. package/src/scripts/session_live.ts +0 -548
  869. package/src/scripts/simple.ts +0 -226
  870. package/src/scripts/single-agent-metadata-test.ts +0 -196
  871. package/src/scripts/stream.ts +0 -141
  872. package/src/scripts/subagent-configurable-inheritance.ts +0 -252
  873. package/src/scripts/subagent-event-driven-debug.ts +0 -190
  874. package/src/scripts/subagent-tools-debug.ts +0 -160
  875. package/src/scripts/subagent-usage-sink.ts +0 -176
  876. package/src/scripts/summarization-recency.ts +0 -462
  877. package/src/scripts/test-custom-prompt-key.ts +0 -145
  878. package/src/scripts/test-handoff-input.ts +0 -170
  879. package/src/scripts/test-handoff-preamble.ts +0 -278
  880. package/src/scripts/test-handoff-steering.ts +0 -430
  881. package/src/scripts/test-multi-agent-list-handoff.ts +0 -418
  882. package/src/scripts/test-parallel-agent-labeling.ts +0 -327
  883. package/src/scripts/test-parallel-handoffs.ts +0 -292
  884. package/src/scripts/test-thinking-handoff-bedrock.ts +0 -154
  885. package/src/scripts/test-thinking-handoff.ts +0 -156
  886. package/src/scripts/test-thinking-to-thinking-handoff-bedrock.ts +0 -166
  887. package/src/scripts/test-tool-before-handoff-role-order.ts +0 -276
  888. package/src/scripts/test-tools-before-handoff.ts +0 -222
  889. package/src/scripts/test_code_api.ts +0 -354
  890. package/src/scripts/thinking-bedrock.ts +0 -160
  891. package/src/scripts/thinking-vertexai.ts +0 -168
  892. package/src/scripts/thinking.ts +0 -172
  893. package/src/scripts/tool_search.ts +0 -153
  894. package/src/scripts/tools.ts +0 -163
  895. package/src/session/__tests__/JsonlSessionStore.test.ts +0 -1463
  896. package/src/session/__tests__/handlers.test.ts +0 -161
  897. package/src/specs/activity-label-observability.live.test.ts +0 -262
  898. package/src/specs/activity-label-observability.test.ts +0 -167
  899. package/src/specs/activity-label-prompt.test.ts +0 -359
  900. package/src/specs/activity-label-trace-seed.test.ts +0 -47
  901. package/src/specs/activity-phase-label.test.ts +0 -306
  902. package/src/specs/agent-handoffs.live.test.ts +0 -140
  903. package/src/specs/agent-handoffs.test.ts +0 -2465
  904. package/src/specs/anthropic.simple.test.ts +0 -453
  905. package/src/specs/ask-user-question-batch.test.ts +0 -289
  906. package/src/specs/ask-user-questions.live.test.ts +0 -185
  907. package/src/specs/ask-user-questions.test.ts +0 -293
  908. package/src/specs/azure.simple.test.ts +0 -502
  909. package/src/specs/bedrock-toolless.live.test.ts +0 -123
  910. package/src/specs/bedrock-truncation.live.test.ts +0 -191
  911. package/src/specs/cache.simple.test.ts +0 -416
  912. package/src/specs/context-accuracy.live.test.ts +0 -409
  913. package/src/specs/context-overflow-recovery.live.test.ts +0 -213
  914. package/src/specs/context-usage-event.test.ts +0 -117
  915. package/src/specs/context-usage.live.test.ts +0 -297
  916. package/src/specs/custom-event-await.test.ts +0 -304
  917. package/src/specs/deepseek.simple.test.ts +0 -290
  918. package/src/specs/deterministic-trace-id.test.ts +0 -43
  919. package/src/specs/discovered-tools.test.ts +0 -217
  920. package/src/specs/durability-checkpoint.integration.test.ts +0 -243
  921. package/src/specs/graph-subagent.live.test.ts +0 -242
  922. package/src/specs/graph-subagent.test.ts +0 -322
  923. package/src/specs/handoffCue.test.ts +0 -165
  924. package/src/specs/langfuse-callbacks.test.ts +0 -1578
  925. package/src/specs/langfuse-config.test.ts +0 -247
  926. package/src/specs/langfuse-instrumentation.test.ts +0 -393
  927. package/src/specs/langfuse-metadata.test.ts +0 -245
  928. package/src/specs/langfuse-routing.integration.test.ts +0 -844
  929. package/src/specs/langfuse-runtime-context.test.ts +0 -92
  930. package/src/specs/langfuse-span-registry.test.ts +0 -87
  931. package/src/specs/langfuse-tool-output-tracing.test.ts +0 -1858
  932. package/src/specs/langfuse-trace-shaping.test.ts +0 -591
  933. package/src/specs/moonshot.simple.test.ts +0 -367
  934. package/src/specs/multi-agent-summarization.test.ts +0 -396
  935. package/src/specs/openai.simple.test.ts +0 -315
  936. package/src/specs/openrouter.simple.test.ts +0 -275
  937. package/src/specs/preemptSeal.test.ts +0 -678
  938. package/src/specs/prune.test.ts +0 -3741
  939. package/src/specs/reasoning.test.ts +0 -201
  940. package/src/specs/run-step-timestamps.test.ts +0 -414
  941. package/src/specs/spec.utils.ts +0 -15
  942. package/src/specs/subagent.test.ts +0 -864
  943. package/src/specs/summarization-unit.test.ts +0 -973
  944. package/src/specs/summarization.test.ts +0 -3823
  945. package/src/specs/summarize-prune.test.ts +0 -376
  946. package/src/specs/thinking-handoff.test.ts +0 -621
  947. package/src/specs/thinking-prune.test.ts +0 -827
  948. package/src/specs/token-accounting-e2e.test.ts +0 -1034
  949. package/src/specs/token-accounting-pipeline.test.ts +0 -1008
  950. package/src/specs/token-distribution-edge-case.test.ts +0 -315
  951. package/src/specs/token-memoization.test.ts +0 -40
  952. package/src/specs/tokens.test.ts +0 -1000
  953. package/src/specs/tool-error-resume.test.ts +0 -194
  954. package/src/specs/tool-error.test.ts +0 -198
  955. package/src/specs/vllm-reasoning-toolcalls.test.ts +0 -340
  956. package/src/stream.dispatch.test.ts +0 -63
  957. package/src/stream.test.ts +0 -144
  958. package/src/summarization/__tests__/aggregator.test.ts +0 -236
  959. package/src/summarization/__tests__/node.test.ts +0 -1996
  960. package/src/summarization/__tests__/trigger.test.ts +0 -149
  961. package/src/summarization/chunkHandler.test.ts +0 -196
  962. package/src/test/mockTools.ts +0 -386
  963. package/src/tools/Calculator.test.ts +0 -278
  964. package/src/tools/__tests__/BashExecutor.test.ts +0 -108
  965. package/src/tools/__tests__/CloudflareSandboxExecution.test.ts +0 -939
  966. package/src/tools/__tests__/CodeApiAuthHeaders.test.ts +0 -858
  967. package/src/tools/__tests__/CodeExecutor.stateful.test.ts +0 -124
  968. package/src/tools/__tests__/LocalExecutionRoots.test.ts +0 -8
  969. package/src/tools/__tests__/LocalExecutionTools.test.ts +0 -2733
  970. package/src/tools/__tests__/ProgrammaticToolCalling.integration.test.ts +0 -318
  971. package/src/tools/__tests__/ProgrammaticToolCalling.test.ts +0 -1557
  972. package/src/tools/__tests__/ReadFile.test.ts +0 -44
  973. package/src/tools/__tests__/SkillTool.test.ts +0 -442
  974. package/src/tools/__tests__/SubagentExecutor.test.ts +0 -3728
  975. package/src/tools/__tests__/SubagentReplay.test.ts +0 -329
  976. package/src/tools/__tests__/SubagentTool.test.ts +0 -149
  977. package/src/tools/__tests__/ToolNode.breakerSignal.test.ts +0 -595
  978. package/src/tools/__tests__/ToolNode.eagerEventExecution.test.ts +0 -1191
  979. package/src/tools/__tests__/ToolNode.invalidToolCalls.test.ts +0 -757
  980. package/src/tools/__tests__/ToolNode.langfuse.test.ts +0 -57
  981. package/src/tools/__tests__/ToolNode.onResultCompletion.test.ts +0 -736
  982. package/src/tools/__tests__/ToolNode.outputReferences.test.ts +0 -1710
  983. package/src/tools/__tests__/ToolNode.runtimeState.test.ts +0 -120
  984. package/src/tools/__tests__/ToolNode.session.test.ts +0 -1352
  985. package/src/tools/__tests__/ToolNode.streamLimits.test.ts +0 -69
  986. package/src/tools/__tests__/ToolSearch.integration.test.ts +0 -161
  987. package/src/tools/__tests__/ToolSearch.test.ts +0 -1227
  988. package/src/tools/__tests__/annotateMessagesForLLM.test.ts +0 -561
  989. package/src/tools/__tests__/directToolHITLResumeScope.test.ts +0 -980
  990. package/src/tools/__tests__/directToolHooks.test.ts +0 -700
  991. package/src/tools/__tests__/eagerEventExecution.session.test.ts +0 -92
  992. package/src/tools/__tests__/handlers.test.ts +0 -997
  993. package/src/tools/__tests__/hitl.test.ts +0 -4663
  994. package/src/tools/__tests__/intentArg.test.ts +0 -357
  995. package/src/tools/__tests__/intentCoverage.test.ts +0 -139
  996. package/src/tools/__tests__/localToolNames.test.ts +0 -75
  997. package/src/tools/__tests__/skillCatalog.test.ts +0 -161
  998. package/src/tools/__tests__/subagentHooks.test.ts +0 -1651
  999. package/src/tools/__tests__/toolOutputReferences.test.ts +0 -515
  1000. package/src/tools/__tests__/workspaceSeam.test.ts +0 -147
  1001. package/src/tools/local/__tests__/FileCheckpointer.test.ts +0 -162
  1002. package/src/tools/local/__tests__/editStrategies.test.ts +0 -134
  1003. package/src/tools/search/content.test.ts +0 -173
  1004. package/src/tools/search/crw.test.ts +0 -836
  1005. package/src/tools/search/format.test.ts +0 -242
  1006. package/src/tools/search/http-agent.test.ts +0 -133
  1007. package/src/tools/search/jina-reranker.test.ts +0 -306
  1008. package/src/tools/search/keenable-scraper.test.ts +0 -153
  1009. package/src/tools/search/keenable.test.ts +0 -183
  1010. package/src/tools/search/outcome.test.ts +0 -90
  1011. package/src/tools/search/output.md +0 -2775
  1012. package/src/tools/search/rag-api-reranker.test.ts +0 -891
  1013. package/src/tools/search/source-processing.test.ts +0 -516
  1014. package/src/tools/search/tavily.test.ts +0 -965
  1015. package/src/tools/search/test.html +0 -884
  1016. package/src/tools/search/test.md +0 -643
  1017. package/src/tools/subagent/__tests__/SubagentExecutionRegistry.test.ts +0 -637
  1018. package/src/tools/subagent/__tests__/SubagentExecutor.lazy.test.ts +0 -3054
  1019. package/src/tools/subagent/__tests__/childGraphConfig.test.ts +0 -521
  1020. package/src/utils/__tests__/apportion.test.ts +0 -32
  1021. package/src/utils/__tests__/errors.test.ts +0 -270
  1022. package/src/utils/__tests__/fixtures/contextOverflowSignatures.ts +0 -336
  1023. package/src/utils/__tests__/redactSecrets.test.ts +0 -56
  1024. package/src/utils/__tests__/truncation.test.ts +0 -66
  1025. package/src/utils/llm.test.ts +0 -18
  1026. package/src/utils/proxy.test.ts +0 -176
  1027. package/src/utils/toolContent.test.ts +0 -1432
@@ -1 +1 @@
1
- {"version":3,"file":"tool.mjs","names":["params"],"sources":["../../../../src/tools/search/tool.ts"],"sourcesContent":["import { tool, DynamicStructuredTool } from '@langchain/core/tools';\nimport type { RunnableConfig } from '@langchain/core/runnables';\nimport type * as t from './types';\nimport {\n WebSearchToolDescription,\n WebSearchToolName,\n countrySchema,\n imagesSchema,\n videosSchema,\n querySchema,\n dateSchema,\n newsSchema,\n DATE_RANGE,\n} from './schema';\nimport { createSearchAPI, createSourceProcessor } from './search';\nimport { createKeenableScraper } from './keenable-scraper';\nimport { createSerperScraper } from './serper-scraper';\nimport { createTavilyScraper } from './tavily-scraper';\nimport { createFirecrawlScraper } from './firecrawl';\nimport { INTENT_PROPERTY } from '@/tools/intentArg';\nimport { createCrwScraper } from './crw-scraper';\nimport { expandHighlights } from './highlights';\nimport { formatResultsForLLM } from './format';\nimport { createDefaultLogger } from './utils';\nimport { createReranker } from './rerankers';\nimport { Constants } from '@/common';\n\n/**\n * Settled label for a `web_search` call's intent (see `intentArg.ts`).\n *\n * Counts the result kinds `formatResultsForLLM` actually renders —\n * `references` only tracks links embedded in extracted highlights, so it\n * undercounts ordinary results and can overcount when one highlight embeds\n * several links.\n *\n * A caught provider or processing failure is reported through `data.error`\n * while the tool still returns NORMALLY, so that case must author its own\n * label: the `ToolMessage` carries success status, so without an authored\n * outcome the in-flight intent (\"Searching…\") would stand as the settled\n * label and present a failed search as an ordinary one.\n *\n * Returns undefined for a genuine zero-result search, leaving the\n * model-authored intent to stand unchanged as the label.\n */\nexport function resolveSearchOutcome(\n data: t.SearchResultData,\n query: string\n): string | undefined {\n if (data.error != null && data.error !== '') {\n return `Search failed for \"${query}\"`;\n }\n const count =\n (data.organic?.length ?? 0) +\n (data.topStories?.length ?? 0) +\n (data.news?.length ?? 0) +\n (data.images?.length ?? 0) +\n (data.videos?.length ?? 0) +\n (data.places?.length ?? 0) +\n (data.peopleAlsoAsk?.length ?? 0) +\n (data.knowledgeGraph != null ? 1 : 0) +\n (data.answerBox != null ? 1 : 0);\n if (count === 0) {\n return undefined;\n }\n return `Found ${count} result${count === 1 ? '' : 's'} for \"${query}\"`;\n}\n\n/**\n * Executes parallel searches and merges the results,\n * deduplicating top stories by link\n */\nexport async function executeParallelSearches({\n searchAPI,\n query,\n date,\n country,\n safeSearch,\n images,\n videos,\n news,\n logger,\n}: {\n searchAPI: ReturnType<typeof createSearchAPI>;\n query: string;\n date?: DATE_RANGE;\n country?: string;\n safeSearch: t.SearchToolConfig['safeSearch'];\n images: boolean;\n videos: boolean;\n news: boolean;\n logger: t.Logger;\n}): Promise<t.SearchResult> {\n // Prepare all search tasks to run in parallel\n const searchTasks: Promise<t.SearchResult>[] = [\n // Main search\n searchAPI.getSources({\n query,\n date,\n country,\n safeSearch,\n }),\n ];\n\n if (images) {\n searchTasks.push(\n searchAPI\n .getSources({\n query,\n date,\n country,\n safeSearch,\n type: 'images',\n })\n .catch((error) => {\n logger.error('Error fetching images:', error);\n return {\n success: false,\n error: `Images search failed: ${error instanceof Error ? error.message : String(error)}`,\n };\n })\n );\n }\n if (videos) {\n searchTasks.push(\n searchAPI\n .getSources({\n query,\n date,\n country,\n safeSearch,\n type: 'videos',\n })\n .catch((error) => {\n logger.error('Error fetching videos:', error);\n return {\n success: false,\n error: `Videos search failed: ${error instanceof Error ? error.message : String(error)}`,\n };\n })\n );\n }\n if (news) {\n searchTasks.push(\n searchAPI\n .getSources({\n query,\n date,\n country,\n safeSearch,\n type: 'news',\n })\n .catch((error) => {\n logger.error('Error fetching news:', error);\n return {\n success: false,\n error: `News search failed: ${error instanceof Error ? error.message : String(error)}`,\n };\n })\n );\n }\n\n // Run all searches in parallel\n const results = await Promise.all(searchTasks);\n\n // Get the main search result (first result)\n const mainResult = results[0];\n if (!mainResult.success) {\n throw new Error(mainResult.error ?? 'Search failed');\n }\n\n // Merge additional results with the main results\n const mergedResults = { ...mainResult.data };\n\n // Convert existing news to topStories if present\n if (mergedResults.news !== undefined && mergedResults.news.length > 0) {\n const existingNewsAsTopStories = mergedResults.news\n .filter((newsItem) => newsItem.link !== undefined && newsItem.link !== '')\n .map((newsItem) => ({\n title: newsItem.title ?? '',\n link: newsItem.link ?? '',\n source: newsItem.source ?? '',\n date: newsItem.date ?? '',\n imageUrl: newsItem.imageUrl ?? '',\n processed: false,\n }));\n mergedResults.topStories = [\n ...(mergedResults.topStories ?? []),\n ...existingNewsAsTopStories,\n ];\n delete mergedResults.news;\n }\n\n results.slice(1).forEach((result) => {\n if (result.success && result.data !== undefined) {\n if (result.data.images !== undefined && result.data.images.length > 0) {\n mergedResults.images = [\n ...(mergedResults.images ?? []),\n ...result.data.images,\n ];\n }\n if (result.data.videos !== undefined && result.data.videos.length > 0) {\n mergedResults.videos = [\n ...(mergedResults.videos ?? []),\n ...result.data.videos,\n ];\n }\n if (result.data.news !== undefined && result.data.news.length > 0) {\n const newsAsTopStories = result.data.news.map((newsItem) => ({\n ...newsItem,\n link: newsItem.link ?? '',\n }));\n mergedResults.topStories = [\n ...(mergedResults.topStories ?? []),\n ...newsAsTopStories,\n ];\n }\n }\n });\n\n if (\n mergedResults.topStories !== undefined &&\n mergedResults.topStories.length > 1\n ) {\n /** The main search's own news results and the parallel news sub-search\n * frequently return the same stories — keep the first occurrence of each\n * link so duplicates aren't scraped, reranked, and formatted repeatedly */\n const seenLinks = new Set<string>();\n mergedResults.topStories = mergedResults.topStories.filter((story) => {\n if (!story.link || seenLinks.has(story.link)) {\n return false;\n }\n seenLinks.add(story.link);\n return true;\n });\n }\n\n return { success: true, data: mergedResults };\n}\n\nfunction createSearchProcessor({\n searchAPI,\n safeSearch,\n supportsImages,\n supportsVideos,\n supportsNews,\n sourceProcessor,\n onGetHighlights,\n mainExpandBy,\n separatorExpandBy,\n logger,\n}: {\n safeSearch: t.SearchToolConfig['safeSearch'];\n supportsImages: boolean;\n supportsVideos: boolean;\n supportsNews: boolean;\n searchAPI: ReturnType<typeof createSearchAPI>;\n sourceProcessor: ReturnType<typeof createSourceProcessor>;\n onGetHighlights: t.SearchToolConfig['onGetHighlights'];\n mainExpandBy: t.SearchToolConfig['mainExpandBy'];\n separatorExpandBy: t.SearchToolConfig['separatorExpandBy'];\n logger: t.Logger;\n}) {\n return async function ({\n query,\n date,\n country,\n proMode = true,\n maxSources = 5,\n onSearchResults,\n images = false,\n videos = false,\n news = false,\n }: {\n query: string;\n country?: string;\n date?: DATE_RANGE;\n proMode?: boolean;\n maxSources?: number;\n onSearchResults: t.SearchToolConfig['onSearchResults'];\n images?: boolean;\n videos?: boolean;\n news?: boolean;\n }): Promise<t.SearchResultData> {\n try {\n // Execute parallel searches and merge results\n const searchResult = await executeParallelSearches({\n searchAPI,\n query,\n date,\n country,\n safeSearch,\n images: supportsImages && images,\n videos: supportsVideos && videos,\n news: supportsNews && news,\n logger,\n });\n\n onSearchResults?.(searchResult);\n\n const processedSources = await sourceProcessor.processSources({\n query,\n news,\n result: searchResult,\n proMode,\n onGetHighlights,\n numElements: maxSources,\n });\n\n return expandHighlights(\n processedSources,\n mainExpandBy,\n separatorExpandBy\n );\n } catch (error) {\n logger.error('Error in search:', error);\n return {\n organic: [],\n topStories: [],\n images: [],\n videos: [],\n news: [],\n relatedSearches: [],\n error: error instanceof Error ? error.message : String(error),\n };\n }\n };\n}\n\nfunction createOnSearchResults({\n runnableConfig,\n onSearchResults,\n}: {\n runnableConfig: RunnableConfig;\n onSearchResults: t.SearchToolConfig['onSearchResults'];\n}) {\n return function (results: t.SearchResult): void {\n if (!onSearchResults) {\n return;\n }\n onSearchResults(results, runnableConfig);\n };\n}\n\nfunction createTool({\n schema,\n search,\n maxOutputChars,\n onSearchResults: _onSearchResults,\n}: {\n schema: Record<string, unknown>;\n search: ReturnType<typeof createSearchProcessor>;\n maxOutputChars?: number;\n onSearchResults: t.SearchToolConfig['onSearchResults'];\n}): DynamicStructuredTool {\n return tool(\n async (rawParams, runnableConfig) => {\n const params = rawParams as SearchToolParams;\n const { query, date, country: _c, images, videos, news } = params;\n const country = typeof _c === 'string' && _c ? _c : undefined;\n const searchResult = await search({\n query,\n date,\n country,\n images,\n videos,\n news,\n onSearchResults: createOnSearchResults({\n runnableConfig,\n onSearchResults: _onSearchResults,\n }),\n });\n const turn = runnableConfig.toolCall?.turn ?? 0;\n const { output, references } = formatResultsForLLM(\n turn,\n searchResult,\n maxOutputChars\n );\n const data: t.SearchResultData = { turn, ...searchResult, references };\n const outcome = resolveSearchOutcome(data, query);\n return [\n output,\n { [Constants.WEB_SEARCH]: data, ...(outcome != null && { outcome }) },\n ];\n },\n {\n name: WebSearchToolName,\n description: WebSearchToolDescription,\n schema: schema,\n responseFormat: Constants.CONTENT_AND_ARTIFACT,\n }\n );\n}\n\n/**\n * Creates a search tool with configurable search and scraper providers.\n *\n * Search providers: Serper (Google results), SearXNG (self-hosted meta-search), Tavily (AI-optimized), fastCRW (Firecrawl-compatible, self-host or cloud).\n * Scraper providers: Firecrawl (default, full-featured), Serper (lightweight), Tavily (batch extraction), fastCRW (Firecrawl-compatible, self-host or cloud).\n *\n * The country schema field is exposed to the LLM for providers that support localized results.\n */\n/** Input params type for search tool */\ninterface SearchToolParams {\n query: string;\n date?: DATE_RANGE;\n country?: string;\n images?: boolean;\n videos?: boolean;\n news?: boolean;\n}\n\nexport const createSearchTool = (\n config: t.SearchToolConfig = {}\n): DynamicStructuredTool => {\n const {\n searchProvider = 'serper',\n serperApiKey,\n searxngInstanceUrl,\n searxngApiKey,\n tavilyApiKey,\n tavilySearchUrl,\n tavilyExtractUrl,\n tavilySearchOptions,\n keenableApiKey,\n keenableApiUrl,\n keenableSearchOptions,\n keenableScraperOptions,\n rerankerType = 'cohere',\n rerankerTimeout,\n topResults = 5,\n maxContentLength,\n chunkSize,\n chunkOverlap,\n mainExpandBy,\n separatorExpandBy,\n maxOutputChars,\n strategies = ['no_extraction'],\n filterContent = true,\n safeSearch = 1,\n scraperProvider = 'firecrawl',\n firecrawlApiKey,\n firecrawlApiUrl,\n firecrawlVersion,\n firecrawlOptions,\n serperScraperOptions,\n tavilyScraperOptions,\n crwApiKey,\n crwApiUrl,\n crwSearchOptions,\n crwScraperOptions,\n scraperTimeout,\n jinaApiKey,\n jinaApiUrl,\n cohereApiKey,\n ragApiUrl,\n ragApiTokenSupplier,\n ragApiProfile,\n httpAgent,\n httpsAgent,\n onSearchResults: _onSearchResults,\n onGetHighlights,\n } = config;\n\n const logger = config.logger || createDefaultLogger();\n const effectiveTavilySearchOptions =\n searchProvider === 'tavily' && config.safeSearch != null\n ? {\n ...tavilySearchOptions,\n safeSearch: config.safeSearch !== 0,\n }\n : tavilySearchOptions;\n\n const schemaProperties: Record<string, unknown> = {\n intent: { ...INTENT_PROPERTY },\n query: querySchema,\n date: dateSchema,\n images: imagesSchema,\n videos: videosSchema,\n news: newsSchema,\n };\n\n if (searchProvider === 'serper' || searchProvider === 'tavily') {\n schemaProperties.country = countrySchema;\n }\n\n const toolSchema = {\n type: 'object',\n properties: schemaProperties,\n required: ['query'],\n };\n\n const searchAPI = createSearchAPI({\n searchProvider,\n serperApiKey,\n searxngInstanceUrl,\n searxngApiKey,\n tavilyApiKey,\n tavilySearchUrl,\n tavilySearchOptions: effectiveTavilySearchOptions,\n keenableApiKey,\n keenableApiUrl,\n keenableSearchOptions,\n crwApiKey,\n crwApiUrl,\n crwSearchOptions,\n httpAgent,\n httpsAgent,\n });\n\n /** Create scraper based on scraperProvider */\n let scraperInstance: t.BaseScraper;\n\n if (scraperProvider === 'serper') {\n scraperInstance = createSerperScraper({\n ...serperScraperOptions,\n apiKey: serperApiKey,\n timeout: scraperTimeout ?? serperScraperOptions?.timeout,\n httpAgent: httpAgent ?? serperScraperOptions?.httpAgent,\n httpsAgent: httpsAgent ?? serperScraperOptions?.httpsAgent,\n logger,\n });\n } else if (scraperProvider === 'tavily') {\n scraperInstance = createTavilyScraper({\n ...tavilyScraperOptions,\n apiKey:\n tavilyScraperOptions?.apiKey ??\n tavilyApiKey ??\n process.env.TAVILY_API_KEY,\n apiUrl: tavilyScraperOptions?.apiUrl ?? tavilyExtractUrl,\n timeout: scraperTimeout ?? tavilyScraperOptions?.timeout,\n httpAgent: httpAgent ?? tavilyScraperOptions?.httpAgent,\n httpsAgent: httpsAgent ?? tavilyScraperOptions?.httpsAgent,\n logger,\n });\n } else if (scraperProvider === 'crw') {\n scraperInstance = createCrwScraper({\n ...crwScraperOptions,\n apiKey: crwScraperOptions?.apiKey ?? crwApiKey ?? process.env.CRW_API_KEY,\n apiUrl: crwScraperOptions?.apiUrl ?? crwApiUrl,\n timeout: scraperTimeout ?? crwScraperOptions?.timeout,\n formats: crwScraperOptions?.formats ?? ['markdown', 'rawHtml'],\n httpAgent: httpAgent ?? crwScraperOptions?.httpAgent,\n httpsAgent: httpsAgent ?? crwScraperOptions?.httpsAgent,\n logger,\n });\n } else if (scraperProvider === 'keenable') {\n scraperInstance = createKeenableScraper({\n ...keenableScraperOptions,\n apiKey: keenableScraperOptions?.apiKey ?? keenableApiKey,\n timeout: scraperTimeout ?? keenableScraperOptions?.timeout,\n attributionTitle:\n keenableScraperOptions?.attributionTitle ??\n keenableSearchOptions?.attributionTitle,\n httpAgent: httpAgent ?? keenableScraperOptions?.httpAgent,\n httpsAgent: httpsAgent ?? keenableScraperOptions?.httpsAgent,\n logger,\n });\n } else {\n scraperInstance = createFirecrawlScraper({\n ...firecrawlOptions,\n apiKey: firecrawlApiKey ?? process.env.FIRECRAWL_API_KEY,\n apiUrl: firecrawlApiUrl,\n version: firecrawlVersion,\n timeout: scraperTimeout ?? firecrawlOptions?.timeout,\n formats: firecrawlOptions?.formats ?? ['markdown', 'rawHtml'],\n httpAgent: httpAgent ?? firecrawlOptions?.httpAgent,\n httpsAgent: httpsAgent ?? firecrawlOptions?.httpsAgent,\n logger,\n });\n }\n\n const selectedReranker = createReranker({\n rerankerType,\n jinaApiKey,\n jinaApiUrl,\n cohereApiKey,\n ragApiUrl,\n ragApiTokenSupplier,\n ragApiProfile,\n rerankerTimeout,\n httpAgent,\n httpsAgent,\n logger,\n });\n\n if (!selectedReranker) {\n logger.warn('No reranker selected. Using default ranking.');\n }\n\n const sourceProcessor = createSourceProcessor(\n {\n reranker: selectedReranker,\n topResults,\n maxContentLength,\n chunkSize,\n chunkOverlap,\n strategies,\n filterContent,\n logger,\n },\n scraperInstance\n );\n\n const search = createSearchProcessor({\n searchAPI,\n safeSearch,\n // Keenable is organic-only: its API ignores `type`, so image/news\n // sub-searches would spend rate limit and merge nothing.\n supportsImages: searchProvider !== 'keenable',\n supportsVideos:\n searchProvider !== 'tavily' &&\n searchProvider !== 'keenable' &&\n searchProvider !== 'crw',\n supportsNews: searchProvider !== 'keenable',\n sourceProcessor,\n onGetHighlights,\n mainExpandBy,\n separatorExpandBy,\n logger,\n });\n\n return createTool({\n search,\n schema: toolSchema,\n maxOutputChars,\n onSearchResults: _onSearchResults,\n });\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"tool.mjs","names":["params"],"sources":["../../../../src/tools/search/tool.ts"],"mappings":"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"}
@@ -1,15 +1,7 @@
1
1
  import { isAxiosError } from "axios";
2
2
  //#region src/tools/search/utils.ts
3
3
  const LOG_VALUE_MAX_LENGTH = 2048;
4
- /**
5
- * Singleton instance of the default logger
6
- */
7
4
  let defaultLoggerInstance = null;
8
- /**
9
- * Creates a default logger that maps to console methods
10
- * Uses a singleton pattern to avoid creating multiple instances
11
- * @returns A default logger that implements the Logger interface
12
- */
13
5
  const createDefaultLogger = () => {
14
6
  if (!defaultLoggerInstance) defaultLoggerInstance = {
15
7
  error: console.error,
@@ -1 +1 @@
1
- {"version":3,"file":"utils.mjs","names":[],"sources":["../../../../src/tools/search/utils.ts"],"sourcesContent":["/* eslint-disable no-console */\n\nimport { isAxiosError } from 'axios';\n\nimport type { AxiosError } from 'axios';\nimport type * as t from './types';\n\nconst LOG_VALUE_MAX_LENGTH = 2048;\n\nexport interface SafeErrorLog {\n message: string;\n name?: string;\n code?: string;\n status?: number;\n method?: string;\n url?: string;\n responseDataSummary?: string;\n value?: string;\n}\n\n/**\n * Singleton instance of the default logger\n */\nlet defaultLoggerInstance: t.Logger | null = null;\n\n/**\n * Creates a default logger that maps to console methods\n * Uses a singleton pattern to avoid creating multiple instances\n * @returns A default logger that implements the Logger interface\n */\nexport const createDefaultLogger = (): t.Logger => {\n if (!defaultLoggerInstance) {\n defaultLoggerInstance = {\n error: console.error,\n warn: console.warn,\n info: console.info,\n debug: console.debug,\n } as t.Logger;\n }\n return defaultLoggerInstance;\n};\n\nconst truncateLogValue = (value: string): string =>\n value.length <= LOG_VALUE_MAX_LENGTH\n ? value\n : `${value.slice(0, LOG_VALUE_MAX_LENGTH)}... [truncated]`;\n\nconst summarizeLogValue = (value: unknown): string => {\n if (value === null) {\n return 'null';\n }\n if (Array.isArray(value)) {\n return `array(${value.length})`;\n }\n if (typeof value === 'string') {\n return `string(${value.length})`;\n }\n if (typeof value === 'object') {\n return `object(${Object.keys(value).length})`;\n }\n return typeof value;\n};\n\nconst sanitizeUrlForLog = (url: string): string => {\n try {\n const parsed = new URL(url);\n return truncateLogValue(`${parsed.origin}${parsed.pathname}`);\n } catch {\n return truncateLogValue(url.split('?')[0].split('#')[0]);\n }\n};\n\nconst formatAxiosErrorForLog = (\n error: AxiosError<unknown, unknown>\n): SafeErrorLog => {\n const log: SafeErrorLog = {\n message: error.message,\n name: error.name,\n };\n const { code, config, response, status } = error;\n const responseStatus = response?.status ?? status;\n const method = config?.method;\n const url = config?.url;\n\n if (typeof code === 'string' && code !== '') {\n log.code = code;\n }\n if (responseStatus != null) {\n log.status = responseStatus;\n }\n if (typeof method === 'string' && method !== '') {\n log.method = method.toUpperCase();\n }\n if (typeof url === 'string' && url !== '') {\n log.url = sanitizeUrlForLog(url);\n }\n if (typeof response?.data !== 'undefined') {\n log.responseDataSummary = summarizeLogValue(response.data);\n }\n\n return log;\n};\n\nexport const formatErrorForLog = (error: unknown): SafeErrorLog => {\n if (isAxiosError<unknown, unknown>(error)) {\n return formatAxiosErrorForLog(error);\n }\n if (error instanceof Error) {\n return {\n message: error.message,\n name: error.name,\n };\n }\n return {\n message: String(error),\n value: summarizeLogValue(error),\n };\n};\n\nexport const fileExtRegex =\n /\\.(pdf|jpe?g|png|gif|svg|webp|bmp|ico|tiff?|avif|heic|doc[xm]?|xls[xm]?|ppt[xm]?|zip|rar|mp[34]|mov|avi|wav)(?:\\?.*)?$/i;\n\nexport const getDomainName = (\n link: string,\n metadata?: t.ScrapeMetadata | t.GenericScrapeMetadata,\n logger?: t.Logger\n): string | undefined => {\n try {\n const sourceUrl =\n typeof metadata?.sourceURL === 'string' ? metadata.sourceURL : undefined;\n const metadataUrl =\n typeof metadata?.url === 'string' ? metadata.url : undefined;\n const url = sourceUrl ?? metadataUrl ?? link;\n const domain = new URL(url).hostname.replace(/^www\\./, '');\n if (domain !== '') {\n return domain;\n }\n } catch (e) {\n // URL parsing failed\n if (logger) {\n logger.error('Error parsing URL:', e);\n } else {\n console.error('Error parsing URL:', e);\n }\n }\n\n return;\n};\n\nexport function getAttribution(\n link: string,\n metadata?: t.ScrapeMetadata | t.GenericScrapeMetadata,\n logger?: t.Logger\n): string | undefined {\n if (!metadata) return getDomainName(link, metadata, logger);\n\n const twitterSite = metadata['twitter:site'];\n const twitterSiteFormatted =\n typeof twitterSite === 'string' ? twitterSite.replace(/^@/, '') : undefined;\n const title = metadata.title;\n\n const possibleAttributions = [\n metadata.ogSiteName,\n metadata['og:site_name'],\n typeof title === 'string' ? title.split('|').pop()?.trim() : undefined,\n twitterSiteFormatted,\n ];\n\n const attribution = possibleAttributions.find(\n (attr): attr is string => typeof attr === 'string' && attr.trim() !== ''\n );\n if (attribution != null) {\n return attribution;\n }\n\n return getDomainName(link, metadata, logger);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"utils.mjs","names":[],"sources":["../../../../src/tools/search/utils.ts"],"mappings":"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"}
@@ -5,11 +5,6 @@ const DEFAULT_BUDGET_PERCENT = .01;
5
5
  const DEFAULT_MAX_ENTRY_CHARS = 250;
6
6
  const DEFAULT_MIN_DESC_LENGTH = 20;
7
7
  const DEFAULT_CHARS_PER_TOKEN = 4;
8
- /**
9
- * Formats a skill catalog for injection into agent context.
10
- * Uses a truncation ladder: full descriptions, proportional truncation, names-only.
11
- * Returns empty string for empty input.
12
- */
13
8
  function formatSkillCatalog(skills, opts) {
14
9
  if (skills.length === 0) return "";
15
10
  const contextWindowTokens = opts?.contextWindowTokens ?? DEFAULT_CONTEXT_WINDOW_TOKENS;
@@ -42,7 +37,6 @@ function formatSkillCatalog(skills, opts) {
42
37
  function formatEntries(entries) {
43
38
  return `${HEADER}\n\n${entries.map((e) => e.description ? `- ${e.name}: ${e.description}` : `- ${e.name}`).join("\n")}`;
44
39
  }
45
- /** Names-only fallback that drops trailing entries if the list still exceeds budget. */
46
40
  function fitNamesOnly(entries, budgetChars) {
47
41
  const prefix = 21;
48
42
  const entryOverhead = 2;
@@ -1 +1 @@
1
- {"version":3,"file":"skillCatalog.mjs","names":[],"sources":["../../../src/tools/skillCatalog.ts"],"sourcesContent":["// src/tools/skillCatalog.ts\nimport type { SkillCatalogEntry } from '@/types';\n\nconst HEADER = '## Available Skills';\nconst DEFAULT_CONTEXT_WINDOW_TOKENS = 200_000;\nconst DEFAULT_BUDGET_PERCENT = 0.01;\nconst DEFAULT_MAX_ENTRY_CHARS = 250;\nconst DEFAULT_MIN_DESC_LENGTH = 20;\nconst DEFAULT_CHARS_PER_TOKEN = 4;\n\nexport type SkillCatalogOptions = {\n /** Total context window in tokens. Default: 200_000 */\n contextWindowTokens?: number;\n /** Fraction of context budget for catalog. Default: 0.01 (1%) */\n budgetPercent?: number;\n /** Max chars per entry description. Default: 250 */\n maxEntryChars?: number;\n /** Descriptions below this length trigger names-only fallback. Default: 20 */\n minDescLength?: number;\n /** Approximate chars per token for budget calculation. Default: 4 */\n charsPerToken?: number;\n};\n\n/**\n * Formats a skill catalog for injection into agent context.\n * Uses a truncation ladder: full descriptions, proportional truncation, names-only.\n * Returns empty string for empty input.\n */\nexport function formatSkillCatalog(\n skills: SkillCatalogEntry[],\n opts?: SkillCatalogOptions\n): string {\n if (skills.length === 0) return '';\n\n const contextWindowTokens =\n opts?.contextWindowTokens ?? DEFAULT_CONTEXT_WINDOW_TOKENS;\n const budgetPercent = opts?.budgetPercent ?? DEFAULT_BUDGET_PERCENT;\n const maxEntryChars = Math.max(\n 1,\n opts?.maxEntryChars ?? DEFAULT_MAX_ENTRY_CHARS\n );\n const minDescLength = opts?.minDescLength ?? DEFAULT_MIN_DESC_LENGTH;\n const charsPerToken = opts?.charsPerToken ?? DEFAULT_CHARS_PER_TOKEN;\n\n const budgetChars = Math.floor(\n contextWindowTokens * budgetPercent * charsPerToken\n );\n\n const capped = skills.map((s) => ({\n name: s.name,\n description:\n s.description.length > maxEntryChars\n ? s.description.slice(0, maxEntryChars - 1) + '\\u2026'\n : s.description,\n }));\n\n const fullOutput = formatEntries(capped);\n if (fullOutput.length <= budgetChars) return fullOutput;\n\n const headerLen = HEADER.length + 2;\n const newlineChars = capped.length > 1 ? capped.length - 1 : 0;\n const availableChars = budgetChars - headerLen - newlineChars;\n const perEntryOverhead = 4;\n const nameCharsTotal = capped.reduce(\n (sum, s) => sum + s.name.length + perEntryOverhead,\n 0\n );\n const availableForDescs = availableChars - nameCharsTotal;\n\n if (availableForDescs <= 0) {\n return fitNamesOnly(capped, budgetChars);\n }\n\n const maxDescPerEntry = Math.floor(availableForDescs / capped.length);\n\n if (maxDescPerEntry < minDescLength) {\n return fitNamesOnly(capped, budgetChars);\n }\n\n const truncated = capped.map((s) => ({\n name: s.name,\n description:\n s.description.length > maxDescPerEntry\n ? s.description.slice(0, maxDescPerEntry - 1) + '\\u2026'\n : s.description,\n }));\n\n const result = formatEntries(truncated);\n if (result.length <= budgetChars) return result;\n return fitNamesOnly(capped, budgetChars);\n}\n\nfunction formatEntries(\n entries: { name: string; description: string }[]\n): string {\n const lines = entries.map((e) =>\n e.description ? `- ${e.name}: ${e.description}` : `- ${e.name}`\n );\n return `${HEADER}\\n\\n${lines.join('\\n')}`;\n}\n\n/** Names-only fallback that drops trailing entries if the list still exceeds budget. */\nfunction fitNamesOnly(\n entries: { name: string }[],\n budgetChars: number\n): string {\n // Format: \"HEADER\\n\\n- name1\\n- name2\\n...\"\n // Running sum avoids O(n²) repeated string construction.\n const prefix = HEADER.length + 2; // \"HEADER\\n\\n\"\n const entryOverhead = 2; // \"- \"\n let total = prefix;\n let fitCount = 0;\n\n for (let i = 0; i < entries.length; i++) {\n const added = (i > 0 ? 1 : 0) + entryOverhead + entries[i].name.length;\n if (total + added > budgetChars) break;\n total += added;\n fitCount = i + 1;\n }\n\n if (fitCount === 0) return '';\n const namesOnly = entries\n .slice(0, fitCount)\n .map((s) => ({ name: s.name, description: '' }));\n return formatEntries(namesOnly);\n}\n"],"mappings":";AAGA,MAAM,SAAS;AACf,MAAM,gCAAgC;AACtC,MAAM,yBAAyB;AAC/B,MAAM,0BAA0B;AAChC,MAAM,0BAA0B;AAChC,MAAM,0BAA0B;;;;;;AAoBhC,SAAgB,mBACd,QACA,MACQ;CACR,IAAI,OAAO,WAAW,GAAG,OAAO;CAEhC,MAAM,sBACJ,MAAM,uBAAuB;CAC/B,MAAM,gBAAgB,MAAM,iBAAiB;CAC7C,MAAM,gBAAgB,KAAK,IACzB,GACA,MAAM,iBAAiB,uBACzB;CACA,MAAM,gBAAgB,MAAM,iBAAiB;CAC7C,MAAM,gBAAgB,MAAM,iBAAiB;CAE7C,MAAM,cAAc,KAAK,MACvB,sBAAsB,gBAAgB,aACxC;CAEA,MAAM,SAAS,OAAO,KAAK,OAAO;EAChC,MAAM,EAAE;EACR,aACE,EAAE,YAAY,SAAS,gBACnB,EAAE,YAAY,MAAM,GAAG,gBAAgB,CAAC,IAAI,MAC5C,EAAE;CACV,EAAE;CAEF,MAAM,aAAa,cAAc,MAAM;CACvC,IAAI,WAAW,UAAU,aAAa,OAAO;CAE7C,MAAM,YAAY;CAClB,MAAM,eAAe,OAAO,SAAS,IAAI,OAAO,SAAS,IAAI;CAC7D,MAAM,iBAAiB,cAAc,YAAY;CACjD,MAAM,mBAAmB;CAKzB,MAAM,oBAAoB,iBAJH,OAAO,QAC3B,KAAK,MAAM,MAAM,EAAE,KAAK,SAAS,kBAClC,CAEsD;CAExD,IAAI,qBAAqB,GACvB,OAAO,aAAa,QAAQ,WAAW;CAGzC,MAAM,kBAAkB,KAAK,MAAM,oBAAoB,OAAO,MAAM;CAEpE,IAAI,kBAAkB,eACpB,OAAO,aAAa,QAAQ,WAAW;CAWzC,MAAM,SAAS,cARG,OAAO,KAAK,OAAO;EACnC,MAAM,EAAE;EACR,aACE,EAAE,YAAY,SAAS,kBACnB,EAAE,YAAY,MAAM,GAAG,kBAAkB,CAAC,IAAI,MAC9C,EAAE;CACV,EAEqC,CAAC;CACtC,IAAI,OAAO,UAAU,aAAa,OAAO;CACzC,OAAO,aAAa,QAAQ,WAAW;AACzC;AAEA,SAAS,cACP,SACQ;CAIR,OAAO,GAAG,OAAO,MAHH,QAAQ,KAAK,MACzB,EAAE,cAAc,KAAK,EAAE,KAAK,IAAI,EAAE,gBAAgB,KAAK,EAAE,MAEhC,CAAC,CAAC,KAAK,IAAI;AACxC;;AAGA,SAAS,aACP,SACA,aACQ;CAGR,MAAM,SAAS;CACf,MAAM,gBAAgB;CACtB,IAAI,QAAQ;CACZ,IAAI,WAAW;CAEf,KAAK,IAAI,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAAK;EACvC,MAAM,SAAS,IAAI,IAAI,IAAI,KAAK,gBAAgB,QAAQ,EAAE,CAAC,KAAK;EAChE,IAAI,QAAQ,QAAQ,aAAa;EACjC,SAAS;EACT,WAAW,IAAI;CACjB;CAEA,IAAI,aAAa,GAAG,OAAO;CAI3B,OAAO,cAHW,QACf,MAAM,GAAG,QAAQ,CAAC,CAClB,KAAK,OAAO;EAAE,MAAM,EAAE;EAAM,aAAa;CAAG,EAClB,CAAC;AAChC"}
1
+ {"version":3,"file":"skillCatalog.mjs","names":[],"sources":["../../../src/tools/skillCatalog.ts"],"mappings":";AAGA,MAAM,SAAS;AACf,MAAM,gCAAgC;AACtC,MAAM,yBAAyB;AAC/B,MAAM,0BAA0B;AAChC,MAAM,0BAA0B;AAChC,MAAM,0BAA0B;AAoBhC,SAAgB,mBACd,QACA,MACQ;CACR,IAAI,OAAO,WAAW,GAAG,OAAO;CAEhC,MAAM,sBACJ,MAAM,uBAAuB;CAC/B,MAAM,gBAAgB,MAAM,iBAAiB;CAC7C,MAAM,gBAAgB,KAAK,IACzB,GACA,MAAM,iBAAiB,uBACzB;CACA,MAAM,gBAAgB,MAAM,iBAAiB;CAC7C,MAAM,gBAAgB,MAAM,iBAAiB;CAE7C,MAAM,cAAc,KAAK,MACvB,sBAAsB,gBAAgB,aACxC;CAEA,MAAM,SAAS,OAAO,KAAK,OAAO;EAChC,MAAM,EAAE;EACR,aACE,EAAE,YAAY,SAAS,gBACnB,EAAE,YAAY,MAAM,GAAG,gBAAgB,CAAC,IAAI,MAC5C,EAAE;CACV,EAAE;CAEF,MAAM,aAAa,cAAc,MAAM;CACvC,IAAI,WAAW,UAAU,aAAa,OAAO;CAE7C,MAAM,YAAY;CAClB,MAAM,eAAe,OAAO,SAAS,IAAI,OAAO,SAAS,IAAI;CAC7D,MAAM,iBAAiB,cAAc,YAAY;CACjD,MAAM,mBAAmB;CAKzB,MAAM,oBAAoB,iBAJH,OAAO,QAC3B,KAAK,MAAM,MAAM,EAAE,KAAK,SAAS,kBAClC,CAEsD;CAExD,IAAI,qBAAqB,GACvB,OAAO,aAAa,QAAQ,WAAW;CAGzC,MAAM,kBAAkB,KAAK,MAAM,oBAAoB,OAAO,MAAM;CAEpE,IAAI,kBAAkB,eACpB,OAAO,aAAa,QAAQ,WAAW;CAWzC,MAAM,SAAS,cARG,OAAO,KAAK,OAAO;EACnC,MAAM,EAAE;EACR,aACE,EAAE,YAAY,SAAS,kBACnB,EAAE,YAAY,MAAM,GAAG,kBAAkB,CAAC,IAAI,MAC9C,EAAE;CACV,EAEqC,CAAC;CACtC,IAAI,OAAO,UAAU,aAAa,OAAO;CACzC,OAAO,aAAa,QAAQ,WAAW;AACzC;AAEA,SAAS,cACP,SACQ;CAIR,OAAO,GAAG,OAAO,MAHH,QAAQ,KAAK,MACzB,EAAE,cAAc,KAAK,EAAE,KAAK,IAAI,EAAE,gBAAgB,KAAK,EAAE,MAEhC,CAAC,CAAC,KAAK,IAAI;AACxC;AAGA,SAAS,aACP,SACA,aACQ;CAGR,MAAM,SAAS;CACf,MAAM,gBAAgB;CACtB,IAAI,QAAQ;CACZ,IAAI,WAAW;CAEf,KAAK,IAAI,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAAK;EACvC,MAAM,SAAS,IAAI,IAAI,IAAI,KAAK,gBAAgB,QAAQ,EAAE,CAAC,KAAK;EAChE,IAAI,QAAQ,QAAQ,aAAa;EACjC,SAAS;EACT,WAAW,IAAI;CACjB;CAEA,IAAI,aAAa,GAAG,OAAO;CAI3B,OAAO,cAHW,QACf,MAAM,GAAG,QAAQ,CAAC,CAClB,KAAK,OAAO;EAAE,MAAM,EAAE;EAAM,aAAa;CAAG,EAClB,CAAC;AAChC"}
@@ -11,12 +11,6 @@ const STREAMED_TOOL_CALL_ADAPTERS = new Set([
11
11
  GOOGLE_STREAMED_TOOL_CALL_ADAPTER,
12
12
  OPENAI_CHAT_SEQUENTIAL_STREAMED_TOOL_CALL_ADAPTER
13
13
  ]);
14
- /**
15
- * Adapters whose wire protocol streams tool calls strictly sequentially by
16
- * index, so a prior call is sealed the moment a later index begins. Used by
17
- * the stream handler to extend next-index sealing beyond the provider-keyed
18
- * Anthropic allowlist.
19
- */
20
14
  const SEQUENTIAL_SEAL_STREAMED_TOOL_CALL_ADAPTERS = new Set([OPENAI_CHAT_SEQUENTIAL_STREAMED_TOOL_CALL_ADAPTER]);
21
15
  function streamedToolCallAdapterAllowsSequentialSeal(metadata) {
22
16
  const adapter = getStreamedToolCallAdapter(metadata);
@@ -1 +1 @@
1
- {"version":3,"file":"streamedToolCallSeals.mjs","names":[],"sources":["../../../src/tools/streamedToolCallSeals.ts"],"sourcesContent":["export const STREAMED_TOOL_CALL_ADAPTER_METADATA_KEY =\n 'lc_streamed_tool_call_adapter';\nexport const STREAMED_TOOL_CALL_SEAL_METADATA_KEY =\n 'lc_streamed_tool_call_seal';\nexport const OPENAI_RESPONSES_STREAMED_TOOL_CALL_ADAPTER = 'openai_responses';\nexport const BEDROCK_CONVERSE_STREAMED_TOOL_CALL_ADAPTER = 'bedrock_converse';\nexport const GOOGLE_STREAMED_TOOL_CALL_ADAPTER = 'google_genai';\nexport const OPENAI_CHAT_SEQUENTIAL_STREAMED_TOOL_CALL_ADAPTER =\n 'openai_chat_sequential';\n\nexport type StreamedToolCallAdapter =\n | typeof OPENAI_RESPONSES_STREAMED_TOOL_CALL_ADAPTER\n | typeof BEDROCK_CONVERSE_STREAMED_TOOL_CALL_ADAPTER\n | typeof GOOGLE_STREAMED_TOOL_CALL_ADAPTER\n | typeof OPENAI_CHAT_SEQUENTIAL_STREAMED_TOOL_CALL_ADAPTER;\n\nconst STREAMED_TOOL_CALL_ADAPTERS: ReadonlySet<string> = new Set([\n OPENAI_RESPONSES_STREAMED_TOOL_CALL_ADAPTER,\n BEDROCK_CONVERSE_STREAMED_TOOL_CALL_ADAPTER,\n GOOGLE_STREAMED_TOOL_CALL_ADAPTER,\n OPENAI_CHAT_SEQUENTIAL_STREAMED_TOOL_CALL_ADAPTER,\n]);\n\n/**\n * Adapters whose wire protocol streams tool calls strictly sequentially by\n * index, so a prior call is sealed the moment a later index begins. Used by\n * the stream handler to extend next-index sealing beyond the provider-keyed\n * Anthropic allowlist.\n */\nconst SEQUENTIAL_SEAL_STREAMED_TOOL_CALL_ADAPTERS: ReadonlySet<string> =\n new Set([OPENAI_CHAT_SEQUENTIAL_STREAMED_TOOL_CALL_ADAPTER]);\n\nexport function streamedToolCallAdapterAllowsSequentialSeal(\n metadata: Record<string, unknown> | undefined\n): boolean {\n const adapter = getStreamedToolCallAdapter(metadata);\n return (\n adapter != null && SEQUENTIAL_SEAL_STREAMED_TOOL_CALL_ADAPTERS.has(adapter)\n );\n}\n\nexport type StreamedToolCallSeal =\n | {\n kind: 'single';\n id?: string;\n index?: number;\n }\n | {\n kind: 'all';\n };\n\nexport function getStreamedToolCallAdapter(\n metadata: Record<string, unknown> | undefined\n): StreamedToolCallAdapter | undefined {\n const adapter = metadata?.[STREAMED_TOOL_CALL_ADAPTER_METADATA_KEY];\n if (typeof adapter === 'string' && STREAMED_TOOL_CALL_ADAPTERS.has(adapter)) {\n return adapter as StreamedToolCallAdapter;\n }\n return undefined;\n}\n\nexport function getStreamedToolCallSeal(\n metadata: Record<string, unknown> | undefined\n): StreamedToolCallSeal | undefined {\n const seal = metadata?.[STREAMED_TOOL_CALL_SEAL_METADATA_KEY];\n if (seal == null || typeof seal !== 'object') {\n return undefined;\n }\n if (!('kind' in seal)) {\n return undefined;\n }\n if (seal.kind === 'all') {\n return { kind: 'all' };\n }\n if (seal.kind !== 'single') {\n return undefined;\n }\n const id = 'id' in seal && typeof seal.id === 'string' ? seal.id : undefined;\n const index =\n 'index' in seal && typeof seal.index === 'number' ? seal.index : undefined;\n if (id == null && index == null) {\n return undefined;\n }\n return { kind: 'single', id, index };\n}\n"],"mappings":";AAAA,MAAa,0CACX;AACF,MAAa,uCACX;AACF,MAAa,8CAA8C;AAC3D,MAAa,8CAA8C;AAC3D,MAAa,oCAAoC;AACjD,MAAa,oDACX;AAQF,MAAM,8BAAmD,IAAI,IAAI;CAC/D;CACA;CACA;CACA;AACF,CAAC;;;;;;;AAQD,MAAM,8CACJ,IAAI,IAAI,CAAC,iDAAiD,CAAC;AAE7D,SAAgB,4CACd,UACS;CACT,MAAM,UAAU,2BAA2B,QAAQ;CACnD,OACE,WAAW,QAAQ,4CAA4C,IAAI,OAAO;AAE9E;AAYA,SAAgB,2BACd,UACqC;CACrC,MAAM,UAAU,WAAW;CAC3B,IAAI,OAAO,YAAY,YAAY,4BAA4B,IAAI,OAAO,GACxE,OAAO;AAGX;AAEA,SAAgB,wBACd,UACkC;CAClC,MAAM,OAAO,WAAW;CACxB,IAAI,QAAQ,QAAQ,OAAO,SAAS,UAClC;CAEF,IAAI,EAAE,UAAU,OACd;CAEF,IAAI,KAAK,SAAS,OAChB,OAAO,EAAE,MAAM,MAAM;CAEvB,IAAI,KAAK,SAAS,UAChB;CAEF,MAAM,KAAK,QAAQ,QAAQ,OAAO,KAAK,OAAO,WAAW,KAAK,KAAK,KAAA;CACnE,MAAM,QACJ,WAAW,QAAQ,OAAO,KAAK,UAAU,WAAW,KAAK,QAAQ,KAAA;CACnE,IAAI,MAAM,QAAQ,SAAS,MACzB;CAEF,OAAO;EAAE,MAAM;EAAU;EAAI;CAAM;AACrC"}
1
+ {"version":3,"file":"streamedToolCallSeals.mjs","names":[],"sources":["../../../src/tools/streamedToolCallSeals.ts"],"mappings":";AAAA,MAAa,0CACX;AACF,MAAa,uCACX;AACF,MAAa,8CAA8C;AAC3D,MAAa,8CAA8C;AAC3D,MAAa,oCAAoC;AACjD,MAAa,oDACX;AAQF,MAAM,8BAAmD,IAAI,IAAI;CAC/D;CACA;CACA;CACA;AACF,CAAC;AAQD,MAAM,8CACJ,IAAI,IAAI,CAAC,iDAAiD,CAAC;AAE7D,SAAgB,4CACd,UACS;CACT,MAAM,UAAU,2BAA2B,QAAQ;CACnD,OACE,WAAW,QAAQ,4CAA4C,IAAI,OAAO;AAE9E;AAYA,SAAgB,2BACd,UACqC;CACrC,MAAM,UAAU,WAAW;CAC3B,IAAI,OAAO,YAAY,YAAY,4BAA4B,IAAI,OAAO,GACxE,OAAO;AAGX;AAEA,SAAgB,wBACd,UACkC;CAClC,MAAM,OAAO,WAAW;CACxB,IAAI,QAAQ,QAAQ,OAAO,SAAS,UAClC;CAEF,IAAI,EAAE,UAAU,OACd;CAEF,IAAI,KAAK,SAAS,OAChB,OAAO,EAAE,MAAM,MAAM;CAEvB,IAAI,KAAK,SAAS,UAChB;CAEF,MAAM,KAAK,QAAQ,QAAQ,OAAO,KAAK,OAAO,WAAW,KAAK,KAAK,KAAA;CACnE,MAAM,QACJ,WAAW,QAAQ,OAAO,KAAK,UAAU,WAAW,KAAK,QAAQ,KAAA;CACnE,IAAI,MAAM,QAAQ,SAAS,MACzB;CAEF,OAAO;EAAE,MAAM;EAAU;EAAI;CAAM;AACrC"}
@@ -183,7 +183,6 @@ var SubagentSettlementBindingError = class extends Error {
183
183
  this.name = "SubagentSettlementBindingError";
184
184
  }
185
185
  };
186
- /** In-process source of truth for one Durable Subagent Execution. */
187
186
  var SubagentExecutionRecord = class {
188
187
  address;
189
188
  identityValue;
@@ -458,7 +457,6 @@ var SubagentExecutionRecord = class {
458
457
  this.phaseValue = next;
459
458
  }
460
459
  };
461
- /** Owns canonical addressing, record selection, and invalidation. */
462
460
  var SubagentExecutionRegistry = class {
463
461
  options;
464
462
  recordsByAddress = /* @__PURE__ */ new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"SubagentExecutionRegistry.mjs","names":[],"sources":["../../../../src/tools/subagent/SubagentExecutionRegistry.ts"],"sourcesContent":["import type { RunnableConfig } from '@langchain/core/runnables';\nimport type { SubagentResumeExecution } from './SubagentReplay';\nimport {\n getSubagentResumeManifest,\n SUBAGENT_PARENT_BATCH_CONFIG_KEY,\n SUBAGENT_RESUME_ATTEMPT_CONFIG_KEY,\n} from './SubagentReplay';\n\nconst SUBAGENT_THREAD_ID_PREFIX = 'subagent:';\nconst SUBAGENT_EXECUTION_INVALIDATED_MESSAGE =\n 'Subagent execution was invalidated.';\n\nexport type SubagentExecutionAddressInput = {\n threadId?: string;\n parentToolCallId: string;\n parentConfigurable?: Record<string, unknown>;\n};\n\nexport type SubagentExecutionAddress = Readonly<{\n key: string;\n baseChildThreadId: string;\n branchChildThreadId: string;\n currentChildRunId: string;\n explicitResumeAttempt: boolean;\n parentToolCallId: string;\n resumeAttemptId: string;\n}>;\n\nexport type SubagentExecutionIdentity = Readonly<{\n childRunId: string;\n childThreadId: string;\n approvalExecutionScope: string;\n}>;\n\nexport interface SubagentExecutionPreparationLease {\n readonly ownsCheckpoint: boolean;\n readonly ownsCreatedCheckpoint: boolean;\n readonly ownsApprovalScope: boolean;\n readonly ownsCreatedApprovalScope: boolean;\n assertOwned(): void;\n markCheckpointCreated(cleanup: () => Promise<void>): void;\n markApprovalScopeCreated(cleanup: () => Promise<void>): void;\n release(): void;\n rollback(\n cause: unknown,\n cleanup?: (lease: SubagentExecutionPreparationLease) => Promise<void>\n ): Promise<never>;\n}\n\nexport type PreparedSubagentExecutionIdentity = Readonly<{\n identity: SubagentExecutionIdentity;\n lease: SubagentExecutionPreparationLease;\n commit?: (lease: SubagentExecutionPreparationLease) => void;\n rollback?: (lease: SubagentExecutionPreparationLease) => Promise<void>;\n}>;\n\nexport type SubagentDefinitionBinding = Readonly<{\n subagentType?: string;\n configId?: string;\n}>;\n\nexport type SubagentInvocationBinding = Readonly<{\n description: string;\n subagentType: string;\n configId?: string;\n}>;\n\nexport type SubagentSettlementBinding = Readonly<{\n definitionAuthority: 'provisional' | 'effective';\n fingerprint: string;\n invocation: SubagentInvocationBinding;\n subagentType?: string;\n configId?: string;\n}>;\n\nexport type SubagentExecutionPhase =\n | 'registered'\n | 'active'\n | 'interrupted'\n | 'failed'\n | 'completed'\n | 'invalidated';\n\nexport interface ExecutionSnapshot<TResult, TResolvedConfig, TActiveRun> {\n readonly address: SubagentExecutionAddress;\n readonly phase: SubagentExecutionPhase;\n readonly identity?: SubagentExecutionIdentity;\n readonly binding?: SubagentDefinitionBinding;\n readonly invocation?: SubagentInvocationBinding;\n readonly settlement?: SubagentSettlementBinding;\n readonly resumeExecution?: SubagentResumeExecution;\n readonly activeRun?: TActiveRun;\n readonly completedResult?: TResult;\n readonly resolvedConfig?: TResolvedConfig;\n readonly started: boolean;\n readonly completed: boolean;\n readonly resolvingIdentity: boolean;\n readonly resolving: boolean;\n readonly executing: boolean;\n readonly settling: boolean;\n readonly settled: boolean;\n}\n\nexport type SubagentExecutionRegistryOptions = {\n parentRunId: string;\n parentAgentId?: string;\n durable: boolean;\n};\n\ntype ResumeSelection = {\n parentToolCallIds?: ReadonlySet<string>;\n config?: RunnableConfig;\n};\n\ntype OwnedPreparationResource = {\n status: 'owned';\n token: number;\n created: boolean;\n cleanup?: () => Promise<void>;\n};\n\ntype CleaningPreparationResource = {\n status: 'cleaning';\n token: number;\n};\n\ntype PreparationResourceState =\n | OwnedPreparationResource\n | CleaningPreparationResource;\n\nfunction getPreparationResourceKey(\n kind: 'checkpoint' | 'approval',\n identity: string\n): string {\n return JSON.stringify([kind, identity]);\n}\n\nfunction attachRollbackError(cause: unknown, rollbackError: unknown): void {\n if (!(cause instanceof Error)) {\n return;\n }\n try {\n Object.defineProperty(cause, 'rollbackError', {\n configurable: true,\n value: rollbackError,\n });\n } catch {\n return;\n }\n}\n\nclass PreparationLease implements SubagentExecutionPreparationLease {\n constructor(\n private readonly owners: Map<string, PreparationResourceState>,\n private readonly token: number,\n private readonly checkpointKey: string,\n private readonly approvalKey: string\n ) {}\n\n get ownsCheckpoint(): boolean {\n return this.owns(this.checkpointKey);\n }\n\n get ownsCreatedCheckpoint(): boolean {\n return this.isCreated(this.checkpointKey);\n }\n\n get ownsApprovalScope(): boolean {\n return this.owns(this.approvalKey);\n }\n\n get ownsCreatedApprovalScope(): boolean {\n return this.isCreated(this.approvalKey);\n }\n\n assertOwned(): void {\n if (!this.owns(this.checkpointKey) || !this.owns(this.approvalKey)) {\n throw new SubagentExecutionInvalidatedError();\n }\n }\n\n markCheckpointCreated(cleanup: () => Promise<void>): void {\n this.markCreated(this.checkpointKey, cleanup);\n }\n\n markApprovalScopeCreated(cleanup: () => Promise<void>): void {\n this.markCreated(this.approvalKey, cleanup);\n }\n\n release(): void {\n this.releaseResource(this.checkpointKey);\n this.releaseResource(this.approvalKey);\n }\n\n async rollback(\n cause: unknown,\n cleanup?: (lease: SubagentExecutionPreparationLease) => Promise<void>\n ): Promise<never> {\n let rollbackError: unknown;\n let rollbackFailed = false;\n try {\n await cleanup?.(this);\n } catch (error) {\n rollbackError = error;\n rollbackFailed = true;\n }\n const resourceRollback = await this.rollbackOwnedResources();\n if (!rollbackFailed && resourceRollback.failed) {\n rollbackError = resourceRollback.error;\n rollbackFailed = true;\n }\n try {\n if (rollbackFailed) {\n attachRollbackError(cause, rollbackError);\n }\n } finally {\n this.release();\n }\n throw cause;\n }\n\n private owns(key: string): boolean {\n const owner = this.owners.get(key);\n return owner?.status === 'owned' && owner.token === this.token;\n }\n\n private isCreated(key: string): boolean {\n const owner = this.owners.get(key);\n return (\n owner?.status === 'owned' && owner.token === this.token && owner.created\n );\n }\n\n private markCreated(key: string, cleanup: () => Promise<void>): void {\n const owner = this.owners.get(key);\n if (owner?.status !== 'owned' || owner.token !== this.token) {\n throw new SubagentExecutionInvalidatedError();\n }\n owner.created = true;\n owner.cleanup = cleanup;\n }\n\n private async rollbackOwnedResources(): Promise<{\n failed: boolean;\n error?: unknown;\n }> {\n const cleanups: Array<{\n key: string;\n state: CleaningPreparationResource;\n cleanup: () => Promise<void>;\n }> = [];\n for (const key of [this.checkpointKey, this.approvalKey]) {\n const owner = this.owners.get(key);\n if (owner?.status !== 'owned' || owner.token !== this.token) {\n continue;\n }\n if (!owner.created || owner.cleanup == null) {\n this.owners.delete(key);\n continue;\n }\n const state: CleaningPreparationResource = {\n status: 'cleaning',\n token: this.token,\n };\n this.owners.set(key, state);\n cleanups.push({ key, state, cleanup: owner.cleanup });\n }\n const results = await Promise.all(\n cleanups.map(({ key, state, cleanup }) =>\n this.cleanResource(key, state, cleanup)\n )\n );\n return results.find((result) => result.failed) ?? { failed: false };\n }\n\n private async cleanResource(\n key: string,\n state: CleaningPreparationResource,\n cleanup: () => Promise<void>\n ): Promise<{ failed: boolean; error?: unknown }> {\n try {\n await cleanup();\n return { failed: false };\n } catch (error) {\n return { failed: true, error };\n } finally {\n if (this.owners.get(key) === state) {\n this.owners.delete(key);\n }\n }\n }\n\n private releaseResource(key: string): void {\n const owner = this.owners.get(key);\n if (owner?.status === 'owned' && owner.token === this.token) {\n this.owners.delete(key);\n }\n }\n}\n\nfunction getConfigurable(\n config?: RunnableConfig\n): Record<string, unknown> | undefined {\n return config?.configurable as Record<string, unknown> | undefined;\n}\n\nfunction getConfigurableString(\n configurable: Record<string, unknown> | undefined,\n key: string\n): string | undefined {\n const value = configurable?.[key];\n return typeof value === 'string' && value.length > 0 ? value : undefined;\n}\n\nfunction encodeThreadIdentity(identity: string[]): string {\n return `${SUBAGENT_THREAD_ID_PREFIX}${Buffer.from(\n JSON.stringify(identity)\n ).toString('base64url')}`;\n}\n\nfunction assertSameIdentity(\n current: SubagentExecutionIdentity,\n next: SubagentExecutionIdentity\n): void {\n if (\n current.childRunId === next.childRunId &&\n current.childThreadId === next.childThreadId &&\n current.approvalExecutionScope === next.approvalExecutionScope\n ) {\n return;\n }\n throw new Error('Subagent execution identity cannot change after binding.');\n}\n\nfunction assertCompatibleResumeExecution(\n current: SubagentResumeExecution,\n next: SubagentResumeExecution\n): void {\n if (\n current.parentToolCallId === next.parentToolCallId &&\n current.childRunId === next.childRunId &&\n current.subagentType === next.subagentType &&\n current.configId === next.configId\n ) {\n return;\n }\n throw new Error('Subagent resume source cannot change after binding.');\n}\n\nfunction assertSameInvocation(\n current: SubagentInvocationBinding,\n next: SubagentInvocationBinding\n): void {\n if (\n current.description === next.description &&\n current.subagentType === next.subagentType &&\n current.configId === next.configId\n ) {\n return;\n }\n throw new SubagentInvocationBindingError();\n}\n\nfunction assertSameSettlement(\n current: SubagentSettlementBinding,\n next: SubagentSettlementBinding\n): void {\n if (\n current.definitionAuthority === next.definitionAuthority &&\n current.fingerprint === next.fingerprint &&\n current.subagentType === next.subagentType &&\n current.configId === next.configId\n ) {\n return;\n }\n throw new SubagentSettlementBindingError();\n}\n\nfunction getAbortReason(signal: AbortSignal): unknown {\n return signal.reason ?? new Error('Subagent execution aborted.');\n}\n\nexport function getSubagentApprovalExecutionScope(\n childRunId: string,\n resumeAttemptId: string\n): string {\n return `subagent-approval:${Buffer.from(\n JSON.stringify([childRunId, resumeAttemptId])\n ).toString('base64url')}`;\n}\n\nexport class SubagentExecutionInvalidatedError extends Error {\n constructor() {\n super(SUBAGENT_EXECUTION_INVALIDATED_MESSAGE);\n this.name = 'SubagentExecutionInvalidatedError';\n }\n}\n\nexport class SubagentDefinitionBindingError extends Error {\n constructor() {\n super('Subagent effective definition binding cannot change.');\n this.name = 'SubagentDefinitionBindingError';\n }\n}\n\nexport class SubagentInvocationBindingError extends Error {\n constructor() {\n super('Subagent invocation binding cannot change.');\n this.name = 'SubagentInvocationBindingError';\n }\n}\n\nexport class SubagentSettlementBindingError extends Error {\n constructor() {\n super('Subagent settlement binding cannot change.');\n this.name = 'SubagentSettlementBindingError';\n }\n}\n\n/** In-process source of truth for one Durable Subagent Execution. */\nexport class SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput = never,\n> {\n private identityValue?: SubagentExecutionIdentity;\n private bindingValue?: SubagentDefinitionBinding;\n private bindingAuthority?: 'provisional' | 'effective';\n private invocationValue?: SubagentInvocationBinding;\n private settlementValue?: SubagentSettlementBinding;\n private settledOutputValue?: TSettledOutput;\n private resumeExecutionValue?: SubagentResumeExecution;\n private activeRunValue?: TActiveRun;\n private completedResultValue?: TResult;\n private resolvedConfigValue?: TResolvedConfig;\n private pendingIdentityResolution?: Promise<SubagentExecutionIdentity>;\n private pendingConfigResolution?: Promise<TResolvedConfig>;\n private pendingExecution?: Promise<TResult>;\n private pendingSettlement?: Promise<void>;\n private phaseValue: SubagentExecutionPhase = 'registered';\n private startedValue = false;\n private completedValue = false;\n private settledValue = false;\n\n constructor(\n readonly address: SubagentExecutionAddress,\n resumeExecution?: SubagentResumeExecution\n ) {\n this.resumeExecutionValue = resumeExecution;\n }\n\n get snapshot(): ExecutionSnapshot<TResult, TResolvedConfig, TActiveRun> {\n return {\n address: this.address,\n phase: this.phaseValue,\n ...(this.identityValue == null ? {} : { identity: this.identityValue }),\n ...(this.bindingValue == null ? {} : { binding: this.bindingValue }),\n ...(this.invocationValue == null\n ? {}\n : { invocation: this.invocationValue }),\n ...(this.settlementValue == null\n ? {}\n : { settlement: this.settlementValue }),\n ...(this.resumeExecutionValue == null\n ? {}\n : { resumeExecution: this.resumeExecutionValue }),\n ...(this.activeRunValue == null\n ? {}\n : { activeRun: this.activeRunValue }),\n ...(this.completedResultValue == null\n ? {}\n : { completedResult: this.completedResultValue }),\n ...(this.resolvedConfigValue == null\n ? {}\n : { resolvedConfig: this.resolvedConfigValue }),\n started: this.startedValue,\n completed: this.completedValue,\n resolvingIdentity: this.pendingIdentityResolution != null,\n resolving: this.pendingConfigResolution != null,\n executing: this.pendingExecution != null,\n settling: this.pendingSettlement != null,\n settled: this.settledValue,\n };\n }\n\n get identity(): SubagentExecutionIdentity | undefined {\n return this.identityValue;\n }\n\n get binding(): SubagentDefinitionBinding | undefined {\n return this.bindingValue;\n }\n\n get resumeExecution(): SubagentResumeExecution | undefined {\n return this.resumeExecutionValue;\n }\n\n get invocation(): SubagentInvocationBinding | undefined {\n return this.invocationValue;\n }\n\n get activeRun(): TActiveRun | undefined {\n return this.activeRunValue;\n }\n\n get settlement(): SubagentSettlementBinding | undefined {\n return this.settlementValue;\n }\n\n get settledOutput(): TSettledOutput | undefined {\n return this.settledOutputValue;\n }\n\n get completedResult(): TResult | undefined {\n return this.completedResultValue;\n }\n\n get resolvedConfig(): TResolvedConfig | undefined {\n return this.resolvedConfigValue;\n }\n\n get started(): boolean {\n return this.startedValue;\n }\n\n get completed(): boolean {\n return this.completedValue;\n }\n\n assertUsable(signal?: AbortSignal): void {\n if (signal?.aborted === true) {\n throw getAbortReason(signal);\n }\n if (this.phaseValue === 'invalidated') {\n throw new SubagentExecutionInvalidatedError();\n }\n }\n\n attachResumeExecution(resumeExecution?: SubagentResumeExecution): void {\n if (resumeExecution == null) {\n return;\n }\n if (this.resumeExecutionValue != null) {\n assertCompatibleResumeExecution(\n this.resumeExecutionValue,\n resumeExecution\n );\n return;\n }\n this.resumeExecutionValue = resumeExecution;\n }\n\n bindIdentity(identity: SubagentExecutionIdentity): void {\n this.assertUsable();\n if (this.identityValue != null) {\n assertSameIdentity(this.identityValue, identity);\n return;\n }\n this.identityValue = Object.freeze({ ...identity });\n }\n\n resolveIdentity(\n resolve: () => Promise<PreparedSubagentExecutionIdentity>\n ): Promise<SubagentExecutionIdentity> {\n this.assertUsable();\n if (this.identityValue != null) {\n return Promise.resolve(this.identityValue);\n }\n if (this.pendingIdentityResolution != null) {\n return this.pendingIdentityResolution;\n }\n const pending = Promise.resolve()\n .then(() => {\n this.assertCurrentIdentityResolution(pending);\n return resolve();\n })\n .then(async (resolution): Promise<SubagentExecutionIdentity> => {\n try {\n this.assertCurrentIdentityResolution(pending);\n resolution.lease.assertOwned();\n resolution.commit?.(resolution.lease);\n this.assertCurrentIdentityResolution(pending);\n resolution.lease.assertOwned();\n this.bindIdentity(resolution.identity);\n const boundIdentity = this.identityValue;\n if (boundIdentity == null) {\n throw new SubagentExecutionInvalidatedError();\n }\n resolution.lease.release();\n return boundIdentity;\n } catch (error) {\n return resolution.lease.rollback(\n error,\n async (lease): Promise<void> => {\n await resolution.rollback?.(lease);\n }\n );\n }\n })\n .finally(() => {\n if (this.pendingIdentityResolution === pending) {\n this.pendingIdentityResolution = undefined;\n }\n });\n this.pendingIdentityResolution = pending;\n return pending;\n }\n\n bindDefinition(\n binding: SubagentDefinitionBinding,\n authority: 'provisional' | 'effective'\n ): void {\n this.assertUsable();\n if (this.bindingAuthority === 'effective') {\n if (authority === 'provisional') {\n return;\n }\n if (\n this.bindingValue?.subagentType !== binding.subagentType ||\n this.bindingValue?.configId !== binding.configId\n ) {\n throw new SubagentDefinitionBindingError();\n }\n return;\n }\n if (authority === 'provisional' && this.bindingValue != null) {\n return;\n }\n this.bindingValue = Object.freeze({ ...binding });\n this.bindingAuthority = authority;\n }\n\n resolveConfig(\n resolve: () => Promise<TResolvedConfig>,\n signal: AbortSignal\n ): Promise<TResolvedConfig> {\n this.assertUsable(signal);\n if (this.resolvedConfigValue != null) {\n return Promise.resolve(this.resolvedConfigValue);\n }\n if (this.pendingConfigResolution != null) {\n return this.pendingConfigResolution;\n }\n const pending = Promise.resolve()\n .then(resolve)\n .then((resolvedConfig): TResolvedConfig => {\n this.assertUsable(signal);\n if (this.pendingConfigResolution !== pending) {\n throw new SubagentExecutionInvalidatedError();\n }\n this.resolvedConfigValue = resolvedConfig;\n return resolvedConfig;\n })\n .finally(() => {\n if (this.pendingConfigResolution === pending) {\n this.pendingConfigResolution = undefined;\n }\n });\n this.pendingConfigResolution = pending;\n return pending;\n }\n\n execute(\n invocation: SubagentInvocationBinding,\n execute: () => Promise<TResult>\n ): Promise<TResult> {\n this.bindDefinition(\n {\n subagentType: invocation.subagentType,\n ...(invocation.configId == null\n ? {}\n : { configId: invocation.configId }),\n },\n 'effective'\n );\n this.bindInvocation(invocation);\n if (this.pendingExecution != null) {\n return this.pendingExecution;\n }\n const pending = Promise.resolve()\n .then(execute)\n .finally(() => {\n if (this.pendingExecution === pending) {\n this.pendingExecution = undefined;\n }\n });\n this.pendingExecution = pending;\n return pending;\n }\n\n settle(\n settlement: SubagentSettlementBinding,\n settledOutput: TSettledOutput,\n persist: () => Promise<void>\n ): Promise<void> {\n this.bindDefinition(\n {\n ...(settlement.subagentType == null\n ? {}\n : { subagentType: settlement.subagentType }),\n ...(settlement.configId == null\n ? {}\n : { configId: settlement.configId }),\n },\n settlement.definitionAuthority\n );\n this.bindInvocation(settlement.invocation);\n if (this.settlementValue != null) {\n assertSameSettlement(this.settlementValue, settlement);\n } else {\n this.settlementValue = Object.freeze({\n ...settlement,\n invocation: Object.freeze({ ...settlement.invocation }),\n });\n }\n if (this.settledValue) {\n return Promise.resolve();\n }\n if (this.pendingSettlement != null) {\n return this.pendingSettlement;\n }\n const pending = Promise.resolve()\n .then(persist)\n .then((): void => {\n this.assertUsable();\n if (this.pendingSettlement !== pending) {\n throw new SubagentExecutionInvalidatedError();\n }\n this.settledValue = true;\n this.settledOutputValue = settledOutput;\n this.activeRunValue = undefined;\n this.completedResultValue = undefined;\n this.resolvedConfigValue = undefined;\n })\n .finally(() => {\n if (this.pendingSettlement === pending) {\n this.pendingSettlement = undefined;\n }\n });\n this.pendingSettlement = pending;\n return pending;\n }\n\n activate(activeRun: TActiveRun): TActiveRun {\n this.transitionTo('active', [\n 'registered',\n 'active',\n 'interrupted',\n 'failed',\n ]);\n if (this.activeRunValue != null) {\n return this.activeRunValue;\n }\n this.activeRunValue = activeRun;\n return activeRun;\n }\n\n markStarted(): void {\n this.assertUsable();\n if (this.phaseValue === 'completed') {\n throw new Error('Completed subagent execution cannot start again.');\n }\n this.startedValue = true;\n }\n\n markInterrupted(): void {\n this.transitionTo('interrupted', ['active', 'interrupted']);\n }\n\n markFailed(): void {\n this.transitionTo('failed', [\n 'registered',\n 'active',\n 'interrupted',\n 'failed',\n ]);\n this.activeRunValue = undefined;\n this.resolvedConfigValue = undefined;\n }\n\n markCompleted(result: TResult): void {\n this.transitionTo('completed', ['active']);\n this.completedValue = true;\n this.completedResultValue = result;\n this.resolvedConfigValue = undefined;\n }\n\n releaseActiveRun(): TActiveRun | undefined {\n const activeRun = this.activeRunValue;\n this.activeRunValue = undefined;\n return activeRun;\n }\n\n releaseResolvedConfig(): void {\n this.resolvedConfigValue = undefined;\n }\n\n invalidate(): void {\n this.phaseValue = 'invalidated';\n this.identityValue = undefined;\n this.bindingValue = undefined;\n this.bindingAuthority = undefined;\n this.invocationValue = undefined;\n this.settlementValue = undefined;\n this.settledOutputValue = undefined;\n this.resumeExecutionValue = undefined;\n this.activeRunValue = undefined;\n this.completedResultValue = undefined;\n this.resolvedConfigValue = undefined;\n this.pendingIdentityResolution = undefined;\n this.pendingConfigResolution = undefined;\n this.pendingExecution = undefined;\n this.pendingSettlement = undefined;\n this.startedValue = false;\n this.completedValue = false;\n this.settledValue = false;\n }\n\n private bindInvocation(invocation: SubagentInvocationBinding): void {\n if (this.invocationValue != null) {\n assertSameInvocation(this.invocationValue, invocation);\n return;\n }\n this.invocationValue = Object.freeze({ ...invocation });\n }\n\n private assertCurrentIdentityResolution(\n pending: Promise<SubagentExecutionIdentity>\n ): void {\n this.assertUsable();\n if (this.pendingIdentityResolution !== pending) {\n throw new SubagentExecutionInvalidatedError();\n }\n }\n\n private transitionTo(\n next: SubagentExecutionPhase,\n allowed: ReadonlyArray<SubagentExecutionPhase>\n ): void {\n this.assertUsable();\n if (!allowed.includes(this.phaseValue)) {\n throw new Error(\n `Cannot transition subagent execution from ${this.phaseValue} to ${next}.`\n );\n }\n this.phaseValue = next;\n }\n}\n\n/** Owns canonical addressing, record selection, and invalidation. */\nexport class SubagentExecutionRegistry<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput = never,\n> {\n private readonly recordsByAddress = new Map<\n string,\n SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n >\n >();\n private readonly checkpointThreadIds = new Set<string>();\n private readonly preparationResourceOwners = new Map<\n string,\n PreparationResourceState\n >();\n private nextPreparationToken = 0;\n\n constructor(private readonly options: SubagentExecutionRegistryOptions) {}\n\n open(\n input: SubagentExecutionAddressInput\n ): SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n > {\n const address = this.createAddress(input);\n const resumeExecution = getSubagentResumeManifest(\n input.parentConfigurable\n )?.executions.find(\n (execution) => execution.parentToolCallId === input.parentToolCallId\n );\n const current = this.recordsByAddress.get(address.key);\n if (current != null) {\n current.attachResumeExecution(resumeExecution);\n return current;\n }\n const record = new SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n >(address, resumeExecution);\n this.recordsByAddress.set(address.key, record);\n return record;\n }\n\n remove(\n record: SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n >\n ): void {\n if (this.recordsByAddress.get(record.address.key) !== record) {\n return;\n }\n this.recordsByAddress.delete(record.address.key);\n record.invalidate();\n }\n\n beginIdentityPreparation(\n record: SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n >,\n identity: SubagentExecutionIdentity\n ): SubagentExecutionPreparationLease {\n record.assertUsable();\n if (this.recordsByAddress.get(record.address.key) !== record) {\n throw new SubagentExecutionInvalidatedError();\n }\n const checkpointKey = getPreparationResourceKey(\n 'checkpoint',\n identity.childThreadId\n );\n const approvalKey = getPreparationResourceKey(\n 'approval',\n identity.approvalExecutionScope\n );\n const resourceKeys = [checkpointKey, approvalKey];\n const currentResources = resourceKeys.map((key) =>\n this.preparationResourceOwners.get(key)\n );\n if (currentResources.some((resource) => resource != null)) {\n throw new SubagentExecutionInvalidatedError();\n }\n this.nextPreparationToken += 1;\n const token = this.nextPreparationToken;\n for (let i = 0; i < resourceKeys.length; i++) {\n const key = resourceKeys[i];\n this.preparationResourceOwners.set(key, {\n status: 'owned',\n token,\n created: false,\n });\n }\n return new PreparationLease(\n this.preparationResourceOwners,\n token,\n checkpointKey,\n approvalKey\n );\n }\n\n selectForResume(\n selection: ResumeSelection = {}\n ): SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n >[] {\n if (selection.config != null) {\n return this.selectScopedRecords(selection);\n }\n const counts = new Map<string, number>();\n const candidates: SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n >[] = [];\n for (const record of this.recordsByAddress.values()) {\n if (record.identity == null) {\n continue;\n }\n const parentToolCallId = record.address.parentToolCallId;\n if (\n selection.parentToolCallIds != null &&\n !selection.parentToolCallIds.has(parentToolCallId)\n ) {\n continue;\n }\n candidates.push(record);\n counts.set(parentToolCallId, (counts.get(parentToolCallId) ?? 0) + 1);\n }\n return candidates.filter(\n (record) => counts.get(record.address.parentToolCallId) === 1\n );\n }\n\n rememberCheckpointThread(...threadIds: string[]): void {\n for (const threadId of threadIds) {\n this.checkpointThreadIds.add(threadId);\n }\n }\n\n getCheckpointThreadIds(\n getNestedThreadIds?: (activeRun: TActiveRun) => ReadonlyArray<string>\n ): string[] {\n const threadIds = new Set(this.checkpointThreadIds);\n if (getNestedThreadIds == null) {\n return [...threadIds];\n }\n for (const record of this.recordsByAddress.values()) {\n if (record.activeRun == null) {\n continue;\n }\n for (const threadId of getNestedThreadIds(record.activeRun)) {\n threadIds.add(threadId);\n }\n }\n return [...threadIds];\n }\n\n resetCheckpointThreadIds(): void {\n this.checkpointThreadIds.clear();\n }\n\n retireResumeSources(\n current: SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n >,\n sourceThreadIds: ReadonlySet<string>,\n retire: (\n source: SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n >\n ) => void\n ): void {\n for (const record of this.recordsByAddress.values()) {\n if (\n record === current ||\n record.identity == null ||\n !sourceThreadIds.has(record.identity.childThreadId)\n ) {\n continue;\n }\n try {\n retire(record);\n } finally {\n this.remove(record);\n }\n }\n }\n\n clear(\n dispose?: (\n record: SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n >\n ) => void\n ): void {\n for (const record of this.recordsByAddress.values()) {\n dispose?.(record);\n record.invalidate();\n }\n this.recordsByAddress.clear();\n }\n\n private selectScopedRecords(\n selection: ResumeSelection\n ): SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n >[] {\n const parentConfigurable = getConfigurable(selection.config);\n const threadId = getConfigurableString(parentConfigurable, 'thread_id');\n const parentToolCallIds =\n selection.parentToolCallIds ??\n new Set(\n [...this.recordsByAddress.values()].map(\n (record) => record.address.parentToolCallId\n )\n );\n const records: SubagentExecutionRecord<\n TResult,\n TResolvedConfig,\n TActiveRun,\n TSettledOutput\n >[] = [];\n for (const parentToolCallId of parentToolCallIds) {\n const address = this.createAddress({\n threadId,\n parentToolCallId,\n parentConfigurable,\n });\n const record = this.recordsByAddress.get(address.key);\n if (record?.identity != null) {\n records.push(record);\n }\n }\n return records;\n }\n\n private createAddress(\n input: SubagentExecutionAddressInput\n ): SubagentExecutionAddress {\n const durableParentId = input.threadId ?? this.options.parentRunId;\n const parentFork =\n getConfigurableString(input.parentConfigurable, 'checkpoint_id') ??\n 'root';\n const parentBatch =\n getConfigurableString(\n input.parentConfigurable,\n SUBAGENT_PARENT_BATCH_CONFIG_KEY\n ) ?? 'batch';\n const configuredResumeAttemptId = getConfigurableString(\n input.parentConfigurable,\n SUBAGENT_RESUME_ATTEMPT_CONFIG_KEY\n );\n const resumeAttemptId =\n configuredResumeAttemptId ?? this.options.parentRunId;\n const identity = [\n durableParentId,\n parentFork,\n this.options.parentAgentId ?? 'agent',\n input.parentToolCallId,\n parentBatch,\n ];\n const baseChildThreadId = encodeThreadIdentity(identity);\n const branchChildThreadId = this.options.durable\n ? encodeThreadIdentity([...identity, resumeAttemptId])\n : baseChildThreadId;\n return Object.freeze({\n key: branchChildThreadId,\n baseChildThreadId,\n branchChildThreadId,\n currentChildRunId: `${this.options.parentRunId}_sub_${baseChildThreadId.slice(\n SUBAGENT_THREAD_ID_PREFIX.length\n )}`,\n explicitResumeAttempt: configuredResumeAttemptId != null,\n parentToolCallId: input.parentToolCallId,\n resumeAttemptId,\n });\n }\n}\n"],"mappings":";;AAQA,MAAM,4BAA4B;AAClC,MAAM,yCACJ;AAwHF,SAAS,0BACP,MACA,UACQ;CACR,OAAO,KAAK,UAAU,CAAC,MAAM,QAAQ,CAAC;AACxC;AAEA,SAAS,oBAAoB,OAAgB,eAA8B;CACzE,IAAI,EAAE,iBAAiB,QACrB;CAEF,IAAI;EACF,OAAO,eAAe,OAAO,iBAAiB;GAC5C,cAAc;GACd,OAAO;EACT,CAAC;CACH,QAAQ;EACN;CACF;AACF;AAEA,IAAM,mBAAN,MAAoE;CAE/C;CACA;CACA;CACA;CAJnB,YACE,QACA,OACA,eACA,aACA;EAJiB,KAAA,SAAA;EACA,KAAA,QAAA;EACA,KAAA,gBAAA;EACA,KAAA,cAAA;CAChB;CAEH,IAAI,iBAA0B;EAC5B,OAAO,KAAK,KAAK,KAAK,aAAa;CACrC;CAEA,IAAI,wBAAiC;EACnC,OAAO,KAAK,UAAU,KAAK,aAAa;CAC1C;CAEA,IAAI,oBAA6B;EAC/B,OAAO,KAAK,KAAK,KAAK,WAAW;CACnC;CAEA,IAAI,2BAAoC;EACtC,OAAO,KAAK,UAAU,KAAK,WAAW;CACxC;CAEA,cAAoB;EAClB,IAAI,CAAC,KAAK,KAAK,KAAK,aAAa,KAAK,CAAC,KAAK,KAAK,KAAK,WAAW,GAC/D,MAAM,IAAI,kCAAkC;CAEhD;CAEA,sBAAsB,SAAoC;EACxD,KAAK,YAAY,KAAK,eAAe,OAAO;CAC9C;CAEA,yBAAyB,SAAoC;EAC3D,KAAK,YAAY,KAAK,aAAa,OAAO;CAC5C;CAEA,UAAgB;EACd,KAAK,gBAAgB,KAAK,aAAa;EACvC,KAAK,gBAAgB,KAAK,WAAW;CACvC;CAEA,MAAM,SACJ,OACA,SACgB;EAChB,IAAI;EACJ,IAAI,iBAAiB;EACrB,IAAI;GACF,MAAM,UAAU,IAAI;EACtB,SAAS,OAAO;GACd,gBAAgB;GAChB,iBAAiB;EACnB;EACA,MAAM,mBAAmB,MAAM,KAAK,uBAAuB;EAC3D,IAAI,CAAC,kBAAkB,iBAAiB,QAAQ;GAC9C,gBAAgB,iBAAiB;GACjC,iBAAiB;EACnB;EACA,IAAI;GACF,IAAI,gBACF,oBAAoB,OAAO,aAAa;EAE5C,UAAU;GACR,KAAK,QAAQ;EACf;EACA,MAAM;CACR;CAEA,KAAa,KAAsB;EACjC,MAAM,QAAQ,KAAK,OAAO,IAAI,GAAG;EACjC,OAAO,OAAO,WAAW,WAAW,MAAM,UAAU,KAAK;CAC3D;CAEA,UAAkB,KAAsB;EACtC,MAAM,QAAQ,KAAK,OAAO,IAAI,GAAG;EACjC,OACE,OAAO,WAAW,WAAW,MAAM,UAAU,KAAK,SAAS,MAAM;CAErE;CAEA,YAAoB,KAAa,SAAoC;EACnE,MAAM,QAAQ,KAAK,OAAO,IAAI,GAAG;EACjC,IAAI,OAAO,WAAW,WAAW,MAAM,UAAU,KAAK,OACpD,MAAM,IAAI,kCAAkC;EAE9C,MAAM,UAAU;EAChB,MAAM,UAAU;CAClB;CAEA,MAAc,yBAGX;EACD,MAAM,WAID,CAAC;EACN,KAAK,MAAM,OAAO,CAAC,KAAK,eAAe,KAAK,WAAW,GAAG;GACxD,MAAM,QAAQ,KAAK,OAAO,IAAI,GAAG;GACjC,IAAI,OAAO,WAAW,WAAW,MAAM,UAAU,KAAK,OACpD;GAEF,IAAI,CAAC,MAAM,WAAW,MAAM,WAAW,MAAM;IAC3C,KAAK,OAAO,OAAO,GAAG;IACtB;GACF;GACA,MAAM,QAAqC;IACzC,QAAQ;IACR,OAAO,KAAK;GACd;GACA,KAAK,OAAO,IAAI,KAAK,KAAK;GAC1B,SAAS,KAAK;IAAE;IAAK;IAAO,SAAS,MAAM;GAAQ,CAAC;EACtD;EAMA,QAAO,MALe,QAAQ,IAC5B,SAAS,KAAK,EAAE,KAAK,OAAO,cAC1B,KAAK,cAAc,KAAK,OAAO,OAAO,CACxC,CACF,EAAA,CACe,MAAM,WAAW,OAAO,MAAM,KAAK,EAAE,QAAQ,MAAM;CACpE;CAEA,MAAc,cACZ,KACA,OACA,SAC+C;EAC/C,IAAI;GACF,MAAM,QAAQ;GACd,OAAO,EAAE,QAAQ,MAAM;EACzB,SAAS,OAAO;GACd,OAAO;IAAE,QAAQ;IAAM;GAAM;EAC/B,UAAU;GACR,IAAI,KAAK,OAAO,IAAI,GAAG,MAAM,OAC3B,KAAK,OAAO,OAAO,GAAG;EAE1B;CACF;CAEA,gBAAwB,KAAmB;EACzC,MAAM,QAAQ,KAAK,OAAO,IAAI,GAAG;EACjC,IAAI,OAAO,WAAW,WAAW,MAAM,UAAU,KAAK,OACpD,KAAK,OAAO,OAAO,GAAG;CAE1B;AACF;AAEA,SAAS,gBACP,QACqC;CACrC,OAAO,QAAQ;AACjB;AAEA,SAAS,sBACP,cACA,KACoB;CACpB,MAAM,QAAQ,eAAe;CAC7B,OAAO,OAAO,UAAU,YAAY,MAAM,SAAS,IAAI,QAAQ,KAAA;AACjE;AAEA,SAAS,qBAAqB,UAA4B;CACxD,OAAO,GAAG,4BAA4B,OAAO,KAC3C,KAAK,UAAU,QAAQ,CACzB,CAAC,CAAC,SAAS,WAAW;AACxB;AAEA,SAAS,mBACP,SACA,MACM;CACN,IACE,QAAQ,eAAe,KAAK,cAC5B,QAAQ,kBAAkB,KAAK,iBAC/B,QAAQ,2BAA2B,KAAK,wBAExC;CAEF,MAAM,IAAI,MAAM,0DAA0D;AAC5E;AAEA,SAAS,gCACP,SACA,MACM;CACN,IACE,QAAQ,qBAAqB,KAAK,oBAClC,QAAQ,eAAe,KAAK,cAC5B,QAAQ,iBAAiB,KAAK,gBAC9B,QAAQ,aAAa,KAAK,UAE1B;CAEF,MAAM,IAAI,MAAM,qDAAqD;AACvE;AAEA,SAAS,qBACP,SACA,MACM;CACN,IACE,QAAQ,gBAAgB,KAAK,eAC7B,QAAQ,iBAAiB,KAAK,gBAC9B,QAAQ,aAAa,KAAK,UAE1B;CAEF,MAAM,IAAI,+BAA+B;AAC3C;AAEA,SAAS,qBACP,SACA,MACM;CACN,IACE,QAAQ,wBAAwB,KAAK,uBACrC,QAAQ,gBAAgB,KAAK,eAC7B,QAAQ,iBAAiB,KAAK,gBAC9B,QAAQ,aAAa,KAAK,UAE1B;CAEF,MAAM,IAAI,+BAA+B;AAC3C;AAEA,SAAS,eAAe,QAA8B;CACpD,OAAO,OAAO,0BAAU,IAAI,MAAM,6BAA6B;AACjE;AAEA,SAAgB,kCACd,YACA,iBACQ;CACR,OAAO,qBAAqB,OAAO,KACjC,KAAK,UAAU,CAAC,YAAY,eAAe,CAAC,CAC9C,CAAC,CAAC,SAAS,WAAW;AACxB;AAEA,IAAa,oCAAb,cAAuD,MAAM;CAC3D,cAAc;EACZ,MAAM,sCAAsC;EAC5C,KAAK,OAAO;CACd;AACF;AAEA,IAAa,iCAAb,cAAoD,MAAM;CACxD,cAAc;EACZ,MAAM,sDAAsD;EAC5D,KAAK,OAAO;CACd;AACF;AAEA,IAAa,iCAAb,cAAoD,MAAM;CACxD,cAAc;EACZ,MAAM,4CAA4C;EAClD,KAAK,OAAO;CACd;AACF;AAEA,IAAa,iCAAb,cAAoD,MAAM;CACxD,cAAc;EACZ,MAAM,4CAA4C;EAClD,KAAK,OAAO;CACd;AACF;;AAGA,IAAa,0BAAb,MAKE;CAqBW;CApBX;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA,aAA6C;CAC7C,eAAuB;CACvB,iBAAyB;CACzB,eAAuB;CAEvB,YACE,SACA,iBACA;EAFS,KAAA,UAAA;EAGT,KAAK,uBAAuB;CAC9B;CAEA,IAAI,WAAoE;EACtE,OAAO;GACL,SAAS,KAAK;GACd,OAAO,KAAK;GACZ,GAAI,KAAK,iBAAiB,OAAO,CAAC,IAAI,EAAE,UAAU,KAAK,cAAc;GACrE,GAAI,KAAK,gBAAgB,OAAO,CAAC,IAAI,EAAE,SAAS,KAAK,aAAa;GAClE,GAAI,KAAK,mBAAmB,OACxB,CAAC,IACD,EAAE,YAAY,KAAK,gBAAgB;GACvC,GAAI,KAAK,mBAAmB,OACxB,CAAC,IACD,EAAE,YAAY,KAAK,gBAAgB;GACvC,GAAI,KAAK,wBAAwB,OAC7B,CAAC,IACD,EAAE,iBAAiB,KAAK,qBAAqB;GACjD,GAAI,KAAK,kBAAkB,OACvB,CAAC,IACD,EAAE,WAAW,KAAK,eAAe;GACrC,GAAI,KAAK,wBAAwB,OAC7B,CAAC,IACD,EAAE,iBAAiB,KAAK,qBAAqB;GACjD,GAAI,KAAK,uBAAuB,OAC5B,CAAC,IACD,EAAE,gBAAgB,KAAK,oBAAoB;GAC/C,SAAS,KAAK;GACd,WAAW,KAAK;GAChB,mBAAmB,KAAK,6BAA6B;GACrD,WAAW,KAAK,2BAA2B;GAC3C,WAAW,KAAK,oBAAoB;GACpC,UAAU,KAAK,qBAAqB;GACpC,SAAS,KAAK;EAChB;CACF;CAEA,IAAI,WAAkD;EACpD,OAAO,KAAK;CACd;CAEA,IAAI,UAAiD;EACnD,OAAO,KAAK;CACd;CAEA,IAAI,kBAAuD;EACzD,OAAO,KAAK;CACd;CAEA,IAAI,aAAoD;EACtD,OAAO,KAAK;CACd;CAEA,IAAI,YAAoC;EACtC,OAAO,KAAK;CACd;CAEA,IAAI,aAAoD;EACtD,OAAO,KAAK;CACd;CAEA,IAAI,gBAA4C;EAC9C,OAAO,KAAK;CACd;CAEA,IAAI,kBAAuC;EACzC,OAAO,KAAK;CACd;CAEA,IAAI,iBAA8C;EAChD,OAAO,KAAK;CACd;CAEA,IAAI,UAAmB;EACrB,OAAO,KAAK;CACd;CAEA,IAAI,YAAqB;EACvB,OAAO,KAAK;CACd;CAEA,aAAa,QAA4B;EACvC,IAAI,QAAQ,YAAY,MACtB,MAAM,eAAe,MAAM;EAE7B,IAAI,KAAK,eAAe,eACtB,MAAM,IAAI,kCAAkC;CAEhD;CAEA,sBAAsB,iBAAiD;EACrE,IAAI,mBAAmB,MACrB;EAEF,IAAI,KAAK,wBAAwB,MAAM;GACrC,gCACE,KAAK,sBACL,eACF;GACA;EACF;EACA,KAAK,uBAAuB;CAC9B;CAEA,aAAa,UAA2C;EACtD,KAAK,aAAa;EAClB,IAAI,KAAK,iBAAiB,MAAM;GAC9B,mBAAmB,KAAK,eAAe,QAAQ;GAC/C;EACF;EACA,KAAK,gBAAgB,OAAO,OAAO,EAAE,GAAG,SAAS,CAAC;CACpD;CAEA,gBACE,SACoC;EACpC,KAAK,aAAa;EAClB,IAAI,KAAK,iBAAiB,MACxB,OAAO,QAAQ,QAAQ,KAAK,aAAa;EAE3C,IAAI,KAAK,6BAA6B,MACpC,OAAO,KAAK;EAEd,MAAM,UAAU,QAAQ,QAAQ,CAAC,CAC9B,WAAW;GACV,KAAK,gCAAgC,OAAO;GAC5C,OAAO,QAAQ;EACjB,CAAC,CAAC,CACD,KAAK,OAAO,eAAmD;GAC9D,IAAI;IACF,KAAK,gCAAgC,OAAO;IAC5C,WAAW,MAAM,YAAY;IAC7B,WAAW,SAAS,WAAW,KAAK;IACpC,KAAK,gCAAgC,OAAO;IAC5C,WAAW,MAAM,YAAY;IAC7B,KAAK,aAAa,WAAW,QAAQ;IACrC,MAAM,gBAAgB,KAAK;IAC3B,IAAI,iBAAiB,MACnB,MAAM,IAAI,kCAAkC;IAE9C,WAAW,MAAM,QAAQ;IACzB,OAAO;GACT,SAAS,OAAO;IACd,OAAO,WAAW,MAAM,SACtB,OACA,OAAO,UAAyB;KAC9B,MAAM,WAAW,WAAW,KAAK;IACnC,CACF;GACF;EACF,CAAC,CAAC,CACD,cAAc;GACb,IAAI,KAAK,8BAA8B,SACrC,KAAK,4BAA4B,KAAA;EAErC,CAAC;EACH,KAAK,4BAA4B;EACjC,OAAO;CACT;CAEA,eACE,SACA,WACM;EACN,KAAK,aAAa;EAClB,IAAI,KAAK,qBAAqB,aAAa;GACzC,IAAI,cAAc,eAChB;GAEF,IACE,KAAK,cAAc,iBAAiB,QAAQ,gBAC5C,KAAK,cAAc,aAAa,QAAQ,UAExC,MAAM,IAAI,+BAA+B;GAE3C;EACF;EACA,IAAI,cAAc,iBAAiB,KAAK,gBAAgB,MACtD;EAEF,KAAK,eAAe,OAAO,OAAO,EAAE,GAAG,QAAQ,CAAC;EAChD,KAAK,mBAAmB;CAC1B;CAEA,cACE,SACA,QAC0B;EAC1B,KAAK,aAAa,MAAM;EACxB,IAAI,KAAK,uBAAuB,MAC9B,OAAO,QAAQ,QAAQ,KAAK,mBAAmB;EAEjD,IAAI,KAAK,2BAA2B,MAClC,OAAO,KAAK;EAEd,MAAM,UAAU,QAAQ,QAAQ,CAAC,CAC9B,KAAK,OAAO,CAAC,CACb,MAAM,mBAAoC;GACzC,KAAK,aAAa,MAAM;GACxB,IAAI,KAAK,4BAA4B,SACnC,MAAM,IAAI,kCAAkC;GAE9C,KAAK,sBAAsB;GAC3B,OAAO;EACT,CAAC,CAAC,CACD,cAAc;GACb,IAAI,KAAK,4BAA4B,SACnC,KAAK,0BAA0B,KAAA;EAEnC,CAAC;EACH,KAAK,0BAA0B;EAC/B,OAAO;CACT;CAEA,QACE,YACA,SACkB;EAClB,KAAK,eACH;GACE,cAAc,WAAW;GACzB,GAAI,WAAW,YAAY,OACvB,CAAC,IACD,EAAE,UAAU,WAAW,SAAS;EACtC,GACA,WACF;EACA,KAAK,eAAe,UAAU;EAC9B,IAAI,KAAK,oBAAoB,MAC3B,OAAO,KAAK;EAEd,MAAM,UAAU,QAAQ,QAAQ,CAAC,CAC9B,KAAK,OAAO,CAAC,CACb,cAAc;GACb,IAAI,KAAK,qBAAqB,SAC5B,KAAK,mBAAmB,KAAA;EAE5B,CAAC;EACH,KAAK,mBAAmB;EACxB,OAAO;CACT;CAEA,OACE,YACA,eACA,SACe;EACf,KAAK,eACH;GACE,GAAI,WAAW,gBAAgB,OAC3B,CAAC,IACD,EAAE,cAAc,WAAW,aAAa;GAC5C,GAAI,WAAW,YAAY,OACvB,CAAC,IACD,EAAE,UAAU,WAAW,SAAS;EACtC,GACA,WAAW,mBACb;EACA,KAAK,eAAe,WAAW,UAAU;EACzC,IAAI,KAAK,mBAAmB,MAC1B,qBAAqB,KAAK,iBAAiB,UAAU;OAErD,KAAK,kBAAkB,OAAO,OAAO;GACnC,GAAG;GACH,YAAY,OAAO,OAAO,EAAE,GAAG,WAAW,WAAW,CAAC;EACxD,CAAC;EAEH,IAAI,KAAK,cACP,OAAO,QAAQ,QAAQ;EAEzB,IAAI,KAAK,qBAAqB,MAC5B,OAAO,KAAK;EAEd,MAAM,UAAU,QAAQ,QAAQ,CAAC,CAC9B,KAAK,OAAO,CAAC,CACb,WAAiB;GAChB,KAAK,aAAa;GAClB,IAAI,KAAK,sBAAsB,SAC7B,MAAM,IAAI,kCAAkC;GAE9C,KAAK,eAAe;GACpB,KAAK,qBAAqB;GAC1B,KAAK,iBAAiB,KAAA;GACtB,KAAK,uBAAuB,KAAA;GAC5B,KAAK,sBAAsB,KAAA;EAC7B,CAAC,CAAC,CACD,cAAc;GACb,IAAI,KAAK,sBAAsB,SAC7B,KAAK,oBAAoB,KAAA;EAE7B,CAAC;EACH,KAAK,oBAAoB;EACzB,OAAO;CACT;CAEA,SAAS,WAAmC;EAC1C,KAAK,aAAa,UAAU;GAC1B;GACA;GACA;GACA;EACF,CAAC;EACD,IAAI,KAAK,kBAAkB,MACzB,OAAO,KAAK;EAEd,KAAK,iBAAiB;EACtB,OAAO;CACT;CAEA,cAAoB;EAClB,KAAK,aAAa;EAClB,IAAI,KAAK,eAAe,aACtB,MAAM,IAAI,MAAM,kDAAkD;EAEpE,KAAK,eAAe;CACtB;CAEA,kBAAwB;EACtB,KAAK,aAAa,eAAe,CAAC,UAAU,aAAa,CAAC;CAC5D;CAEA,aAAmB;EACjB,KAAK,aAAa,UAAU;GAC1B;GACA;GACA;GACA;EACF,CAAC;EACD,KAAK,iBAAiB,KAAA;EACtB,KAAK,sBAAsB,KAAA;CAC7B;CAEA,cAAc,QAAuB;EACnC,KAAK,aAAa,aAAa,CAAC,QAAQ,CAAC;EACzC,KAAK,iBAAiB;EACtB,KAAK,uBAAuB;EAC5B,KAAK,sBAAsB,KAAA;CAC7B;CAEA,mBAA2C;EACzC,MAAM,YAAY,KAAK;EACvB,KAAK,iBAAiB,KAAA;EACtB,OAAO;CACT;CAEA,wBAA8B;EAC5B,KAAK,sBAAsB,KAAA;CAC7B;CAEA,aAAmB;EACjB,KAAK,aAAa;EAClB,KAAK,gBAAgB,KAAA;EACrB,KAAK,eAAe,KAAA;EACpB,KAAK,mBAAmB,KAAA;EACxB,KAAK,kBAAkB,KAAA;EACvB,KAAK,kBAAkB,KAAA;EACvB,KAAK,qBAAqB,KAAA;EAC1B,KAAK,uBAAuB,KAAA;EAC5B,KAAK,iBAAiB,KAAA;EACtB,KAAK,uBAAuB,KAAA;EAC5B,KAAK,sBAAsB,KAAA;EAC3B,KAAK,4BAA4B,KAAA;EACjC,KAAK,0BAA0B,KAAA;EAC/B,KAAK,mBAAmB,KAAA;EACxB,KAAK,oBAAoB,KAAA;EACzB,KAAK,eAAe;EACpB,KAAK,iBAAiB;EACtB,KAAK,eAAe;CACtB;CAEA,eAAuB,YAA6C;EAClE,IAAI,KAAK,mBAAmB,MAAM;GAChC,qBAAqB,KAAK,iBAAiB,UAAU;GACrD;EACF;EACA,KAAK,kBAAkB,OAAO,OAAO,EAAE,GAAG,WAAW,CAAC;CACxD;CAEA,gCACE,SACM;EACN,KAAK,aAAa;EAClB,IAAI,KAAK,8BAA8B,SACrC,MAAM,IAAI,kCAAkC;CAEhD;CAEA,aACE,MACA,SACM;EACN,KAAK,aAAa;EAClB,IAAI,CAAC,QAAQ,SAAS,KAAK,UAAU,GACnC,MAAM,IAAI,MACR,6CAA6C,KAAK,WAAW,MAAM,KAAK,EAC1E;EAEF,KAAK,aAAa;CACpB;AACF;;AAGA,IAAa,4BAAb,MAKE;CAiB6B;CAhB7B,mCAAoC,IAAI,IAQtC;CACF,sCAAuC,IAAI,IAAY;CACvD,4CAA6C,IAAI,IAG/C;CACF,uBAA+B;CAE/B,YAAY,SAA4D;EAA3C,KAAA,UAAA;CAA4C;CAEzE,KACE,OAMA;EACA,MAAM,UAAU,KAAK,cAAc,KAAK;EACxC,MAAM,kBAAkB,0BACtB,MAAM,kBACR,CAAC,EAAE,WAAW,MACX,cAAc,UAAU,qBAAqB,MAAM,gBACtD;EACA,MAAM,UAAU,KAAK,iBAAiB,IAAI,QAAQ,GAAG;EACrD,IAAI,WAAW,MAAM;GACnB,QAAQ,sBAAsB,eAAe;GAC7C,OAAO;EACT;EACA,MAAM,SAAS,IAAI,wBAKjB,SAAS,eAAe;EAC1B,KAAK,iBAAiB,IAAI,QAAQ,KAAK,MAAM;EAC7C,OAAO;CACT;CAEA,OACE,QAMM;EACN,IAAI,KAAK,iBAAiB,IAAI,OAAO,QAAQ,GAAG,MAAM,QACpD;EAEF,KAAK,iBAAiB,OAAO,OAAO,QAAQ,GAAG;EAC/C,OAAO,WAAW;CACpB;CAEA,yBACE,QAMA,UACmC;EACnC,OAAO,aAAa;EACpB,IAAI,KAAK,iBAAiB,IAAI,OAAO,QAAQ,GAAG,MAAM,QACpD,MAAM,IAAI,kCAAkC;EAE9C,MAAM,gBAAgB,0BACpB,cACA,SAAS,aACX;EACA,MAAM,cAAc,0BAClB,YACA,SAAS,sBACX;EACA,MAAM,eAAe,CAAC,eAAe,WAAW;EAIhD,IAHyB,aAAa,KAAK,QACzC,KAAK,0BAA0B,IAAI,GAAG,CAErB,CAAC,CAAC,MAAM,aAAa,YAAY,IAAI,GACtD,MAAM,IAAI,kCAAkC;EAE9C,KAAK,wBAAwB;EAC7B,MAAM,QAAQ,KAAK;EACnB,KAAK,IAAI,IAAI,GAAG,IAAI,aAAa,QAAQ,KAAK;GAC5C,MAAM,MAAM,aAAa;GACzB,KAAK,0BAA0B,IAAI,KAAK;IACtC,QAAQ;IACR;IACA,SAAS;GACX,CAAC;EACH;EACA,OAAO,IAAI,iBACT,KAAK,2BACL,OACA,eACA,WACF;CACF;CAEA,gBACE,YAA6B,CAAC,GAM5B;EACF,IAAI,UAAU,UAAU,MACtB,OAAO,KAAK,oBAAoB,SAAS;EAE3C,MAAM,yBAAS,IAAI,IAAoB;EACvC,MAAM,aAKA,CAAC;EACP,KAAK,MAAM,UAAU,KAAK,iBAAiB,OAAO,GAAG;GACnD,IAAI,OAAO,YAAY,MACrB;GAEF,MAAM,mBAAmB,OAAO,QAAQ;GACxC,IACE,UAAU,qBAAqB,QAC/B,CAAC,UAAU,kBAAkB,IAAI,gBAAgB,GAEjD;GAEF,WAAW,KAAK,MAAM;GACtB,OAAO,IAAI,mBAAmB,OAAO,IAAI,gBAAgB,KAAK,KAAK,CAAC;EACtE;EACA,OAAO,WAAW,QACf,WAAW,OAAO,IAAI,OAAO,QAAQ,gBAAgB,MAAM,CAC9D;CACF;CAEA,yBAAyB,GAAG,WAA2B;EACrD,KAAK,MAAM,YAAY,WACrB,KAAK,oBAAoB,IAAI,QAAQ;CAEzC;CAEA,uBACE,oBACU;EACV,MAAM,YAAY,IAAI,IAAI,KAAK,mBAAmB;EAClD,IAAI,sBAAsB,MACxB,OAAO,CAAC,GAAG,SAAS;EAEtB,KAAK,MAAM,UAAU,KAAK,iBAAiB,OAAO,GAAG;GACnD,IAAI,OAAO,aAAa,MACtB;GAEF,KAAK,MAAM,YAAY,mBAAmB,OAAO,SAAS,GACxD,UAAU,IAAI,QAAQ;EAE1B;EACA,OAAO,CAAC,GAAG,SAAS;CACtB;CAEA,2BAAiC;EAC/B,KAAK,oBAAoB,MAAM;CACjC;CAEA,oBACE,SAMA,iBACA,QAQM;EACN,KAAK,MAAM,UAAU,KAAK,iBAAiB,OAAO,GAAG;GACnD,IACE,WAAW,WACX,OAAO,YAAY,QACnB,CAAC,gBAAgB,IAAI,OAAO,SAAS,aAAa,GAElD;GAEF,IAAI;IACF,OAAO,MAAM;GACf,UAAU;IACR,KAAK,OAAO,MAAM;GACpB;EACF;CACF;CAEA,MACE,SAQM;EACN,KAAK,MAAM,UAAU,KAAK,iBAAiB,OAAO,GAAG;GACnD,UAAU,MAAM;GAChB,OAAO,WAAW;EACpB;EACA,KAAK,iBAAiB,MAAM;CAC9B;CAEA,oBACE,WAME;EACF,MAAM,qBAAqB,gBAAgB,UAAU,MAAM;EAC3D,MAAM,WAAW,sBAAsB,oBAAoB,WAAW;EACtE,MAAM,oBACJ,UAAU,qBACV,IAAI,IACF,CAAC,GAAG,KAAK,iBAAiB,OAAO,CAAC,CAAC,CAAC,KACjC,WAAW,OAAO,QAAQ,gBAC7B,CACF;EACF,MAAM,UAKA,CAAC;EACP,KAAK,MAAM,oBAAoB,mBAAmB;GAChD,MAAM,UAAU,KAAK,cAAc;IACjC;IACA;IACA;GACF,CAAC;GACD,MAAM,SAAS,KAAK,iBAAiB,IAAI,QAAQ,GAAG;GACpD,IAAI,QAAQ,YAAY,MACtB,QAAQ,KAAK,MAAM;EAEvB;EACA,OAAO;CACT;CAEA,cACE,OAC0B;EAC1B,MAAM,kBAAkB,MAAM,YAAY,KAAK,QAAQ;EACvD,MAAM,aACJ,sBAAsB,MAAM,oBAAoB,eAAe,KAC/D;EACF,MAAM,cACJ,sBACE,MAAM,oBAAA,mCAER,KAAK;EACP,MAAM,4BAA4B,sBAChC,MAAM,oBACN,kCACF;EACA,MAAM,kBACJ,6BAA6B,KAAK,QAAQ;EAC5C,MAAM,WAAW;GACf;GACA;GACA,KAAK,QAAQ,iBAAiB;GAC9B,MAAM;GACN;EACF;EACA,MAAM,oBAAoB,qBAAqB,QAAQ;EACvD,MAAM,sBAAsB,KAAK,QAAQ,UACrC,qBAAqB,CAAC,GAAG,UAAU,eAAe,CAAC,IACnD;EACJ,OAAO,OAAO,OAAO;GACnB,KAAK;GACL;GACA;GACA,mBAAmB,GAAG,KAAK,QAAQ,YAAY,OAAO,kBAAkB,MACtE,CACF;GACA,uBAAuB,6BAA6B;GACpD,kBAAkB,MAAM;GACxB;EACF,CAAC;CACH;AACF"}
1
+ {"version":3,"file":"SubagentExecutionRegistry.mjs","names":[],"sources":["../../../../src/tools/subagent/SubagentExecutionRegistry.ts"],"mappings":"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"}