@librechat/agents 4.0.1 → 4.0.3

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 (245) hide show
  1. package/dist/cjs/agents/AgentContext.cjs +3 -2
  2. package/dist/cjs/agents/AgentContext.cjs.map +1 -1
  3. package/dist/cjs/decisions/deadline.cjs +52 -0
  4. package/dist/cjs/decisions/deadline.cjs.map +1 -0
  5. package/dist/cjs/decisions/dialect.cjs +88 -0
  6. package/dist/cjs/decisions/dialect.cjs.map +1 -0
  7. package/dist/cjs/decisions/http.cjs +77 -0
  8. package/dist/cjs/decisions/http.cjs.map +1 -0
  9. package/dist/cjs/decisions/index.cjs +7 -0
  10. package/dist/cjs/decisions/presets.cjs +82 -0
  11. package/dist/cjs/decisions/presets.cjs.map +1 -0
  12. package/dist/cjs/decisions/questions.cjs +70 -0
  13. package/dist/cjs/decisions/questions.cjs.map +1 -0
  14. package/dist/cjs/decisions/structuredChat.cjs +172 -0
  15. package/dist/cjs/decisions/structuredChat.cjs.map +1 -0
  16. package/dist/cjs/decisions/structuredOutput.cjs +18 -0
  17. package/dist/cjs/decisions/structuredOutput.cjs.map +1 -0
  18. package/dist/cjs/decisions/traceMarker.cjs +6 -0
  19. package/dist/cjs/decisions/traceMarker.cjs.map +1 -0
  20. package/dist/cjs/decisions/transport.cjs +166 -0
  21. package/dist/cjs/decisions/transport.cjs.map +1 -0
  22. package/dist/cjs/decisions/types.cjs +44 -0
  23. package/dist/cjs/decisions/types.cjs.map +1 -0
  24. package/dist/cjs/graphs/Graph.cjs +28 -9
  25. package/dist/cjs/graphs/Graph.cjs.map +1 -1
  26. package/dist/cjs/langfuseToolOutputTracing.cjs +6 -1
  27. package/dist/cjs/langfuseToolOutputTracing.cjs.map +1 -1
  28. package/dist/cjs/llm/google/index.cjs +1 -1
  29. package/dist/cjs/llm/invoke.cjs +34 -12
  30. package/dist/cjs/llm/invoke.cjs.map +1 -1
  31. package/dist/cjs/llm/openai/index.cjs +7 -0
  32. package/dist/cjs/llm/openai/index.cjs.map +1 -1
  33. package/dist/cjs/llm/providerTextBoundary.cjs +355 -0
  34. package/dist/cjs/llm/providerTextBoundary.cjs.map +1 -0
  35. package/dist/cjs/llm/providerTextChunk.cjs +14 -0
  36. package/dist/cjs/llm/providerTextChunk.cjs.map +1 -0
  37. package/dist/cjs/llm/providerTextControls.cjs +236 -0
  38. package/dist/cjs/llm/providerTextControls.cjs.map +1 -0
  39. package/dist/cjs/llm/stream/smoother.cjs +2 -1
  40. package/dist/cjs/llm/stream/smoother.cjs.map +1 -1
  41. package/dist/cjs/main.cjs +49 -1
  42. package/dist/cjs/protection/providerText.cjs +224 -0
  43. package/dist/cjs/protection/providerText.cjs.map +1 -0
  44. package/dist/cjs/protection/providerTextInput.cjs +25 -0
  45. package/dist/cjs/protection/providerTextInput.cjs.map +1 -0
  46. package/dist/cjs/rerank/index.cjs +2 -0
  47. package/dist/cjs/rerank/search.cjs +45 -0
  48. package/dist/cjs/rerank/search.cjs.map +1 -0
  49. package/dist/cjs/rerank/systemone.cjs +70 -0
  50. package/dist/cjs/rerank/systemone.cjs.map +1 -0
  51. package/dist/cjs/run.cjs +11 -1
  52. package/dist/cjs/run.cjs.map +1 -1
  53. package/dist/cjs/stream.cjs +42 -14
  54. package/dist/cjs/stream.cjs.map +1 -1
  55. package/dist/cjs/summarization/node.cjs +26 -8
  56. package/dist/cjs/summarization/node.cjs.map +1 -1
  57. package/dist/cjs/tools/SubagentTool.cjs +11 -3
  58. package/dist/cjs/tools/SubagentTool.cjs.map +1 -1
  59. package/dist/cjs/tools/ToolNode.cjs +6 -5
  60. package/dist/cjs/tools/ToolNode.cjs.map +1 -1
  61. package/dist/cjs/tools/search/rerankers.cjs +1 -0
  62. package/dist/cjs/tools/search/search.cjs +3 -3
  63. package/dist/cjs/tools/search/search.cjs.map +1 -1
  64. package/dist/cjs/tools/search/tool.cjs +4 -3
  65. package/dist/cjs/tools/search/tool.cjs.map +1 -1
  66. package/dist/cjs/tools/subagent/SubagentExecutionRegistry.cjs +13 -2
  67. package/dist/cjs/tools/subagent/SubagentExecutionRegistry.cjs.map +1 -1
  68. package/dist/cjs/tools/subagent/SubagentExecutor.cjs +149 -26
  69. package/dist/cjs/tools/subagent/SubagentExecutor.cjs.map +1 -1
  70. package/dist/cjs/tools/subagent/SubagentReplay.cjs +4 -2
  71. package/dist/cjs/tools/subagent/SubagentReplay.cjs.map +1 -1
  72. package/dist/cjs/tools/subagent/childGraphConfig.cjs +3 -1
  73. package/dist/cjs/tools/subagent/childGraphConfig.cjs.map +1 -1
  74. package/dist/cjs/tools/subagent/diagnostics.cjs +88 -2
  75. package/dist/cjs/tools/subagent/diagnostics.cjs.map +1 -1
  76. package/dist/cjs/tools/subagent/hostArgs.cjs +214 -0
  77. package/dist/cjs/tools/subagent/hostArgs.cjs.map +1 -0
  78. package/dist/cjs/tools/subagent/index.cjs +2 -0
  79. package/dist/cjs/tools/toolErrorContent.cjs +1 -1
  80. package/dist/esm/agents/AgentContext.mjs +3 -2
  81. package/dist/esm/agents/AgentContext.mjs.map +1 -1
  82. package/dist/esm/decisions/deadline.mjs +52 -0
  83. package/dist/esm/decisions/deadline.mjs.map +1 -0
  84. package/dist/esm/decisions/dialect.mjs +87 -0
  85. package/dist/esm/decisions/dialect.mjs.map +1 -0
  86. package/dist/esm/decisions/http.mjs +75 -0
  87. package/dist/esm/decisions/http.mjs.map +1 -0
  88. package/dist/esm/decisions/index.mjs +8 -0
  89. package/dist/esm/decisions/presets.mjs +77 -0
  90. package/dist/esm/decisions/presets.mjs.map +1 -0
  91. package/dist/esm/decisions/questions.mjs +67 -0
  92. package/dist/esm/decisions/questions.mjs.map +1 -0
  93. package/dist/esm/decisions/structuredChat.mjs +172 -0
  94. package/dist/esm/decisions/structuredChat.mjs.map +1 -0
  95. package/dist/esm/decisions/structuredOutput.mjs +18 -0
  96. package/dist/esm/decisions/structuredOutput.mjs.map +1 -0
  97. package/dist/esm/decisions/traceMarker.mjs +6 -0
  98. package/dist/esm/decisions/traceMarker.mjs.map +1 -0
  99. package/dist/esm/decisions/transport.mjs +164 -0
  100. package/dist/esm/decisions/transport.mjs.map +1 -0
  101. package/dist/esm/decisions/types.mjs +39 -0
  102. package/dist/esm/decisions/types.mjs.map +1 -0
  103. package/dist/esm/graphs/Graph.mjs +28 -9
  104. package/dist/esm/graphs/Graph.mjs.map +1 -1
  105. package/dist/esm/langfuseToolOutputTracing.mjs +6 -1
  106. package/dist/esm/langfuseToolOutputTracing.mjs.map +1 -1
  107. package/dist/esm/llm/google/index.mjs +1 -1
  108. package/dist/esm/llm/invoke.mjs +34 -12
  109. package/dist/esm/llm/invoke.mjs.map +1 -1
  110. package/dist/esm/llm/openai/index.mjs +7 -0
  111. package/dist/esm/llm/openai/index.mjs.map +1 -1
  112. package/dist/esm/llm/providerTextBoundary.mjs +355 -0
  113. package/dist/esm/llm/providerTextBoundary.mjs.map +1 -0
  114. package/dist/esm/llm/providerTextChunk.mjs +13 -0
  115. package/dist/esm/llm/providerTextChunk.mjs.map +1 -0
  116. package/dist/esm/llm/providerTextControls.mjs +230 -0
  117. package/dist/esm/llm/providerTextControls.mjs.map +1 -0
  118. package/dist/esm/llm/stream/smoother.mjs +2 -1
  119. package/dist/esm/llm/stream/smoother.mjs.map +1 -1
  120. package/dist/esm/main.mjs +16 -2
  121. package/dist/esm/protection/providerText.mjs +218 -0
  122. package/dist/esm/protection/providerText.mjs.map +1 -0
  123. package/dist/esm/protection/providerTextInput.mjs +24 -0
  124. package/dist/esm/protection/providerTextInput.mjs.map +1 -0
  125. package/dist/esm/rerank/index.mjs +3 -0
  126. package/dist/esm/rerank/search.mjs +45 -0
  127. package/dist/esm/rerank/search.mjs.map +1 -0
  128. package/dist/esm/rerank/systemone.mjs +70 -0
  129. package/dist/esm/rerank/systemone.mjs.map +1 -0
  130. package/dist/esm/run.mjs +11 -1
  131. package/dist/esm/run.mjs.map +1 -1
  132. package/dist/esm/stream.mjs +42 -14
  133. package/dist/esm/stream.mjs.map +1 -1
  134. package/dist/esm/summarization/node.mjs +26 -8
  135. package/dist/esm/summarization/node.mjs.map +1 -1
  136. package/dist/esm/tools/SubagentTool.mjs +11 -3
  137. package/dist/esm/tools/SubagentTool.mjs.map +1 -1
  138. package/dist/esm/tools/ToolNode.mjs +6 -5
  139. package/dist/esm/tools/ToolNode.mjs.map +1 -1
  140. package/dist/esm/tools/search/rerankers.mjs +1 -1
  141. package/dist/esm/tools/search/search.mjs +3 -3
  142. package/dist/esm/tools/search/search.mjs.map +1 -1
  143. package/dist/esm/tools/search/tool.mjs +4 -3
  144. package/dist/esm/tools/search/tool.mjs.map +1 -1
  145. package/dist/esm/tools/subagent/SubagentExecutionRegistry.mjs +13 -2
  146. package/dist/esm/tools/subagent/SubagentExecutionRegistry.mjs.map +1 -1
  147. package/dist/esm/tools/subagent/SubagentExecutor.mjs +149 -26
  148. package/dist/esm/tools/subagent/SubagentExecutor.mjs.map +1 -1
  149. package/dist/esm/tools/subagent/SubagentReplay.mjs +4 -2
  150. package/dist/esm/tools/subagent/SubagentReplay.mjs.map +1 -1
  151. package/dist/esm/tools/subagent/childGraphConfig.mjs +3 -1
  152. package/dist/esm/tools/subagent/childGraphConfig.mjs.map +1 -1
  153. package/dist/esm/tools/subagent/diagnostics.mjs +84 -3
  154. package/dist/esm/tools/subagent/diagnostics.mjs.map +1 -1
  155. package/dist/esm/tools/subagent/hostArgs.mjs +207 -0
  156. package/dist/esm/tools/subagent/hostArgs.mjs.map +1 -0
  157. package/dist/esm/tools/subagent/index.mjs +2 -0
  158. package/dist/esm/tools/toolErrorContent.mjs +1 -1
  159. package/dist/types/decisions/deadline.d.ts +3 -0
  160. package/dist/types/decisions/dialect.d.ts +11 -0
  161. package/dist/types/decisions/http.d.ts +22 -0
  162. package/dist/types/decisions/index.d.ts +10 -0
  163. package/dist/types/decisions/presets.d.ts +17 -0
  164. package/dist/types/decisions/questions.d.ts +8 -0
  165. package/dist/types/decisions/structuredChat.d.ts +17 -0
  166. package/dist/types/decisions/structuredOutput.d.ts +4 -0
  167. package/dist/types/decisions/traceMarker.d.ts +2 -0
  168. package/dist/types/decisions/transport.d.ts +29 -0
  169. package/dist/types/decisions/types.d.ts +119 -0
  170. package/dist/types/graphs/Graph.d.ts +7 -3
  171. package/dist/types/index.d.ts +4 -0
  172. package/dist/types/llm/invoke.d.ts +4 -1
  173. package/dist/types/llm/providerTextBoundary.d.ts +4 -0
  174. package/dist/types/llm/providerTextChunk.d.ts +7 -0
  175. package/dist/types/llm/providerTextControls.d.ts +18 -0
  176. package/dist/types/protection/providerText.d.ts +77 -0
  177. package/dist/types/protection/providerTextInput.d.ts +3 -0
  178. package/dist/types/rerank/index.d.ts +4 -0
  179. package/dist/types/rerank/search.d.ts +7 -0
  180. package/dist/types/rerank/systemone.d.ts +13 -0
  181. package/dist/types/rerank/types.d.ts +24 -0
  182. package/dist/types/run.d.ts +2 -0
  183. package/dist/types/tools/BashExecutor.d.ts +4 -0
  184. package/dist/types/tools/CodeExecutor.d.ts +4 -0
  185. package/dist/types/tools/ReadFile.d.ts +4 -0
  186. package/dist/types/tools/SkillTool.d.ts +4 -0
  187. package/dist/types/tools/SubagentTool.d.ts +2 -0
  188. package/dist/types/tools/ToolSearch.d.ts +4 -0
  189. package/dist/types/tools/search/schema.d.ts +4 -0
  190. package/dist/types/tools/search/types.d.ts +3 -1
  191. package/dist/types/tools/subagent/SubagentExecutionRegistry.d.ts +6 -0
  192. package/dist/types/tools/subagent/SubagentExecutor.d.ts +22 -1
  193. package/dist/types/tools/subagent/SubagentReplay.d.ts +3 -1
  194. package/dist/types/tools/subagent/diagnostics.d.ts +56 -8
  195. package/dist/types/tools/subagent/hostArgs.d.ts +57 -0
  196. package/dist/types/tools/subagent/index.d.ts +3 -0
  197. package/dist/types/types/graph.d.ts +39 -0
  198. package/dist/types/types/run.d.ts +6 -2
  199. package/dist/types/types/tools.d.ts +2 -0
  200. package/package.json +4 -4
  201. package/src/agents/AgentContext.ts +3 -2
  202. package/src/decisions/deadline.ts +92 -0
  203. package/src/decisions/dialect.ts +200 -0
  204. package/src/decisions/http.ts +175 -0
  205. package/src/decisions/index.ts +14 -0
  206. package/src/decisions/presets.ts +111 -0
  207. package/src/decisions/questions.ts +128 -0
  208. package/src/decisions/structuredChat.ts +358 -0
  209. package/src/decisions/structuredOutput.ts +25 -0
  210. package/src/decisions/traceMarker.ts +2 -0
  211. package/src/decisions/transport.ts +335 -0
  212. package/src/decisions/types.ts +193 -0
  213. package/src/graphs/Graph.ts +57 -9
  214. package/src/index.ts +9 -0
  215. package/src/langfuseToolOutputTracing.ts +8 -1
  216. package/src/llm/invoke.ts +48 -7
  217. package/src/llm/openai/index.ts +8 -0
  218. package/src/llm/providerTextBoundary.ts +446 -0
  219. package/src/llm/providerTextChunk.ts +15 -0
  220. package/src/llm/providerTextControls.ts +173 -0
  221. package/src/llm/stream/smoother.ts +4 -2
  222. package/src/protection/providerText.ts +325 -0
  223. package/src/protection/providerTextInput.ts +21 -0
  224. package/src/rerank/index.ts +4 -0
  225. package/src/rerank/search.ts +85 -0
  226. package/src/rerank/systemone.ts +140 -0
  227. package/src/rerank/types.ts +28 -0
  228. package/src/run.ts +13 -0
  229. package/src/stream.ts +33 -7
  230. package/src/summarization/node.ts +32 -14
  231. package/src/tools/SubagentTool.ts +14 -3
  232. package/src/tools/ToolNode.ts +7 -3
  233. package/src/tools/search/search.ts +4 -4
  234. package/src/tools/search/tool.ts +27 -25
  235. package/src/tools/search/types.ts +4 -1
  236. package/src/tools/subagent/SubagentExecutionRegistry.ts +27 -2
  237. package/src/tools/subagent/SubagentExecutor.ts +323 -28
  238. package/src/tools/subagent/SubagentReplay.ts +10 -3
  239. package/src/tools/subagent/childGraphConfig.ts +12 -1
  240. package/src/tools/subagent/diagnostics.ts +180 -9
  241. package/src/tools/subagent/hostArgs.ts +413 -0
  242. package/src/tools/subagent/index.ts +20 -0
  243. package/src/types/graph.ts +44 -0
  244. package/src/types/run.ts +6 -2
  245. package/src/types/tools.ts +6 -1
