From 4c22bdf2a4337854651af44366c0dd92a61625bc Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 28 Aug 2026 17:55:54 +0000 Subject: [PATCH] docs: regenerate API documentation --- .../classes/StandardSchemaValidationError.md | 8 +- docs/reference/functions/chat.md | 2 +- .../functions/convertSchemaToJsonSchema.md | 2 +- .../functions/parseWithStandardSchema.md | 2 +- .../functions/validateWithStandardSchema.md | 2 +- docs/reference/index.md | 4 + docs/reference/interfaces/AbortInfo.md | 8 +- .../reference/interfaces/AfterToolCallInfo.md | 18 ++-- docs/reference/interfaces/ChatMiddleware.md | 44 ++++----- .../interfaces/ChatMiddlewareConfig.md | 33 +++++-- .../interfaces/ChatMiddlewareContext.md | 70 ++++++++++---- .../interfaces/ChatResumeToolState.md | 14 +-- .../interfaces/DefinedChatMiddleware.md | 38 ++++---- docs/reference/interfaces/ErrorInfo.md | 6 +- docs/reference/interfaces/FinishInfo.md | 10 +- docs/reference/interfaces/IterationInfo.md | 6 +- docs/reference/interfaces/MetadataStore.md | 95 +++++++++++++++++++ .../StructuredOutputMiddlewareConfig.md | 37 ++++++-- .../interfaces/ToolCallHookContext.md | 12 +-- .../interfaces/ToolPhaseCompleteInfo.md | 10 +- docs/reference/interfaces/UsageInfo.md | 2 +- .../type-aliases/AnyChatMiddleware.md | 2 +- .../type-aliases/BeforeToolCallDecision.md | 2 +- .../ChatResumeGenericResolution.md | 2 +- .../reference/variables/MetadataCapability.md | 12 +++ docs/reference/variables/getMetadata.md | 12 +++ docs/reference/variables/provideMetadata.md | 12 +++ 27 files changed, 333 insertions(+), 132 deletions(-) create mode 100644 docs/reference/interfaces/MetadataStore.md create mode 100644 docs/reference/variables/MetadataCapability.md create mode 100644 docs/reference/variables/getMetadata.md create mode 100644 docs/reference/variables/provideMetadata.md diff --git a/docs/reference/classes/StandardSchemaValidationError.md b/docs/reference/classes/StandardSchemaValidationError.md index ebb8f5ec5e..51cfeec59d 100644 --- a/docs/reference/classes/StandardSchemaValidationError.md +++ b/docs/reference/classes/StandardSchemaValidationError.md @@ -5,7 +5,7 @@ title: StandardSchemaValidationError # Class: StandardSchemaValidationError -Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:418](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L418) +Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:431](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L431) Error thrown when Standard Schema validation fails. Carries the original `issues` array so consumers (middleware `onError`, callers catching from @@ -23,7 +23,7 @@ Error thrown when Standard Schema validation fails. Carries the original new StandardSchemaValidationError(issues): StandardSchemaValidationError; ``` -Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:422](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L422) +Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:435](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L435) #### Parameters @@ -49,7 +49,7 @@ Error.constructor readonly issues: readonly Issue[]; ``` -Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:420](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L420) +Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:433](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L433) *** @@ -59,7 +59,7 @@ Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:420](http readonly name: "StandardSchemaValidationError" = 'StandardSchemaValidationError'; ``` -Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:419](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L419) +Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:432](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L432) #### Overrides diff --git a/docs/reference/functions/chat.md b/docs/reference/functions/chat.md index 9b7e5e7e77..a2499c98c6 100644 --- a/docs/reference/functions/chat.md +++ b/docs/reference/functions/chat.md @@ -9,7 +9,7 @@ title: chat function chat(options): TextActivityResult; ``` -Defined in: [packages/ai/src/activities/chat/index.ts:4548](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/index.ts#L4548) +Defined in: [packages/ai/src/activities/chat/index.ts:4643](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/index.ts#L4643) Text activity - handles agentic text generation, one-shot text generation, and agentic structured output. diff --git a/docs/reference/functions/convertSchemaToJsonSchema.md b/docs/reference/functions/convertSchemaToJsonSchema.md index 97c277337c..70b49bd22f 100644 --- a/docs/reference/functions/convertSchemaToJsonSchema.md +++ b/docs/reference/functions/convertSchemaToJsonSchema.md @@ -9,7 +9,7 @@ title: convertSchemaToJsonSchema function convertSchemaToJsonSchema(schema, options?): JSONSchema | undefined; ``` -Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:324](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L324) +Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:337](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L337) Converts a Standard JSON Schema compliant schema or plain JSONSchema to JSON Schema format compatible with LLM providers. diff --git a/docs/reference/functions/parseWithStandardSchema.md b/docs/reference/functions/parseWithStandardSchema.md index 152910f607..795deb6e82 100644 --- a/docs/reference/functions/parseWithStandardSchema.md +++ b/docs/reference/functions/parseWithStandardSchema.md @@ -9,7 +9,7 @@ title: parseWithStandardSchema function parseWithStandardSchema(schema, data): T; ``` -Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:443](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L443) +Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:456](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L456) Synchronously validates data against a Standard Schema compliant schema. Note: Some Standard Schema implementations may only support async validation. diff --git a/docs/reference/functions/validateWithStandardSchema.md b/docs/reference/functions/validateWithStandardSchema.md index 6010c896b4..08aa5fb053 100644 --- a/docs/reference/functions/validateWithStandardSchema.md +++ b/docs/reference/functions/validateWithStandardSchema.md @@ -17,7 +17,7 @@ function validateWithStandardSchema(schema, data): Promise< }>; ``` -Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:383](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L383) +Defined in: [packages/ai/src/activities/chat/tools/schema-converter.ts:396](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/tools/schema-converter.ts#L396) Validates data against a Standard Schema compliant schema. diff --git a/docs/reference/index.md b/docs/reference/index.md index 1b9f2af720..b8950665c4 100644 --- a/docs/reference/index.md +++ b/docs/reference/index.md @@ -106,6 +106,7 @@ title: "@tanstack/ai" - [MemoryStreamInit](interfaces/MemoryStreamInit.md) - [MemoryStreamOptions](interfaces/MemoryStreamOptions.md) - [MessagesSnapshotEvent](interfaces/MessagesSnapshotEvent.md) +- [MetadataStore](interfaces/MetadataStore.md) - [ModelCapabilities](interfaces/ModelCapabilities.md) - [ModelMessage](interfaces/ModelMessage.md) - [NormalizedApprovalSchema](interfaces/NormalizedApprovalSchema.md) @@ -350,6 +351,7 @@ title: "@tanstack/ai" - [DetachableRunCapability](variables/DetachableRunCapability.md) - [DISCOVERY\_TOOL\_NAME](variables/DISCOVERY_TOOL_NAME.md) - [getDetachableRun](variables/getDetachableRun.md) +- [getMetadata](variables/getMetadata.md) - [getRunDetached](variables/getRunDetached.md) - [INTERRUPT\_BINDING\_METADATA\_KEY](variables/INTERRUPT_BINDING_METADATA_KEY.md) - [INTERRUPT\_BINDING\_VERSION](variables/INTERRUPT_BINDING_VERSION.md) @@ -358,7 +360,9 @@ title: "@tanstack/ai" - [INTERRUPT\_CONTINUATION\_VERSION](variables/INTERRUPT_CONTINUATION_VERSION.md) - [INTERRUPT\_PAYLOAD\_METADATA\_KEY](variables/INTERRUPT_PAYLOAD_METADATA_KEY.md) - [INTERRUPT\_TOOL\_RESUMES](variables/INTERRUPT_TOOL_RESUMES.md) +- [MetadataCapability](variables/MetadataCapability.md) - [provideDetachableRun](variables/provideDetachableRun.md) +- [provideMetadata](variables/provideMetadata.md) - [provideRunDetached](variables/provideRunDetached.md) - [RUN\_ACCEPTED\_EVENT](variables/RUN_ACCEPTED_EVENT.md) - [RUN\_CANCEL\_REASON](variables/RUN_CANCEL_REASON.md) diff --git a/docs/reference/interfaces/AbortInfo.md b/docs/reference/interfaces/AbortInfo.md index aeaa555559..289695be16 100644 --- a/docs/reference/interfaces/AbortInfo.md +++ b/docs/reference/interfaces/AbortInfo.md @@ -5,7 +5,7 @@ title: AbortInfo # Interface: AbortInfo -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:499](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L499) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:508](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L508) Information passed to onAbort. @@ -17,7 +17,7 @@ Information passed to onAbort. optional cancelRequested?: boolean; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:519](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L519) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:528](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L528) True only when the abort came from an explicit, out-of-band cancel (e.g. a cancel endpoint setting `RunRecord.cancelRequested`), never from a mere @@ -41,7 +41,7 @@ host reads `RunRecord.cancelRequested` in addition to this flag. duration: number; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:503](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L503) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:512](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L512) Duration until abort in milliseconds @@ -53,6 +53,6 @@ Duration until abort in milliseconds optional reason?: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:501](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L501) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:510](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L510) The reason for the abort, if provided diff --git a/docs/reference/interfaces/AfterToolCallInfo.md b/docs/reference/interfaces/AfterToolCallInfo.md index 95d22c5b60..bf74967b20 100644 --- a/docs/reference/interfaces/AfterToolCallInfo.md +++ b/docs/reference/interfaces/AfterToolCallInfo.md @@ -5,7 +5,7 @@ title: AfterToolCallInfo # Interface: AfterToolCallInfo -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:399](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L399) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:408](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L408) Outcome information provided to onAfterToolCall. @@ -17,7 +17,7 @@ Outcome information provided to onAfterToolCall. duration: number; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:411](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L411) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:420](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L420) Duration of tool execution in milliseconds @@ -29,7 +29,7 @@ Duration of tool execution in milliseconds optional error?: unknown; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:414](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L414) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:423](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L423) *** @@ -39,7 +39,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:414](https://gi ok: boolean; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:409](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L409) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:418](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L418) Whether the execution succeeded @@ -51,7 +51,7 @@ Whether the execution succeeded optional result?: unknown; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:413](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L413) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:422](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L422) The result (if ok) or error (if not ok) @@ -65,7 +65,7 @@ tool: | undefined; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:403](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L403) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:412](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L412) The resolved tool definition @@ -77,7 +77,7 @@ The resolved tool definition toolCall: ToolCall; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:401](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L401) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:410](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L410) The tool call that was executed @@ -89,7 +89,7 @@ The tool call that was executed toolCallId: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:407](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L407) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:416](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L416) ID of the tool call @@ -101,6 +101,6 @@ ID of the tool call toolName: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:405](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L405) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:414](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L414) Name of the tool diff --git a/docs/reference/interfaces/ChatMiddleware.md b/docs/reference/interfaces/ChatMiddleware.md index d246a43fe9..c1d915525f 100644 --- a/docs/reference/interfaces/ChatMiddleware.md +++ b/docs/reference/interfaces/ChatMiddleware.md @@ -5,7 +5,7 @@ title: ChatMiddleware # Interface: ChatMiddleware\ -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:565](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L565) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:574](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L574) Chat middleware interface. @@ -61,7 +61,7 @@ const redactionMiddleware: ChatMiddleware = { optional name?: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:570](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L570) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:579](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L579) Optional name for debugging and identification @@ -73,7 +73,7 @@ Optional name for debugging and identification optional onAbort?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:758](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L758) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:767](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L767) Called when the chat run is aborted. Exactly one of onFinish/onAbort/onError will be called per run. @@ -100,7 +100,7 @@ Exactly one of onFinish/onAbort/onError will be called per run. optional onAfterToolCall?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:722](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L722) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:731](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L731) Called after a tool execution completes (success or failure). @@ -128,7 +128,7 @@ optional onBeforeToolCall?: (ctx, hookCtx) => | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:714](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L714) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:723](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L723) Called before a tool is executed. Can observe, transform args, skip execution, or abort the run. @@ -161,7 +161,7 @@ optional onChunk?: (ctx, chunk) => | null; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:700](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L700) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:709](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L709) Called for every chunk yielded by chat(). Can observe, transform, expand, or drop chunks. @@ -201,7 +201,7 @@ optional onConfig?: (ctx, config) => | null; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:628](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L628) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:637](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L637) Called to observe or transform the chat configuration. Called at init and at the beginning of each agent iteration. @@ -237,7 +237,7 @@ Only the fields you return are overwritten — everything else is preserved. optional onError?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:767](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L767) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:776](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L776) Called when the chat run encounters an unhandled error. Exactly one of onFinish/onAbort/onError will be called per run. @@ -264,7 +264,7 @@ Exactly one of onFinish/onAbort/onError will be called per run. optional onFinish?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:749](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L749) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:758](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L758) Called when the chat run completes normally. Exactly one of onFinish/onAbort/onError will be called per run. @@ -293,7 +293,7 @@ optional onInterruptBoundary?: (ctx) => | Promise>; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:576](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L576) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:585](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L585) Called at a lifecycle boundary. Return interrupt requests to pause the run. Requests from every middleware in the same boundary form one batch. @@ -319,7 +319,7 @@ optional onInterruptResolution?: (ctx, resolutions) => | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:586](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L586) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:595](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L595) Called on a continuation run after the client answers registered interrupts. Return `toolResume` to decide whether pending tools continue, cancel, or stop. @@ -347,7 +347,7 @@ Return `toolResume` to decide whether pending tools continue, cancel, or stop. optional onIteration?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:670](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L670) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:679](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L679) Called at the start of each agent loop iteration, after a new assistant message ID is created. Use this to observe iteration boundaries. @@ -374,7 +374,7 @@ is created. Use this to observe iteration boundaries. optional onShouldContinue?: (ctx, state) => boolean | void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:689](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L689) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:698](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L698) Called when the engine is deciding whether to start another agent-loop iteration (after a tool phase or between model turns). @@ -411,7 +411,7 @@ Receives the same [AgentLoopState](AgentLoopState.md) passed to strategies optional onStart?: (ctx) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:664](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L664) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:673](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L673) Called when the chat run starts (after initial onConfig). @@ -440,7 +440,7 @@ optional onStructuredOutputConfig?: (ctx, config) => | null; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:652](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L652) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:661](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L661) Called at the start of the final structured-output call (when the chat was invoked with outputSchema). Pipes through middleware in order, like @@ -484,7 +484,7 @@ outputSchema or apply structured-output-specific behavior. optional onToolPhaseComplete?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:731](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L731) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:740](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L740) Called after all tool calls in an iteration have been processed. Provides aggregate data about tool execution results, approvals, and client tools. @@ -511,7 +511,7 @@ Provides aggregate data about tool execution results, approvals, and client tool optional onUsage?: (ctx, usage) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:740](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L740) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:749](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L749) Called when usage data is available from a RUN_FINISHED chunk. Called once per model iteration that reports usage. @@ -538,7 +538,7 @@ Called once per model iteration that reports usage. optional optionalRequires?: readonly CapabilityHandle[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:611](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L611) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:620](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L620) Capabilities this middleware uses if present but does not require. Non-gating: never causes a validation error. Read with @@ -552,7 +552,7 @@ Non-gating: never causes a validation error. Read with optional provides?: readonly CapabilityHandle[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:604](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L604) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:613](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L613) Capabilities this middleware provides. Each declared capability MUST be provided (via its `provide` accessor) inside `setup`, or `chat()` throws @@ -566,7 +566,7 @@ after the setup phase. optional requires?: readonly CapabilityHandle[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:597](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L597) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:606](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L606) Capabilities this middleware requires. `chat()` validates that some middleware (or the adapter) provides each one; unsatisfied requirements are @@ -581,7 +581,7 @@ the adapter runs. optional sandbox?: ChatSandboxHooks; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:776](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L776) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:785](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L785) Sandbox file-event hooks. Fire when a sandbox provided by `withSandbox` is active during the run and a file is created/changed/deleted. Server-side. @@ -594,7 +594,7 @@ active during the run and a file is created/changed/deleted. Server-side. optional setup?: (ctx) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:619](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L619) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:628](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L628) Provisioning hook. Runs FIRST — before `onConfig` (init) — across all middleware in array order. Use it to call `provide` accessors so later diff --git a/docs/reference/interfaces/ChatMiddlewareConfig.md b/docs/reference/interfaces/ChatMiddlewareConfig.md index a269290757..562b89c541 100644 --- a/docs/reference/interfaces/ChatMiddlewareConfig.md +++ b/docs/reference/interfaces/ChatMiddlewareConfig.md @@ -5,7 +5,7 @@ title: ChatMiddlewareConfig # Interface: ChatMiddlewareConfig -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:307](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L307) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:313](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L313) Chat configuration that middleware can observe or transform. This is a subset of the chat engine's effective configuration @@ -22,7 +22,9 @@ messages: ModelMessage< | null>[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:308](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L308) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:315](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L315) + +Canonical conversation history. Middleware and persistence read this. *** @@ -32,7 +34,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:308](https://gi optional metadata?: Record; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:313](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L313) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:322](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L322) *** @@ -42,7 +44,22 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:313](https://gi optional modelOptions?: Record; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:314](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L314) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:323](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L323) + +*** + +### providerMessages? + +```ts +optional providerMessages?: ModelMessage< + | string + | ContentPart[] + | null>[]; +``` + +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:317](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L317) + +Provider-only context. Defaults to `messages` when it is not set. *** @@ -52,7 +69,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:314](https://gi optional resume?: RunAgentResumeItem[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:311](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L311) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:320](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L320) *** @@ -62,7 +79,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:311](https://gi optional resumeToolState?: ChatResumeToolState; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:312](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L312) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:321](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L321) *** @@ -72,7 +89,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:312](https://gi systemPrompts: SystemPrompt[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:309](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L309) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:318](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L318) *** @@ -82,4 +99,4 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:309](https://gi tools: Tool[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:310](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L310) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:319](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L319) diff --git a/docs/reference/interfaces/ChatMiddlewareContext.md b/docs/reference/interfaces/ChatMiddlewareContext.md index 6419dd3f90..ff63a0d045 100644 --- a/docs/reference/interfaces/ChatMiddlewareContext.md +++ b/docs/reference/interfaces/ChatMiddlewareContext.md @@ -46,7 +46,7 @@ Abort the chat run with a reason accumulatedContent: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:266](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L266) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:272](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L272) Accumulated text content for the current iteration @@ -58,7 +58,7 @@ Accumulated text content for the current iteration activity: "chat"; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:233](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L233) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:239](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L239) Which activity this context describes — always `'chat'`. Present so the chat context structurally satisfies the base `GenerationMiddlewareContext`, @@ -73,7 +73,7 @@ letting an observe-only middleware authored against the base (e.g. capabilities: CapabilityRegistry; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:280](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L280) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:286](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L286) Capability bookkeeping for this request. Populated by middleware `setup` hooks (via `provide` accessors) and read by later middleware (via `get` @@ -100,7 +100,7 @@ Running count of chunks yielded so far context: TContext; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:217](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L217) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:223](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L223) Runtime context provided by chat() options @@ -128,7 +128,7 @@ working unchanged. Will be removed in a future major release. createId: (prefix) => string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:273](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L273) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:279](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L279) Generate a unique ID with the given prefix @@ -150,7 +150,7 @@ Generate a unique ID with the given prefix currentMessageId: string | null; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:264](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L264) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:270](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L270) Current assistant message ID (changes per iteration) @@ -162,7 +162,7 @@ Current assistant message ID (changes per iteration) defer: (promise) => void; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:223](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L223) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:229](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L229) Defer a non-blocking side-effect promise. Deferred promises do not block streaming and are awaited @@ -180,13 +180,41 @@ after the terminal hook (onFinish/onAbort/onError). *** +### emitCustomEvent + +```ts +emitCustomEvent: (name, value) => void; +``` + +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:221](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L221) + +Push a `CUSTOM` chunk onto the chat stream immediately. +The engine yields it as soon as it can (including while `onConfig` +is still awaiting work such as a summarize call). + +#### Parameters + +##### name + +`string` + +##### value + +`Record`\<`string`, `any`\> + +#### Returns + +`void` + +*** + ### get ```ts get: (capability) => TValue; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:285](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L285) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:291](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L291) Read a provided capability by its handle. Equivalent to the handle's own `get` accessor (`getX(ctx)`); throws if the capability was never provided. @@ -215,7 +243,7 @@ Read a provided capability by its handle. Equivalent to the handle's own getOptional: (capability) => TValue | undefined; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:290](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L290) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:296](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L296) Read a capability by its handle, returning `undefined` if it was never provided (never throws). @@ -244,7 +272,7 @@ provided (never throws). hasTools: boolean; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:259](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L259) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:265](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L265) Whether tools are configured @@ -268,7 +296,7 @@ Current agent loop iteration (0-indexed) messageCount: number; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:257](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L257) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:263](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L263) Number of messages at the start of the request @@ -283,7 +311,7 @@ messages: readonly ModelMessage< | null>[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:271](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L271) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:277](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L277) Current messages array (read-only view) @@ -295,7 +323,7 @@ Current messages array (read-only view) model: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:237](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L237) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:243](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L243) Model identifier (e.g., 'gpt-5.5') @@ -307,7 +335,7 @@ Model identifier (e.g., 'gpt-5.5') optional modelOptions?: Record; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:252](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L252) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:258](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L258) Provider-specific model options @@ -319,7 +347,7 @@ Provider-specific model options optional options?: Record; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:250](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L250) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:256](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L256) Flattened generation options (metadata) @@ -355,7 +383,7 @@ Current lifecycle phase provide: (capability, value) => void; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:295](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L295) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:301](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L301) Provide a capability value. Equivalent to the handle's own `provide` accessor (`provideX(ctx, value)`). Typically called from `setup`. @@ -388,7 +416,7 @@ accessor (`provideX(ctx, value)`). Typically called from `setup`. provider: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:235](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L235) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:241](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L241) Provider name (e.g., 'openai', 'anthropic') @@ -436,7 +464,7 @@ Abort signal from the chat request source: "server" | "client"; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:239](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L239) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:245](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L245) Source of the chat invocation — always 'server' for server-side chat @@ -460,7 +488,7 @@ Unique identifier for this stream streaming: boolean; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:241](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L241) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:247](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L247) Whether the chat is streaming @@ -472,7 +500,7 @@ Whether the chat is streaming systemPrompts: SystemPrompt[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:246](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L246) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:252](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L252) System prompts configured for this chat @@ -499,6 +527,6 @@ auto-generated value when neither is supplied. optional toolNames?: string[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:248](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L248) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:254](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L254) Names of configured tools, if any diff --git a/docs/reference/interfaces/ChatResumeToolState.md b/docs/reference/interfaces/ChatResumeToolState.md index 951fbae95c..fecc25dde7 100644 --- a/docs/reference/interfaces/ChatResumeToolState.md +++ b/docs/reference/interfaces/ChatResumeToolState.md @@ -5,7 +5,7 @@ title: ChatResumeToolState # Interface: ChatResumeToolState -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:322](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L322) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:331](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L331) Tool decisions reconstructed by server-side middleware from validated resume entries. This lets empty-message interrupt resumes continue tool execution @@ -19,7 +19,7 @@ without relying on client message history. optional approvals?: ReadonlyMap; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:323](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L323) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:332](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L332) *** @@ -29,7 +29,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:323](https://gi optional cancelledToolCallIds?: ReadonlySet; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:336](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L336) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:345](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L345) *** @@ -39,7 +39,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:336](https://gi optional clientToolResults?: ReadonlyMap; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:324](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L324) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:333](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L333) *** @@ -49,7 +49,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:324](https://gi optional deniedToolResults?: ReadonlyMap; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:335](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L335) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:344](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L344) *** @@ -59,7 +59,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:335](https://gi optional genericInterruptRequests?: ReadonlyMap>>; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:329](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L329) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:338](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L338) Durable generic requests reconstructed by server middleware. @@ -71,4 +71,4 @@ Durable generic requests reconstructed by server middleware. optional genericInterrupts?: ReadonlyMap; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:325](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L325) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:334](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L334) diff --git a/docs/reference/interfaces/DefinedChatMiddleware.md b/docs/reference/interfaces/DefinedChatMiddleware.md index 63f247699a..6d86fd6745 100644 --- a/docs/reference/interfaces/DefinedChatMiddleware.md +++ b/docs/reference/interfaces/DefinedChatMiddleware.md @@ -40,7 +40,7 @@ A middleware whose `requires`/`provides` tuple types are captured precisely optional name?: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:570](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L570) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:579](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L579) Optional name for debugging and identification @@ -56,7 +56,7 @@ Optional name for debugging and identification optional onAbort?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:758](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L758) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:767](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L767) Called when the chat run is aborted. Exactly one of onFinish/onAbort/onError will be called per run. @@ -87,7 +87,7 @@ Exactly one of onFinish/onAbort/onError will be called per run. optional onAfterToolCall?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:722](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L722) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:731](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L731) Called after a tool execution completes (success or failure). @@ -119,7 +119,7 @@ optional onBeforeToolCall?: (ctx, hookCtx) => | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:714](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L714) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:723](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L723) Called before a tool is executed. Can observe, transform args, skip execution, or abort the run. @@ -156,7 +156,7 @@ optional onChunk?: (ctx, chunk) => | null; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:700](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L700) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:709](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L709) Called for every chunk yielded by chat(). Can observe, transform, expand, or drop chunks. @@ -200,7 +200,7 @@ optional onConfig?: (ctx, config) => | null; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:628](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L628) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:637](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L637) Called to observe or transform the chat configuration. Called at init and at the beginning of each agent iteration. @@ -240,7 +240,7 @@ Only the fields you return are overwritten — everything else is preserved. optional onError?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:767](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L767) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:776](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L776) Called when the chat run encounters an unhandled error. Exactly one of onFinish/onAbort/onError will be called per run. @@ -271,7 +271,7 @@ Exactly one of onFinish/onAbort/onError will be called per run. optional onFinish?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:749](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L749) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:758](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L758) Called when the chat run completes normally. Exactly one of onFinish/onAbort/onError will be called per run. @@ -304,7 +304,7 @@ optional onInterruptBoundary?: (ctx) => | Promise>; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:576](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L576) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:585](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L585) Called at a lifecycle boundary. Return interrupt requests to pause the run. Requests from every middleware in the same boundary form one batch. @@ -334,7 +334,7 @@ optional onInterruptResolution?: (ctx, resolutions) => | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:586](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L586) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:595](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L595) Called on a continuation run after the client answers registered interrupts. Return `toolResume` to decide whether pending tools continue, cancel, or stop. @@ -366,7 +366,7 @@ Return `toolResume` to decide whether pending tools continue, cancel, or stop. optional onIteration?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:670](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L670) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:679](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L679) Called at the start of each agent loop iteration, after a new assistant message ID is created. Use this to observe iteration boundaries. @@ -397,7 +397,7 @@ is created. Use this to observe iteration boundaries. optional onShouldContinue?: (ctx, state) => boolean | void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:689](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L689) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:698](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L698) Called when the engine is deciding whether to start another agent-loop iteration (after a tool phase or between model turns). @@ -438,7 +438,7 @@ Receives the same [AgentLoopState](AgentLoopState.md) passed to strategies optional onStart?: (ctx) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:664](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L664) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:673](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L673) Called when the chat run starts (after initial onConfig). @@ -471,7 +471,7 @@ optional onStructuredOutputConfig?: (ctx, config) => | null; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:652](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L652) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:661](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L661) Called at the start of the final structured-output call (when the chat was invoked with outputSchema). Pipes through middleware in order, like @@ -519,7 +519,7 @@ outputSchema or apply structured-output-specific behavior. optional onToolPhaseComplete?: (ctx, info) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:731](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L731) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:740](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L740) Called after all tool calls in an iteration have been processed. Provides aggregate data about tool execution results, approvals, and client tools. @@ -550,7 +550,7 @@ Provides aggregate data about tool execution results, approvals, and client tool optional onUsage?: (ctx, usage) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:740](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L740) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:749](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L749) Called when usage data is available from a RUN_FINISHED chunk. Called once per model iteration that reports usage. @@ -581,7 +581,7 @@ Called once per model iteration that reports usage. optional optionalRequires?: readonly CapabilityHandle[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:611](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L611) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:620](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L620) Capabilities this middleware uses if present but does not require. Non-gating: never causes a validation error. Read with @@ -636,7 +636,7 @@ the adapter runs. optional sandbox?: ChatSandboxHooks; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:776](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L776) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:785](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L785) Sandbox file-event hooks. Fire when a sandbox provided by `withSandbox` is active during the run and a file is created/changed/deleted. Server-side. @@ -653,7 +653,7 @@ active during the run and a file is created/changed/deleted. Server-side. optional setup?: (ctx) => void | Promise; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:619](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L619) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:628](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L628) Provisioning hook. Runs FIRST — before `onConfig` (init) — across all middleware in array order. Use it to call `provide` accessors so later diff --git a/docs/reference/interfaces/ErrorInfo.md b/docs/reference/interfaces/ErrorInfo.md index 0c5e7a6215..cd4de86c7d 100644 --- a/docs/reference/interfaces/ErrorInfo.md +++ b/docs/reference/interfaces/ErrorInfo.md @@ -5,7 +5,7 @@ title: ErrorInfo # Interface: ErrorInfo -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:525](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L525) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:534](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L534) Information passed to onError. @@ -17,7 +17,7 @@ Information passed to onError. duration: number; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:529](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L529) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:538](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L538) Duration until error in milliseconds @@ -29,6 +29,6 @@ Duration until error in milliseconds error: unknown; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:527](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L527) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:536](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L536) The error that caused the failure diff --git a/docs/reference/interfaces/FinishInfo.md b/docs/reference/interfaces/FinishInfo.md index 65de7a7696..cea5ac23c5 100644 --- a/docs/reference/interfaces/FinishInfo.md +++ b/docs/reference/interfaces/FinishInfo.md @@ -5,7 +5,7 @@ title: FinishInfo # Interface: FinishInfo -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:485](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L485) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:494](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L494) Information passed to onFinish. @@ -17,7 +17,7 @@ Information passed to onFinish. content: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:491](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L491) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:500](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L500) Final accumulated text content @@ -29,7 +29,7 @@ Final accumulated text content duration: number; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:489](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L489) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:498](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L498) Total duration of the chat run in milliseconds @@ -41,7 +41,7 @@ Total duration of the chat run in milliseconds finishReason: string | null; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:487](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L487) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:496](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L496) The finish reason from the last model response @@ -53,6 +53,6 @@ The finish reason from the last model response optional usage?: TokenUsage; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:493](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L493) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:502](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L502) Final usage totals, if available (optionally including provider-reported cost) diff --git a/docs/reference/interfaces/IterationInfo.md b/docs/reference/interfaces/IterationInfo.md index cdc28ce1be..a66c97e9a9 100644 --- a/docs/reference/interfaces/IterationInfo.md +++ b/docs/reference/interfaces/IterationInfo.md @@ -5,7 +5,7 @@ title: IterationInfo # Interface: IterationInfo -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:424](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L424) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:433](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L433) Information passed to onIteration at the start of each agent loop iteration. @@ -17,7 +17,7 @@ Information passed to onIteration at the start of each agent loop iteration. iteration: number; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:426](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L426) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:435](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L435) 0-based iteration index @@ -29,6 +29,6 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:426](https://gi messageId: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:428](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L428) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:437](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L437) The assistant message ID created for this iteration diff --git a/docs/reference/interfaces/MetadataStore.md b/docs/reference/interfaces/MetadataStore.md new file mode 100644 index 0000000000..ba0e348858 --- /dev/null +++ b/docs/reference/interfaces/MetadataStore.md @@ -0,0 +1,95 @@ +--- +id: MetadataStore +title: MetadataStore +--- + +# Interface: MetadataStore + +Defined in: [packages/ai/src/activities/chat/middleware/metadata.ts:9](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/metadata.ts#L9) + +Namespaced key/value store for app and middleware metadata. + +`(namespace, key)` is the composite identity. Keep both values separate; +joining them with a delimiter can create collisions. + +## Properties + +### delete + +```ts +delete: (namespace, key) => Promise; +``` + +Defined in: [packages/ai/src/activities/chat/middleware/metadata.ts:15](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/metadata.ts#L15) + +Delete `(namespace, key)`. Do nothing when it is absent. + +#### Parameters + +##### namespace + +`string` + +##### key + +`string` + +#### Returns + +`Promise`\<`void`\> + +*** + +### get + +```ts +get: (namespace, key) => Promise; +``` + +Defined in: [packages/ai/src/activities/chat/middleware/metadata.ts:11](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/metadata.ts#L11) + +Return the value for `(namespace, key)`, or `null` when it is absent. + +#### Parameters + +##### namespace + +`string` + +##### key + +`string` + +#### Returns + +`Promise`\<`unknown`\> + +*** + +### set + +```ts +set: (namespace, key, value) => Promise; +``` + +Defined in: [packages/ai/src/activities/chat/middleware/metadata.ts:13](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/metadata.ts#L13) + +Insert or replace the value for `(namespace, key)`. + +#### Parameters + +##### namespace + +`string` + +##### key + +`string` + +##### value + +`unknown` + +#### Returns + +`Promise`\<`void`\> diff --git a/docs/reference/interfaces/StructuredOutputMiddlewareConfig.md b/docs/reference/interfaces/StructuredOutputMiddlewareConfig.md index 00c7f17f19..b36aa57d98 100644 --- a/docs/reference/interfaces/StructuredOutputMiddlewareConfig.md +++ b/docs/reference/interfaces/StructuredOutputMiddlewareConfig.md @@ -5,7 +5,7 @@ title: StructuredOutputMiddlewareConfig # Interface: StructuredOutputMiddlewareConfig -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:353](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L353) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:362](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L362) Config passed to onStructuredOutputConfig. @@ -31,7 +31,9 @@ messages: ModelMessage< | null>[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:308](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L308) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:315](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L315) + +Canonical conversation history. Middleware and persistence read this. #### Inherited from @@ -45,7 +47,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:308](https://gi optional metadata?: Record; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:313](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L313) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:322](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L322) #### Inherited from @@ -59,7 +61,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:313](https://gi optional modelOptions?: Record; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:314](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L314) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:323](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L323) #### Inherited from @@ -73,19 +75,38 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:314](https://gi outputSchema: JSONSchema; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:358](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L358) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:367](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L367) JSON Schema being sent to the provider for structured output. *** +### providerMessages? + +```ts +optional providerMessages?: ModelMessage< + | string + | ContentPart[] + | null>[]; +``` + +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:317](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L317) + +Provider-only context. Defaults to `messages` when it is not set. + +#### Inherited from + +[`ChatMiddlewareConfig`](ChatMiddlewareConfig.md).[`providerMessages`](ChatMiddlewareConfig.md#providermessages) + +*** + ### resume? ```ts optional resume?: RunAgentResumeItem[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:311](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L311) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:320](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L320) #### Inherited from @@ -99,7 +120,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:311](https://gi optional resumeToolState?: ChatResumeToolState; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:312](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L312) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:321](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L321) #### Inherited from @@ -113,7 +134,7 @@ Defined in: [packages/ai/src/activities/chat/middleware/types.ts:312](https://gi systemPrompts: SystemPrompt[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:309](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L309) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:318](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L318) #### Inherited from diff --git a/docs/reference/interfaces/ToolCallHookContext.md b/docs/reference/interfaces/ToolCallHookContext.md index 0c4a111a16..cbcef53f59 100644 --- a/docs/reference/interfaces/ToolCallHookContext.md +++ b/docs/reference/interfaces/ToolCallHookContext.md @@ -5,7 +5,7 @@ title: ToolCallHookContext # Interface: ToolCallHookContext -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:368](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L368) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:377](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L377) Context provided to tool call hooks (onBeforeToolCall / onAfterToolCall). @@ -17,7 +17,7 @@ Context provided to tool call hooks (onBeforeToolCall / onAfterToolCall). args: unknown; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:374](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L374) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:383](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L383) Parsed arguments for the tool call @@ -31,7 +31,7 @@ tool: | undefined; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:372](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L372) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:381](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L381) The resolved tool definition, if found @@ -43,7 +43,7 @@ The resolved tool definition, if found toolCall: ToolCall; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:370](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L370) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:379](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L379) The tool call being executed @@ -55,7 +55,7 @@ The tool call being executed toolCallId: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:378](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L378) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:387](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L387) ID of the tool call @@ -67,6 +67,6 @@ ID of the tool call toolName: string; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:376](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L376) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:385](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L385) Name of the tool diff --git a/docs/reference/interfaces/ToolPhaseCompleteInfo.md b/docs/reference/interfaces/ToolPhaseCompleteInfo.md index 3d64a98ad6..3fea687ead 100644 --- a/docs/reference/interfaces/ToolPhaseCompleteInfo.md +++ b/docs/reference/interfaces/ToolPhaseCompleteInfo.md @@ -5,7 +5,7 @@ title: ToolPhaseCompleteInfo # Interface: ToolPhaseCompleteInfo -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:439](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L439) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:448](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L448) Aggregate information passed to onToolPhaseComplete after all tool calls in an iteration have been processed. @@ -18,7 +18,7 @@ in an iteration have been processed. needsApproval: object[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:450](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L450) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:459](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L459) Tools that need user approval @@ -54,7 +54,7 @@ toolName: string; needsClientExecution: object[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:457](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L457) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:466](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L466) Tools that need client-side execution @@ -84,7 +84,7 @@ toolName: string; results: object[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:443](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L443) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:452](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L452) Completed tool results @@ -120,6 +120,6 @@ toolName: string; toolCalls: ToolCall[]; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:441](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L441) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:450](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L450) Tool calls that were assigned to the assistant message diff --git a/docs/reference/interfaces/UsageInfo.md b/docs/reference/interfaces/UsageInfo.md index b8abb3ce99..9c1cd285ce 100644 --- a/docs/reference/interfaces/UsageInfo.md +++ b/docs/reference/interfaces/UsageInfo.md @@ -5,7 +5,7 @@ title: UsageInfo # Interface: UsageInfo -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:476](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L476) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:485](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L485) Token usage statistics passed to the onUsage hook. Extracted from the RUN_FINISHED chunk when usage data is present. diff --git a/docs/reference/type-aliases/AnyChatMiddleware.md b/docs/reference/type-aliases/AnyChatMiddleware.md index 9bb5a74195..58610df6c8 100644 --- a/docs/reference/type-aliases/AnyChatMiddleware.md +++ b/docs/reference/type-aliases/AnyChatMiddleware.md @@ -9,6 +9,6 @@ title: AnyChatMiddleware type AnyChatMiddleware = ChatMiddleware; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:781](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L781) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:790](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L790) A permissive middleware constraint that retains the definition parameter. diff --git a/docs/reference/type-aliases/BeforeToolCallDecision.md b/docs/reference/type-aliases/BeforeToolCallDecision.md index f955a1c998..ffc06cc51a 100644 --- a/docs/reference/type-aliases/BeforeToolCallDecision.md +++ b/docs/reference/type-aliases/BeforeToolCallDecision.md @@ -24,7 +24,7 @@ type BeforeToolCallDecision = }; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:388](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L388) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:397](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L397) Decision returned from onBeforeToolCall. - undefined/void: continue with normal execution diff --git a/docs/reference/type-aliases/ChatResumeGenericResolution.md b/docs/reference/type-aliases/ChatResumeGenericResolution.md index 5a0a253a8a..e3db213d9b 100644 --- a/docs/reference/type-aliases/ChatResumeGenericResolution.md +++ b/docs/reference/type-aliases/ChatResumeGenericResolution.md @@ -19,4 +19,4 @@ type ChatResumeGenericResolution = }; ``` -Defined in: [packages/ai/src/activities/chat/middleware/types.ts:339](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L339) +Defined in: [packages/ai/src/activities/chat/middleware/types.ts:348](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/types.ts#L348) diff --git a/docs/reference/variables/MetadataCapability.md b/docs/reference/variables/MetadataCapability.md new file mode 100644 index 0000000000..52e5fba966 --- /dev/null +++ b/docs/reference/variables/MetadataCapability.md @@ -0,0 +1,12 @@ +--- +id: MetadataCapability +title: MetadataCapability +--- + +# Variable: MetadataCapability + +```ts +const MetadataCapability: Capability; +``` + +Defined in: [packages/ai/src/activities/chat/middleware/metadata.ts:18](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/metadata.ts#L18) diff --git a/docs/reference/variables/getMetadata.md b/docs/reference/variables/getMetadata.md new file mode 100644 index 0000000000..a276d1ccec --- /dev/null +++ b/docs/reference/variables/getMetadata.md @@ -0,0 +1,12 @@ +--- +id: getMetadata +title: getMetadata +--- + +# Variable: getMetadata + +```ts +getMetadata: CapabilityGetter; +``` + +Defined in: [packages/ai/src/activities/chat/middleware/metadata.ts:20](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/metadata.ts#L20) diff --git a/docs/reference/variables/provideMetadata.md b/docs/reference/variables/provideMetadata.md new file mode 100644 index 0000000000..afca275388 --- /dev/null +++ b/docs/reference/variables/provideMetadata.md @@ -0,0 +1,12 @@ +--- +id: provideMetadata +title: provideMetadata +--- + +# Variable: provideMetadata + +```ts +provideMetadata: CapabilityProvider; +``` + +Defined in: [packages/ai/src/activities/chat/middleware/metadata.ts:20](https://github.com/TanStack/ai/blob/main/packages/ai/src/activities/chat/middleware/metadata.ts#L20)