agentfootprint 10.4.0 → 10.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 (519) hide show
  1. package/CAPABILITIES.md +6 -1
  2. package/ai-instructions/clinerules +22 -11
  3. package/ai-instructions/copilot-instructions.md +22 -11
  4. package/ai-instructions/cursor/agentfootprint.md +22 -11
  5. package/ai-instructions/kiro/agentfootprint.md +22 -11
  6. package/ai-instructions/windsurfrules +22 -11
  7. package/dist/adapters/llm/AnthropicProvider.js +26 -8
  8. package/dist/adapters/llm/AnthropicProvider.js.map +1 -1
  9. package/dist/adapters/llm/BedrockProvider.js +23 -7
  10. package/dist/adapters/llm/BedrockProvider.js.map +1 -1
  11. package/dist/adapters/llm/BrowserAnthropicProvider.js +57 -49
  12. package/dist/adapters/llm/BrowserAnthropicProvider.js.map +1 -1
  13. package/dist/adapters/llm/BrowserOpenAIProvider.js +50 -42
  14. package/dist/adapters/llm/BrowserOpenAIProvider.js.map +1 -1
  15. package/dist/adapters/llm/FoundryLocalProvider.js +174 -212
  16. package/dist/adapters/llm/FoundryLocalProvider.js.map +1 -1
  17. package/dist/adapters/llm/GeminiProvider.js +23 -9
  18. package/dist/adapters/llm/GeminiProvider.js.map +1 -1
  19. package/dist/adapters/llm/InvokeModelGatewayProvider.js +32 -9
  20. package/dist/adapters/llm/InvokeModelGatewayProvider.js.map +1 -1
  21. package/dist/adapters/llm/MockProvider.js +11 -3
  22. package/dist/adapters/llm/MockProvider.js.map +1 -1
  23. package/dist/adapters/llm/OllamaProvider.js +129 -167
  24. package/dist/adapters/llm/OllamaProvider.js.map +1 -1
  25. package/dist/adapters/llm/OpenAIProvider.js +36 -9
  26. package/dist/adapters/llm/OpenAIProvider.js.map +1 -1
  27. package/dist/adapters/mcp/agentcoreRuntime/invoke.js +15 -8
  28. package/dist/adapters/mcp/agentcoreRuntime/invoke.js.map +1 -1
  29. package/dist/adapters/mcp/agentcoreRuntime/transport.js +21 -3
  30. package/dist/adapters/mcp/agentcoreRuntime/transport.js.map +1 -1
  31. package/dist/ag-ui/adapter.js +69 -14
  32. package/dist/ag-ui/adapter.js.map +1 -1
  33. package/dist/ag-ui/framing.js +3 -1
  34. package/dist/ag-ui/framing.js.map +1 -1
  35. package/dist/ag-ui/index.js +4 -2
  36. package/dist/ag-ui/index.js.map +1 -1
  37. package/dist/ag-ui/request.js +66 -6
  38. package/dist/ag-ui/request.js.map +1 -1
  39. package/dist/answer-validation/index.js +8 -1
  40. package/dist/answer-validation/index.js.map +1 -1
  41. package/dist/answer-validation/toolLedger.js +130 -0
  42. package/dist/answer-validation/toolLedger.js.map +1 -0
  43. package/dist/answer-validation/types.js.map +1 -1
  44. package/dist/answer-validation/validate.js +25 -3
  45. package/dist/answer-validation/validate.js.map +1 -1
  46. package/dist/classify/typesafe.js +31 -23
  47. package/dist/classify/typesafe.js.map +1 -1
  48. package/dist/core/Agent.js +69 -16
  49. package/dist/core/Agent.js.map +1 -1
  50. package/dist/core/LLMCall.js +16 -6
  51. package/dist/core/LLMCall.js.map +1 -1
  52. package/dist/core/RunnerBase.js +83 -11
  53. package/dist/core/RunnerBase.js.map +1 -1
  54. package/dist/core/agent/buildAgentChart.js +16 -8
  55. package/dist/core/agent/buildAgentChart.js.map +1 -1
  56. package/dist/core/agent/buildAgentMessageApiChart.js +22 -2
  57. package/dist/core/agent/buildAgentMessageApiChart.js.map +1 -1
  58. package/dist/core/agent/buildDynamicAgentChart.js +22 -7
  59. package/dist/core/agent/buildDynamicAgentChart.js.map +1 -1
  60. package/dist/core/agent/buildMessageApiChart.js +22 -2
  61. package/dist/core/agent/buildMessageApiChart.js.map +1 -1
  62. package/dist/core/agent/stages/answerValidation.js +22 -1
  63. package/dist/core/agent/stages/answerValidation.js.map +1 -1
  64. package/dist/core/agent/stages/callLLM.js +19 -3
  65. package/dist/core/agent/stages/callLLM.js.map +1 -1
  66. package/dist/core/agent/stages/routeTurn.js +14 -1
  67. package/dist/core/agent/stages/routeTurn.js.map +1 -1
  68. package/dist/core/agent/stages/seed.js +9 -0
  69. package/dist/core/agent/stages/seed.js.map +1 -1
  70. package/dist/core/agent/stages/toolCalls.js +59 -20
  71. package/dist/core/agent/stages/toolCalls.js.map +1 -1
  72. package/dist/core/agent/window/strategies/summarizeOldest.js +4 -0
  73. package/dist/core/agent/window/strategies/summarizeOldest.js.map +1 -1
  74. package/dist/core/agent/window/summarize.js +6 -3
  75. package/dist/core/agent/window/summarize.js.map +1 -1
  76. package/dist/core/memberRun.js +58 -9
  77. package/dist/core/memberRun.js.map +1 -1
  78. package/dist/core/requestOfRun.js +28 -0
  79. package/dist/core/requestOfRun.js.map +1 -0
  80. package/dist/core/slots/buildToolsSlot.js +11 -25
  81. package/dist/core/slots/buildToolsSlot.js.map +1 -1
  82. package/dist/core-flow/Conditional.js +17 -11
  83. package/dist/core-flow/Conditional.js.map +1 -1
  84. package/dist/core-flow/Graph.js +17 -11
  85. package/dist/core-flow/Graph.js.map +1 -1
  86. package/dist/core-flow/Loop.js +17 -11
  87. package/dist/core-flow/Loop.js.map +1 -1
  88. package/dist/core-flow/Parallel.js +25 -14
  89. package/dist/core-flow/Parallel.js.map +1 -1
  90. package/dist/core-flow/Sequence.js +17 -11
  91. package/dist/core-flow/Sequence.js.map +1 -1
  92. package/dist/core-flow/Workflow.js +17 -11
  93. package/dist/core-flow/Workflow.js.map +1 -1
  94. package/dist/doors/security.js +2 -1
  95. package/dist/doors/security.js.map +1 -1
  96. package/dist/esm/adapters/llm/AnthropicProvider.d.ts +9 -2
  97. package/dist/esm/adapters/llm/AnthropicProvider.js +26 -8
  98. package/dist/esm/adapters/llm/AnthropicProvider.js.map +1 -1
  99. package/dist/esm/adapters/llm/BedrockProvider.d.ts +6 -1
  100. package/dist/esm/adapters/llm/BedrockProvider.js +23 -7
  101. package/dist/esm/adapters/llm/BedrockProvider.js.map +1 -1
  102. package/dist/esm/adapters/llm/BrowserAnthropicProvider.js +57 -49
  103. package/dist/esm/adapters/llm/BrowserAnthropicProvider.js.map +1 -1
  104. package/dist/esm/adapters/llm/BrowserOpenAIProvider.js +50 -42
  105. package/dist/esm/adapters/llm/BrowserOpenAIProvider.js.map +1 -1
  106. package/dist/esm/adapters/llm/FoundryLocalProvider.js +171 -209
  107. package/dist/esm/adapters/llm/FoundryLocalProvider.js.map +1 -1
  108. package/dist/esm/adapters/llm/GeminiProvider.js +23 -9
  109. package/dist/esm/adapters/llm/GeminiProvider.js.map +1 -1
  110. package/dist/esm/adapters/llm/InvokeModelGatewayProvider.js +32 -9
  111. package/dist/esm/adapters/llm/InvokeModelGatewayProvider.js.map +1 -1
  112. package/dist/esm/adapters/llm/MockProvider.js +11 -3
  113. package/dist/esm/adapters/llm/MockProvider.js.map +1 -1
  114. package/dist/esm/adapters/llm/OllamaProvider.js +126 -164
  115. package/dist/esm/adapters/llm/OllamaProvider.js.map +1 -1
  116. package/dist/esm/adapters/llm/OpenAIProvider.d.ts +6 -1
  117. package/dist/esm/adapters/llm/OpenAIProvider.js +36 -9
  118. package/dist/esm/adapters/llm/OpenAIProvider.js.map +1 -1
  119. package/dist/esm/adapters/mcp/agentcoreRuntime/invoke.d.ts +1 -1
  120. package/dist/esm/adapters/mcp/agentcoreRuntime/invoke.js +15 -8
  121. package/dist/esm/adapters/mcp/agentcoreRuntime/invoke.js.map +1 -1
  122. package/dist/esm/adapters/mcp/agentcoreRuntime/transport.d.ts +26 -3
  123. package/dist/esm/adapters/mcp/agentcoreRuntime/transport.js +21 -3
  124. package/dist/esm/adapters/mcp/agentcoreRuntime/transport.js.map +1 -1
  125. package/dist/esm/ag-ui/adapter.d.ts +61 -11
  126. package/dist/esm/ag-ui/adapter.js +70 -15
  127. package/dist/esm/ag-ui/adapter.js.map +1 -1
  128. package/dist/esm/ag-ui/framing.d.ts +2 -1
  129. package/dist/esm/ag-ui/framing.js +3 -1
  130. package/dist/esm/ag-ui/framing.js.map +1 -1
  131. package/dist/esm/ag-ui/index.d.ts +6 -4
  132. package/dist/esm/ag-ui/index.js +6 -4
  133. package/dist/esm/ag-ui/index.js.map +1 -1
  134. package/dist/esm/ag-ui/request.d.ts +86 -7
  135. package/dist/esm/ag-ui/request.js +63 -5
  136. package/dist/esm/ag-ui/request.js.map +1 -1
  137. package/dist/esm/answer-validation/index.d.ts +2 -1
  138. package/dist/esm/answer-validation/index.js +1 -0
  139. package/dist/esm/answer-validation/index.js.map +1 -1
  140. package/dist/esm/answer-validation/toolLedger.d.ts +65 -0
  141. package/dist/esm/answer-validation/toolLedger.js +121 -0
  142. package/dist/esm/answer-validation/toolLedger.js.map +1 -0
  143. package/dist/esm/answer-validation/types.d.ts +48 -0
  144. package/dist/esm/answer-validation/types.js.map +1 -1
  145. package/dist/esm/answer-validation/validate.d.ts +2 -2
  146. package/dist/esm/answer-validation/validate.js +25 -3
  147. package/dist/esm/answer-validation/validate.js.map +1 -1
  148. package/dist/esm/classify/typesafe.js +30 -22
  149. package/dist/esm/classify/typesafe.js.map +1 -1
  150. package/dist/esm/core/Agent.d.ts +9 -1
  151. package/dist/esm/core/Agent.js +71 -18
  152. package/dist/esm/core/Agent.js.map +1 -1
  153. package/dist/esm/core/LLMCall.d.ts +2 -1
  154. package/dist/esm/core/LLMCall.js +17 -7
  155. package/dist/esm/core/LLMCall.js.map +1 -1
  156. package/dist/esm/core/RunnerBase.d.ts +39 -8
  157. package/dist/esm/core/RunnerBase.js +80 -9
  158. package/dist/esm/core/RunnerBase.js.map +1 -1
  159. package/dist/esm/core/agent/buildAgentChart.js +16 -8
  160. package/dist/esm/core/agent/buildAgentChart.js.map +1 -1
  161. package/dist/esm/core/agent/buildAgentMessageApiChart.d.ts +16 -0
  162. package/dist/esm/core/agent/buildAgentMessageApiChart.js +22 -2
  163. package/dist/esm/core/agent/buildAgentMessageApiChart.js.map +1 -1
  164. package/dist/esm/core/agent/buildDynamicAgentChart.js +22 -7
  165. package/dist/esm/core/agent/buildDynamicAgentChart.js.map +1 -1
  166. package/dist/esm/core/agent/buildMessageApiChart.d.ts +16 -0
  167. package/dist/esm/core/agent/buildMessageApiChart.js +22 -2
  168. package/dist/esm/core/agent/buildMessageApiChart.js.map +1 -1
  169. package/dist/esm/core/agent/stages/answerValidation.js +22 -1
  170. package/dist/esm/core/agent/stages/answerValidation.js.map +1 -1
  171. package/dist/esm/core/agent/stages/callLLM.js +19 -3
  172. package/dist/esm/core/agent/stages/callLLM.js.map +1 -1
  173. package/dist/esm/core/agent/stages/routeTurn.js +14 -1
  174. package/dist/esm/core/agent/stages/routeTurn.js.map +1 -1
  175. package/dist/esm/core/agent/stages/seed.d.ts +7 -0
  176. package/dist/esm/core/agent/stages/seed.js +9 -0
  177. package/dist/esm/core/agent/stages/seed.js.map +1 -1
  178. package/dist/esm/core/agent/stages/toolCalls.d.ts +21 -0
  179. package/dist/esm/core/agent/stages/toolCalls.js +59 -20
  180. package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
  181. package/dist/esm/core/agent/types.d.ts +10 -0
  182. package/dist/esm/core/agent/window/strategies/summarizeOldest.js +4 -0
  183. package/dist/esm/core/agent/window/strategies/summarizeOldest.js.map +1 -1
  184. package/dist/esm/core/agent/window/summarize.js +6 -3
  185. package/dist/esm/core/agent/window/summarize.js.map +1 -1
  186. package/dist/esm/core/memberRun.d.ts +23 -2
  187. package/dist/esm/core/memberRun.js +54 -8
  188. package/dist/esm/core/memberRun.js.map +1 -1
  189. package/dist/esm/core/requestOfRun.d.ts +21 -0
  190. package/dist/esm/core/requestOfRun.js +24 -0
  191. package/dist/esm/core/requestOfRun.js.map +1 -0
  192. package/dist/esm/core/runner.d.ts +15 -3
  193. package/dist/esm/core/slots/buildToolsSlot.d.ts +0 -16
  194. package/dist/esm/core/slots/buildToolsSlot.js +11 -25
  195. package/dist/esm/core/slots/buildToolsSlot.js.map +1 -1
  196. package/dist/esm/core-flow/Conditional.d.ts +2 -1
  197. package/dist/esm/core-flow/Conditional.js +18 -12
  198. package/dist/esm/core-flow/Conditional.js.map +1 -1
  199. package/dist/esm/core-flow/Graph.d.ts +2 -1
  200. package/dist/esm/core-flow/Graph.js +18 -12
  201. package/dist/esm/core-flow/Graph.js.map +1 -1
  202. package/dist/esm/core-flow/Loop.d.ts +2 -1
  203. package/dist/esm/core-flow/Loop.js +18 -12
  204. package/dist/esm/core-flow/Loop.js.map +1 -1
  205. package/dist/esm/core-flow/Parallel.d.ts +2 -1
  206. package/dist/esm/core-flow/Parallel.js +26 -15
  207. package/dist/esm/core-flow/Parallel.js.map +1 -1
  208. package/dist/esm/core-flow/Sequence.d.ts +2 -1
  209. package/dist/esm/core-flow/Sequence.js +18 -12
  210. package/dist/esm/core-flow/Sequence.js.map +1 -1
  211. package/dist/esm/core-flow/Workflow.d.ts +2 -1
  212. package/dist/esm/core-flow/Workflow.js +18 -12
  213. package/dist/esm/core-flow/Workflow.js.map +1 -1
  214. package/dist/esm/doors/security.d.ts +2 -1
  215. package/dist/esm/doors/security.js +2 -1
  216. package/dist/esm/doors/security.js.map +1 -1
  217. package/dist/esm/events/payloads.d.ts +4 -2
  218. package/dist/esm/hosting/index.d.ts +1 -0
  219. package/dist/esm/hosting/index.js.map +1 -1
  220. package/dist/esm/hosting/protocolAdapter.d.ts +4 -1
  221. package/dist/esm/hosting/refusalStatus.js +4 -0
  222. package/dist/esm/hosting/refusalStatus.js.map +1 -1
  223. package/dist/esm/hosting/requestSealing.d.ts +65 -0
  224. package/dist/esm/hosting/requestSealing.js +79 -0
  225. package/dist/esm/hosting/requestSealing.js.map +1 -0
  226. package/dist/esm/hosting/standingAgent.js +23 -3
  227. package/dist/esm/hosting/standingAgent.js.map +1 -1
  228. package/dist/esm/hosting/stream.d.ts +23 -2
  229. package/dist/esm/hosting/stream.js +5 -1
  230. package/dist/esm/hosting/stream.js.map +1 -1
  231. package/dist/esm/hosting/streamHandler.d.ts +26 -7
  232. package/dist/esm/hosting/streamHandler.js +36 -12
  233. package/dist/esm/hosting/streamHandler.js.map +1 -1
  234. package/dist/esm/hosting/types.d.ts +29 -0
  235. package/dist/esm/hosting/types.js.map +1 -1
  236. package/dist/esm/identity/requestContext.d.ts +96 -0
  237. package/dist/esm/identity/requestContext.js +131 -0
  238. package/dist/esm/identity/requestContext.js.map +1 -0
  239. package/dist/esm/identity/requestCredentials.d.ts +99 -0
  240. package/dist/esm/identity/requestCredentials.js +157 -0
  241. package/dist/esm/identity/requestCredentials.js.map +1 -0
  242. package/dist/esm/identity/types.d.ts +11 -0
  243. package/dist/esm/identity/types.js.map +1 -1
  244. package/dist/esm/identity.d.ts +2 -0
  245. package/dist/esm/identity.js +5 -0
  246. package/dist/esm/identity.js.map +1 -1
  247. package/dist/esm/index.d.ts +3 -2
  248. package/dist/esm/index.js +5 -1
  249. package/dist/esm/index.js.map +1 -1
  250. package/dist/esm/injection-engine/buildInjectionEngineSubflow.d.ts +11 -0
  251. package/dist/esm/injection-engine/buildInjectionEngineSubflow.js +39 -5
  252. package/dist/esm/injection-engine/buildInjectionEngineSubflow.js.map +1 -1
  253. package/dist/esm/injection-engine/constrainedEnumPick.js +4 -2
  254. package/dist/esm/injection-engine/constrainedEnumPick.js.map +1 -1
  255. package/dist/esm/injection-engine/evaluator.d.ts +6 -0
  256. package/dist/esm/injection-engine/evaluator.js +19 -1
  257. package/dist/esm/injection-engine/evaluator.js.map +1 -1
  258. package/dist/esm/injection-engine/skillGraph.js +26 -8
  259. package/dist/esm/injection-engine/skillGraph.js.map +1 -1
  260. package/dist/esm/injection-engine/skillIntent.d.ts +4 -2
  261. package/dist/esm/injection-engine/skillIntent.js +3 -0
  262. package/dist/esm/injection-engine/skillIntent.js.map +1 -1
  263. package/dist/esm/injection-engine/types.d.ts +27 -1
  264. package/dist/esm/injection-engine/types.js +15 -0
  265. package/dist/esm/injection-engine/types.js.map +1 -1
  266. package/dist/esm/lib/abort.d.ts +143 -0
  267. package/dist/esm/lib/abort.js +322 -0
  268. package/dist/esm/lib/abort.js.map +1 -0
  269. package/dist/esm/maps/engagement/parkCard.d.ts +5 -1
  270. package/dist/esm/maps/engagement/parkCard.js +10 -3
  271. package/dist/esm/maps/engagement/parkCard.js.map +1 -1
  272. package/dist/esm/mcp/mcpClient.js +30 -2
  273. package/dist/esm/mcp/mcpClient.js.map +1 -1
  274. package/dist/esm/mcp/mcpServe.js +5 -1
  275. package/dist/esm/mcp/mcpServe.js.map +1 -1
  276. package/dist/esm/mcp/plainData.d.ts +44 -0
  277. package/dist/esm/mcp/plainData.js +204 -0
  278. package/dist/esm/mcp/plainData.js.map +1 -0
  279. package/dist/esm/mcp/sdkLoadFailure.d.ts +6 -7
  280. package/dist/esm/mcp/sdkLoadFailure.js +4 -4
  281. package/dist/esm/mcp/sdkLoadFailure.js.map +1 -1
  282. package/dist/esm/mcp/toolResult.js +8 -50
  283. package/dist/esm/mcp/toolResult.js.map +1 -1
  284. package/dist/esm/mcp/types.d.ts +10 -6
  285. package/dist/esm/memory/beats/llmExtractor.js +6 -3
  286. package/dist/esm/memory/beats/llmExtractor.js.map +1 -1
  287. package/dist/esm/memory/facts/llmFactExtractor.js +6 -3
  288. package/dist/esm/memory/facts/llmFactExtractor.js.map +1 -1
  289. package/dist/esm/memory/stages/summarize.js +16 -5
  290. package/dist/esm/memory/stages/summarize.js.map +1 -1
  291. package/dist/esm/patterns/LlmRouter.js +10 -5
  292. package/dist/esm/patterns/LlmRouter.js.map +1 -1
  293. package/dist/esm/redaction/conversation.js +3 -0
  294. package/dist/esm/redaction/conversation.js.map +1 -1
  295. package/dist/esm/redaction/knownStrings.js +1 -0
  296. package/dist/esm/redaction/knownStrings.js.map +1 -1
  297. package/dist/esm/reliability/buildReliabilityGateChart.js +7 -1
  298. package/dist/esm/reliability/buildReliabilityGateChart.js.map +1 -1
  299. package/dist/esm/resilience/withCircuitBreaker.js +5 -2
  300. package/dist/esm/resilience/withCircuitBreaker.js.map +1 -1
  301. package/dist/esm/resilience/withFallback.js +6 -0
  302. package/dist/esm/resilience/withFallback.js.map +1 -1
  303. package/dist/esm/resilience/withRetry.js +5 -0
  304. package/dist/esm/resilience/withRetry.js.map +1 -1
  305. package/dist/esm/time-travel/servedView.js +1 -1
  306. package/dist/esm/time-travel/servedView.js.map +1 -1
  307. package/dist/esm/tools/hostFilled.d.ts +110 -0
  308. package/dist/esm/tools/hostFilled.js +509 -0
  309. package/dist/esm/tools/hostFilled.js.map +1 -0
  310. package/dist/hosting/index.js.map +1 -1
  311. package/dist/hosting/refusalStatus.js +4 -0
  312. package/dist/hosting/refusalStatus.js.map +1 -1
  313. package/dist/hosting/requestSealing.js +83 -0
  314. package/dist/hosting/requestSealing.js.map +1 -0
  315. package/dist/hosting/standingAgent.js +23 -3
  316. package/dist/hosting/standingAgent.js.map +1 -1
  317. package/dist/hosting/stream.js +5 -1
  318. package/dist/hosting/stream.js.map +1 -1
  319. package/dist/hosting/streamHandler.js +36 -12
  320. package/dist/hosting/streamHandler.js.map +1 -1
  321. package/dist/hosting/types.js.map +1 -1
  322. package/dist/identity/requestContext.js +139 -0
  323. package/dist/identity/requestContext.js.map +1 -0
  324. package/dist/identity/requestCredentials.js +165 -0
  325. package/dist/identity/requestCredentials.js.map +1 -0
  326. package/dist/identity/types.js.map +1 -1
  327. package/dist/identity.js +13 -1
  328. package/dist/identity.js.map +1 -1
  329. package/dist/index.js +15 -4
  330. package/dist/index.js.map +1 -1
  331. package/dist/injection-engine/buildInjectionEngineSubflow.js +38 -4
  332. package/dist/injection-engine/buildInjectionEngineSubflow.js.map +1 -1
  333. package/dist/injection-engine/constrainedEnumPick.js +4 -2
  334. package/dist/injection-engine/constrainedEnumPick.js.map +1 -1
  335. package/dist/injection-engine/evaluator.js +18 -0
  336. package/dist/injection-engine/evaluator.js.map +1 -1
  337. package/dist/injection-engine/skillGraph.js +25 -7
  338. package/dist/injection-engine/skillGraph.js.map +1 -1
  339. package/dist/injection-engine/skillIntent.js +3 -0
  340. package/dist/injection-engine/skillIntent.js.map +1 -1
  341. package/dist/injection-engine/types.js +17 -1
  342. package/dist/injection-engine/types.js.map +1 -1
  343. package/dist/lib/abort.js +336 -0
  344. package/dist/lib/abort.js.map +1 -0
  345. package/dist/maps/engagement/parkCard.js +10 -3
  346. package/dist/maps/engagement/parkCard.js.map +1 -1
  347. package/dist/mcp/mcpClient.js +30 -2
  348. package/dist/mcp/mcpClient.js.map +1 -1
  349. package/dist/mcp/mcpServe.js +5 -1
  350. package/dist/mcp/mcpServe.js.map +1 -1
  351. package/dist/mcp/plainData.js +208 -0
  352. package/dist/mcp/plainData.js.map +1 -0
  353. package/dist/mcp/sdkLoadFailure.js +4 -4
  354. package/dist/mcp/sdkLoadFailure.js.map +1 -1
  355. package/dist/mcp/toolResult.js +8 -50
  356. package/dist/mcp/toolResult.js.map +1 -1
  357. package/dist/memory/beats/llmExtractor.js +6 -3
  358. package/dist/memory/beats/llmExtractor.js.map +1 -1
  359. package/dist/memory/facts/llmFactExtractor.js +6 -3
  360. package/dist/memory/facts/llmFactExtractor.js.map +1 -1
  361. package/dist/memory/stages/summarize.js +16 -5
  362. package/dist/memory/stages/summarize.js.map +1 -1
  363. package/dist/patterns/LlmRouter.js +9 -4
  364. package/dist/patterns/LlmRouter.js.map +1 -1
  365. package/dist/redaction/conversation.js +3 -0
  366. package/dist/redaction/conversation.js.map +1 -1
  367. package/dist/redaction/knownStrings.js +1 -0
  368. package/dist/redaction/knownStrings.js.map +1 -1
  369. package/dist/reliability/buildReliabilityGateChart.js +7 -1
  370. package/dist/reliability/buildReliabilityGateChart.js.map +1 -1
  371. package/dist/resilience/withCircuitBreaker.js +5 -2
  372. package/dist/resilience/withCircuitBreaker.js.map +1 -1
  373. package/dist/resilience/withFallback.js +6 -0
  374. package/dist/resilience/withFallback.js.map +1 -1
  375. package/dist/resilience/withRetry.js +5 -0
  376. package/dist/resilience/withRetry.js.map +1 -1
  377. package/dist/time-travel/servedView.js +1 -1
  378. package/dist/time-travel/servedView.js.map +1 -1
  379. package/dist/tools/hostFilled.js +517 -0
  380. package/dist/tools/hostFilled.js.map +1 -0
  381. package/dist/types/adapters/llm/AnthropicProvider.d.ts +9 -2
  382. package/dist/types/adapters/llm/AnthropicProvider.d.ts.map +1 -1
  383. package/dist/types/adapters/llm/BedrockProvider.d.ts +6 -1
  384. package/dist/types/adapters/llm/BedrockProvider.d.ts.map +1 -1
  385. package/dist/types/adapters/llm/BrowserAnthropicProvider.d.ts.map +1 -1
  386. package/dist/types/adapters/llm/BrowserOpenAIProvider.d.ts.map +1 -1
  387. package/dist/types/adapters/llm/FoundryLocalProvider.d.ts.map +1 -1
  388. package/dist/types/adapters/llm/GeminiProvider.d.ts.map +1 -1
  389. package/dist/types/adapters/llm/InvokeModelGatewayProvider.d.ts.map +1 -1
  390. package/dist/types/adapters/llm/MockProvider.d.ts.map +1 -1
  391. package/dist/types/adapters/llm/OllamaProvider.d.ts.map +1 -1
  392. package/dist/types/adapters/llm/OpenAIProvider.d.ts +6 -1
  393. package/dist/types/adapters/llm/OpenAIProvider.d.ts.map +1 -1
  394. package/dist/types/adapters/mcp/agentcoreRuntime/invoke.d.ts +1 -1
  395. package/dist/types/adapters/mcp/agentcoreRuntime/invoke.d.ts.map +1 -1
  396. package/dist/types/adapters/mcp/agentcoreRuntime/transport.d.ts +26 -3
  397. package/dist/types/adapters/mcp/agentcoreRuntime/transport.d.ts.map +1 -1
  398. package/dist/types/ag-ui/adapter.d.ts +61 -11
  399. package/dist/types/ag-ui/adapter.d.ts.map +1 -1
  400. package/dist/types/ag-ui/framing.d.ts +2 -1
  401. package/dist/types/ag-ui/framing.d.ts.map +1 -1
  402. package/dist/types/ag-ui/index.d.ts +6 -4
  403. package/dist/types/ag-ui/index.d.ts.map +1 -1
  404. package/dist/types/ag-ui/request.d.ts +86 -7
  405. package/dist/types/ag-ui/request.d.ts.map +1 -1
  406. package/dist/types/answer-validation/index.d.ts +2 -1
  407. package/dist/types/answer-validation/index.d.ts.map +1 -1
  408. package/dist/types/answer-validation/toolLedger.d.ts +66 -0
  409. package/dist/types/answer-validation/toolLedger.d.ts.map +1 -0
  410. package/dist/types/answer-validation/types.d.ts +48 -0
  411. package/dist/types/answer-validation/types.d.ts.map +1 -1
  412. package/dist/types/answer-validation/validate.d.ts +2 -2
  413. package/dist/types/answer-validation/validate.d.ts.map +1 -1
  414. package/dist/types/classify/typesafe.d.ts.map +1 -1
  415. package/dist/types/core/Agent.d.ts +9 -1
  416. package/dist/types/core/Agent.d.ts.map +1 -1
  417. package/dist/types/core/LLMCall.d.ts +2 -1
  418. package/dist/types/core/LLMCall.d.ts.map +1 -1
  419. package/dist/types/core/RunnerBase.d.ts +39 -8
  420. package/dist/types/core/RunnerBase.d.ts.map +1 -1
  421. package/dist/types/core/agent/buildAgentChart.d.ts.map +1 -1
  422. package/dist/types/core/agent/buildAgentMessageApiChart.d.ts +16 -0
  423. package/dist/types/core/agent/buildAgentMessageApiChart.d.ts.map +1 -1
  424. package/dist/types/core/agent/buildDynamicAgentChart.d.ts.map +1 -1
  425. package/dist/types/core/agent/buildMessageApiChart.d.ts +16 -0
  426. package/dist/types/core/agent/buildMessageApiChart.d.ts.map +1 -1
  427. package/dist/types/core/agent/stages/answerValidation.d.ts.map +1 -1
  428. package/dist/types/core/agent/stages/callLLM.d.ts.map +1 -1
  429. package/dist/types/core/agent/stages/routeTurn.d.ts.map +1 -1
  430. package/dist/types/core/agent/stages/seed.d.ts +7 -0
  431. package/dist/types/core/agent/stages/seed.d.ts.map +1 -1
  432. package/dist/types/core/agent/stages/toolCalls.d.ts +21 -0
  433. package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
  434. package/dist/types/core/agent/types.d.ts +10 -0
  435. package/dist/types/core/agent/types.d.ts.map +1 -1
  436. package/dist/types/core/agent/window/strategies/summarizeOldest.d.ts.map +1 -1
  437. package/dist/types/core/agent/window/summarize.d.ts.map +1 -1
  438. package/dist/types/core/memberRun.d.ts +23 -2
  439. package/dist/types/core/memberRun.d.ts.map +1 -1
  440. package/dist/types/core/requestOfRun.d.ts +22 -0
  441. package/dist/types/core/requestOfRun.d.ts.map +1 -0
  442. package/dist/types/core/runner.d.ts +15 -3
  443. package/dist/types/core/runner.d.ts.map +1 -1
  444. package/dist/types/core/slots/buildToolsSlot.d.ts +0 -16
  445. package/dist/types/core/slots/buildToolsSlot.d.ts.map +1 -1
  446. package/dist/types/core-flow/Conditional.d.ts +2 -1
  447. package/dist/types/core-flow/Conditional.d.ts.map +1 -1
  448. package/dist/types/core-flow/Graph.d.ts +2 -1
  449. package/dist/types/core-flow/Graph.d.ts.map +1 -1
  450. package/dist/types/core-flow/Loop.d.ts +2 -1
  451. package/dist/types/core-flow/Loop.d.ts.map +1 -1
  452. package/dist/types/core-flow/Parallel.d.ts +2 -1
  453. package/dist/types/core-flow/Parallel.d.ts.map +1 -1
  454. package/dist/types/core-flow/Sequence.d.ts +2 -1
  455. package/dist/types/core-flow/Sequence.d.ts.map +1 -1
  456. package/dist/types/core-flow/Workflow.d.ts +2 -1
  457. package/dist/types/core-flow/Workflow.d.ts.map +1 -1
  458. package/dist/types/doors/security.d.ts +2 -1
  459. package/dist/types/doors/security.d.ts.map +1 -1
  460. package/dist/types/events/payloads.d.ts +4 -2
  461. package/dist/types/events/payloads.d.ts.map +1 -1
  462. package/dist/types/hosting/index.d.ts +1 -0
  463. package/dist/types/hosting/index.d.ts.map +1 -1
  464. package/dist/types/hosting/protocolAdapter.d.ts +4 -1
  465. package/dist/types/hosting/protocolAdapter.d.ts.map +1 -1
  466. package/dist/types/hosting/refusalStatus.d.ts.map +1 -1
  467. package/dist/types/hosting/requestSealing.d.ts +66 -0
  468. package/dist/types/hosting/requestSealing.d.ts.map +1 -0
  469. package/dist/types/hosting/standingAgent.d.ts.map +1 -1
  470. package/dist/types/hosting/stream.d.ts +23 -2
  471. package/dist/types/hosting/stream.d.ts.map +1 -1
  472. package/dist/types/hosting/streamHandler.d.ts +26 -7
  473. package/dist/types/hosting/streamHandler.d.ts.map +1 -1
  474. package/dist/types/hosting/types.d.ts +29 -0
  475. package/dist/types/hosting/types.d.ts.map +1 -1
  476. package/dist/types/identity/requestContext.d.ts +97 -0
  477. package/dist/types/identity/requestContext.d.ts.map +1 -0
  478. package/dist/types/identity/requestCredentials.d.ts +100 -0
  479. package/dist/types/identity/requestCredentials.d.ts.map +1 -0
  480. package/dist/types/identity/types.d.ts +11 -0
  481. package/dist/types/identity/types.d.ts.map +1 -1
  482. package/dist/types/identity.d.ts +2 -0
  483. package/dist/types/identity.d.ts.map +1 -1
  484. package/dist/types/index.d.ts +3 -2
  485. package/dist/types/index.d.ts.map +1 -1
  486. package/dist/types/injection-engine/buildInjectionEngineSubflow.d.ts +11 -0
  487. package/dist/types/injection-engine/buildInjectionEngineSubflow.d.ts.map +1 -1
  488. package/dist/types/injection-engine/constrainedEnumPick.d.ts.map +1 -1
  489. package/dist/types/injection-engine/evaluator.d.ts +6 -0
  490. package/dist/types/injection-engine/evaluator.d.ts.map +1 -1
  491. package/dist/types/injection-engine/skillIntent.d.ts +4 -2
  492. package/dist/types/injection-engine/skillIntent.d.ts.map +1 -1
  493. package/dist/types/injection-engine/types.d.ts +27 -1
  494. package/dist/types/injection-engine/types.d.ts.map +1 -1
  495. package/dist/types/lib/abort.d.ts +144 -0
  496. package/dist/types/lib/abort.d.ts.map +1 -0
  497. package/dist/types/maps/engagement/parkCard.d.ts +5 -1
  498. package/dist/types/maps/engagement/parkCard.d.ts.map +1 -1
  499. package/dist/types/mcp/mcpServe.d.ts.map +1 -1
  500. package/dist/types/mcp/plainData.d.ts +45 -0
  501. package/dist/types/mcp/plainData.d.ts.map +1 -0
  502. package/dist/types/mcp/sdkLoadFailure.d.ts +6 -7
  503. package/dist/types/mcp/sdkLoadFailure.d.ts.map +1 -1
  504. package/dist/types/mcp/toolResult.d.ts.map +1 -1
  505. package/dist/types/mcp/types.d.ts +10 -6
  506. package/dist/types/mcp/types.d.ts.map +1 -1
  507. package/dist/types/memory/beats/llmExtractor.d.ts.map +1 -1
  508. package/dist/types/memory/facts/llmFactExtractor.d.ts.map +1 -1
  509. package/dist/types/memory/stages/summarize.d.ts.map +1 -1
  510. package/dist/types/patterns/LlmRouter.d.ts.map +1 -1
  511. package/dist/types/redaction/conversation.d.ts.map +1 -1
  512. package/dist/types/redaction/knownStrings.d.ts.map +1 -1
  513. package/dist/types/reliability/buildReliabilityGateChart.d.ts.map +1 -1
  514. package/dist/types/resilience/withCircuitBreaker.d.ts.map +1 -1
  515. package/dist/types/resilience/withFallback.d.ts.map +1 -1
  516. package/dist/types/resilience/withRetry.d.ts.map +1 -1
  517. package/dist/types/tools/hostFilled.d.ts +111 -0
  518. package/dist/types/tools/hostFilled.d.ts.map +1 -0
  519. package/package.json +1 -1