@@ -0,0 +1,214 @@
1
+ let crypto = require("crypto");
2
+ //#region src/tools/subagent/hostArgs.ts
3
+ const SUBAGENT_HOST_ARG_LIMITS = Object.freeze({
4
+ argsPerSubagent: 8,
5
+ distinctArgs: 16,
6
+ enumValues: 64,
7
+ mergedEnumValues: 256,
8
+ valueLength: 256,
9
+ descriptionLength: 1024
10
+ });
11
+ const HOST_ARG_NAME_PATTERN = /^[a-z][a-z0-9_]{0,63}$/;
12
+ const FREE_FORM_SCHEMA_PATTERN = "^[^\\u0000-\\u001f\\u007f]*$";
13
+ const RESERVED_HOST_ARG_NAMES = new Set([
14
+ "intent",
15
+ "description",
16
+ "subagent_type",
17
+ "run_in_background",
18
+ "subagent_thread_id"
19
+ ]);
20
+ function isSubagentHostArgName(name) {
21
+ return HOST_ARG_NAME_PATTERN.test(name) && !RESERVED_HOST_ARG_NAMES.has(name);
22
+ }
23
+ function countCodePoints(value) {
24
+ let count = 0;
25
+ for (const _ of value) count += 1;
26
+ return count;
27
+ }
28
+ function hasControlCharacter(value) {
29
+ for (let i = 0; i < value.length; i++) {
30
+ const code = value.charCodeAt(i);
31
+ if (code < 32 || code === 127) return true;
32
+ }
33
+ return false;
34
+ }
35
+ function isBoundedText(value, maxLength) {
36
+ return typeof value === "string" && value.trim().length > 0 && countCodePoints(value) <= maxLength && !hasControlCharacter(value);
37
+ }
38
+ function getFreeFormMaxLength(spec) {
39
+ return spec.maxLength ?? SUBAGENT_HOST_ARG_LIMITS.valueLength;
40
+ }
41
+ function validateEnum(label, values) {
42
+ if (!Array.isArray(values) || values.length === 0 || values.length > SUBAGENT_HOST_ARG_LIMITS.enumValues) throw new Error(`${label} enum must list 1-${SUBAGENT_HOST_ARG_LIMITS.enumValues} values.`);
43
+ const seen = /* @__PURE__ */ new Set();
44
+ for (const value of values) {
45
+ if (!isBoundedText(value, SUBAGENT_HOST_ARG_LIMITS.valueLength)) throw new Error(`${label} enum values must be non-blank strings of at most ${SUBAGENT_HOST_ARG_LIMITS.valueLength} characters without control characters.`);
46
+ if (seen.has(value)) throw new Error(`${label} enum values must be unique.`);
47
+ seen.add(value);
48
+ }
49
+ }
50
+ function validateFreeForm(label, spec) {
51
+ const maxLength = getFreeFormMaxLength(spec);
52
+ if (!Number.isSafeInteger(maxLength) || maxLength < 1 || maxLength > SUBAGENT_HOST_ARG_LIMITS.valueLength) throw new Error(`${label} maxLength must be an integer from 1 to ${SUBAGENT_HOST_ARG_LIMITS.valueLength}.`);
53
+ }
54
+ function validateSpec(type, name, spec) {
55
+ const label = `Subagent "${type}" host argument "${name}"`;
56
+ if (!isSubagentHostArgName(name)) throw new Error(`${label} must match ${HOST_ARG_NAME_PATTERN.source} and must not reuse a built-in subagent argument name.`);
57
+ if (spec == null) throw new Error(`${label} must be an object.`);
58
+ if (spec.pattern !== void 0) throw new Error(`${label} cannot declare a pattern; validate the format in the resolver.`);
59
+ if (typeof spec.description !== "string" || spec.description.trim().length === 0 || spec.description.length > SUBAGENT_HOST_ARG_LIMITS.descriptionLength) throw new Error(`${label} needs a description of at most ${SUBAGENT_HOST_ARG_LIMITS.descriptionLength} characters.`);
60
+ if (spec.enum == null) {
61
+ validateFreeForm(label, spec);
62
+ return;
63
+ }
64
+ if (spec.maxLength != null) throw new Error(`${label} cannot combine enum with maxLength.`);
65
+ validateEnum(label, spec.enum);
66
+ }
67
+ function getSubagentHostArgSpecs(config) {
68
+ const { hostArgs } = config;
69
+ if (hostArgs == null) return [];
70
+ if (typeof hostArgs !== "object" || Array.isArray(hostArgs)) throw new Error(`Subagent "${config.type}" hostArgs must be an object.`);
71
+ const entries = Object.entries(hostArgs);
72
+ if (entries.length > SUBAGENT_HOST_ARG_LIMITS.argsPerSubagent) throw new Error(`Subagent "${config.type}" declares more than ${SUBAGENT_HOST_ARG_LIMITS.argsPerSubagent} host arguments.`);
73
+ for (const [name, spec] of entries) validateSpec(config.type, name, spec);
74
+ return entries;
75
+ }
76
+ function collectSubagentHostArgNames(configs) {
77
+ const names = /* @__PURE__ */ new Set();
78
+ for (const config of configs) for (const [name] of getSubagentHostArgSpecs(config)) names.add(name);
79
+ if (names.size > SUBAGENT_HOST_ARG_LIMITS.distinctArgs) throw new Error(`Subagents declare more than ${SUBAGENT_HOST_ARG_LIMITS.distinctArgs} distinct host arguments.`);
80
+ return names;
81
+ }
82
+ function mergeSpec(merged, name, spec) {
83
+ let entry = merged.get(name);
84
+ if (entry == null) {
85
+ entry = {
86
+ description: spec.description,
87
+ values: [],
88
+ seenValues: /* @__PURE__ */ new Set(),
89
+ freeForm: false,
90
+ maxLength: 0
91
+ };
92
+ merged.set(name, entry);
93
+ }
94
+ if (spec.enum == null) {
95
+ entry.freeForm = true;
96
+ entry.maxLength = Math.max(entry.maxLength, getFreeFormMaxLength(spec));
97
+ return;
98
+ }
99
+ for (const value of spec.enum) {
100
+ entry.maxLength = Math.max(entry.maxLength, countCodePoints(value));
101
+ if (!entry.seenValues.has(value)) {
102
+ entry.seenValues.add(value);
103
+ entry.values.push(value);
104
+ }
105
+ }
106
+ if (entry.values.length > SUBAGENT_HOST_ARG_LIMITS.mergedEnumValues) throw new Error(`Subagent host argument "${name}" lists more than ${SUBAGENT_HOST_ARG_LIMITS.mergedEnumValues} distinct values across subagents.`);
107
+ }
108
+ function toPropertySchema(entry) {
109
+ if (!entry.freeForm) return {
110
+ type: "string",
111
+ description: entry.description,
112
+ enum: entry.values
113
+ };
114
+ return {
115
+ type: "string",
116
+ description: entry.description,
117
+ maxLength: entry.maxLength,
118
+ pattern: FREE_FORM_SCHEMA_PATTERN
119
+ };
120
+ }
121
+ function summarizeSpecs(entries) {
122
+ return entries.map(([name, spec]) => `${name}: ${spec.enum == null ? `any text up to ${getFreeFormMaxLength(spec)} characters` : spec.enum.join(" | ")}`).join("; ");
123
+ }
124
+ function buildSubagentHostArgProperties(configs) {
125
+ const merged = /* @__PURE__ */ new Map();
126
+ const summaries = /* @__PURE__ */ new Map();
127
+ for (const config of configs) {
128
+ const entries = getSubagentHostArgSpecs(config);
129
+ if (entries.length === 0) continue;
130
+ for (const [name, spec] of entries) mergeSpec(merged, name, spec);
131
+ summaries.set(config.type, summarizeSpecs(entries));
132
+ }
133
+ if (merged.size > SUBAGENT_HOST_ARG_LIMITS.distinctArgs) throw new Error(`Subagents declare more than ${SUBAGENT_HOST_ARG_LIMITS.distinctArgs} distinct host arguments.`);
134
+ const properties = {};
135
+ for (const [name, entry] of merged) properties[name] = toPropertySchema(entry);
136
+ return {
137
+ properties,
138
+ summaries
139
+ };
140
+ }
141
+ function pickSubagentHostArgInput(input, names) {
142
+ if (names.size === 0) return { ok: true };
143
+ const values = input;
144
+ const picked = {};
145
+ let count = 0;
146
+ for (const name of names) {
147
+ if (!Object.prototype.hasOwnProperty.call(values, name)) continue;
148
+ const value = values[name];
149
+ if (value == null) continue;
150
+ if (typeof value !== "string") return {
151
+ ok: false,
152
+ message: `Error: "${name}" must be a string.`
153
+ };
154
+ if (value.trim() === "") continue;
155
+ picked[name] = value;
156
+ count += 1;
157
+ }
158
+ return count === 0 ? { ok: true } : {
159
+ ok: true,
160
+ hostArgs: picked
161
+ };
162
+ }
163
+ function checkValue(type, name, spec, value) {
164
+ const omit = `Omit "${name}" to let the host choose.`;
165
+ if (spec.enum != null) return spec.enum.includes(value) ? void 0 : `Error: "${name}" for subagent "${type}" must be one of: ${spec.enum.join(", ")}. ${omit}`;
166
+ const maxLength = getFreeFormMaxLength(spec);
167
+ return isBoundedText(value, maxLength) ? void 0 : `Error: "${name}" for subagent "${type}" must be at most ${maxLength} characters without control characters. ${omit}`;
168
+ }
169
+ function resolveSubagentHostArgs(config, hostArgs) {
170
+ if (hostArgs == null) return { ok: true };
171
+ const names = Object.keys(hostArgs).sort();
172
+ if (names.length === 0) return { ok: true };
173
+ const specs = new Map(getSubagentHostArgSpecs(config));
174
+ const resolved = {};
175
+ for (const name of names) {
176
+ const spec = specs.get(name);
177
+ if (spec == null) return {
178
+ ok: false,
179
+ message: isSubagentHostArgName(name) ? `Error: Subagent "${config.type}" does not accept "${name}". Omit it for this subagent type.` : `Error: Subagent "${config.type}" received an unsupported argument.`
180
+ };
181
+ const value = hostArgs[name];
182
+ if (typeof value !== "string") return {
183
+ ok: false,
184
+ message: `Error: "${name}" must be a string.`
185
+ };
186
+ const error = checkValue(config.type, name, spec, value);
187
+ if (error != null) return {
188
+ ok: false,
189
+ message: error
190
+ };
191
+ resolved[name] = value;
192
+ }
193
+ return {
194
+ ok: true,
195
+ hostArgs: Object.freeze(resolved)
196
+ };
197
+ }
198
+ function getSubagentHostArgsDigest(hostArgs) {
199
+ if (hostArgs == null) return;
200
+ const entries = Object.entries(hostArgs).sort(([left], [right]) => left < right ? -1 : 1);
201
+ if (entries.length === 0) return;
202
+ return (0, crypto.createHash)("sha256").update(JSON.stringify(entries)).digest("hex");
203
+ }
204
+ //#endregion
205
+ exports.SUBAGENT_HOST_ARG_LIMITS = SUBAGENT_HOST_ARG_LIMITS;
206
+ exports.buildSubagentHostArgProperties = buildSubagentHostArgProperties;
207
+ exports.collectSubagentHostArgNames = collectSubagentHostArgNames;
208
+ exports.getSubagentHostArgSpecs = getSubagentHostArgSpecs;
209
+ exports.getSubagentHostArgsDigest = getSubagentHostArgsDigest;
210
+ exports.isSubagentHostArgName = isSubagentHostArgName;
211
+ exports.pickSubagentHostArgInput = pickSubagentHostArgInput;
212
+ exports.resolveSubagentHostArgs = resolveSubagentHostArgs;
213
+
214
+ //# sourceMappingURL=hostArgs.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hostArgs.cjs","names":[],"sources":["../../../../src/tools/subagent/hostArgs.ts"],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ require("./hostArgs.cjs");
2
+ require("./diagnostics.cjs");
1
3
  require("./childGraphConfig.cjs");
