@openrouter/agent 0.7.2 → 0.8.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 (64) hide show
  1. package/README.md +248 -17
  2. package/esm/index.d.ts +8 -5
  3. package/esm/index.d.ts.map +1 -1
  4. package/esm/index.js +12 -4
  5. package/esm/index.js.map +1 -1
  6. package/esm/inner-loop/call-model.d.ts +8 -5
  7. package/esm/inner-loop/call-model.d.ts.map +1 -1
  8. package/esm/inner-loop/call-model.js +16 -6
  9. package/esm/inner-loop/call-model.js.map +1 -1
  10. package/esm/lib/async-params.d.ts +25 -6
  11. package/esm/lib/async-params.d.ts.map +1 -1
  12. package/esm/lib/async-params.js +3 -1
  13. package/esm/lib/async-params.js.map +1 -1
  14. package/esm/lib/conversation-state.d.ts +44 -1
  15. package/esm/lib/conversation-state.d.ts.map +1 -1
  16. package/esm/lib/conversation-state.js +111 -0
  17. package/esm/lib/conversation-state.js.map +1 -1
  18. package/esm/lib/hooks-emit.d.ts +50 -0
  19. package/esm/lib/hooks-emit.d.ts.map +1 -0
  20. package/esm/lib/hooks-emit.js +307 -0
  21. package/esm/lib/hooks-emit.js.map +1 -0
  22. package/esm/lib/hooks-manager.d.ts +141 -0
  23. package/esm/lib/hooks-manager.d.ts.map +1 -0
  24. package/esm/lib/hooks-manager.js +282 -0
  25. package/esm/lib/hooks-manager.js.map +1 -0
  26. package/esm/lib/hooks-matchers.d.ts +12 -0
  27. package/esm/lib/hooks-matchers.d.ts.map +1 -0
  28. package/esm/lib/hooks-matchers.js +26 -0
  29. package/esm/lib/hooks-matchers.js.map +1 -0
  30. package/esm/lib/hooks-resolve.d.ts +17 -0
  31. package/esm/lib/hooks-resolve.d.ts.map +1 -0
  32. package/esm/lib/hooks-resolve.js +42 -0
  33. package/esm/lib/hooks-resolve.js.map +1 -0
  34. package/esm/lib/hooks-schemas.d.ts +188 -0
  35. package/esm/lib/hooks-schemas.d.ts.map +1 -0
  36. package/esm/lib/hooks-schemas.js +184 -0
  37. package/esm/lib/hooks-schemas.js.map +1 -0
  38. package/esm/lib/hooks-types.d.ts +174 -0
  39. package/esm/lib/hooks-types.d.ts.map +1 -0
  40. package/esm/lib/hooks-types.js +45 -0
  41. package/esm/lib/hooks-types.js.map +1 -0
  42. package/esm/lib/model-result.d.ts +209 -9
  43. package/esm/lib/model-result.d.ts.map +1 -1
  44. package/esm/lib/model-result.js +1397 -348
  45. package/esm/lib/model-result.js.map +1 -1
  46. package/esm/lib/reusable-stream.d.ts +6 -0
  47. package/esm/lib/reusable-stream.d.ts.map +1 -1
  48. package/esm/lib/reusable-stream.js +8 -0
  49. package/esm/lib/reusable-stream.js.map +1 -1
  50. package/esm/lib/tool-executor.d.ts.map +1 -1
  51. package/esm/lib/tool-executor.js +11 -1
  52. package/esm/lib/tool-executor.js.map +1 -1
  53. package/esm/lib/tool-orchestrator.d.ts.map +1 -1
  54. package/esm/lib/tool-orchestrator.js +4 -1
  55. package/esm/lib/tool-orchestrator.js.map +1 -1
  56. package/esm/lib/tool-types.d.ts +137 -45
  57. package/esm/lib/tool-types.d.ts.map +1 -1
  58. package/esm/lib/tool-types.js +13 -0
  59. package/esm/lib/tool-types.js.map +1 -1
  60. package/esm/lib/tool.d.ts +35 -25
  61. package/esm/lib/tool.d.ts.map +1 -1
  62. package/esm/lib/tool.js +19 -0
  63. package/esm/lib/tool.js.map +1 -1
  64. package/package.json +6 -2
@@ -1,7 +1,6 @@
1
1
  import type * as models from '@openrouter/sdk/models';
2
2
  import type { StreamEvents } from '@openrouter/sdk/models';
3
3
  import type { $ZodObject, $ZodShape, $ZodType, infer as zodInfer } from 'zod/v4/core';
4
- import type { ModelResult } from './model-result.js';
5
4
  /**
6
5
  * Tool type enum for enhanced tools
7
6
  */
@@ -21,14 +20,29 @@ export interface TurnContext {
21
20
  turnRequest?: models.ResponsesRequest;
22
21
  }