@@ -0,0 +1,517 @@
1
+ "use strict";
2
+ /**
3
+ * hostFilled — tool arguments the HOST fills, from the run's credential or
4
+ * identity. The model never sees them and cannot set them.
5
+ *
6
+ * ```ts
7
+ * import { hostFilled, fromCredential, fromIdentity } from 'agentfootprint';
8
+ *
9
+ * // An MCP server whose every tool takes a `token` argument:
10
+ * const tools = hostFilled(await crm.tools(), {
11
+ * token: fromCredential({ service: 'crm' }), // ctx.credential, resolved per call
12
+ * tenantId: fromIdentity('tenant'), // ctx.identity.tenant
13
+ * });
14
+ * ```
15
+ *
16
+ * ── What it does ────────────────────────────────────────────────────────────
17
+ * 1. **Removes the field from the schema the model sees** (`properties` and
18
+ * `required`). The model is never told the argument exists.
19
+ * 2. **Refuses a model-supplied value by name.** A call that sends the field
20
+ * anyway — guessed, injected by a document, copied from another tool — is
21
+ * refused with a result naming the argument, and the tool does not run.
22
+ * 3. **Fills it at the last moment**, inside `execute`, from `ctx.credential`
23
+ * (the tool's declared `needs`, which `fromCredential({ service })` sets
24
+ * when the tool has none) or `ctx.identity`. A missing value refuses the
25
+ * call by name — never an empty or default value.
26
+ *
27
+ * ── Why a wrapper around `execute` ──────────────────────────────────────────
28
+ * The filled value exists only inside the call: the arguments every dispatch
29
+ * door records (`tool_start`, history, the commit log, a consent pause's
30
+ * checkpoint) are the MODEL's arguments, which never held it. Wrapping
31
+ * `execute` makes that true at every door — the agent loop, a resumed call,
32
+ * an inner `ctx.tools` call and `mcpServe` — without each door knowing.
33
+ *
34
+ * A credential value is also SCRUBBED on the way out: every occurrence in the
35
+ * tool's result is replaced by `[host-filled]`, and a thrown error that
36
+ * carries it (an SDK that echoes its request) is replaced by one that does
37
+ * not. That is defence in depth for a server that echoes; it cannot cover a
38
+ * value the tool transforms (base64, hashing) or sends elsewhere itself.
39
+ * Identity values are not secrets and are not scrubbed.
40
+ *
41
+ * Pattern: Decorator over `Tool` (declaration + execute). Role: tools, argument law.
42
+ */
43
+ Object.defineProperty(exports, "__esModule", { value: true });
44
+ exports.hostFilled = exports.HOST_FILLED_PLACEHOLDER = exports.HostFilledValueMissingError = exports.HostFilledArgumentError = exports.fromIdentity = exports.fromCredential = void 0;
45
+ /**
46
+ * Fill the argument from the call's credential. With `service`, the tool's
47
+ * `needs` is declared for you (a tool that already declares one must name the
48
+ * same service, or omit `service`).
49
+ */
50
+ function fromCredential(options = {}) {
51
+ return { from: 'credential', ...options };
52
+ }
53
+ exports.fromCredential = fromCredential;
54
+ /** Fill the argument from the identity the run's caller named. */
55
+ function fromIdentity(field) {
56
+ return { from: 'identity', field };
57
+ }
58
+ exports.fromIdentity = fromIdentity;
59
+ /**
60
+ * A model sent a value for an argument the host fills. The call is refused
61
+ * and the tool does not run. Names the arguments, never a value.
62
+ */
63
+ class HostFilledArgumentError extends Error {
64
+ toolName;
65
+ fields;
66
+ code = 'ERR_HOST_FILLED_ARGUMENT';
67
+ constructor(toolName, fields) {
68
+ super(`tool '${toolName}': ${fields.map((f) => `'${f}'`).join(', ')} ` +
69
+ `${fields.length === 1 ? 'is' : 'are'} filled by the host and cannot be set by the ` +
70
+ 'caller — call the tool again without it.');
71
+ this.toolName = toolName;
72
+ this.fields = fields;
73
+ this.name = 'HostFilledArgumentError';
74
+ }
75
+ }
76
+ exports.HostFilledArgumentError = HostFilledArgumentError;
77
+ /**
78
+ * A host-filled argument had no value for this call — no credential was
79
+ * resolved, the credential has no single value to read, or the run's caller
80
+ * named no such identity field. The call is refused; nothing is guessed.
81
+ */
82
+ class HostFilledValueMissingError extends Error {
83
+ toolName;
84
+ field;
85
+ code = 'ERR_HOST_FILLED_VALUE_MISSING';
86
+ constructor(toolName, field, why) {
87
+ super(`tool '${toolName}': argument '${field}' is filled by the host, and ${why}.`);
88
+ this.toolName = toolName;
89
+ this.field = field;
90
+ this.name = 'HostFilledValueMissingError';
91
+ }
92
+ }
93
+ exports.HostFilledValueMissingError = HostFilledValueMissingError;
94
+ /** Below this length a credential's OTHER values (header values) are not scrubbed. */
95
+ const MIN_SCRUB_LENGTH = 8;
96
+ /** What replaces a credential value in a result or an error. */
97
+ exports.HOST_FILLED_PLACEHOLDER = '[host-filled]';
98
+ function hostFilled(toolOrTools, fills) {
99
+ const checked = checkFills(fills);
100
+ if (!Array.isArray(toolOrTools))
101
+ return wrapTool(toolOrTools, checked, true);
102
+ const tools = toolOrTools;
103
+ const unused = new Set(Object.keys(checked));
104
+ const out = tools.map((tool) => {
105
+ const own = Object.fromEntries(
106
+ // The tools that take the field as an argument of the call. One that
107
+ // declares it only through a root combinator (`allOf`/`anyOf`/`oneOf`,
108
+ // `if`/`then`, `$defs`) takes it too, and cannot have it removed — it is
109
+ // refused, never left model-settable. One that names it only inside a
110
+ // nested object (a `cursor.token` pagination field) has a different
111
+ // argument and is left alone.
112
+ Object.entries(checked).filter(([field]) => {
113
+ if (Object.hasOwn(propertiesOf(tool), field))
114
+ return true;
115
+ if (declaresAtRoot(tool.schema?.inputSchema, field))
116
+ refuseNested(tool, field);
117
+ return false;
118
+ }));
119
+ for (const field of Object.keys(own))
120
+ unused.delete(field);
121
+ return Object.keys(own).length === 0 ? tool : wrapTool(tool, own, false);
122
+ });
123
+ if (unused.size > 0) {
124
+ throw new TypeError(`hostFilled: no tool in the list declares ${[...unused].map((f) => `'${f}'`).join(', ')}.`);
125
+ }
126
+ return out;
127
+ }
128
+ exports.hostFilled = hostFilled;
129
+ // ─── Build-time checks ──────────────────────────────────────────────
130
+ function checkFills(fills) {
131
+ if (fills === null || typeof fills !== 'object' || Array.isArray(fills)) {
132
+ throw new TypeError('hostFilled: `fills` must be an object of argument → fill.');
133
+ }
134
+ const names = Object.keys(fills);
135
+ if (names.length === 0)
136
+ throw new TypeError('hostFilled: `fills` names no argument.');
137
+ for (const name of names) {
138
+ const fill = fills[name];
139
+ const ok = (fill?.from === 'credential' &&
140
+ (fill.read === undefined ||
141
+ typeof fill.read === 'function')) ||
142
+ (fill?.from === 'identity' &&
143
+ ['principal', 'tenant', 'conversationId'].includes(fill.field));
144
+ if (!ok) {
145
+ throw new TypeError(`hostFilled: argument '${name}' needs fromCredential(…) or fromIdentity('principal' | ` +
146
+ "'tenant' | 'conversationId').");
147
+ }
148
+ }
149
+ return fills;
150
+ }
151
+ function propertiesOf(tool) {
152
+ const props = tool.schema?.inputSchema
153
+ ?.properties;
154
+ return props !== null && typeof props === 'object' ? props : {};
155
+ }
156
+ /** The one service a tool's credential fills read, checked against its own `needs`. */
157
+ function needsFor(tool, fills) {
158
+ const name = tool.schema.name;
159
+ const credentialFills = Object.entries(fills).filter((e) => e[1].from === 'credential');
160
+ if (credentialFills.length === 0)
161
+ return tool.needs;
162
+ const named = new Set(credentialFills.map(([, f]) => f.service).filter((s) => s !== undefined));
163
+ if (named.size > 1) {
164
+ throw new TypeError(`hostFilled: tool '${name}' takes ONE credential (its \`needs\`), and the fills name ` +
165
+ `${[...named].map((s) => `'${s}'`).join(' and ')}.`);
166
+ }
167
+ const service = [...named][0];
168
+ if (tool.needs !== undefined) {
169
+ if (service !== undefined && service !== tool.needs.credential) {
170
+ throw new TypeError(`hostFilled: tool '${name}' already needs credential '${tool.needs.credential}', and a ` +
171
+ `fill names '${service}'.`);
172
+ }
173
+ return tool.needs;
174
+ }
175
+ if (service === undefined) {
176
+ throw new TypeError(`hostFilled: tool '${name}' declares no \`needs\` — say which credential fills ` +
177
+ `${credentialFills.map(([f]) => `'${f}'`).join(', ')}: fromCredential({ service }).`);
178
+ }
179
+ const declared = credentialFills.find(([, f]) => f.service === service)?.[1];
180
+ return {
181
+ credential: service,
182
+ ...(declared?.scopes !== undefined && { scopes: declared.scopes }),
183
+ ...(declared?.mode !== undefined && { mode: declared.mode }),
184
+ };
185
+ }
186
+ function wrapTool(tool, fills, strict) {
187
+ const name = tool.schema.name;
188
+ const props = propertiesOf(tool);
189
+ for (const field of Object.keys(fills)) {
190
+ if (strict && !Object.hasOwn(props, field)) {
191
+ if (declaresAtRoot(tool.schema.inputSchema, field))
192
+ refuseNested(tool, field);
193
+ throw new TypeError(`hostFilled: tool '${name}' has no argument '${field}'.`);
194
+ }
195
+ // Also named in a combinator or a nested schema: it cannot be removed from
196
+ // everything the model reads, so the tool is refused rather than left
197
+ // half-hidden.
198
+ if (mentionsElsewhere(tool.schema.inputSchema, field))
199
+ refuseNested(tool, field);
200
+ if (tool.wants !== undefined && Object.hasOwn(tool.wants, field)) {
201
+ throw new TypeError(`hostFilled: tool '${name}' declares '${field}' under \`wants\` — an argument is filled ` +
202
+ 'by the host or resolved from a ref, not both.');
203
+ }
204
+ if (tool.askOrAssume !== undefined && Object.hasOwn(tool.askOrAssume, field)) {
205
+ throw new TypeError(`hostFilled: tool '${name}' declares '${field}' under \`askOrAssume\` — an argument is ` +
206
+ 'filled by the host or asked of a person, not both.');
207
+ }
208
+ }
209
+ const needs = needsFor(tool, fills);
210
+ const inputSchema = withoutFields(tool.schema.inputSchema, Object.keys(fills));
211
+ const fieldNames = Object.keys(fills);
212
+ const inner = tool.execute.bind(tool);
213
+ return {
214
+ ...tool,
215
+ schema: { ...tool.schema, inputSchema },
216
+ ...(needs !== undefined && { needs }),
217
+ async execute(args, ctx) {
218
+ const given = isRecord(args) ? fieldNames.filter((f) => Object.hasOwn(args, f)) : [];
219
+ if (given.length > 0)
220
+ throw new HostFilledArgumentError(name, given);
221
+ const filled = {};
222
+ const secrets = [];
223
+ for (const field of fieldNames) {
224
+ const fill = fills[field];
225
+ const value = valueOf(name, field, fill, ctx);
226
+ filled[field] = value;
227
+ if (fill.from === 'credential')
228
+ secrets.push(value, ...credentialValues(ctx.credential));
229
+ }
230
+ const base = isRecord(args) ? args : {};
231
+ try {
232
+ const result = await inner({ ...base, ...filled }, ctx);
233
+ return secrets.length === 0 ? result : scrubValue(result, secrets);
234
+ }
235
+ catch (err) {
236
+ throw secrets.length === 0 || !carries(err, secrets, 0, new Set())
237
+ ? err
238
+ : scrubbedError(err, secrets);
239
+ }
240
+ },
241
+ };
242
+ }
243
+ /**
244
+ * Whether `field` is named anywhere in the schema OTHER than the root's own
245
+ * `properties` / `required` — a combinator (`allOf`/`anyOf`/`oneOf`, `if`/
246
+ * `then`/`else`, `not`), `$defs`, `dependentRequired`/`dependencies`, or a
247
+ * nested object's `properties`/`required`. The root's own property schema is
248
+ * not walked.
249
+ */
250
+ function mentionsElsewhere(schema, field) {
251
+ if (schema === null || typeof schema !== 'object')
252
+ return false;
253
+ const seen = new Set();
254
+ const walk = (node, root) => {
255
+ if (node === null || typeof node !== 'object' || seen.has(node))
256
+ return false;
257
+ seen.add(node);
258
+ if (Array.isArray(node))
259
+ return node.some((n) => walk(n, false));
260
+ const obj = node;
261
+ if (!root) {
262
+ const props = obj.properties;
263
+ if (props !== null && typeof props === 'object' && Object.hasOwn(props, field))
264
+ return true;
265
+ if (Array.isArray(obj.required) && obj.required.includes(field))
266
+ return true;
267
+ }
268
+ for (const key of ['dependentRequired', 'dependencies', 'dependentSchemas']) {
269
+ const dep = obj[key];
270
+ if (dep !== null && typeof dep === 'object') {
271
+ if (Object.hasOwn(dep, field))
272
+ return true;
273
+ for (const v of Object.values(dep)) {
274
+ if (Array.isArray(v) && v.includes(field))
275
+ return true;
276
+ }
277
+ }
278
+ }
279
+ for (const [key, value] of Object.entries(obj)) {
280
+ if (root && key === 'required')
281
+ continue;
282
+ if (root && key === 'properties' && value !== null && typeof value === 'object') {
283
+ for (const [prop, sub] of Object.entries(value)) {
284
+ if (prop !== field && walk(sub, false))
285
+ return true;
286
+ }
287
+ continue;
288
+ }
289
+ if (walk(value, false))
290
+ return true;
291
+ }
292
+ return false;
293
+ };
294
+ return walk(schema, true);
295
+ }
296
+ /**
297
+ * Whether the ROOT object's shape names `field` through a combinator or a
298
+ * definition — anything that makes it an argument of the call without being
299
+ * one of the root's own `properties`. Nested objects' properties are not
300
+ * walked.
301
+ */
302
+ function declaresAtRoot(schema, field) {
303
+ const SHAPE_KEYS = [
304
+ 'allOf',
305
+ 'anyOf',
306
+ 'oneOf',
307
+ 'not',
308
+ 'if',
309
+ 'then',
310
+ 'else',
311
+ '$defs',
312
+ 'definitions',
313
+ ];
314
+ const seen = new Set();
315
+ const walk = (node, root) => {
316
+ if (node === null || typeof node !== 'object' || seen.has(node))
317
+ return false;
318
+ seen.add(node);
319
+ if (Array.isArray(node))
320
+ return node.some((n) => walk(n, false));
321
+ const obj = node;
322
+ if (!root) {
323
+ const props = obj.properties;
324
+ if (props !== null && typeof props === 'object' && Object.hasOwn(props, field))
325
+ return true;
326
+ if (Array.isArray(obj.required) && obj.required.includes(field))
327
+ return true;
328
+ }
329
+ for (const key of ['dependentRequired', 'dependencies', 'dependentSchemas']) {
330
+ const dep = obj[key];
331
+ if (dep !== null && typeof dep === 'object' && Object.hasOwn(dep, field))
332
+ return true;
333
+ }
334
+ for (const key of SHAPE_KEYS) {
335
+ const value = obj[key];
336
+ if (value === null || typeof value !== 'object')
337
+ continue;
338
+ // `$defs` / `definitions` are maps of schemas; the others are schemas or lists.
339
+ const children = key === '$defs' || key === 'definitions' ? Object.values(value) : [value];
340
+ if (children.some((c) => walk(c, false)))
341
+ return true;
342
+ }
343
+ return false;
344
+ };
345
+ return walk(schema, true);
346
+ }
347
+ function refuseNested(tool, field) {
348
+ throw new TypeError(`hostFilled: tool '${tool.schema.name}' names '${field}' inside a nested schema or a ` +
349
+ 'combinator (allOf/anyOf/oneOf, $defs, dependentRequired …), where it cannot be removed ' +
350
+ 'from what the model reads — declare it as a top-level property, or wrap the tool yourself.');
351
+ }
352
+ function withoutFields(schema, fields) {
353
+ const props = { ...(schema.properties ?? {}) };
354
+ for (const f of fields)
355
+ delete props[f];
356
+ const out = { ...schema, properties: props };
357
+ if (Array.isArray(schema.required)) {
358
+ const required = schema.required.filter((r) => typeof r !== 'string' || !fields.includes(r));
359
+ if (required.length > 0)
360
+ out.required = required;
361
+ else
362
+ delete out.required;
363
+ }
364
+ return out;
365
+ }
366
+ // ─── Dispatch-time fill ─────────────────────────────────────────────
367
+ function valueOf(tool, field, fill, ctx) {
368
+ if (fill.from === 'identity') {
369
+ const value = ctx?.identity?.[fill.field];
370
+ if (typeof value !== 'string' || value === '') {
371
+ throw new HostFilledValueMissingError(tool, field, `the run's caller named no identity ${fill.field}`);
372
+ }
373
+ return value;
374
+ }
375
+ const credential = ctx?.credential;
376
+ if (credential === undefined) {
377
+ throw new HostFilledValueMissingError(tool, field, 'no credential was resolved for the call');
378
+ }
379
+ let value;
380
+ try {
381
+ value = fill.read !== undefined ? fill.read(credential) : defaultRead(credential);
382
+ }
383
+ catch {
384
+ value = undefined;
385
+ }
386
+ if (typeof value !== 'string' || value === '') {
387
+ throw new HostFilledValueMissingError(tool, field, `its '${credential.kind}' credential has no single value to fill it with` +
388
+ (fill.read === undefined ? ' — pass fromCredential({ read })' : ''));
389
+ }
390
+ return value;
391
+ }
392
+ /**
393
+ * Every value of the credential itself, beside the filled one — its raw
394
+ * token or key and its header values — so an echo of the bare token is
395
+ * scrubbed even when `read` filled a decorated form (`Bearer …`).
396
+ */
397
+ function credentialValues(credential) {
398
+ if (credential === undefined)
399
+ return [];
400
+ const out = [defaultRead(credential)];
401
+ try {
402
+ for (const v of Object.values(credential.toHeaders())) {
403
+ out.push(v);
404
+ if (typeof v === 'string' && /^(?:Bearer|Basic) /.test(v))
405
+ out.push(v.slice(v.indexOf(' ') + 1));
406
+ }
407
+ }
408
+ catch {
409
+ // A credential that cannot produce headers adds nothing.
410
+ }
411
+ // A short value (a header like `json`) would mangle ordinary text; only a
412
+ // value long enough to be a credential is scrubbed. The filled value itself
413
+ // is always scrubbed.
414
+ return out.filter((v) => typeof v === 'string' && v.length >= MIN_SCRUB_LENGTH);
415
+ }
416
+ function defaultRead(credential) {
417
+ const c = credential;
418
+ if (c.kind === 'bearer')
419
+ return c.token;
420
+ if (c.kind === 'apiKey')
421
+ return c.key;
422
+ return undefined;
423
+ }
424
+ // ─── Scrub on the way out ───────────────────────────────────────────
425
+ function isRecord(v) {
426
+ return v !== null && typeof v === 'object' && !Array.isArray(v);
427
+ }
428
+ function isPlainContainer(v) {
429
+ if (Array.isArray(v))
430
+ return true;
431
+ if (v === null || typeof v !== 'object')
432
+ return false;
433
+ const proto = Object.getPrototypeOf(v);
434
+ return proto === Object.prototype || proto === null;
435
+ }
436
+ function scrubText(text, secrets) {
437
+ let out = text;
438
+ // Longest first, so `Bearer x` is replaced whole before `x`.
439
+ for (const s of [...new Set(secrets)].sort((a, b) => b.length - a.length)) {
440
+ out = out.split(s).join(exports.HOST_FILLED_PLACEHOLDER);
441
+ }
442
+ return out;
443
+ }
444
+ /** The value with every occurrence of a secret replaced; the SAME value when none. */
445
+ function scrubValue(value, secrets, seen = new Map()) {
446
+ if (typeof value === 'string')
447
+ return scrubText(value, secrets);
448
+ if (!isPlainContainer(value))
449
+ return value;
450
+ const prior = seen.get(value);
451
+ if (prior !== undefined)
452
+ return prior;
453
+ if (Array.isArray(value)) {
454
+ const out = [];
455
+ seen.set(value, out);
456
+ let changed = false;
457
+ for (const item of value) {
458
+ const next = scrubValue(item, secrets, seen);
459
+ if (next !== item)
460
+ changed = true;
461
+ out.push(next);
462
+ }
463
+ if (!changed)
464
+ seen.set(value, value);
465
+ return changed ? out : value;
466
+ }
467
+ const out = {};
468
+ seen.set(value, out);
469
+ let changed = false;
470
+ for (const key of Object.keys(value)) {
471
+ const item = value[key];
472
+ const next = scrubValue(item, secrets, seen);
473
+ if (next !== item)
474
+ changed = true;
475
+ out[key] = next;
476
+ }
477
+ if (!changed)
478
+ seen.set(value, value);
479
+ return changed ? out : value;
480
+ }
481
+ /** Whether a thrown value carries a secret anywhere a reader could find it. */
482
+ function carries(value, secrets, depth, seen) {
483
+ if (typeof value === 'string')
484
+ return secrets.some((s) => value.includes(s));
485
+ if (value === null || typeof value !== 'object' || depth > 8 || seen.has(value))
486
+ return false;
487
+ seen.add(value);
488
+ // An error's own fields are mostly non-enumerable (`message`, `stack`,
489
+ // `cause`, `AggregateError.errors`), so every own name is read.
490
+ const keys = value instanceof Error ? Object.getOwnPropertyNames(value) : Object.keys(value);
491
+ for (const key of keys) {
492
+ let item;
493
+ try {
494
+ item = value[key];
495
+ }
496
+ catch {
497
+ continue;
498
+ }
499
+ if (carries(item, secrets, depth + 1, seen))
500
+ return true;
501
+ }
502
+ return false;
503
+ }
504
+ /** A replacement error: the name and the scrubbed message, nothing else. */
505
+ function scrubbedError(err, secrets) {
506
+ let message;
507
+ try {
508
+ message = err instanceof Error ? String(err.message) : String(err);
509
+ }
510
+ catch {
511
+ message = 'the tool failed';
512
+ }
513
+ const out = new Error(scrubText(message, secrets));
514
+ out.name = err instanceof Error ? scrubText(err.name, secrets) : 'Error';
515
+ return out;
516
+ }
517
+ //# sourceMappingURL=hostFilled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hostFilled.js","sourceRoot":"","sources":["../../src/tools/hostFilled.ts"],"names":[],"mappings":"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"}
@@ -21,10 +21,15 @@ import type { ThinkingMode } from '../../thinking/types.js';
21
21
  import { type AnthropicMessage, type AnthropicMessagesBody } from './anthropicMessagesWire.js';
