@openrouter/agent 0.9.0 → 0.10.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 (136) hide show
  1. package/README.md +249 -2
  2. package/THIRD_PARTY_NOTICES.md +25 -0
  3. package/esm/index.d.ts +3 -3
  4. package/esm/index.d.ts.map +1 -1
  5. package/esm/index.js +1 -1
  6. package/esm/index.js.map +1 -1
  7. package/esm/inner-loop/call-model.d.ts.map +1 -1
  8. package/esm/inner-loop/call-model.js +25 -7
  9. package/esm/inner-loop/call-model.js.map +1 -1
  10. package/esm/lib/agent-tool.d.ts +1 -1
  11. package/esm/lib/agent-tool.d.ts.map +1 -1
  12. package/esm/lib/agent-tool.js.map +1 -1
  13. package/esm/lib/async-params.d.ts +14 -0
  14. package/esm/lib/async-params.d.ts.map +1 -1
  15. package/esm/lib/async-params.js +25 -1
  16. package/esm/lib/async-params.js.map +1 -1
  17. package/esm/lib/model-result.d.ts +3 -3
  18. package/esm/lib/model-result.d.ts.map +1 -1
  19. package/esm/lib/model-result.js +45 -21
  20. package/esm/lib/model-result.js.map +1 -1
  21. package/esm/lib/next-turn-params.d.ts.map +1 -1
  22. package/esm/lib/next-turn-params.js +3 -1
  23. package/esm/lib/next-turn-params.js.map +1 -1
  24. package/esm/lib/next-turn-params.test.js +72 -0
  25. package/esm/lib/next-turn-params.test.js.map +1 -1
  26. package/esm/lib/stream-transformers.d.ts +1 -1
  27. package/esm/lib/stream-transformers.d.ts.map +1 -1
  28. package/esm/lib/stream-transformers.js.map +1 -1
  29. package/esm/lib/tool-set-types.d.ts +298 -0
  30. package/esm/lib/tool-set-types.d.ts.map +1 -0
  31. package/esm/lib/tool-set-types.js +2 -0
  32. package/esm/lib/tool-set-types.js.map +1 -0
  33. package/esm/lib/tool-set.d.ts +157 -0
  34. package/esm/lib/tool-set.d.ts.map +1 -0
  35. package/esm/lib/tool-set.js +473 -0
  36. package/esm/lib/tool-set.js.map +1 -0
  37. package/esm/lib/tool-types.d.ts +198 -28
  38. package/esm/lib/tool-types.d.ts.map +1 -1
  39. package/esm/lib/tool-types.js.map +1 -1
  40. package/esm/lib/tool.d.ts +47 -21
  41. package/esm/lib/tool.d.ts.map +1 -1
  42. package/esm/lib/tool.js +13 -3
  43. package/esm/lib/tool.js.map +1 -1
  44. package/esm/mcp/auth/auth-resolver.d.ts +14 -0
  45. package/esm/mcp/auth/auth-resolver.d.ts.map +1 -0
  46. package/esm/mcp/auth/auth-resolver.js +27 -0
  47. package/esm/mcp/auth/auth-resolver.js.map +1 -0
  48. package/esm/mcp/auth/auth-types.d.ts +33 -0
  49. package/esm/mcp/auth/auth-types.d.ts.map +1 -0
  50. package/esm/mcp/auth/auth-types.js +4 -0
  51. package/esm/mcp/auth/auth-types.js.map +1 -0
  52. package/esm/mcp/build-tools.d.ts +29 -0
  53. package/esm/mcp/build-tools.d.ts.map +1 -0
  54. package/esm/mcp/build-tools.js +80 -0
  55. package/esm/mcp/build-tools.js.map +1 -0
  56. package/esm/mcp/cache/cache-store.d.ts +24 -0
  57. package/esm/mcp/cache/cache-store.d.ts.map +1 -0
  58. package/esm/mcp/cache/cache-store.js +20 -0
  59. package/esm/mcp/cache/cache-store.js.map +1 -0
  60. package/esm/mcp/cache/cache-types.d.ts +71 -0
  61. package/esm/mcp/cache/cache-types.d.ts.map +1 -0
  62. package/esm/mcp/cache/cache-types.js +49 -0
  63. package/esm/mcp/cache/cache-types.js.map +1 -0
  64. package/esm/mcp/cache/serialize.d.ts +25 -0
  65. package/esm/mcp/cache/serialize.d.ts.map +1 -0
  66. package/esm/mcp/cache/serialize.js +96 -0
  67. package/esm/mcp/cache/serialize.js.map +1 -0
  68. package/esm/mcp/close-quietly.d.ts +24 -0
  69. package/esm/mcp/close-quietly.d.ts.map +1 -0
  70. package/esm/mcp/close-quietly.js +30 -0
  71. package/esm/mcp/close-quietly.js.map +1 -0
  72. package/esm/mcp/create-mcp-tools.d.ts +13 -0
  73. package/esm/mcp/create-mcp-tools.d.ts.map +1 -0
  74. package/esm/mcp/create-mcp-tools.js +87 -0
  75. package/esm/mcp/create-mcp-tools.js.map +1 -0
  76. package/esm/mcp/elicitation.d.ts +11 -0
  77. package/esm/mcp/elicitation.d.ts.map +1 -0
  78. package/esm/mcp/elicitation.js +51 -0
  79. package/esm/mcp/elicitation.js.map +1 -0
  80. package/esm/mcp/errors.d.ts +91 -0
  81. package/esm/mcp/errors.d.ts.map +1 -0
  82. package/esm/mcp/errors.js +91 -0
  83. package/esm/mcp/errors.js.map +1 -0
  84. package/esm/mcp/handle.d.ts +66 -0
  85. package/esm/mcp/handle.d.ts.map +1 -0
  86. package/esm/mcp/handle.js +323 -0
  87. package/esm/mcp/handle.js.map +1 -0
  88. package/esm/mcp/index.d.ts +13 -0
  89. package/esm/mcp/index.d.ts.map +1 -0
  90. package/esm/mcp/index.js +11 -0
  91. package/esm/mcp/index.js.map +1 -0
  92. package/esm/mcp/mcp-connection.d.ts +150 -0
  93. package/esm/mcp/mcp-connection.d.ts.map +1 -0
  94. package/esm/mcp/mcp-connection.js +478 -0
  95. package/esm/mcp/mcp-connection.js.map +1 -0
  96. package/esm/mcp/mcp-sdk.d.ts +10 -0
  97. package/esm/mcp/mcp-sdk.d.ts.map +1 -0
  98. package/esm/mcp/mcp-sdk.js +37 -0
  99. package/esm/mcp/mcp-sdk.js.map +1 -0
  100. package/esm/mcp/rehydrate.d.ts +76 -0
  101. package/esm/mcp/rehydrate.d.ts.map +1 -0
  102. package/esm/mcp/rehydrate.js +505 -0
  103. package/esm/mcp/rehydrate.js.map +1 -0
  104. package/esm/mcp/resource-tools.d.ts +17 -0
  105. package/esm/mcp/resource-tools.d.ts.map +1 -0
  106. package/esm/mcp/resource-tools.js +155 -0
  107. package/esm/mcp/resource-tools.js.map +1 -0
  108. package/esm/mcp/result-mapper.d.ts +19 -0
  109. package/esm/mcp/result-mapper.d.ts.map +1 -0
  110. package/esm/mcp/result-mapper.js +40 -0
  111. package/esm/mcp/result-mapper.js.map +1 -0
  112. package/esm/mcp/schema/json-schema-guards.d.ts +14 -0
  113. package/esm/mcp/schema/json-schema-guards.d.ts.map +1 -0
  114. package/esm/mcp/schema/json-schema-guards.js +19 -0
  115. package/esm/mcp/schema/json-schema-guards.js.map +1 -0
  116. package/esm/mcp/schema/json-schema-to-zod.d.ts +20 -0
  117. package/esm/mcp/schema/json-schema-to-zod.d.ts.map +1 -0
  118. package/esm/mcp/schema/json-schema-to-zod.js +72 -0
  119. package/esm/mcp/schema/json-schema-to-zod.js.map +1 -0
  120. package/esm/mcp/tool-wrapper.d.ts +41 -0
  121. package/esm/mcp/tool-wrapper.d.ts.map +1 -0
  122. package/esm/mcp/tool-wrapper.js +131 -0
  123. package/esm/mcp/tool-wrapper.js.map +1 -0
  124. package/esm/mcp/transport-types.d.ts +45 -0
  125. package/esm/mcp/transport-types.d.ts.map +1 -0
  126. package/esm/mcp/transport-types.js +2 -0
  127. package/esm/mcp/transport-types.js.map +1 -0
  128. package/esm/mcp/types.d.ts +119 -0
  129. package/esm/mcp/types.d.ts.map +1 -0
  130. package/esm/mcp/types.js +2 -0
  131. package/esm/mcp/types.js.map +1 -0
  132. package/esm/mcp/version.d.ts +3 -0
  133. package/esm/mcp/version.d.ts.map +1 -0
  134. package/esm/mcp/version.js +5 -0
  135. package/esm/mcp/version.js.map +1 -0
  136. package/package.json +44 -7