2
4
  require("./SubagentExecutor.cjs");
3
5
  require("./InMemorySubagentTaskStore.cjs");
@@ -1,6 +1,6 @@
1
1
  const require_truncation = require("../utils/truncation.cjs");
2
- const require_streamLimits = require("../llm/streamLimits.cjs");
3
2
  const require_preparedSubagents = require("./preparedSubagents.cjs");
3
+ const require_streamLimits = require("../llm/streamLimits.cjs");
4
4
  //#region src/tools/toolErrorContent.ts
5
5
  const STOPPED_RUN_TOOL_ERROR = "STOP. The user doesn't want to proceed with this tool use. The run was stopped; the tool may not have completed, and its effects should not be assumed. STOP what you are doing and wait for the user to tell you how to proceed.";
6
6
  function isStoppedRunToolError(message, signal, error) {
@@ -10,6 +10,7 @@ import { syncBudgetDerivedFields } from "../messages/budget.mjs";
10
10
  import { snapshotCompactionSemanticIndex } from "../summarization/semanticIndex.mjs";
11
11
  import "../messages/index.mjs";
12
12
  import { toJsonSchema } from "../utils/schema.mjs";
13
+ import { markProviderTextInput } from "../protection/providerTextInput.mjs";
13
14
  import { buildSummaryCarrierText } from "../summarization/shared.mjs";
14
15
  import { allowsToolCaller, applyCallerCapabilityDefinitionOverrides, createCallerCapabilityProjectionSnapshot, isProgrammaticControlTool, isToolDefinitionActive, mergeCallerCapabilityDefinitions, resolveCallerCapabilityProjection } from "../tools/CallerCapabilities.mjs";
15
16
  import { isProgrammaticRunnerAutoBound, isProgrammaticRunnerResolvedDirectly, resolveLocalImplementationNames, resolveLocalToolRegistry } from "../tools/local/resolveLocalExecutionTools.mjs";
@@ -359,7 +360,7 @@ The following tools are available exclusively through ${programmaticRunnerNames}
359
360
  this.systemMessageTokens = systemMessage ? this.tokenCounter(systemMessage) : 0;
360
361
  this.dynamicInstructionTokens = shouldMoveDynamicInstructions ? this.tokenCounter(new HumanMessage(dynamicInstructions)) : 0;
361
362
  }