22
22
  interface AnthropicClient {
23
23
  messages: {
24
- create(params: AnthropicCreateParams): Promise<AnthropicMessage>;
25
- stream(params: AnthropicCreateParams): AnthropicStream;
24
+ create(params: AnthropicCreateParams, options?: AnthropicRequestOptions): Promise<AnthropicMessage>;
25
+ stream(params: AnthropicCreateParams, options?: AnthropicRequestOptions): AnthropicStream;
26
26
  };
27
27
  }
28
+ /** The SDK's per-request options — the one this adapter sends is the signal,
29
+ * so an aborted run cancels the HTTP request itself (`lib/abort.ts`). */
30
+ interface AnthropicRequestOptions {
31
+ signal?: AbortSignal;
32
+ }
28
33
  /** The shared Messages body (anthropicMessagesWire.ts) plus the `model` the
29
34
  * SDK sends — `system`, `tools`, `thinking`, `tool_choice` and the cache
30
35
  * markers are all decided there. */
@@ -34,6 +39,8 @@ interface AnthropicCreateParams extends AnthropicMessagesBody {
34
39
  interface AnthropicStream {
35
40
  finalMessage(): Promise<AnthropicMessage>;
36
41
  [Symbol.asyncIterator](): AsyncIterator<AnthropicStreamEvent>;
42
+ /** The SDK's own close: aborts the request and ends the stream. */
43
+ abort?(): void;
37
44
  }
38
45
  interface AnthropicStreamEvent {
39
46
  type: string;
@@ -1 +1 @@
1
- {"version":3,"file":"AnthropicProvider.d.ts","sourceRoot":"","sources":["../../../../src/adapters/llm/AnthropicProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AnthropicProvider.d.ts","sourceRoot":"","sources":["../../../../src/adapters/llm/AnthropicProvider.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,12 @@
31
31
  */
32
32
  import type { LLMCallHooks, LLMChunk, LLMProvider, LLMRequest, LLMResponse, WireRole } from '../../provider-contract/types.js';
33
33
  interface BedrockClient {
34
- send(command: unknown): Promise<unknown>;
34
+ send(command: unknown, options?: BedrockSendOptions): Promise<unknown>;
35
+ }
36
+ /** AWS SDK v3's per-call HTTP options — the one this adapter sends is the
37
+ * abort signal, so an aborted run cancels the request itself (`lib/abort.ts`). */
38
+ interface BedrockSendOptions {
39
+ abortSignal?: AbortSignal;
35
40
  }
36
41
  interface BedrockConverseCommand {
37
42
  modelId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"BedrockProvider.d.ts","sourceRoot":"","sources":["../../../../src/adapters/llm/BedrockProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BedrockProvider.d.ts","sourceRoot":"","sources":["../../../../src/adapters/llm/BedrockProvider.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserAnthropicProvider.d.ts","sourceRoot":"","sources":["../../../../src/adapters/llm/BrowserAnthropicProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,UAAU,EACV,WAAW,EACX,QAAQ,EACT,MAAM,kCAAkC,CAAC;AAU1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AA2B5D,MAAM,WAAW,+BAA+B;IAC9C,iEAAiE;IACjE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,8DAA8D;IAC9D,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,wCAAwC;IACxC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,+DAA+D;IAC/D,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,YAAY,GAAG,SAAS,CAAC;IACpE,iEAAiE;IACjE,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,CAAC;CAChC;AAaD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,+BAA+B,GAAG,WAAW,CA0HtF;AAED,qBAAa,wBAAyB,YAAW,WAAW;IAC1D,QAAQ,CAAC,IAAI,uBAAuB;IACpC,QAAQ,CAAC,iBAAiB,sBAAuB;IACjD,QAAQ,CAAC,uBAAuB,QAAQ;IACxC,2FAA2F;IAC3F,QAAQ,CAAC,wBAAwB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAC9D,QAAQ,CAAC,yBAAyB,QAAQ;IAC1C,2FAA2F;IAC3F,QAAQ,CAAC,0BAA0B,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAChE,QAAQ,CAAC,aAAa,+CAA4B;IAClD,QAAQ,CAAC,eAAe,oDAA4B;IACpD,8EAA8E;IAC9E,QAAQ,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,YAAY,CAAC;IACvD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;gBAExB,OAAO,EAAE,+BAA+B;IAQpD,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAIrE,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,YAAY,GAAG,aAAa,CAAC,QAAQ,CAAC;CAIvE"}
1
+ {"version":3,"file":"BrowserAnthropicProvider.d.ts","sourceRoot":"","sources":["../../../../src/adapters/llm/BrowserAnthropicProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,UAAU,EACV,WAAW,EACX,QAAQ,EACT,MAAM,kCAAkC,CAAC;AAW1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AA2B5D,MAAM,WAAW,+BAA+B;IAC9C,iEAAiE;IACjE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,8DAA8D;IAC9D,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,wCAAwC;IACxC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,+DAA+D;IAC/D,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,YAAY,GAAG,SAAS,CAAC;IACpE,iEAAiE;IACjE,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,CAAC;CAChC;AAaD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,+BAA+B,GAAG,WAAW,CAwItF;AAED,qBAAa,wBAAyB,YAAW,WAAW;IAC1D,QAAQ,CAAC,IAAI,uBAAuB;IACpC,QAAQ,CAAC,iBAAiB,sBAAuB;IACjD,QAAQ,CAAC,uBAAuB,QAAQ;IACxC,2FAA2F;IAC3F,QAAQ,CAAC,wBAAwB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAC9D,QAAQ,CAAC,yBAAyB,QAAQ;IAC1C,2FAA2F;IAC3F,QAAQ,CAAC,0BAA0B,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAChE,QAAQ,CAAC,aAAa,+CAA4B;IAClD,QAAQ,CAAC,eAAe,oDAA4B;IACpD,8EAA8E;IAC9E,QAAQ,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,YAAY,CAAC;IACvD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;gBAExB,OAAO,EAAE,+BAA+B;IAQpD,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAIrE,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,YAAY,GAAG,aAAa,CAAC,QAAQ,CAAC;CAIvE"}
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserOpenAIProvider.d.ts","sourceRoot":"","sources":["../../../../src/adapters/llm/BrowserOpenAIProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrowserOpenAIProvider.d.ts","sourceRoot":"","sources":["../../../../src/adapters/llm/BrowserOpenAIProvider.ts"],"names":[],"mappings":"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"}