23
22
  /**
24
- * Extract context schema type from a tool definition
25
- * Returns the inferred type of the tool's contextSchema, or empty object if none
23
+ * Extract context schema type from a tool definition.
24
+ * Returns the inferred type of the tool's `contextSchema`, or
25
+ * `Record<string, never>` when the tool has no (required) contextSchema.
26
+ *
27
+ * Note: optional `contextSchema?: ...` does not match; tools produced by
28
+ * `tool()` only mark `contextSchema` as required when one was provided, so
29
+ * tools without a schema keep `Record<string, never>` map slots.
26
30
  */
27
31
  export type InferToolContext<T> = T extends {
28
32
  function: {
29
- contextSchema: infer S;
33
+ readonly contextSchema?: infer S;
30
34
  };
31
- } ? S extends $ZodType ? zodInfer<S> : Record<string, never> : Record<string, never>;
35
+ } ? [
36
+ S
37
+ ] extends [
38
+ $ZodObject<$ZodShape>
39
+ ] ? $ZodObject<$ZodShape> extends S ? Record<string, never> : zodInfer<S> extends Record<string, unknown> ? zodInfer<S> : zodInfer<S> & Record<string, unknown> : Record<string, never> : Record<string, never>;
40
+ /**
41
+ * Resolve execute-context shape from a contextSchema generic.
42
+ * - Wide/default `$ZodObject<$ZodShape>` (no schema provided) → `Record<string, unknown>`
43
+ * - Concrete schema → its Zod-inferred shape
44
+ */
45
+ export type ContextFromSchema<TCtx extends $ZodObject<$ZodShape>> = $ZodObject<$ZodShape> extends TCtx ? Record<string, unknown> : zodInfer<TCtx> extends Record<string, unknown> ? zodInfer<TCtx> : zodInfer<TCtx> & Record<string, unknown>;
32
46
  /**
33
47
  * Extract tool name from a tool definition
34
48
  */