362
- return RunnableLambda.from((messages) => {
363
+ return markProviderTextInput(RunnableLambda.from((messages) => {
363
364
  const prefix = systemMessage ? [systemMessage] : [];
364
365
  const hasSummaryBody = this._summaryLocation === "user_message" && this.summaryText != null && this.summaryText !== "";
365
366
  const bodyWithSummary = hasSummaryBody && promptCacheProvider == null ? [this.buildSummaryHumanMessage(promptCacheProvider), ...messages] : messages;
@@ -372,7 +373,7 @@ The following tools are available exclusively through ${programmaticRunnerNames}
372
373
  let body = this.buildBodyWithPromptCacheDynamicTail(bodyWithSummary, dynamicTail, promptCacheProvider);
373
374
  if (promptCacheProvider != null && dynamicTail.length === 0 && body.length >= 2) body = addTailCacheControl(body, this.getPromptCacheTtl(promptCacheProvider));
374
375
  return [...prefix, ...body];
375
- }).withConfig({ runName: "prompt" });
376
+ })).withConfig({ runName: "prompt" });
376
377
  }
377
378
  buildSummaryHumanMessage(promptCacheProvider) {
378
379
  const wrappedSummary = buildSummaryCarrierText(this.summaryText);
@@ -1 +1 @@
1
- {"version":3,"file":"AgentContext.mjs","names":[],"sources":["../../../src/agents/AgentContext.ts"],"mappings":"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"}
1
+ {"version":3,"file":"AgentContext.mjs","names":[],"sources":["../../../src/agents/AgentContext.ts"],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ import { DecisionError } from "./types.mjs";
2
+ //#region src/decisions/deadline.ts
3
+ async function withDecisionDeadline(provider, timeoutMs, callerSignal, operation) {
4
+ if (!Number.isSafeInteger(timeoutMs) || timeoutMs <= 0 || timeoutMs > 36e5) throw new DecisionError("bad_request", "invalid decision model timeout", { provider });
5
+ if (callerSignal?.aborted === true) throw new DecisionError("aborted", "caller aborted the request", { provider });
6
+ const expiresAt = performance.now() + timeoutMs;
7
+ const deadline = new AbortController();
8
+ const signal = callerSignal ? AbortSignal.any([callerSignal, deadline.signal]) : deadline.signal;
9
+ const timer = setTimeout(() => deadline.abort(), timeoutMs);
10
+ const expired = () => {
11
+ if (performance.now() >= expiresAt) deadline.abort();
12
+ return signal.aborted;
13
+ };
14
+ const abortError = () => {
15
+ if (callerSignal?.aborted === true) return new DecisionError("aborted", "caller aborted the request", { provider });
16
+ return new DecisionError("timeout", "decision model deadline exceeded", { provider });
17
+ };
18
+ const waitFor = (task) => new Promise((resolve, reject) => {
19
+ if (expired()) {
20
+ task.catch(() => {});
21
+ reject(abortError());
22
+ return;
23
+ }
24
+ const onAbort = () => {
25
+ signal.removeEventListener("abort", onAbort);
26
+ reject(abortError());
27
+ };
28
+ signal.addEventListener("abort", onAbort, { once: true });
29
+ if (expired()) onAbort();
30
+ task.then((value) => {
31
+ signal.removeEventListener("abort", onAbort);
32
+ if (expired()) reject(abortError());
33
+ else resolve(value);
34
+ }, (error) => {
35
+ signal.removeEventListener("abort", onAbort);
36
+ reject(expired() ? abortError() : error);
37
+ });
38
+ });
39
+ try {
40
+ return await waitFor(operation(signal, waitFor));
41
+ } catch (error) {
42
+ if (expired()) throw abortError();
43
+ throw error;
44
+ } finally {
45
+ expired();
46
+ clearTimeout(timer);
47
+ }
48
+ }
49
+ //#endregion
50
+ export { withDecisionDeadline };
51
+
52
+ //# sourceMappingURL=deadline.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deadline.mjs","names":[],"sources":["../../../src/decisions/deadline.ts"],"mappings":";;AAKA,eAAsB,qBACpB,UACA,WACA,cACA,WACY;CACZ,IACE,CAAC,OAAO,cAAc,SAAS,KAC/B,aAAa,KACb,YAAY,MAEZ,MAAM,IAAI,cAAc,eAAe,kCAAkC,EACvE,SACF,CAAC;CAEH,IAAI,cAAc,YAAY,MAC5B,MAAM,IAAI,cAAc,WAAW,8BAA8B,EAC/D,SACF,CAAC;CAGH,MAAM,YAAY,YAAY,IAAI,IAAI;CACtC,MAAM,WAAW,IAAI,gBAAgB;CACrC,MAAM,SAAS,eACX,YAAY,IAAI,CAAC,cAAc,SAAS,MAAM,CAAC,IAC/C,SAAS;CACb,MAAM,QAAQ,iBAAiB,SAAS,MAAM,GAAG,SAAS;CAC1D,MAAM,gBAAyB;EAC7B,IAAI,YAAY,IAAI,KAAK,WACvB,SAAS,MAAM;EAEjB,OAAO,OAAO;CAChB;CACA,MAAM,mBAAkC;EACtC,IAAI,cAAc,YAAY,MAC5B,OAAO,IAAI,cAAc,WAAW,8BAA8B,EAChE,SACF,CAAC;EAEH,OAAO,IAAI,cAAc,WAAW,oCAAoC,EACtE,SACF,CAAC;CACH;CAEA,MAAM,WAAmC,SACvC,IAAI,SAAY,SAAS,WAAW;EAClC,IAAI,QAAQ,GAAG;GACb,KAAU,YAAY,CAAC,CAAC;GACxB,OAAO,WAAW,CAAC;GACnB;EACF;EACA,MAAM,gBAAsB;GAC1B,OAAO,oBAAoB,SAAS,OAAO;GAC3C,OAAO,WAAW,CAAC;EACrB;EACA,OAAO,iBAAiB,SAAS,SAAS,EAAE,MAAM,KAAK,CAAC;EACxD,IAAI,QAAQ,GACV,QAAQ;EAEV,KAAK,MACF,UAAU;GACT,OAAO,oBAAoB,SAAS,OAAO;GAC3C,IAAI,QAAQ,GACV,OAAO,WAAW,CAAC;QAEnB,QAAQ,KAAK;EAEjB,IACC,UAAmB;GAClB,OAAO,oBAAoB,SAAS,OAAO;GAC3C,OAAO,QAAQ,IAAI,WAAW,IAAI,KAAK;EACzC,CACF;CACF,CAAC;CAEH,IAAI;EACF,OAAO,MAAM,QAAQ,UAAU,QAAQ,OAAO,CAAC;CACjD,SAAS,OAAO;EACd,IAAI,QAAQ,GACV,MAAM,WAAW;EAEnB,MAAM;CACR,UAAU;EACR,QAAQ;EACR,aAAa,KAAK;CACpB;AACF"}
@@ -0,0 +1,87 @@
1
+ import { isDecisionObject } from "./types.mjs";
2
+ //#region src/decisions/dialect.ts
3
+ function toWireQuestion(question, dialect) {
4
+ const type = dialect === "systemone" && question.type === "boolean" ? "noul" : question.type;
5
+ if (question.criteria == null) return {
6
+ type,
7
+ instructions: question.instructions
8
+ };
9
+ const criteria = question.type === "boolean" && typeof question.criteria === "string" ? { true: question.criteria } : question.criteria;
10
+ return {
11
+ type,
12
+ instructions: question.instructions,
13
+ criteria
14
+ };
15
+ }
16
+ function isProbability(value) {
17
+ return typeof value === "number" && Number.isFinite(value) && value >= 0 && value <= 1;
18
+ }
19
+ function probabilitiesOf(raw, answerType, question, selectedChoice) {
20
+ if (raw == null) return null;
21
+ if (!isDecisionObject(raw)) return;
22
+ const entries = Object.entries(raw);
23
+ if (entries.length === 0) return null;
24
+ if (question?.type === "choice" && entries.length !== Object.keys(question.criteria).length || question?.type === "score" && entries.length !== question.criteria.length) return;
25
+ const probabilities = Object.create(null);
26
+ let total = 0;
27
+ let maximum = 0;
28
+ for (const [key, value] of entries) {
29
+ if (!isProbability(value)) return;
30
+ if (question?.type === "choice" && !Object.hasOwn(question.criteria, key)) return;
31
+ if (answerType === "score" && (!/^(0|[1-9][0-9]*)$/.test(key) || Number(key) >= entries.length)) return;
32
+ probabilities[key] = value;
33
+ total += value;
34
+ maximum = Math.max(maximum, value);
35
+ }
36
+ if (selectedChoice !== void 0 && (!Object.hasOwn(probabilities, selectedChoice) || probabilities[selectedChoice] < maximum)) return;
37
+ const roundingTolerance = Math.min(.02, Math.max(.01, entries.length * 5e-5 + .001));
38
+ return Math.abs(total - 1) <= roundingTolerance ? probabilities : void 0;
39
+ }
40
+ function readAnswer(answer, dialect, question) {
41
+ if (!isDecisionObject(answer)) return null;
42
+ const record = answer;
43
+ const booleanType = dialect === "systemone" ? "noul" : "boolean";
44
+ const probability = dialect === "systemone" ? record.noul : record.probability;
45
+ if (record.type === booleanType) {
46
+ if (!isProbability(probability) || question != null && question.type !== "boolean") return null;
47
+ return {
48
+ type: "boolean",
49
+ probability
50
+ };
51
+ }
52
+ if (record.type !== "choice" && record.type !== "score") return null;
53
+ const confidence = record.confidence;
54
+ if (confidence != null && !isProbability(confidence)) return null;
55
+ const probabilities = probabilitiesOf(record.probabilities, record.type, question, record.type === "choice" && typeof record.choice === "string" ? record.choice : void 0);
56
+ if (probabilities === void 0) return null;
57
+ if (record.type === "choice") {
58
+ if (typeof record.choice !== "string" || question != null && (question.type !== "choice" || !Object.hasOwn(question.criteria, record.choice))) return null;
59
+ return {
60
+ type: "choice",
61
+ choice: record.choice,
62
+ confidence: confidence ?? null,
63
+ probabilities
64
+ };
65
+ }
66
+ if (typeof record.score !== "number" || !Number.isFinite(record.score) || record.score < 0 || question != null && (question.type !== "score" || record.score > question.criteria.length - 1)) return null;
67
+ if (probabilities !== null) {
68
+ let weightedScore = 0;
69
+ let levels = 0;
70
+ for (const [level, probability] of Object.entries(probabilities)) {
71
+ weightedScore += Number(level) * probability;
72
+ levels += 1;
73
+ }
74
+ const roundingTolerance = Math.min(.02, 5e-5 * (1 + levels * (levels - 1) / 2) + .001);
75
+ if (!Number.isFinite(weightedScore) || Math.abs(record.score - weightedScore) > roundingTolerance) return null;
76
+ }
77
+ return {
78
+ type: "score",
79
+ score: record.score,
80
+ confidence: confidence ?? null,
81
+ probabilities
82
+ };
83
+ }
84
+ //#endregion
85
+ export { readAnswer, toWireQuestion };
86
+
87
+ //# sourceMappingURL=dialect.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialect.mjs","names":[],"sources":["../../../src/decisions/dialect.ts"],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ import { DecisionError, isDecisionObject, readDecisionUsage } from "./types.mjs";
2
+ import { validateDecisionQuestions } from "./questions.mjs";
3
+ import { readAnswer, toWireQuestion } from "./dialect.mjs";
4
+ import { createTransport } from "./transport.mjs";
5
+ //#region src/decisions/http.ts
6
+ const HTTP_PROVIDER_ID = "http";
7
+ function parseEnvelope(body, providerId, readOne, responseKey, expected) {
8
+ let parsed;
9
+ try {
10
+ parsed = JSON.parse(body);
11
+ } catch {
12
+ throw new DecisionError("malformed_response", "response was not JSON", { provider: providerId });
13
+ }
14
+ if (!isDecisionObject(parsed)) throw new DecisionError("malformed_response", "response was not an object", { provider: providerId });
15
+ const unwrapped = responseKey != null && responseKey !== "" ? parsed[responseKey] : parsed;
16
+ if (!isDecisionObject(unwrapped) || !isDecisionObject(unwrapped.answers) || Object.keys(unwrapped.answers).length === 0) throw new DecisionError("malformed_response", "response carried no answers", { provider: providerId });
17
+ const answers = Object.create(null);
18
+ for (const [id, answer] of Object.entries(unwrapped.answers)) {
19
+ if (expected && !Object.hasOwn(expected, id)) throw new DecisionError("malformed_response", "response carried an unknown answer", { provider: providerId });
20
+ const mapped = readOne(answer, expected?.[id]);
21
+ if (!mapped) throw new DecisionError("malformed_response", "response carried an invalid answer", { provider: providerId });
22
+ answers[id] = mapped;
23
+ }
24
+ return {
25
+ model: typeof unwrapped.model === "string" ? unwrapped.model : "unknown",
26
+ answers,
27
+ usage: readDecisionUsage(unwrapped.usage)
28
+ };
29
+ }
30
+ function createHttpDecisionModel(options) {
31
+ const providerId = options.providerId ?? "http";
32
+ const send = createTransport({
33
+ ...options,
34
+ providerId
35
+ });
36
+ const model = options.model ?? "";
37
+ const dialect = options.dialect ?? "port";
38
+ const { requestKey, responseKey } = options;
39
+ return {
40
+ id: providerId,
41
+ model,
42
+ async decide(request) {
43
+ return send(() => {
44
+ const entries = validateDecisionQuestions(request.questions, providerId);
45
+ const questions = Object.create(null);
46
+ const expected = Object.create(null);
47
+ for (const [id, question] of entries) {
48
+ questions[id] = toWireQuestion(question, dialect);
49
+ expected[id] = question;
50
+ }
51
+ const inner = {
52
+ state: request.state,
53
+ questions
54
+ };
55
+ let payload;
56
+ try {
57
+ payload = JSON.stringify({
58
+ ...model !== "" ? { model } : {},
59
+ ...requestKey != null && requestKey !== "" ? { [requestKey]: inner } : inner
60
+ });
61
+ } catch {
62
+ throw new DecisionError("bad_request", "invalid decision model request", { provider: providerId });
63
+ }
64
+ return {
65
+ payload,
66
+ parse: (body) => parseEnvelope(body, providerId, (answer, question) => readAnswer(answer, dialect, question), responseKey, expected)
67
+ };
68
+ }, request.signal, request.label ?? "decide", request.timeoutMs);
69
+ }
70
+ };
71
+ }
72
+ //#endregion
73
+ export { HTTP_PROVIDER_ID, createHttpDecisionModel, parseEnvelope };
74
+
75
+ //# sourceMappingURL=http.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.mjs","names":[],"sources":["../../../src/decisions/http.ts"],"mappings":";;;;;AAeA,MAAa,mBAAmB;AAmBhC,SAAgB,cACd,MACA,YACA,SAIA,aACA,UACgB;CAChB,IAAI;CACJ,IAAI;EACF,SAAS,KAAK,MAAM,IAAI;CAC1B,QAAQ;EACN,MAAM,IAAI,cAAc,sBAAsB,yBAAyB,EACrE,UAAU,WACZ,CAAC;CACH;CACA,IAAI,CAAC,iBAAiB,MAAM,GAC1B,MAAM,IAAI,cACR,sBACA,8BACA,EACE,UAAU,WACZ,CACF;CAEF,MAAM,YACJ,eAAe,QAAQ,gBAAgB,KAAK,OAAO,eAAe;CACpE,IACE,CAAC,iBAAiB,SAAS,KAC3B,CAAC,iBAAiB,UAAU,OAAO,KACnC,OAAO,KAAK,UAAU,OAAO,CAAC,CAAC,WAAW,GAE1C,MAAM,IAAI,cACR,sBACA,+BACA,EACE,UAAU,WACZ,CACF;CAGF,MAAM,UAAqC,OAAO,OAAO,IAAI;CAC7D,KAAK,MAAM,CAAC,IAAI,WAAW,OAAO,QAAQ,UAAU,OAAO,GAAG;EAC5D,IAAI,YAAY,CAAC,OAAO,OAAO,UAAU,EAAE,GACzC,MAAM,IAAI,cACR,sBACA,sCACA,EACE,UAAU,WACZ,CACF;EAEF,MAAM,SAAS,QAAQ,QAAQ,WAAW,GAAG;EAC7C,IAAI,CAAC,QACH,MAAM,IAAI,cACR,sBACA,sCACA,EACE,UAAU,WACZ,CACF;EAEF,QAAQ,MAAM;CAChB;CAEA,OAAO;EACL,OAAO,OAAO,UAAU,UAAU,WAAW,UAAU,QAAQ;EAC/D;EACA,OAAO,kBAAkB,UAAU,KAAK;CAC1C;AACF;AAGA,SAAgB,wBACd,SACe;CACf,MAAM,aAAa,QAAQ,cAAA;CAC3B,MAAM,OAAO,gBAAgB;EAAE,GAAG;EAAS;CAAW,CAAC;CACvD,MAAM,QAAQ,QAAQ,SAAS;CAC/B,MAAM,UAA2B,QAAQ,WAAW;CACpD,MAAM,EAAE,YAAY,gBAAgB;CAEpC,OAAO;EACL,IAAI;EACJ;EACA,MAAM,OAAO,SAAmD;GAC9D,OAAO,WACC;IACJ,MAAM,UAAU,0BACd,QAAQ,WACR,UACF;IACA,MAAM,YAGF,OAAO,OAAO,IAAI;IACtB,MAAM,WACJ,OAAO,OAAO,IAAI;IACpB,KAAK,MAAM,CAAC,IAAI,aAAa,SAAS;KACpC,UAAU,MAAM,eAAe,UAAU,OAAO;KAChD,SAAS,MAAM;IACjB;IACA,MAAM,QAAQ;KAAE,OAAO,QAAQ;KAAO;IAAU;IAChD,IAAI;IACJ,IAAI;KACF,UAAU,KAAK,UAAU;MACvB,GAAI,UAAU,KAAK,EAAE,MAAM,IAAI,CAAC;MAChC,GAAI,cAAc,QAAQ,eAAe,KACrC,GAAG,aAAa,MAAM,IACtB;KACN,CAAC;IACH,QAAQ;KACN,MAAM,IAAI,cACR,eACA,kCACA,EACE,UAAU,WACZ,CACF;IACF;IACA,OAAO;KACL;KACA,QAAQ,SACN,cACE,MACA,aACC,QAAQ,aAAa,WAAW,QAAQ,SAAS,QAAQ,GAC1D,aACA,QACF;IACJ;GACF,GACA,QAAQ,QACR,QAAQ,SAAS,UACjB,QAAQ,SACV;EACF;CACF;AACF"}
@@ -0,0 +1,8 @@
1
+ import "./types.mjs";
2
+ import "./questions.mjs";
3
+ import "./dialect.mjs";
4
+ import "./transport.mjs";
5
+ import "./http.mjs";
6
+ import "./presets.mjs";
7
+ import "./structuredChat.mjs";
8
+ export {};