@@ -1 +1 @@
1
- {"version":3,"file":"next-turn-params.d.ts","sourceRoot":"","sources":["../../src/lib/next-turn-params.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAUnF;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,CAAC,gBAAgB,GAC/B,qBAAqB,CAWvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,8BAA8B,CAClD,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,EACjC,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,cAAc,EAAE,MAAM,CAAC,gBAAgB,GACtC,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CA4CzC;AAyED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAChC,cAAc,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAC7C,MAAM,CAAC,gBAAgB,CAWzB"}
1
+ {"version":3,"file":"next-turn-params.d.ts","sourceRoot":"","sources":["../../src/lib/next-turn-params.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAUnF;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,CAAC,gBAAgB,GAC/B,qBAAqB,CAYvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,8BAA8B,CAClD,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,EACjC,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,cAAc,EAAE,MAAM,CAAC,gBAAgB,GACtC,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CA4CzC;AA0ED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAChC,cAAc,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAC7C,MAAM,CAAC,gBAAgB,CAWzB"}
@@ -15,6 +15,7 @@ function isRecord(value) {
15
15
  export function buildNextTurnParamsContext(request) {
16
16
  return {
17
17
  input: request.input ?? [],
18
+ toolChoice: request.toolChoice,
18
19
  model: request.model ?? '',
19
20
  models: request.models ?? [],
20
21
  temperature: request.temperature ?? null,
@@ -79,7 +80,7 @@ async function processNextTurnParamsForCall(nextParams, params, workingContext,
79
80
  if (!isValidNextTurnParamKey(paramKey)) {
80
81
  if (process.env['NODE_ENV'] !== 'production') {
81
82
  console.warn(`Invalid nextTurnParams key "${paramKey}" in tool "${toolName}". ` +
82
- 'Valid keys: input, model, models, temperature, maxOutputTokens, topP, topK, instructions');
83
+ 'Valid keys: input, toolChoice, model, models, temperature, maxOutputTokens, topP, topK, instructions');
83
84
  }
84
85
  continue;
85
86
  }
@@ -97,6 +98,7 @@ async function processNextTurnParamsForCall(nextParams, params, workingContext,
97
98
  function isValidNextTurnParamKey(key) {
98
99
  const validKeys = new Set([
99
100
  'input',
101
+ 'toolChoice',
100
102
  'model',
101
103
  'models',
102
104
  'temperature',
@@ -1 +1 @@
1
- {"version":3,"file":"next-turn-params.js","sourceRoot":"","sources":["../../src/lib/next-turn-params.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"next-turn-params.js","sourceRoot":"","sources":["../../src/lib/next-turn-params.ts"],"names":[],"mappings":"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"}
@@ -95,4 +95,76 @@ describe('applyNextTurnParamsToRequest', () => {
95
95
  expect(result.instructions).toBe('');
96
96
  });
97
97
  });
98
+ /*
99
+ * `toolChoice` is how a tool-search tool widens the model's reach mid-run: the
100
+ * `tools` array stays byte-identical (preserving the provider's prompt-cache
101
+ * prefix) while `{ type: 'allowed_tools', tools: [...] }` grows.
102
+ */
103
+ describe('applyNextTurnParamsToRequest with allowed_tools', () => {
104
+ const allowed = (names) => ({
105
+ type: 'allowed_tools',
106
+ mode: 'auto',
107
+ tools: names.map((name) => ({
108
+ type: 'function',
109
+ name,
110
+ })),
111
+ });
112
+ it('replaces toolChoice with a widened allowed_tools set', () => {
113
+ const request = createBaseRequest({
114
+ toolChoice: allowed([
115
+ 'tool_search',
116
+ ]),
117
+ });
118
+ const result = applyNextTurnParamsToRequest(request, {
119
+ toolChoice: allowed([
120
+ 'tool_search',
121
+ 'get_weather',
122
+ ]),
123
+ });
124
+ expect(result.toolChoice).toEqual(allowed([
125
+ 'tool_search',
126
+ 'get_weather',
127
+ ]));
128
+ });
129
+ it('leaves the tools array untouched so the prompt-cache prefix survives', () => {
130
+ const tools = [
131
+ {
132
+ type: 'function',
133
+ name: 'tool_search',
134
+ parameters: {},
135
+ },
136
+ {
137
+ type: 'function',
138
+ name: 'get_weather',
139
+ parameters: {},
140
+ },
141
+ ];
142
+ const request = createBaseRequest({
143
+ tools,
144
+ toolChoice: allowed([
145
+ 'tool_search',
146
+ ]),
147
+ });
148
+ const result = applyNextTurnParamsToRequest(request, {
149
+ toolChoice: allowed([
150
+ 'tool_search',
151
+ 'get_weather',
152
+ ]),
153
+ });
154
+ expect(result.tools).toBe(tools);
155
+ });
156
+ it('leaves toolChoice alone when no tool computed one', () => {
157
+ const request = createBaseRequest({
158
+ toolChoice: allowed([
159
+ 'tool_search',
160
+ ]),
161
+ });
162
+ const result = applyNextTurnParamsToRequest(request, {
163
+ temperature: 0.2,
164
+ });
165
+ expect(result.toolChoice).toEqual(allowed([
166
+ 'tool_search',
167
+ ]));
168
+ });
169
+ });
98
170
  //# sourceMappingURL=next-turn-params.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"next-turn-params.test.js","sourceRoot":"","sources":["../../src/lib/next-turn-params.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"next-turn-params.test.js","sourceRoot":"","sources":["../../src/lib/next-turn-params.test.ts"],"names":[],"mappings":"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"}
@@ -81,7 +81,7 @@ type InferServerToolOutputsUnion<TTools extends readonly Tool[]> = InferServerTo
81
81
  * `true extends (distributed-check)` so distribution over a union yields
82
82
  * `true` when any member matches (not `boolean`).
83
83
  */
84
- type HasClientTool<TTools extends readonly Tool[]> = true extends (TTools[number] extends ClientTool ? true : never) ? true : false;
84
+ type HasClientTool<TTools extends readonly Tool[]> = Extract<TTools[number], ClientTool> extends never ? false : true;
85
85
  /**
86
86
  * Widest possible streamable output — every item type the API can emit
87
87
  * plus `function_call_output` that we construct for client tool results.
@@ -1 +1 @@
1
- {"version":3,"file":"stream-transformers.d.ts","sourceRoot":"","sources":["../../src/lib/stream-transformers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-transformers.d.ts","sourceRoot":"","sources":["../../src/lib/stream-transformers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stream-transformers.js","sourceRoot":"","sources":["../../src/lib/stream-transformers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-transformers.js","sourceRoot":"","sources":["../../src/lib/stream-transformers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,298 @@
1
+ import { TOOL_SET_SNAPSHOT } from './async-params.js';
2
+ import type { ClientTool, ConversationState, CorrelatedToolEventUnion, ServerToolBase, Tool } from './tool-types.js';
3
+ /** Client tool: `function.name` literal. */
4
+ export type ClientToolName<T> = T extends {
5
+ function: {
6
+ name: infer N extends string;
7
+ };
8
+ } ? N : never;
9
+ /**
10
+ * Server-tool stable ID.
11
+ * Prefixed so it can never collide with a client function name.
12
+ * Prefers an explicit `id` on the tool; falls back to `server:${config.type}`.
13
+ *
14
+ * When `T`'s `id` has been widened to plain `string` (e.g. a custom-ID
15
+ * `ServerTool<T, TId>` value erased to the exported `ServerToolBase`
16
+ * interface), the concrete literal is no longer visible at the type level.
17
+ * Synthesizing `` `server:${config.type}` `` in that case would be unsound:
18
+ * the runtime `id` could be anything, and the synthesized literal would
19
+ * both reject the real id and falsely claim a default that may not hold.
20
+ * Widening to `string` here is the sound choice — it accepts any runtime id.
21
+ * Only tools with no structural `id` at all fall back to the synthesized
22
+ * default, and concrete `ServerTool<T, TId>` values keep their literal `TId`.
23
+ */
24
+ export type ServerToolIdOf<T> = 'id' extends keyof T ? T extends {
25
+ readonly id?: infer Id;
26
+ } ? Extract<Id, string> extends infer StringId extends string ? string extends StringId ? string : StringId : never : never : T extends {
27
+ readonly config: {
28
+ type: infer K extends string;
29
+ };
30
+ } ? `server:${K}` : never;
31
+ /** Union of every addressable id for one tool. */
32
+ export type ToolIdOf<T extends Tool> = T extends ServerToolBase ? ServerToolIdOf<T> : ClientToolName<T>;
33
+ export type ToolIdsOfTuple<T extends readonly Tool[]> = ToolIdOf<T[number]>;
34
+ export type ClientToolNamesOfTuple<T extends readonly Tool[]> = ClientToolName<Extract<T[number], ClientTool>>;
35
+ export type ServerToolIdsOfTuple<T extends readonly Tool[]> = ServerToolIdOf<Extract<T[number], ServerToolBase>>;
36
+ /** Lookup tool by id inside a tuple (preserves concrete member type). */
37
+ export type ToolById<T extends readonly Tool[], Id extends string> = Extract<{
38
+ [I in keyof T]: T[I] extends Tool ? (ToolIdOf<T[I]> extends Id ? T[I] : never) : never;
39
+ }[number], Tool>;
40
+ /**
41
+ * Distributive per-element filter used for the wide (non-tuple) case below.
42
+ * A "naked" type parameter (`El`) is required for the conditional to
43
+ * distribute over the `T[number]` union; wrapping it in an indexed access
44
+ * (e.g. checking `T[number]` directly inside the conditional) would collapse
45
+ * to a single non-distributive check instead.
46
+ */
47
+ type KeepIfActive<El, Active extends string> = El extends Tool ? string extends ToolIdOf<El> ? El : ToolIdOf<El> extends Active ? El : never : never;
48
+ /**
49
+ * Keep tuple order; drop members whose id is not in Active.
50
+ *
51
+ * A genuine fixed-length tuple (`T['length']` is a literal number) is
52
+ * filtered by exact head/tail recursion, preserving order and concrete
53
+ * per-element types. A dynamic `readonly Tool[]` (e.g. an `@openrouter/agent/mcp`
54
+ * tool array not typed as a literal tuple) has `number extends T['length']`,
55
+ * so it falls back to a distributive per-element filter instead of
56
+ * recursing — the tuple pattern never matches a general array, and without
57
+ * this branch the recursion always bottoms out at `readonly []`.
58
+ */
59
+ export type FilterToolsByIds<T extends readonly Tool[], Active extends string> = number extends T['length'] ? readonly KeepIfActive<T[number], Active>[] : T extends readonly [
60
+ infer H extends Tool,
61
+ ...infer R extends readonly Tool[]
62
+ ] ? ToolIdOf<H> extends Active ? readonly [
63
+ H,
64
+ ...FilterToolsByIds<R, Active>
65
+ ] : FilterToolsByIds<R, Active> : readonly [];
66
+ /** IDs that are statically enabled or selected from the conditional partition. */
67
+ type ResolvedActiveIds<P extends Partition, TActive extends string> = P['enabled'] | Extract<TActive, P['conditional']>;
68
+ /**
69
+ * Exact tuple for static partitions; possible active members for partitions
70
+ * whose runtime predicates can change tuple membership.
71
+ */
72
+ export type ResolvedTools<TTools extends readonly Tool[], P extends Partition, TActive extends P['conditional'] = P['conditional']> = [
73
+ P['conditional']
74
+ ] extends [
75
+ never
76
+ ] ? FilterToolsByIds<TTools, P['enabled'] & ToolIdsOfTuple<TTools>> : readonly FilterToolsByIds<TTools, ResolvedActiveIds<P, TActive> & ToolIdsOfTuple<TTools>>[number][];
77
+ /**
78
+ * Enabled = statically on (default, or .activate / situation.enabled)
79
+ * Disabled = statically off (.deactivate / situation.disabled)
80
+ * Conditional = runtime predicate (.activateWhen / .deactivateWhen / situation rules)
81
+ *
82
+ * Invariants (enforced by mutators via Exclude):
83
+ * Enabled ∩ Disabled = ∅
84
+ * Enabled ∩ Conditional = ∅
85
+ * Disabled ∩ Conditional = ∅
86
+ * Enabled ∪ Disabled ∪ Conditional = all known IDs
87
+ */
88
+ export type Partition = {
89
+ enabled: string;
90
+ disabled: string;
91
+ conditional: string;
92
+ };
93
+ export type EmptyPartition = {
94
+ enabled: never;
95
+ disabled: never;
96
+ conditional: never;
97
+ };
98
+ /** Default construction: every tool ID enabled. */
99
+ export type InitialPartition<T extends readonly Tool[]> = {
100
+ enabled: ToolIdsOfTuple<T>;
101
+ disabled: never;
102
+ conditional: never;
103
+ };
104
+ /**
105
+ * Deliberately imprecise partition for mutable `ToolSet` instances.
106
+ *
107
+ * A mutable `ToolSet` mutates one shared runtime object in place, and any
108
+ * number of aliases can reference that same object. If mutators refined the
109
+ * partition type the way the immutable path does, two aliases of the same
110
+ * live object could statically claim different, contradictory exact
111
+ * partitions the instant one of them mutated — an unsound state (e.g. one
112
+ * alias's type promising `disabled: never` while the object it points to
113
+ * has, in fact, just been deactivated through another alias).
114
+ *
115
+ * Mutable instances therefore use this single widened partition,
116
+ * unconditionally and unchanging, for their entire lifetime: nothing is
117
+ * ever statically guaranteed enabled or disabled, and every id is treated
118
+ * as `conditional` (only knowable by calling `resolve()`). Every alias of a
119
+ * mutable instance carries the exact same (already maximally conservative)
120
+ * type, so no alias can ever make a compile-time claim the runtime object
121
+ * could contradict.
122
+ */
123
+ export type WidenedPartition<T extends readonly Tool[]> = {
124
+ enabled: never;
125
+ disabled: never;
126
+ conditional: ToolIdsOfTuple<T>;
127
+ };
128
+ export type ActivatePartition<P extends Partition, Name extends string> = {
129
+ enabled: P['enabled'] | Name;
130
+ disabled: Exclude<P['disabled'], Name>;
131
+ conditional: Exclude<P['conditional'], Name>;
132
+ };
133
+ export type DeactivatePartition<P extends Partition, Name extends string> = {
134
+ enabled: Exclude<P['enabled'], Name>;
135
+ disabled: P['disabled'] | Name;
136
+ conditional: Exclude<P['conditional'], Name>;
137
+ };
138
+ export type ConditionalPartition<P extends Partition, Name extends string> = {
139
+ enabled: Exclude<P['enabled'], Name>;
140
+ disabled: Exclude<P['disabled'], Name>;
141
+ conditional: P['conditional'] | Name;
142
+ };
143
+ export type ActivationInput<TShared extends Record<string, unknown> = Record<string, unknown>> = {
144
+ state?: ConversationState;
145
+ context?: TShared;
146
+ };
147
+ export type ActivationPredicate<TShared extends Record<string, unknown> = Record<string, unknown>> = (input: ActivationInput<TShared>) => boolean;
148
+ export type SituationConditionalRule<TShared extends Record<string, unknown> = Record<string, unknown>> = ActivationPredicate<TShared> | {
149
+ mode?: 'activateWhen' | 'deactivateWhen';
150
+ predicate: ActivationPredicate<TShared>;
151
+ };
152
+ /**
153
+ * Declarative fixed partition overlay for one named situation.
154
+ * Keys not listed keep the base ToolSet partition after the overlay.
155
+ */
156
+ export type SituationConfig<TIds extends string = string, TShared extends Record<string, unknown> = Record<string, unknown>> = {
157
+ /** Statically on in this situation. */
158
+ enabled?: readonly TIds[];
159
+ /** Statically off in this situation. */
160
+ disabled?: readonly TIds[];
161
+ /**
162
+ * Conditional tools for this situation.
163
+ * Default mode is activateWhen (inactive until predicate is true).
164
+ * Use `{ mode: 'deactivateWhen', predicate }` for the reverse default.
165
+ */
166
+ conditional?: {
167
+ readonly [K in TIds]?: SituationConditionalRule<TShared>;
168
+ };
169
+ };
170
+ /** Situations registry accumulated on the ToolSet type. */
171
+ export type SituationMap = Record<string, {
172
+ enabled: string;
173
+ disabled: string;
174
+ conditional: string;
175
+ }>;
176
+ export type EmptySituations = Record<never, never>;
177
+ /**
178
+ * Deliberately imprecise situation registry for mutable `ToolSet` instances.
179
+ *
180
+ * Mirrors {@link WidenedPartition}: since `defineSituations` on a mutable
181
+ * instance mutates the shared runtime situation registry in place, its type
182
+ * cannot statically promise a specific set of situation names without
183
+ * risking the same cross-alias contradiction. `string` keeps every
184
+ * situation name assignable while still requiring a real string key.
185
+ */
186
+ export type WidenedSituationMap = Record<string, Partition>;
187
+ export type SituationNames<S extends SituationMap> = keyof S & string;
188
+ /**
189
+ * Infer the static partition contribution of a situation config object.
190
+ * Missing fields contribute `never`.
191
+ */
192
+ export type InferSituationEntry<C> = {
193
+ enabled: C extends {
194
+ enabled: readonly (infer E extends string)[];
195
+ } ? E : never;
196
+ disabled: C extends {
197
+ disabled: readonly (infer D extends string)[];
198
+ } ? D : never;
199
+ conditional: C extends {
200
+ conditional: infer Cond;
201
+ } ? keyof Cond & string : never;
202
+ };
203
+ export type InferSituationMap<M> = {
204
+ [K in keyof M]: InferSituationEntry<M[K]>;
205
+ };
206
+ /**
207
+ * Apply a situation overlay onto a base partition.
208
+ * Situation wins for every id it mentions; others stay from base.
209
+ */
210
+ export type ApplySituationPartition<Base extends Partition, Sit extends {
211
+ enabled: string;
212
+ disabled: string;
213
+ conditional: string;
214
+ }> = {
215
+ enabled: Exclude<Base['enabled'], Sit['enabled'] | Sit['disabled'] | Sit['conditional']> | Sit['enabled'];
216
+ disabled: Exclude<Base['disabled'], Sit['enabled'] | Sit['disabled'] | Sit['conditional']> | Sit['disabled'];
217
+ conditional: Exclude<Base['conditional'], Sit['enabled'] | Sit['disabled'] | Sit['conditional']> | Sit['conditional'];
218
+ };
219
+ export type StatusReason = 'default' | 'activate' | 'deactivate' | 'activateWhen' | 'deactivateWhen' | 'situation';
220
+ export type ToolStatusEntry = {
221
+ readonly enabled: boolean;
222
+ readonly reason: StatusReason;
223
+ /**
224
+ * The last applicable directive for this tool before predicates ran, if any.
225
+ * Absent when the tool is still at its construction default.
226
+ */
227
+ readonly directive?: 'activate' | 'deactivate' | 'activateWhen' | 'deactivateWhen';
228
+ /** True when the final state depended on evaluating a runtime predicate. */
229
+ readonly predicate?: boolean;
230
+ };
231
+ export type StatusByToolMap<TIds extends string> = {
232
+ readonly [K in TIds]: ToolStatusEntry;
233
+ };
234
+ /**
235
+ * What resolve() / resolveSituation() returns.
236
+ *
237
+ * For static-only partitions (`conditional = never`), the snapshot is fully
238
+ * known at compile time. When conditional ≠ never, TActive selects possible
239
+ * members from `P['conditional']`; `P['enabled']` is always included. Tools
240
+ * become a readonly array of that possible member union because predicates
241
+ * can change length and positions at runtime. Runtime arrays/status are exact.
242
+ *
243
+ * `disabled` is declared as the complement of the *definitely-enabled* set
244
+ * (`P['enabled']`), not of `TActive`. A conditional id's predicate can
245
+ * resolve to either outcome at runtime — `#resolveWithActivation` pushes it
246
+ * into `disabled` whenever the predicate says off — so conditional ids must
247
+ * remain in both the `enabled` and `disabled` upper bounds for the declared
248
+ * types to stay sound. (Subtracting `TActive`, which already includes
249
+ * `P['conditional']`, would wrongly exclude conditional ids from `disabled`.)
250
+ */
251
+ export type ResolvedToolSnapshot<TTools extends readonly Tool[], P extends Partition, TActive extends P['conditional'] = P['conditional']> = {
252
+ /** Active tools only, construction order preserved, concrete member types kept. */
253
+ readonly tools: ResolvedTools<TTools, P, TActive>;
254
+ /** Active client names only (`callModel.activeTools` wire format). Server ids omitted. */
255
+ readonly activeTools: readonly Extract<ResolvedActiveIds<P, TActive>, ClientToolNamesOfTuple<TTools>>[];
256
+ /** Spread-safe input for `callModel`; snapshot metadata is intentionally excluded. */
257
+ readonly callModel: {
258
+ readonly tools: ResolvedTools<TTools, P, TActive>;
259
+ readonly activeTools: readonly Extract<ResolvedActiveIds<P, TActive>, ClientToolNamesOfTuple<TTools>>[];
260
+ };
261
+ /** IDs that resolved active (client + server). */
262
+ readonly enabled: readonly (ResolvedActiveIds<P, TActive> & ToolIdsOfTuple<TTools>)[];
263
+ /**
264
+ * IDs that resolved inactive (client + server). Sound upper bound: the
265
+ * complement of the definitely-enabled set, so conditional ids whose
266
+ * predicate resolves `false` are included here too.
267
+ */
268
+ readonly disabled: readonly Exclude<ToolIdsOfTuple<TTools>, P['enabled']>[];
269
+ /** Exhaustive id → status entry. Every ToolIdsOfTuple key present. */
270
+ readonly statusByTool: StatusByToolMap<ToolIdsOfTuple<TTools>>;
271
+ /** Internal marker allowing `callModel` to recognize a snapshot spread. */
272
+ readonly [TOOL_SET_SNAPSHOT]: true;
273
+ };
274
+ /**
275
+ * Structural shape for extracting partition/situation generics from either
276
+ * mutable or immutable `ToolSet` instances.
277
+ */
278
+ export type ToolSetLike<TTools extends readonly Tool[] = readonly Tool[], TShared extends Record<string, unknown> = Record<string, unknown>, P extends Partition = Partition, Sit extends SituationMap = SituationMap> = {
279
+ readonly tools: TTools;
280
+ readonly _partition?: P;
281
+ readonly _situations?: Sit;
282
+ readonly _shared?: TShared;
283
+ };
284
+ /** Every known tool-set ID. */
285
+ export type InferAllIds<TS> = TS extends ToolSetLike<infer T, any, any, any> ? ToolIdsOfTuple<T> : never;
286
+ /** Definitely-enabled IDs (static). */
287
+ export type InferEnabledIds<TS> = TS extends ToolSetLike<any, any, infer P, any> ? P['enabled'] : never;
288
+ /** Definitely-disabled IDs (static). */
289
+ export type InferDisabledIds<TS> = TS extends ToolSetLike<any, any, infer P, any> ? P['disabled'] : never;
290
+ /** Conditionally-activated IDs (runtime predicate). */
291
+ export type InferConditionalIds<TS> = TS extends ToolSetLike<any, any, infer P, any> ? P['conditional'] : never;
292
+ /**
293
+ * Name-correlated streaming events for a tools tuple.
294
+ * Delegates to the agent's core {@link CorrelatedToolEventUnion}.
295
+ */
296
+ export type InferToolSet<T extends readonly Tool[]> = CorrelatedToolEventUnion<T>;
297
+ export {};
298
+ //# sourceMappingURL=tool-set-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-set-types.d.ts","sourceRoot":"","sources":["../../src/lib/tool-set-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { TOOL_SET_SNAPSHOT } from './async-params.js';
2
+ //# sourceMappingURL=tool-set-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-set-types.js","sourceRoot":"","sources":["../../src/lib/tool-set-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}