@@ -104,14 +118,18 @@ export type NextTurnParamsContext = {
104
118
  * Each function receives the tool's input params and current request context
105
119
  */
106
120
  export type NextTurnParamsFunctions<TInput> = {
107
- [K in keyof NextTurnParamsContext]?: (params: TInput, context: NextTurnParamsContext) => NextTurnParamsContext[K] | Promise<NextTurnParamsContext[K]>;
121
+ [K in keyof NextTurnParamsContext]?: {
122
+ bivarianceHack(params: TInput, context: NextTurnParamsContext): NextTurnParamsContext[K] | Promise<NextTurnParamsContext[K]>;
123
+ }['bivarianceHack'];
108
124
  };
109
125
  /**
110
126
  * Tool-level approval check function type
111
127
  * Receives the tool's input params and turn context
112
128
  * Returns true if approval is required, false otherwise
113
129
  */
114
- export type ToolApprovalCheck<TInput> = (params: TInput, context: TurnContext) => boolean | Promise<boolean>;
130
+ export type ToolApprovalCheck<TInput> = {
131
+ bivarianceHack(params: TInput, context: TurnContext): boolean | Promise<boolean>;
132
+ }['bivarianceHack'];
115
133
  /**
116
134
  * Content item types for tool output to model.
117
135
  * These match the Responses API format for multimodal tool outputs.
@@ -142,20 +160,27 @@ export type ToModelOutputResult = {
142
160
  * @template TInput - The tool's input type
143
161
  * @template TOutput - The tool's output type
144
162
  */
145
- export type ToModelOutputFunction<TInput, TOutput> = (params: {
146
- output: TOutput;
147
- input: TInput;
148
- }) => ToModelOutputResult | Promise<ToModelOutputResult>;
163
+ export type ToModelOutputFunction<TInput, TOutput> = {
164
+ bivarianceHack(params: {
165
+ output: TOutput;
166
+ input: TInput;
167
+ }): ToModelOutputResult | Promise<ToModelOutputResult>;
168
+ }['bivarianceHack'];
149
169
  /**
150
170
  * Base tool function interface with inputSchema
151
171
  * @template TInput - Zod schema for tool input
172
+ * @template TCtx - Zod schema for tool context (optional; default = erased wide type)
152
173
  */
153
- export interface BaseToolFunction<TInput extends $ZodObject<$ZodShape>> {
174
+ export interface BaseToolFunction<TInput extends $ZodObject<$ZodShape>, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>> {
154
175
  name: string;
155
176
  description?: string;
156
177
  inputSchema: TInput;
157
- /** Zod schema declaring the context data this tool needs */
158
- contextSchema?: $ZodObject<$ZodShape>;
178
+ /**
179
+ * Zod schema declaring the context data this tool needs.
180
+ * `readonly` keeps TCtx covariant so tools carrying a concrete schema stay
181
+ * assignable to the wide `Tool` union.
182
+ */
183
+ readonly contextSchema?: TCtx;
159
184
  nextTurnParams?: NextTurnParamsFunctions<zodInfer<TInput>>;
160
185
  /**
161
186
  * Whether this tool requires human approval before execution
@@ -168,9 +193,9 @@ export interface BaseToolFunction<TInput extends $ZodObject<$ZodShape>> {
168
193
  * @template TContext - Shape of the tool's context (inferred from contextSchema)
169
194
  * @template TName - The tool's literal name string
170
195
  */
171
- export interface ToolFunctionWithExecute<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string> extends BaseToolFunction<TInput> {
196
+ export interface ToolFunctionWithExecute<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>> extends BaseToolFunction<TInput, TCtx> {
172
197
  outputSchema?: TOutput;
173
- execute: (params: zodInfer<TInput>, context?: ToolExecuteContext<TName, TContext>) => Promise<zodInfer<TOutput>> | zodInfer<TOutput>;
198
+ execute(params: zodInfer<TInput>, context?: ToolExecuteContext<TName, TContext>): Promise<zodInfer<TOutput>> | zodInfer<TOutput>;
174
199
  /** Convert tool execution output to model-facing output */
175
200
  toModelOutput?: ToModelOutputFunction<zodInfer<TInput>, zodInfer<TOutput>>;
176
201
  }
@@ -196,17 +221,17 @@ export interface ToolFunctionWithExecute<TInput extends $ZodObject<$ZodShape>, T
196
221
  * }
197
222
  * ```
198
223
  */
199
- export interface ToolFunctionWithGenerator<TInput extends $ZodObject<$ZodShape>, TEvent extends $ZodType = $ZodType<unknown>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string> extends BaseToolFunction<TInput> {
224
+ export interface ToolFunctionWithGenerator<TInput extends $ZodObject<$ZodShape>, TEvent extends $ZodType = $ZodType<unknown>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>> extends BaseToolFunction<TInput, TCtx> {
200
225
  eventSchema: TEvent;
201
226
  outputSchema: TOutput;
202
- execute: (params: zodInfer<TInput>, context?: ToolExecuteContext<TName, TContext>) => AsyncGenerator<zodInfer<TEvent> | zodInfer<TOutput>, zodInfer<TOutput> | undefined>;
227
+ execute(params: zodInfer<TInput>, context?: ToolExecuteContext<TName, TContext>): AsyncGenerator<zodInfer<TEvent> | zodInfer<TOutput>, zodInfer<TOutput> | undefined>;
203
228
  /** Convert tool execution output to model-facing output */
204
229
  toModelOutput?: ToModelOutputFunction<zodInfer<TInput>, zodInfer<TOutput>>;
205
230
  }
206
231
  /**
207
232
  * Manual tool without execute function - requires manual handling by developer
208
233
  */
209
- export interface ManualToolFunction<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>> extends BaseToolFunction<TInput> {
234
+ export interface ManualToolFunction<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>> extends BaseToolFunction<TInput, TCtx> {
210
235
  outputSchema?: TOutput;
211
236
  }
212
237
  /**
@@ -221,7 +246,7 @@ export interface ManualToolFunction<TInput extends $ZodObject<$ZodShape>, TOutpu
221
246
  * It receives the caller-supplied raw result and returns the value sent to the model.
222
247
  * Throwing surfaces as a tool error to the model.
223
248
  */
224
- export interface HITLToolFunction<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string> extends BaseToolFunction<TInput> {
249
+ export interface HITLToolFunction<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>> extends BaseToolFunction<TInput, TCtx> {
225
250
  /**
226
251
  * Required for HITL tools. Used to validate both the `onToolCalled` return
227
252
  * value (when non-null) and the caller-supplied response that comes back via
@@ -229,37 +254,41 @@ export interface HITLToolFunction<TInput extends $ZodObject<$ZodShape>, TOutput
229
254
  * `onResponseReceived` or passed through directly when no hook is defined.
230
255
  */
231
256
  outputSchema: TOutput;
232
- onToolCalled: (params: zodInfer<TInput>, context?: ToolExecuteContext<TName, TContext>) => Promise<zodInfer<TOutput> | null> | zodInfer<TOutput> | null;
233
- onResponseReceived?: (rawResult: unknown, context?: ToolExecuteContext<TName, TContext>) => Promise<zodInfer<TOutput>> | zodInfer<TOutput>;
257
+ onToolCalled(params: zodInfer<TInput>, context?: ToolExecuteContext<TName, TContext>): Promise<zodInfer<TOutput> | null> | zodInfer<TOutput> | null;
258
+ onResponseReceived?(rawResult: unknown, context?: ToolExecuteContext<TName, TContext>): Promise<zodInfer<TOutput>> | zodInfer<TOutput>;
234
259
  toModelOutput?: ToModelOutputFunction<zodInfer<TInput>, zodInfer<TOutput>>;
235
260
  }
236
261
  /**
237
262
  * Tool with execute function (regular or generator)
263
+ * @template TCtx - The concrete contextSchema type when one was provided to `tool()`
238
264
  */
239
- export type ToolWithExecute<TInput extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>> = {
265
+ export type ToolWithExecute<TInput extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>> = {
240
266
  type: ToolType.Function;
241
- function: ToolFunctionWithExecute<TInput, TOutput, TContext>;
267
+ function: ToolFunctionWithExecute<TInput, TOutput, TContext, string, TCtx>;
242
268
  };
243
269
  /**
244
270
  * Tool with generator execute function
271
+ * @template TCtx - The concrete contextSchema type when one was provided to `tool()`
245
272
  */
246
- export type ToolWithGenerator<TInput extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TEvent extends $ZodType = $ZodType<unknown>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>> = {
273
+ export type ToolWithGenerator<TInput extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TEvent extends $ZodType = $ZodType<unknown>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>> = {
247
274
  type: ToolType.Function;
248
- function: ToolFunctionWithGenerator<TInput, TEvent, TOutput, TContext>;
275
+ function: ToolFunctionWithGenerator<TInput, TEvent, TOutput, TContext, string, TCtx>;
249
276
  };
250
277
  /**
251
278
  * Tool without execute function (manual handling)
279
+ * @template TCtx - The concrete contextSchema type when one was provided to `tool()`
252
280
  */
253
- export type ManualTool<TInput extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>> = {
281
+ export type ManualTool<TInput extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>> = {
254
282
  type: ToolType.Function;
255
- function: ManualToolFunction<TInput, TOutput>;
283
+ function: ManualToolFunction<TInput, TOutput, TCtx>;
256
284
  };
257
285
  /**
258
286
  * Human-in-the-loop tool (with onToolCalled / onResponseReceived hooks)
287
+ * @template TCtx - The concrete contextSchema type when one was provided to `tool()`
259
288
  */
260
- export type HITLTool<TInput extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>> = {
289
+ export type HITLTool<TInput extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TOutput extends $ZodType = $ZodType<unknown>, TContext extends Record<string, unknown> = Record<string, unknown>, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>> = {
261
290
  type: ToolType.Function;
262
- function: HITLToolFunction<TInput, TOutput, TContext>;
291
+ function: HITLToolFunction<TInput, TOutput, TContext, string, TCtx>;
263
292
  };
264
293
  /**
265
294
  * Union type of all client-executed tool shapes (function, generator, manual, HITL).
@@ -410,6 +439,23 @@ export type InferToolEventsUnion<T extends readonly Tool[]> = {
410
439
  * branch structurally, so `tool._brand` is reachable without a cast.
411
440
  */
412
441
  export declare function isServerTool(tool: Tool): tool is ServerTool;
442
+ /**
443
+ * A client tool additionally branded as originating from an MCP server. The
444
+ * `_mcp` marker is purely informational: it does NOT change how the tool is
445
+ * executed (MCP tools keep their local `execute` fn and run through the normal
446
+ * client-tool path) or serialized (they go on the wire as `type: 'function'`).
447
+ * It exists only so result types can discriminate MCP results — whose output
448
+ * schema is `unknown` at compile time — from precisely-typed client tools,
449
+ * preventing a single MCP tool from collapsing the whole result union.
450
+ */
451
+ export type McpBranded<T extends Tool = Tool> = T & {
452
+ readonly _mcp: true;
453
+ };
454
+ /**
455
+ * Type guard: true if the tool carries the additive MCP brand (see
456
+ * {@link McpBranded}). Structural check on `_mcp`, so no cast is needed.
457
+ */
458
+ export declare function isMcpTool(tool: Tool): tool is McpBranded;
413
459
  /**
414
460
  * Type guard: true if the tool is a client-executed tool (function, generator, or manual).
415
461
  */
@@ -454,16 +500,53 @@ export interface ParsedToolCall<T extends Tool> {
454
500
  arguments: InferToolInput<T>;
455
501
  }
456
502
  /**
457
- * Result of tool execution
503
+ * Result of tool execution.
504
+ *
505
+ * The `_mcp` brand is tested BEFORE the execute/generator branch: an MCP tool
506
+ * is structurally also a `ToolWithExecute`, so checking the brand last would let
507
+ * its `unknown` output flow through and collapse the result union. Brand-first
508
+ * isolates MCP results as `unknown` under `source: 'mcp'` while every other tool
509
+ * keeps its precise, schema-derived result under `source: 'client'`. Consumers
510
+ * narrow on `source` (narrowing on the `toolName` literal alone does not exclude
511
+ * the MCP branch, whose `toolName` is `string`).
512
+ *
458
513
  * @template T - The tool type to infer result types from
459
514
  */
460
515
  export interface ToolExecutionResult<T extends Tool> {
461
516
  toolCallId: string;
462
- toolName: string;
463
- result: T extends ToolWithExecute<$ZodObject<$ZodShape>, infer O> | ToolWithGenerator<$ZodObject<$ZodShape>, $ZodType<unknown>, infer O> ? zodInfer<O> : unknown;
517
+ toolName: T extends {
518
+ function: {
519
+ name: infer N extends string;
520
+ };
521
+ } ? N : string;
522
+ source: ToolSource<T>;
523
+ result: T extends {
524
+ readonly _mcp: true;
525
+ } ? unknown : [
526
+ Tool
527
+ ] extends [
528
+ T
529
+ ] ? unknown : T extends ToolWithExecute<$ZodObject<$ZodShape>, infer O> | ToolWithGenerator<$ZodObject<$ZodShape>, $ZodType<unknown>, infer O> ? zodInfer<O> : unknown;
464
530
  preliminaryResults?: T extends ToolWithGenerator<$ZodObject<$ZodShape>, infer E> ? zodInfer<E>[] : undefined;
465
531
  error?: Error;
466
532
  }
533
+ /**
534
+ * The `source` discriminant for a tool result. A specific MCP-branded tool is
535
+ * `'mcp'`; a specific client tool is `'client'`; the wide `Tool` (used by the
536
+ * internal executor before the concrete tool type is known) is the full union,
537
+ * so a runtime-computed `'client' | 'mcp'` assigns into it.
538
+ */
539
+ export type ToolSource<T extends Tool> = [
540
+ Tool
541
+ ] extends [
542
+ T
543
+ ] ? 'client' | 'mcp' : [
544
+ T
545
+ ] extends [
546
+ {
547
+ readonly _mcp: true;
548
+ }
549
+ ] ? 'mcp' : 'client';
467
550
  /**
468
551
  * Warning from step execution
469
552
  */
@@ -521,17 +604,6 @@ export type StopCondition<TTools extends readonly Tool[] = readonly Tool[]> = (o
521
604
  * Can be a single condition or array of conditions
522
605
  */
523
606
  export type StopWhen<TTools extends readonly Tool[] = readonly Tool[]> = StopCondition<TTools> | ReadonlyArray<StopCondition<TTools>>;
524
- /**
525
- * Result of executeTools operation
526
- */
527
- export interface ExecuteToolsResult<TTools extends readonly Tool[]> {
528
- finalResponse: ModelResult<TTools>;
529
- allResponses: ModelResult<TTools>[];
530
- toolResults: Map<string, {
531
- result: unknown;
532
- preliminaryResults?: unknown[];
533
- }>;
534
- }
535
607
  /**
536
608
  * Standard tool format for OpenRouter API (JSON Schema based)
537
609
  * Matches ResponsesRequestToolFunction structure
@@ -564,6 +636,13 @@ export type ToolPreliminaryResultEvent<TEvent = unknown> = {
564
636
  export type ToolResultEvent<TResult = unknown, TPreliminaryResults = unknown> = {
565
637
  type: 'tool.result';
566
638
  toolCallId: string;
639
+ /**
640
+ * Origin of the tool: `'mcp'` for tools wrapped from a remote MCP server
641
+ * (whose `result` is `unknown`), `'client'` for locally-defined tools. Lets
642
+ * consumers discriminate so an MCP result's `unknown` doesn't force callers to
643
+ * treat every tool result as untyped.
644
+ */
645
+ source: 'client' | 'mcp';
567
646
  result: TResult;
568
647
  timestamp: number;
569
648
  preliminaryResults?: TPreliminaryResults[];
@@ -698,13 +777,26 @@ export interface PartialResponse<TTools extends readonly Tool[] = readonly Tool[
698
777
  * - `awaiting_hitl`: one or more HITL tools returned `null` from `onToolCalled`,
699
778
  * pausing execution so the caller can supply outputs for the paused calls
700
779
  * before resuming
780
+ * - `awaiting_client_tools`: one or more manual (`execute: false` / no execute
781
+ * fn) tool calls are unresolved; the loop stopped so the caller can execute
782
+ * them client-side and continue. Distinct from `awaiting_hitl` — HITL tools
783
+ * have an `onToolCalled` hook; manual tools do not.
701
784
  */
702
- export type ConversationStatus = 'complete' | 'interrupted' | 'awaiting_approval' | 'awaiting_hitl' | 'in_progress';
785
+ export type ConversationStatus = 'complete' | 'interrupted' | 'awaiting_approval' | 'awaiting_hitl' | 'awaiting_client_tools' | 'in_progress';
703
786
  /**
704
787
  * State for multi-turn conversations with persistence and approval gates
705
788
  * @template TTools - The tools array type for proper type inference
706
789
  */
707
790
  export interface ConversationState<TTools extends readonly Tool[] = readonly Tool[]> {
791
+ /**
792
+ * Serialization-contract version for this state blob.
793
+ *
794
+ * Optional so legacy (pre-version-field) states remain assignable. Absence is
795
+ * treated as version `1` by {@link deserializeConversationState}. Consumers
796
+ * should treat serialized JSON as opaque: additive fields within a major
797
+ * version, migrations applied inside `deserializeConversationState` on bump.
798
+ */
799
+ version?: number;
708
800
  /** Unique identifier for this conversation */
709
801
  id: string;
710
802
  /** Full message history */
@@ -1 +1 @@
1
- {"version":3,"file":"tool-types.d.ts","sourceRoot":"","sources":["../../src/lib/tool-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-types.d.ts","sourceRoot":"","sources":["../../src/lib/tool-types.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,19 @@ export function isServerTool(tool) {
26
26
  }
27
27
  return tool._brand === 'server-tool';
28
28
  }
29
+ /**
30
+ * Type guard: true if the tool carries the additive MCP brand (see
31
+ * {@link McpBranded}). Structural check on `_mcp`, so no cast is needed.
32
+ */
33
+ export function isMcpTool(tool) {
34
+ if (typeof tool !== 'object' || tool === null) {
35
+ return false;
36
+ }
37
+ if (!('_mcp' in tool)) {
38
+ return false;
39
+ }
40
+ return tool._mcp === true;
41
+ }
29
42
  /**
30
43
  * Type guard: true if the tool is a client-executed tool (function, generator, or manual).
31
44
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tool-types.js","sourceRoot":"","sources":["../../src/lib/tool-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-types.js","sourceRoot":"","sources":["../../src/lib/tool-types.ts"],"names":[],"mappings":"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"}
package/esm/lib/tool.d.ts CHANGED
@@ -1,65 +1,67 @@
1
1
  import type { $ZodObject, $ZodShape, $ZodType, infer as zodInfer } from 'zod/v4/core';
2
- import type { HITLTool, ManualTool, NextTurnParamsFunctions, ServerTool, ServerToolConfig, ServerToolType, ToModelOutputFunction, Tool, ToolApprovalCheck, ToolExecuteContext, ToolWithExecute, ToolWithGenerator } from './tool-types.js';
2
+ import type { ContextFromSchema, HITLTool, ManualTool, McpBranded, NextTurnParamsFunctions, ServerTool, ServerToolConfig, ServerToolType, ToModelOutputFunction, Tool, ToolApprovalCheck, ToolExecuteContext, ToolWithExecute, ToolWithGenerator } from './tool-types.js';
3
3
  /**
4
- * Configuration for a regular tool with outputSchema
4
+ * Configuration for a regular tool with outputSchema.
5
+ * `TCtx` preserves a concrete `contextSchema` through the overload boundary so
6
+ * execute's `ctx.local` and the returned tool's `function.contextSchema` stay typed.
5
7
  */
6
- type RegularToolConfigWithOutput<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string> = {
8
+ type RegularToolConfigWithOutput<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TName extends string = string> = {
7
9
  name: TName;
8
10
  description?: string;
9
11
  inputSchema: TInput;
10
12
  outputSchema: TOutput;
11
13
  eventSchema?: undefined;
12
14
  /** Zod schema declaring the context data this tool needs */
13
- contextSchema?: $ZodObject<$ZodShape>;
15
+ contextSchema?: TCtx;
14
16
  nextTurnParams?: NextTurnParamsFunctions<zodInfer<TInput>>;
15
17
  requireApproval?: boolean | ToolApprovalCheck<zodInfer<TInput>>;
16
- execute: (params: zodInfer<TInput>, context?: ToolExecuteContext<TName, TContext>) => Promise<zodInfer<TOutput>> | zodInfer<TOutput>;
18
+ execute: (params: zodInfer<TInput>, context?: ToolExecuteContext<TName, ContextFromSchema<TCtx>>) => Promise<zodInfer<TOutput>> | zodInfer<TOutput>;
17
19
  /** Convert tool execution output to model-facing output */
18
20
  toModelOutput?: ToModelOutputFunction<zodInfer<TInput>, zodInfer<TOutput>>;
19
21
  };
20
22
  /**
21
23
  * Configuration for a regular tool without outputSchema (infers return type from execute)
22
24
  */
23
- type RegularToolConfigWithoutOutput<TInput extends $ZodObject<$ZodShape>, TReturn, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string> = {
25
+ type RegularToolConfigWithoutOutput<TInput extends $ZodObject<$ZodShape>, TReturn, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TName extends string = string> = {
24
26
  name: TName;
25
27
  description?: string;
26
28
  inputSchema: TInput;
27
29
  outputSchema?: undefined;
28
30
  eventSchema?: undefined;
29
31
  /** Zod schema declaring the context data this tool needs */
30
- contextSchema?: $ZodObject<$ZodShape>;
32
+ contextSchema?: TCtx;
31
33
  nextTurnParams?: NextTurnParamsFunctions<zodInfer<TInput>>;
32
34
  requireApproval?: boolean | ToolApprovalCheck<zodInfer<TInput>>;
33
- execute: (params: zodInfer<TInput>, context?: ToolExecuteContext<TName, TContext>) => Promise<TReturn> | TReturn;
35
+ execute: (params: zodInfer<TInput>, context?: ToolExecuteContext<TName, ContextFromSchema<TCtx>>) => Promise<TReturn> | TReturn;
34
36
  /** Convert tool execution output to model-facing output */
35
37
  toModelOutput?: ToModelOutputFunction<zodInfer<TInput>, TReturn>;
36
38
  };
37
39
  /**
38
40
  * Configuration for a generator tool (with eventSchema)
39
41
  */
40
- type GeneratorToolConfig<TInput extends $ZodObject<$ZodShape>, TEvent extends $ZodType, TOutput extends $ZodType, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string> = {
42
+ type GeneratorToolConfig<TInput extends $ZodObject<$ZodShape>, TEvent extends $ZodType, TOutput extends $ZodType, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TName extends string = string> = {
41
43
  name: TName;
42
44
  description?: string;
43
45
  inputSchema: TInput;
44
46
  eventSchema: TEvent;
45
47
  outputSchema: TOutput;
46
48
  /** Zod schema declaring the context data this tool needs */
47
- contextSchema?: $ZodObject<$ZodShape>;
49
+ contextSchema?: TCtx;
48
50
  nextTurnParams?: NextTurnParamsFunctions<zodInfer<TInput>>;
49
51
  requireApproval?: boolean | ToolApprovalCheck<zodInfer<TInput>>;
50
- execute: (params: zodInfer<TInput>, context?: ToolExecuteContext<TName, TContext>) => AsyncGenerator<zodInfer<TEvent> | zodInfer<TOutput>>;
52
+ execute: (params: zodInfer<TInput>, context?: ToolExecuteContext<TName, ContextFromSchema<TCtx>>) => AsyncGenerator<zodInfer<TEvent> | zodInfer<TOutput>>;
51
53
  /** Convert tool execution output to model-facing output */
52
54
  toModelOutput?: ToModelOutputFunction<zodInfer<TInput>, zodInfer<TOutput>>;
53
55
  };
54
56
  /**
55
57
  * Configuration for a manual tool (execute: false, no eventSchema or outputSchema)
56
58
  */
57
- type ManualToolConfig<TInput extends $ZodObject<$ZodShape>> = {
59
+ type ManualToolConfig<TInput extends $ZodObject<$ZodShape>, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>> = {
58
60
  name: string;
59
61
  description?: string;
60
62
  inputSchema: TInput;
61
63
  /** Zod schema declaring the context data this tool needs */
62
- contextSchema?: $ZodObject<$ZodShape>;
64
+ contextSchema?: TCtx;
63
65
  nextTurnParams?: NextTurnParamsFunctions<zodInfer<TInput>>;
64
66
  requireApproval?: boolean | ToolApprovalCheck<zodInfer<TInput>>;
65
67
  execute: false;
@@ -75,7 +77,7 @@ type ManualToolConfig<TInput extends $ZodObject<$ZodShape>> = {
75
77
  * `FunctionCallOutputItem` corresponds to a prior call of this tool; the
76
78
  * returned value replaces what the model ultimately sees.
77
79
  */
78
- type HITLToolConfig<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string> = {
80
+ type HITLToolConfig<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TName extends string = string> = {
79
81
  name: TName;
80
82
  description?: string;
81
83
  inputSchema: TInput;
@@ -89,11 +91,11 @@ type HITLToolConfig<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodTy
89
91
  eventSchema?: undefined;
90
92
  execute?: undefined;
91
93
  /** Zod schema declaring the context data this tool needs */
92
- contextSchema?: $ZodObject<$ZodShape>;
94
+ contextSchema?: TCtx;
93
95
  nextTurnParams?: NextTurnParamsFunctions<zodInfer<TInput>>;
94
96
  requireApproval?: boolean | ToolApprovalCheck<zodInfer<TInput>>;
95
- onToolCalled: (params: zodInfer<TInput>, context?: ToolExecuteContext<TName, TContext>) => Promise<zodInfer<TOutput> | null> | zodInfer<TOutput> | null;
96
- onResponseReceived?: (rawResult: unknown, context?: ToolExecuteContext<TName, TContext>) => Promise<zodInfer<TOutput>> | zodInfer<TOutput>;
97
+ onToolCalled: (params: zodInfer<TInput>, context?: ToolExecuteContext<TName, ContextFromSchema<TCtx>>) => Promise<zodInfer<TOutput> | null> | zodInfer<TOutput> | null;
98
+ onResponseReceived?: (rawResult: unknown, context?: ToolExecuteContext<TName, ContextFromSchema<TCtx>>) => Promise<zodInfer<TOutput>> | zodInfer<TOutput>;
97
99
  /** Convert tool execution output to model-facing output */
98
100
  toModelOutput?: ToModelOutputFunction<zodInfer<TInput>, zodInfer<TOutput>>;
99
101
  };
@@ -101,16 +103,16 @@ type HITLToolConfig<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodTy
101
103
  * Loose config type for the `tool<TShared>()` overload.
102
104
  * Accepts any valid tool config while typing `ctx.shared` from TShared.
103
105
  */
104
- type ToolConfigWithSharedContext<TShared extends Record<string, unknown>> = {
106
+ type ToolConfigWithSharedContext<TShared extends Record<string, unknown>, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>> = {
105
107
  name: string;
106
108
  description?: string;
107
109
  inputSchema: $ZodObject<$ZodShape>;
108
110
  outputSchema?: $ZodType;
109
111
  eventSchema?: $ZodType;
110
- contextSchema?: $ZodObject<$ZodShape>;
112
+ contextSchema?: TCtx;
111
113
  nextTurnParams?: NextTurnParamsFunctions<Record<string, unknown>>;
112
114
  requireApproval?: boolean | ToolApprovalCheck<Record<string, unknown>>;
113
- execute: ((params: Record<string, unknown>, context?: ToolExecuteContext<string, Record<string, unknown>, TShared>) => unknown) | ((params: Record<string, unknown>, context?: ToolExecuteContext<string, Record<string, unknown>, TShared>) => AsyncGenerator<unknown>) | false;
115
+ execute: ((params: Record<string, unknown>, context?: ToolExecuteContext<string, ContextFromSchema<TCtx>, TShared>) => unknown) | ((params: Record<string, unknown>, context?: ToolExecuteContext<string, ContextFromSchema<TCtx>, TShared>) => AsyncGenerator<unknown>) | false;
114
116
  /** Convert tool execution output to model-facing output */
115
117
  toModelOutput?: ToModelOutputFunction<Record<string, unknown>, unknown>;
116
118
  };
@@ -140,11 +142,11 @@ type ToolConfigWithSharedContext<TShared extends Record<string, unknown>> = {
140
142
  * });
141
143
  * ```
142
144
  */
143
- export declare function tool<TInput extends $ZodObject<$ZodShape>, TEvent extends $ZodType, TOutput extends $ZodType, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string>(config: GeneratorToolConfig<TInput, TEvent, TOutput, TContext, TName>): ToolWithGenerator<TInput, TEvent, TOutput, TContext>;
144
- export declare function tool<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string>(config: HITLToolConfig<TInput, TOutput, TContext, TName>): HITLTool<TInput, TOutput, TContext>;
145
- export declare function tool<TInput extends $ZodObject<$ZodShape>>(config: ManualToolConfig<TInput>): ManualTool<TInput>;
146
- export declare function tool<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string>(config: RegularToolConfigWithOutput<TInput, TOutput, TContext, TName>): ToolWithExecute<TInput, TOutput, TContext>;
147
- export declare function tool<TInput extends $ZodObject<$ZodShape>, TReturn, TContext extends Record<string, unknown> = Record<string, unknown>, TName extends string = string>(config: RegularToolConfigWithoutOutput<TInput, TReturn, TContext, TName>): ToolWithExecute<TInput, $ZodType<TReturn>, TContext>;
145
+ export declare function tool<TInput extends $ZodObject<$ZodShape>, TEvent extends $ZodType, TOutput extends $ZodType, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TName extends string = string>(config: GeneratorToolConfig<TInput, TEvent, TOutput, TCtx, TName>): ToolWithGenerator<TInput, TEvent, TOutput, Record<string, unknown>, TCtx>;
146
+ export declare function tool<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TName extends string = string>(config: HITLToolConfig<TInput, TOutput, TCtx, TName>): HITLTool<TInput, TOutput, Record<string, unknown>, TCtx>;
147
+ export declare function tool<TInput extends $ZodObject<$ZodShape>, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>>(config: ManualToolConfig<TInput, TCtx>): ManualTool<TInput, $ZodType<unknown>, TCtx>;
148
+ export declare function tool<TInput extends $ZodObject<$ZodShape>, TOutput extends $ZodType, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TName extends string = string>(config: RegularToolConfigWithOutput<TInput, TOutput, TCtx, TName>): ToolWithExecute<TInput, TOutput, Record<string, unknown>, TCtx>;
149
+ export declare function tool<TInput extends $ZodObject<$ZodShape>, TReturn, TCtx extends $ZodObject<$ZodShape> = $ZodObject<$ZodShape>, TName extends string = string>(config: RegularToolConfigWithoutOutput<TInput, TReturn, TCtx, TName>): ToolWithExecute<TInput, $ZodType<TReturn>, Record<string, unknown>, TCtx>;
148
150
  export declare function tool<TShared extends Record<string, unknown>>(config: ToolConfigWithSharedContext<TShared>): Tool;
149
151
  /**
150
152
  * Creates an OpenRouter server-executed tool. OpenRouter runs the tool (web
@@ -169,5 +171,13 @@ export declare function tool<TShared extends Record<string, unknown>>(config: To
169
171
  export declare function serverTool<T extends ServerToolType>(config: Extract<ServerToolConfig, {
170
172
  type: T;
171
173
  }>): ServerTool<T>;
174
+ /**
175
+ * Add the additive MCP brand to an already-built client tool (see
176
+ * {@link McpBranded}). Non-mutating: returns a shallow copy carrying `_mcp`, so
177
+ * the tool's runtime behavior and wire shape are unchanged — only its type (and
178
+ * the runtime {@link isMcpTool} check) now identify it as MCP-originated. Used
179
+ * by `@openrouter/mcp` to mark wrapped remote tools.
180
+ */
181
+ export declare function markMcp<T extends Tool>(toolToMark: T): McpBranded<T>;
172
182
  export {};
173
183
  //# sourceMappingURL=tool.d.ts.map