NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #1825 most downloaded on npm
Last release 4 days ago
30 Sep 2026
Ships on a steady schedule
a new release about every 2 weeks
Most releases are documented
notes for 52 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
2 years old
188 releases · first in 2024
8c65988: feat(ai): add telemetry to speech generation and transcription, including provider usage propagation and experimental streaming lifecycle cal
ede5b89: chore: migrate package builds from tsup to tsdown
One column per month.
525efc5: feat(provider): advertise image model file and mask input support
525efc5: feat(provider): advertise image model file and mask input support
Use confirmed model IDs for capability declarations so unrecognized model names remain unknown. Include Together AI FLUX.2 Pro and Flex single-image editing, and allow asynchronous capability lookups and middleware overrides to resolve to unknown.
Advertise QuiverAI Arrow 2 and Arrow 2 Telos file-input support, and mark Together AI Gemini image inputs unsupported by the current single-image request mapping.
ffb0e76: fix(provider): preserve opaque file URI strings for provider serialization
a7dd893: Add experimental evaluation model aliases and registry resolution. customProvider accepts evaluationModels, registries expose evaluationModel
customProvider accepts evaluationModels, registries expose evaluationModel, and experimental_evaluate accepts string IDs when an evaluation-capable default provider is explicitly configured. Evaluation never implicitly falls back to Gateway. Model-resolution errors now identify evaluationModel while stable provider contracts remain unchanged.d06bb2a: Allow readonly arrays and objects containing them to be used as JSON values.
experimental_evaluate and the isolated experimental v4 evaluation model specification for Choice, Score, and Boolean questions against shared state. Includes typed answers, optional Choice/Score distributions, required Boolean probabilities, validation, retries, cancellation, and Experimental_EvaluationUnsupportedQuestionTypeError for unsupported questions.5c0054d: Add optional browser-direct WebRTC for experimental client-delegated Live conversations alongside the existing WebSocket path. Exchange SDP t
5c0054d: Add optional browser-direct WebRTC for experimental client-delegated Live conversations alongside the existing WebSocket path. Exchange SDP through an application endpoint with api.session, configure server-owned data-channel permissions, and preserve committed React session ownership. Capture follows the selected sender track, borrowed tracks remain caller-owned, and disconnect recovery and finalization stay bounded. Applications continue to handle client delegation and submit context; Live session updates and Responses delegation remain unsupported.
Serialize microphone sender changes and close the peer if detachment fails, without stopping borrowed tracks. Validate nonempty SDP setup answers with a bounded response body, and document the same-origin broker authentication contract.
39535af: Add experimental OpenAI Live provider support through the unified openai.experimental_realtime factory for server WebSocket sessions with client delegation. Applications own their agents and tools, receive continuous audio/transcript events and delegation metadata, and return context through validated channels. Support immutable startup options, microphone mute controls, graceful session close, and cumulative voice usage. Responses delegation and Live session updates reject before sending.
Route known Live model IDs to Live, allow an OpenAI-specific api override for early-access models, and preserve legacy Realtime defaults for unknown IDs. Token minting follows the same selection rules and rejects Live before requesting unsupported credentials. Extend the realtime v4 specification with optional server WebSocket configuration, per-connection raw-event parsers, and model-wide startup/finalization capabilities. This provider layer supplies connection settings and protocol mapping for server adapters; browser lifecycle and UI integration belong to the core runtime and framework hooks.
Preserve Realtime client event IDs for session updates and audio appends, and correlate server errors with the originating client event.
5ec21a6: fix: reject unsupported batch request types
9942196: feat: add batch cancel and list APIs
912fb01: feat: add batch cancel and list APIs
a4ba394: feat: support per-request models in batch
5190b67: feat(provider): extend the FilesV4 interface with optional getFileMetadata, downloadFile (streaming), and deleteFile operations, plus abortSi
getFileMetadata, downloadFile (streaming), and deleteFile operations, plus abortSignal/headers call options and a { type: 'stream' } upload data variant; upload results now expose byteSize, createdAt, and expiresAt (also surfaced by the core uploadFile() helper, which now forwards abortSignal/headers); add postMultipartStreamToApi (streaming multipart uploads with deterministic part ordering and failure-path stream teardown), deleteFromApi, and createBinaryStreamResponseHandler to provider-utilsaa45741: fix(provider/anthropic): preserve native message batch request counts in provider metadata and support the full language-model option surface
591d25b: feat: add batch completion webhooks. experimental_startTextBatch accepts a webhookUrl, and the gateway provider registers it through the batc
experimental_startTextBatch accepts a webhookUrl, and the gateway provider registers it through the batch callbackUrl contract and exports typed async-job metadata. Direct Anthropic and OpenAI batch providers return an unsupported warning when the option is provided.ad6a650: feat(video): allow aspectRatio: 'adaptive' on generateVideo
ad6a650: feat(video): allow aspectRatio: 'adaptive' on generateVideo
Some video models derive the output ratio from the input and reject explicit
{width}:{height} values — BytePlus Seedance 2.5 does this for first-frame,
first-and-last-frame, editing, and extension tasks. aspectRatio on
VideoModelV3CallOptions, VideoModelV4CallOptions, and
experimental_generateVideo is now `${number}:${number}` | 'adaptive', so
those calls no longer need a type assertion. Support is provider-specific.
### Patch Changes - 3469d0c: feat: add batch APIs
79e133c: async APIs for generateVideo (poll, webhook)
79e133c: async APIs for generateVideo (poll, webhook)
Adds an asynchronous start/status flow to the experimental video model
interface (VideoModelV4): models may now implement doStart, doStatus,
and handleWebhookOption instead of (or in addition to) doGenerate, and
experimental_generateVideo accepts poll and webhook options to
orchestrate completion via polling or webhooks. Polling configuration can use
a custom delay implementation for durable workflow compatibility.
1e2f324: feat: add experimental speech translation model specification (Experimental_SpeechTranslationModelV4) and experimental_streamTranslate for st
Experimental_SpeechTranslationModelV4) and experimental_streamTranslate for streaming speech-to-speech translationede5b89: chore: migrate package builds from tsup to tsdown
inputReferences for reference-to-video generation5c5c0f5: Add experimental streaming transcription support for transcription models, including OpenAI gpt-realtime-whisper and xAI WebSocket STT.
gpt-realtime-whisper and xAI WebSocket STT.0274f34: feat (video): add first-class frameImages and inputReferences call options for video generation
frameImages and inputReferences call options for video generationf7d4f01: feat(provider): add support for reasoning-file type for files that are part of reasoning
reasoning-file type for files that are part of reasoning"type": "module"). Consumers using require() must switch to ESM import syntax.generateText and streamText1f509d4: fix(ai): force template check on 'kind' param
176466a: chore(provider): align V4 model return types to have their own definitions across all model interfaces
5c2a5a2: fix(provider): fix v4 spec to not use shared v3 types
9f0e36c: trigger release for all packages after provenance setup
008271d: feat(openai-compatible): emit warning when using kebab-case instead of camelCase
7fc6bd6: Raise minimum supported Node.js version to 22. Supported versions: 22, 24, and 26.
0c4c275: trigger initial canary release
6fd51c0: fix(provider): preserve error type prefix in getErrorMessage
ce769dd: feat(provider): add experimental Realtime API support for voice conversations
Adds first-class support for realtime (speech-to-speech) APIs:
Experimental_RealtimeModelV4 spec in @ai-sdk/provider with normalized event types and factoryopenai.experimental_realtime() / google.experimental_realtime() / xai.experimental_realtime() work in both server and browser.getToken() static method on each provider for server-side ephemeral token creationexperimental_getRealtimeToolDefinitions helper for provider session tool definitionsexperimental_useRealtime hook in @ai-sdk/react returning UIMessage[] (aligned with useChat), with onToolCall and addToolOutput for client-driven tool executioninputAudioTranscription session config for showing transcribed user audio messages when supported by the providere311194: feat(ai): allow passing provider instance to uploadFile and uploadSkill as shorthand
258c093: chore: ensure consistent import handling and avoid import duplicates or cycles
b8396f0: trigger initial beta release
0416e3e: feat (video): add first-class generateAudio call option
ff5eba1: feat: roll image-* tool output types into their equivalent file-* types
ce769dd: feat(provider): add experimental Realtime API support for voice conversations
ce769dd: feat(provider): add experimental Realtime API support for voice conversations
Adds first-class support for realtime (speech-to-speech) APIs:
Experimental_RealtimeModelV4 spec in @ai-sdk/provider with normalized event types and factoryopenai.experimental_realtime() / google.experimental_realtime() / xai.experimental_realtime() work in both server and browser.getToken() static method on each provider for server-side ephemeral token creationexperimental_getRealtimeToolDefinitions helper for provider session tool definitionsexperimental_useRealtime hook in @ai-sdk/react returning UIMessage[] (aligned with useChat), with onToolCall and addToolOutput for client-driven tool executioninputAudioTranscription session config for showing transcribed user audio messages when supported by the provider7fc6bd6: Raise minimum supported Node.js version to 22. Supported versions: 22, 24, and 26.
5463d0d: feat(provider): align tool result output content file part types with top-level message file part types
0c4c275: trigger initial canary release
0416e3e: feat (video): add first-class generateAudio call option
generateAudio call optionb8396f0: trigger initial beta release
9bd6512: feat(provider): change file part data property to be tagged with a type and remove the image part type
9f0e36c: trigger release for all packages after provenance setup
ff5eba1: feat: roll image-* tool output types into their equivalent file-* types
image-* tool output types into their equivalent file-* typesef992f8: Remove CommonJS exports from all packages. All packages are now ESM-only ("type": "module"). Consumers using require() must switch to ESM imp
"type": "module"). Consumers using require() must switch to ESM import syntax.176466a: chore(provider): align V4 model return types to have their own definitions across all model interfaces
e311194: feat(ai): allow passing provider instance to uploadFile and uploadSkill as shorthand
uploadFile and uploadSkill as shorthand34bd95d: feat(ai): add support for uploading provider skills using the provider references abstraction
6fd51c0: fix(provider): preserve error type prefix in getErrorMessage
c29a26f: feat(provider): add support for provider references and uploading files as supported per provider
1f509d4: fix(ai): force template check on 'kind' param
3887c70: feat(provider): add new top-level reasoning parameter to spec and support it in generateText and streamText
generateText and streamText776b617: feat(provider): adding new 'custom' content type
f7d4f01: feat(provider): add support for reasoning-file type for files that are part of reasoning
reasoning-file type for files that are part of reasoning5c2a5a2: fix(provider): fix v4 spec to not use shared v3 types
### Major Changes - 8359612: Start v7 pre-release
Nothing published for this version
Updated dependencies [ fe07867 ]
Updated dependencies [ ffb0e76 ]
### Patch Changes - Updated dependencies [4579b08] - @ai-sdk/anthropic@4.0.39
Nothing published for this version
Updated dependencies [ 215b25e ]
### Patch Changes - Updated dependencies [8c65988] - Updated dependencies [527a163] - @ai-sdk/provider@4.0.21 - @ai-sdk/provider-utils@5.0.53
ede5b89: chore: migrate package builds from tsup to tsdown
Nothing published for this version
Updated dependencies [ 9942196 ]
Updated dependencies [ 912fb01 ]
Updated dependencies [ a4ba394 ]
2810850: fix(ai): improve type validation error messages with field paths and entity identifiers
Updated dependencies [ 6bcc0f8 ]
5c090e7: fix(ai): fix LanguageModelV2ProviderTool type
1b11dcb: chore(ai): include sources in npm package
7fb07aa : fix(typesafe-ai): surface the error_type code instead of a generic failure message
wrapImageModel and ImageModelV3Middleware.Your coding agent can read these notes before it upgrades. Set up the MCP server →