Release history.
Every package release from the assistant-ui monorepo, grouped by day.
Jul 28, 2026
51 releases
>@assistant-ui/core@0.3.0Minorproperty API for aui — nullary scope accessors are now properties (aui.thread.getState instead of aui.thread.getState); calling them still works but is deprecated. Accessors keep source/query/name selection metadata as properties; these are reserved names for scope methods. An unavailable scope's accessor no longer throws at selection time: aui.thread always succeeds and is always truthy, .source is null, and any other property read (or a call) throws — check availability via aui.thread.source != null. Accessor identity is binding-keyed: stable across renders without structural change, new on structural change — memoization keyed on an accessor now invalidates exactly when its binding changes.5 changes
Features4
property API for aui — nullary scope accessors are now properties (
aui.thread.getState instead of aui.thread.getState); calling them still works but is deprecated. Accessors keep source/query/name selection metadata as properties; these are reserved names for scope methods. An unavailable scope's accessor no longer throws at selection time: aui.thread always succeeds and is always truthy, .source is null, and any other property read (or a call) throws — check availability via aui.thread.source != null. Accessor identity is binding-keyed: stable across renders without structural change, new on structural change — memoization keyed on an accessor now invalidates exactly when its binding changes.drop APIs deprecated in v0.12/v0.14 — the legacy context hooks (
useAssistantRuntime, useThreadRuntime, useThread, useMessageRuntime, useMessage, useComposerRuntime, useComposer, useMessagePartRuntime, useMessagePart, useAttachmentRuntime, useAttachment, useThreadListItemRuntime, useThreadListItem, useThreadList, useEditComposer and their attachment variants; use useAui / useAuiState), the component-only ToolsState.tools map (use toolUIs), and the "mcp-app" group key in groupPartByType (use "standalone-tool-call"). See the v0.15 migration guide.getClientId(client) returns an opaque, WeakMap-legal identity for a bound client — the same object regardless of accessor wrapping depth. The cloud message persistence cache is now keyed on it instead of the per-mount accessor proxy. Removes unwrapClientAccessor and getBoundClient (introduced and replaced pre-release, never published).render-bound immutable aui instances — derived scopes resolve to client instances during render and are frozen into the returned client; structural swaps produce a new client through React while value updates never change client identity. Removes the PartByIndexProvider lastPartRef guards and the useClientLookup stale-index clamp.
Fixes1
>@assistant-ui/core@0.2.23ExternalThread props for assistant-transport (isLoading, state, extras, onResume, onAddToolResult, onLoadExternalState, onResumeToolCall, attachmentAdapter; importExternalState); export ToolInvocationTracker from core internal; composer parentId, draft-restore, and part-status fixes10 changes
Features1
ExternalThread props for assistant-transport (isLoading, state, extras, onResume, onAddToolResult, onLoadExternalState, onResumeToolCall, attachmentAdapter; importExternalState); export ToolInvocationTracker from core internal; composer parentId, draft-restore, and part-status fixes
Fixes5
core
persist LocalRuntime runs paused for tool approval
core
preserve thread-list position when switchToThread's on-demand fetch settles after a concurrent list
Other4
Warn instead of throw on recoverable inconsistencies: duplicate same-priority tool registrations merge with the latest registration taking precedence, duplicate message ids skip linking, stale client lookup indices are clamped, and null tool names in tool result messages are tolerated.
>@assistant-ui/react@0.15.0Minorproperty API for aui — nullary scope accessors are now properties (aui.thread.getState instead of aui.thread.getState); calling them still works but is deprecated. Accessors keep source/query/name selection metadata as properties; these are reserved names for scope methods. An unavailable scope's accessor no longer throws at selection time: aui.thread always succeeds and is always truthy, .source is null, and any other property read (or a call) throws — check availability via aui.thread.source != null. Accessor identity is binding-keyed: stable across renders without structural change, new on structural change — memoization keyed on an accessor now invalidates exactly when its binding changes.2 changes
Features2
property API for aui — nullary scope accessors are now properties (
aui.thread.getState instead of aui.thread.getState); calling them still works but is deprecated. Accessors keep source/query/name selection metadata as properties; these are reserved names for scope methods. An unavailable scope's accessor no longer throws at selection time: aui.thread always succeeds and is always truthy, .source is null, and any other property read (or a call) throws — check availability via aui.thread.source != null. Accessor identity is binding-keyed: stable across renders without structural change, new on structural change — memoization keyed on an accessor now invalidates exactly when its binding changes.drop APIs deprecated in v0.12/v0.14 — the legacy context hooks (
useAssistantRuntime, useThreadRuntime, useThread, useMessageRuntime, useMessage, useComposerRuntime, useComposer, useMessagePartRuntime, useMessagePart, useAttachmentRuntime, useAttachment, useThreadListItemRuntime, useThreadListItem, useThreadList, useEditComposer and their attachment variants; use useAui / useAuiState), the component-only ToolsState.tools map (use toolUIs), and the "mcp-app" group key in groupPartByType (use "standalone-tool-call"). See the v0.15 migration guide.>@assistant-ui/react@0.14.29ExternalThread props for assistant-transport (isLoading, state, extras, onResume, onAddToolResult, onLoadExternalState, onResumeToolCall, attachmentAdapter; importExternalState); export ToolInvocationTracker from core internal; composer parentId, draft-restore, and part-status fixes19 changes
Features1
ExternalThread props for assistant-transport (isLoading, state, extras, onResume, onAddToolResult, onLoadExternalState, onResumeToolCall, attachmentAdapter; importExternalState); export ToolInvocationTracker from core internal; composer parentId, draft-restore, and part-status fixes
Fixes16
assistant-transport
assistant-transport
assistant-transport
assistant-transport
stop logging attachment-add rejections to the console from ComposerPrimitive.AttachmentDropzone and ComposerPrimitive.Input; the rejection is already surfaced via the structured composer.attachmentAddError event, so the per-file console.error produced unopt-outable duplicate noise for apps handling the event
core
persist LocalRuntime runs paused for tool approval
core
preserve thread-list position when switchToThread's on-demand fetch settles after a concurrent list
Other2
>@assistant-ui/react-ag-ui@0.0.47reconstruct mcp.app on restored tool-call parts in fromAgUiMessages from the meta["ui/resourceUri"] MCP-UI pointer, so getMcpAppFromToolPart resolves the app on restored history instead of leaving McpAppRenderer on its fallback; effective for transports that preserve meta (the standard @ag-ui/client HTTP transport strips it until upstream ToolMessageSchema gains a passthrough, agno-agi/agno#9087)1 change
Features1
reconstruct
mcp.app on restored tool-call parts in fromAgUiMessages from the _meta["ui/resourceUri"] MCP-UI pointer, so getMcpAppFromToolPart resolves the app on restored history instead of leaving McpAppRenderer on its fallback; effective for transports that preserve _meta (the standard @ag-ui/client HTTP transport strips it until upstream ToolMessageSchema gains a passthrough, agno-agi/agno#9087)>@assistant-ui/react-ai-sdk@1.4.1migrate to aui property accessors1 change
>@assistant-ui/react-devtools@1.2.11migrate to aui property accessors1 change
>@assistant-ui/react-google-adk@0.0.19migrate to aui property accessors1 change
>@assistant-ui/react-hook-form@0.12.25migrate to aui property accessors1 change
>@assistant-ui/react-ink@0.0.35migrate primitives to aui property accessors; drop deprecated part-type handling1 change
Refactors1
>@assistant-ui/react-langgraph@0.14.15render-bound immutable aui instances — derived scopes resolve to client instances during render and are frozen into the returned client; structural swaps produce a new client through React while value updates never change client identity. Removes the PartByIndexProvider lastPartRef guards and the useClientLookup stale-index clamp.2 changes
Features1
render-bound immutable aui instances — derived scopes resolve to client instances during render and are frozen into the returned client; structural swaps produce a new client through React while value updates never change client identity. Removes the PartByIndexProvider lastPartRef guards and the useClientLookup stale-index clamp.
>@assistant-ui/react-lexical@0.2.7migrate to aui property accessors1 change
>@assistant-ui/react-mcp@0.0.21migrate to aui property accessors1 change
>@assistant-ui/react-native@0.1.33migrate primitives to aui property accessors; drop deprecated part-type handling1 change
Refactors1
>@assistant-ui/react-native@0.1.32keep MessagesFlatList following the bottom when the viewport shrinks (keyboard opening) mid-stream by extending the sticky pin to the onLayout path1 change
Fixes1
keep MessagesFlatList following the bottom when the viewport shrinks (keyboard opening) mid-stream by extending the sticky pin to the onLayout path
>@assistant-ui/react-o11y@0.0.29migrate to aui property accessors1 change
>@assistant-ui/react-pi@0.0.10migrate to aui property accessors1 change
>@assistant-ui/store@0.3.0Minorproperty API for aui — nullary scope accessors are now properties (aui.thread.getState instead of aui.thread.getState); calling them still works but is deprecated. Accessors keep source/query/name selection metadata as properties; these are reserved names for scope methods. An unavailable scope's accessor no longer throws at selection time: aui.thread always succeeds and is always truthy, .source is null, and any other property read (or a call) throws — check availability via aui.thread.source != null. Accessor identity is binding-keyed: stable across renders without structural change, new on structural change — memoization keyed on an accessor now invalidates exactly when its binding changes.3 changes
Features3
property API for aui — nullary scope accessors are now properties (
aui.thread.getState instead of aui.thread.getState); calling them still works but is deprecated. Accessors keep source/query/name selection metadata as properties; these are reserved names for scope methods. An unavailable scope's accessor no longer throws at selection time: aui.thread always succeeds and is always truthy, .source is null, and any other property read (or a call) throws — check availability via aui.thread.source != null. Accessor identity is binding-keyed: stable across renders without structural change, new on structural change — memoization keyed on an accessor now invalidates exactly when its binding changes.getClientId(client) returns an opaque, WeakMap-legal identity for a bound client — the same object regardless of accessor wrapping depth. The cloud message persistence cache is now keyed on it instead of the per-mount accessor proxy. Removes unwrapClientAccessor and getBoundClient (introduced and replaced pre-release, never published).render-bound immutable aui instances — derived scopes resolve to client instances during render and are frozen into the returned client; structural swaps produce a new client through React while value updates never change client identity. Removes the PartByIndexProvider lastPartRef guards and the useClientLookup stale-index clamp.
>@assistant-ui/tap@0.9.7useSyncExternalStore retains the last committed value when the snapshot getter throws; export useMemoCache from the package root1 change
Fixes1
>@assistant-ui/tap@0.9.6drop configurableResource — use resource with an options argument instead3 changes
>@assistant-ui/x-generative-compiler@0.0.11name the winning and overridden sources in the duplicate-tool-name composition warning1 change
Features1
name the winning and overridden sources in the duplicate-tool-name composition warning
>assistant-stream@0.3.29PlainTextEncoder emits assistant text only. Reasoning and tool-call argument deltas no longer leak into the output, non-text chunks (result, annotations, data, update-state, tool-call-args-text-finish) are skipped instead of throwing mid-stream, and the incorrect x-vercel-ai-data-stream header is removed from the response headers.1 change
Fixes1
PlainTextEncoder emits assistant text only. Reasoning and tool-call argument deltas no longer leak into the output, non-text chunks (result, annotations, data, update-state, tool-call-args-text-finish) are skipped instead of throwing mid-stream, and the incorrect x-vercel-ai-data-stream header is removed from the response headers.
>assistant-stream@0.3.28DataStreamChunkDecoder skips blank framing lines and drops colon-less lines with a warning instead of throwing5 changes
Fixes3
parse SSEDecoder and data-stream chunk frames with secure-json-parse, matching the transport and UIMessageStream decoders; a malformed or prototype-pollution frame is now dropped with a warning and the stream continues instead of erroring the whole stream
parse UIMessageStream frames with secure-json-parse, matching the transport decoder
Other2
>assistant-ui@0.0.108v0-15/aui-accessor-calls-to-properties codemod — rewrites nullary aui.x accessor calls to aui.x property access as part of npx assistant-ui upgrade.2 changes
>27 maintenance releasesdependency updates and chores
>@assistant-ui/cloud-ai-sdk@0.1.27Adopt erasableSyntaxOnly; public enums are now as const objects.1 change
>@assistant-ui/eve@0.0.6@assistant-ui/core@0.3.01 change
Other1
@assistant-ui/core@0.3.0
>@assistant-ui/next@0.0.13@assistant-ui/x-generative-compiler@0.0.111 change
Other1
@assistant-ui/x-generative-compiler@0.0.11
>@assistant-ui/react-a2a@0.2.24@assistant-ui/store@0.3.01 change
Other1
@assistant-ui/store@0.3.0
>@assistant-ui/react-ag-ui@0.0.48@assistant-ui/store@0.3.01 change
Other1
@assistant-ui/store@0.3.0
>@assistant-ui/react-data-stream@0.12.22@assistant-ui/core@0.3.01 change
Other1
@assistant-ui/core@0.3.0
>@assistant-ui/react-data-stream@0.12.21Adopt erasableSyntaxOnly; public enums are now as const objects.1 change
>@assistant-ui/react-generative-ui@0.0.10@assistant-ui/react@0.15.01 change
Other1
@assistant-ui/react@0.15.0
>@assistant-ui/react-ink@0.0.34Adopt erasableSyntaxOnly; public enums are now as const objects.1 change
>@assistant-ui/react-ink-markdown@0.0.34@assistant-ui/store@0.3.01 change
Other1
@assistant-ui/store@0.3.0
>@assistant-ui/react-ink-markdown@0.0.33@assistant-ui/core@0.2.231 change
Other1
@assistant-ui/core@0.2.23
>@assistant-ui/react-langchain@0.0.21@assistant-ui/store@0.3.01 change
Other1
@assistant-ui/store@0.3.0
>@assistant-ui/react-langgraph@0.14.14Adopt erasableSyntaxOnly; public enums are now as const objects.1 change
>@assistant-ui/react-markdown@0.14.8@assistant-ui/react@0.15.01 change
Other1
@assistant-ui/react@0.15.0
>@assistant-ui/react-mcp@0.0.20assistant-stream@0.3.281 change
Other1
assistant-stream@0.3.28
>@assistant-ui/react-o11y@0.0.28@assistant-ui/store@0.2.221 change
Other1
@assistant-ui/store@0.2.22
>@assistant-ui/react-opencode@0.2.14@assistant-ui/store@0.3.01 change
Other1
@assistant-ui/store@0.3.0
>@assistant-ui/react-opencode@0.2.13Adopt erasableSyntaxOnly; public enums are now as const objects.1 change
>@assistant-ui/react-pi@0.0.9Adopt erasableSyntaxOnly; public enums are now as const objects.1 change
>@assistant-ui/react-streamdown@0.3.8@assistant-ui/react@0.15.01 change
Other1
@assistant-ui/react@0.15.0
>@assistant-ui/react-syntax-highlighter@0.14.4@assistant-ui/react@0.15.01 change
Other1
@assistant-ui/react@0.15.0
>@assistant-ui/store@0.2.22Warn instead of throw on recoverable inconsistencies: duplicate same-priority tool registrations merge with the latest registration taking precedence, duplicate message ids skip linking, stale client lookup indices are clamped, and null tool names in tool result messages are tolerated.2 changes
Other2
Warn instead of throw on recoverable inconsistencies: duplicate same-priority tool registrations merge with the latest registration taking precedence, duplicate message ids skip linking, stale client lookup indices are clamped, and null tool names in tool result messages are tolerated.
>@assistant-ui/vite@0.0.11@assistant-ui/x-generative-compiler@0.0.111 change
Other1
@assistant-ui/x-generative-compiler@0.0.11
>@assistant-ui/x-buildutils@0.0.20Adopt erasableSyntaxOnly; public enums are now as const objects.1 change
>assistant-cloud@0.1.37Adopt erasableSyntaxOnly; public enums are now as const objects.1 change
>create-assistant-ui@0.0.71assistant-ui@0.0.1081 change
Other1
assistant-ui@0.0.108
>safe-content-frame@0.0.25Adopt erasableSyntaxOnly; public enums are now as const objects.1 change
Jul 26, 2026
38 releases
>@assistant-ui/cloud-ai-sdk@0.1.26preserve async tool call callbacks9 changes
Fixes6
README quickstart renders UIMessage parts and drops nonexistent threadId destructure
>@assistant-ui/core@0.2.22avoid reporting copy success without a clipboard handler31 changes
Fixes27
mark a cancelled local runtime run incomplete when the adapter returns without throwing
stop auto-submitting a parse-error tool result when divergent argsText closes without a backend result
keep composer attachments visible while their upload is in flight
prioritize backend tool results over stale argument parse errors
allow omitting externalId in RemoteThreadInitializeResponse
isolate composer runtime event listener errors
preserve metadata.isOptimistic on user messages in fromThreadMessageLike
Refactors1
share parseDataUrl and httpUrlPattern from core internal
>@assistant-ui/eve@0.0.5require eve 0.27.63 changes
Refactors1
migrate convertEveMessage onto fromThreadMessageLike
>@assistant-ui/react@0.14.28focus composer input when clicking blank space in ComposerPrimitive.Root8 changes
Features1
focus composer input when clicking blank space in ComposerPrimitive.Root
Fixes5
tolerate a transient part-type mismatch in the part hooks so a thread switch can't throw inside useSyncExternalStore and unmount the app
Other1
>@assistant-ui/react-a2a@0.2.23preserve branched message history when loading A2A runtimes7 changes
Fixes5
forward user attachments and file parts to the wire and derive real image MIME types
Refactors1
share parseDataUrl and httpUrlPattern from core internal
>@assistant-ui/react-ag-ui@0.0.46apply mcp-apps ACTIVITYSNAPSHOT events to tool calls from restored history5 changes
Fixes2
apply mcp-apps ACTIVITY_SNAPSHOT events to tool calls from restored history
preserve MCP Host fields in AG-UI tool results and restored history
Refactors2
share interrupt-response validation between submitInterruptResponses and steerAway
share parseDataUrl and httpUrlPattern from core internal
>@assistant-ui/react-ai-sdk@1.4.0Minorformally open the AI SDK v7 line at 1.4. 1.3.41 shipped the v7 hard-dep switch as a patch inside the documented v6 line; from 1.4.0 the mapping is explicit: ^1.4 targets ai@^7, v6 users pin 1.3.40, v5 users pin 1.1.21.11 changes
Features2
expose the AI SDK chat helpers and error via runtime extras accessor hooks (useAISDKChat, useAISDKError)
Fixes7
react-ai-sdk
react-ai-sdk
pass the initialized remote thread id to prepareSendMessagesRequest
replace stale useVercelAIThreadState name in the sliceMessagesUntil error and include the missing id
>@assistant-ui/react-data-stream@0.12.20report request preparation and fetch failures through onError3 changes
>@assistant-ui/react-generative-ui@0.0.9preserve Slack alert level literal types2 changes
Fixes1
preserve Slack alert level literal types
>@assistant-ui/react-google-adk@0.0.18reject incomplete direct stream options5 changes
Fixes4
>@assistant-ui/react-hook-form@0.12.24keep form values in model context up to date2 changes
>@assistant-ui/react-ink@0.0.33remount windowed Static scrollback on thread switch4 changes
Fixes2
remount windowed Static scrollback on thread switch
wrap ThreadListPrimitive.Items rows in ThreadListItemByIndexProvider with keys
Other1
>@assistant-ui/react-langchain@0.0.20share parseDataUrl and httpUrlPattern from core internal2 changes
Refactors1
share parseDataUrl and httpUrlPattern from core internal
>@assistant-ui/react-langgraph@0.14.13handle queued run failures without unhandled promise rejections5 changes
Fixes3
carry streamed tool-call
partial_json onto the full AIMessage delivered by LangGraph updates events so the converter keeps deriving argsText from the streamed text instead of re-stringifying parsed args.Refactors1
share parseDataUrl and httpUrlPattern from core internal
>@assistant-ui/react-lexical@0.2.6support lexical 0.483 changes
Fixes1
delegate Tab key events to composer input plugins
>@assistant-ui/react-markdown@0.14.7keep inline math that opens with a digit out of currency escaping2 changes
>@assistant-ui/react-mcp@0.0.19close pending MCP connections when their resource is disposed3 changes
>@assistant-ui/react-native@0.1.31add ThreadPrimitive.MessagesFlatList with React Native auto-scroll behavior2 changes
>@assistant-ui/react-opencode@0.2.12import useEffectEvent from the use-effect-event ponyfill instead of react2 changes
Fixes1
import useEffectEvent from the use-effect-event ponyfill instead of react
>@assistant-ui/react-pi@0.0.8map Pi settled and appended session events without snapshot refreshes9 changes
Features2
Fixes6
migrate the react-pi node host to the pi 0.80.8+ ModelRuntime API and raise the pi-coding-agent peer floor to >=0.80.8, so the ./node entry links again on pi 0.80.8+ (which removed AuthStorage and replaced ModelRegistry.create)
widen the pi-coding-agent peer to >=0.78.0 <0.80.8, covering 0.79.x and 0.80.x up to the release that removed the AuthStorage API the node host still uses
>@assistant-ui/react-streamdown@0.3.7keep inline math that opens with a digit out of currency escaping2 changes
>@assistant-ui/store@0.2.21ResourceElement<Result> drops its args type parameter — elements are opaque descriptors; Resource<Result, Args> keeps the callable typing and ContravariantResource is removed2 changes
>@assistant-ui/tap@0.9.5configurableResource — curries an options-first hook into (options) => Resource<V, A>, replacing .bind(null, options) boilerplate6 changes
>@assistant-ui/x-generative-compiler@0.0.10give namespace-import toolkit spreads a specific compile error pointing at the default-import form1 change
Fixes1
give namespace-import toolkit spreads a specific compile error pointing at the default-import form
>assistant-cloud@0.1.36add cloud.projects.threads.list and cloud.projects.threads.messages.list for project-wide thread and message export6 changes
Features1
add cloud.projects.threads.list and cloud.projects.threads.messages.list for project-wide thread and message export
Fixes5
>assistant-stream@0.3.27add GorpStreamDeltaTracker, migrating gorp's delta-tracking (change frames, isChangedAt, getChangedKeys) into GorpStream16 changes
Features2
Fixes13
dedupe accumulator drop warnings per instance and drop class
prioritize backend tool results over stale argument parse errors
validate assistant-transport chunk shape at the decode boundary and bounds-check accumulator part paths
validate per-type required fields at the assistant-transport decode boundary and drop malformed chunks in the accumulator instead of aborting the response; an unsupported part-start now inserts an empty reasoning placeholder to keep later part indices aligned
drop malformed UIMessageStream frames at the decode boundary and fix tool-result closing the active args stream
only record firstTokenTime when a text-delta actually mutates a part
Refactors1
consolidate on a single wire protocol name (assistant-transport). Remove the unpublished gorp-shaped exports, expose diff tracking as AssistantTransportDeltaTracker and the state operation type as AssistantTransportStateOperation, and keep the published ObjectStream aliases working as deprecated delegates.
>assistant-ui@0.0.107include the running CLI version in info output7 changes
Fixes6
align undefined-style registry defaults with the base default and correct the shipped skill's registry commands
sanitize tsconfig for every create scaffold and surface registry install failures
>safe-content-frame@0.0.24clean up frame resources after disposal and load failures2 changes
>10 maintenance releasesdependency updates and chores
>@assistant-ui/metro@0.0.6update dependencies1 change
>@assistant-ui/next@0.0.12@assistant-ui/x-generative-compiler@0.0.101 change
Other1
@assistant-ui/x-generative-compiler@0.0.10
>@assistant-ui/react-devtools@1.2.10update dependencies1 change
>@assistant-ui/react-ink-markdown@0.0.32update dependencies1 change
>@assistant-ui/react-o11y@0.0.27update dependencies1 change
>@assistant-ui/react-syntax-highlighter@0.14.3update dependencies1 change
>@assistant-ui/vite@0.0.10update dependencies1 change
>@assistant-ui/x-buildutils@0.0.19update dependencies1 change
>create-assistant-ui@0.0.70assistant-ui@0.0.1071 change
Other1
assistant-ui@0.0.107
>heat-graph@0.0.14update dependencies1 change
Jul 16, 2026
40 releases
>@assistant-ui/cloud-ai-sdk@0.1.25widen AI SDK peer range to allow v7 alongside v6 (ai@^6 || ^7, @ai-sdk/react@^3 || ^4)6 changes
Features1
widen AI SDK peer range to allow v7 alongside v6 (ai@^6 || ^7, @ai-sdk/react@^3 || ^4)
Fixes1
Chores4
>@assistant-ui/core@0.2.21surface the upload failure reason on failed attachment status28 changes
Features9
surface the upload failure reason on failed attachment status
AssistantError taxonomy with severity and display metadata propagated through run error status. behavior note: local runtime run failures now store a structured AssistantError object in message status.error instead of a plain string; useMessageError keeps returning a human-readable string for both shapes, and code reading status.error directly should use isAssistantError or toAssistantError
Fixes14
core
log the swallowed CloudFileAttachmentAdapter upload error instead of discarding it
core
CloudFileAttachmentAdapter now fails uploads that return an HTTP error status instead of attaching a dead link
restore composer text and attachments when an attachment upload fails during send
re-convert cached messages when the converter callback or metadata changes, and re-parent children of skipped optimistic messages in repository export
stop isJSONArray from consuming the array index as recursion depth
resume the local runtime when a human tool returns a falsy result
make the default attachment adapter work without FileReader (Node, react-ink, SSR) by sharing a single getFileDataURL from @assistant-ui/core/internal, whose base64 fallback chunks large inputs and works on runtimes without Buffer
Refactors2
Chores3
>@assistant-ui/eve@0.0.4require eve 0.24.34 changes
>@assistant-ui/mcp-docs-server@0.1.39return structuredContent from the docs, examples, and search tools7 changes
Features3
return structuredContent from the docs, examples, and search tools
surface doc title and excerpt on assistantUIDocs responses
Performance1
cache the docs and examples file listings
Chores3
>@assistant-ui/react@0.14.27render prop support for AssistantModalPrimitive Trigger, Anchor, and Content15 changes
>@assistant-ui/react-a2a@0.2.22parse CRLF-delimited SSE frames in the A2A client5 changes
Fixes2
>@assistant-ui/react-ag-ui@0.0.45useAgUiState and useAgUiSetState hooks exposing shared agent state with optimistic updates that ride the next run9 changes
Features5
auto-cancel pending client-side tool calls on send, edit, and reload (opt out with autoCancelPendingToolCalls: false)
steer-away cancels pending client-side tool calls
>@assistant-ui/react-ai-sdk@1.3.41forward onResumeToolCall to the external store adapter24 changes
Features11
upgrade to AI SDK v7 (ai@^7, @ai-sdk/react@^4, @ai-sdk/mcp@^2); pin the previous release to stay on v6
Fixes7
guard converters against missing parts and mediaType on non-spec payloads
make the default attachment adapter work without FileReader (Node, react-ink, SSR) by sharing a single getFileDataURL from @assistant-ui/core/internal, whose base64 fallback chunks large inputs and works on runtimes without Buffer
guard toolOutputConversion against missing mediaType on non-spec tool output
Refactors3
use addToolOutput instead of the deprecated addToolResult for tool results
host the streaming-stable tool-args stringifier in @assistant-ui/core/internal
emit file tool output parts instead of deprecated image-data/file-data
Docs1
>@assistant-ui/react-data-stream@0.12.19detect data stream protocol from response headers7 changes
>@assistant-ui/react-devtools@1.2.9resolve the tailwind cli entry explicitly so pnpm install completes on windows3 changes
>@assistant-ui/react-generative-ui@0.0.8add Box, image round, and multi-series chart support11 changes
>@assistant-ui/react-google-adk@0.0.17clarify invalid ADK proxy request body errors8 changes
Fixes5
>@assistant-ui/react-ink@0.0.32track hunkIndex on parsed diff lines14 changes
Features8
track hunkIndex on parsed diff lines
render the upload failure message in AttachmentStatus
export attachment Props aliases from the composer and message barrels
export flat Props aliases from the messagePart and statusBar barrels
add standalone TextInput primitive
Fixes1
preserve the TextInput cursor when a controlled owner corrects an edit
Refactors1
move useTextBuffer beside TextInput
Chores4
>@assistant-ui/react-ink-markdown@0.0.31declare color, tableTruncate, and tableEllipsis on MarkdownTextProps4 changes
Features1
declare color, tableTruncate, and tableEllipsis on MarkdownTextProps
Performance1
memoize markdansi render in MarkdownText
>@assistant-ui/react-langchain@0.0.19emit url source blocks for http(s) file attachment data instead of mislabeling it base644 changes
>@assistant-ui/react-langgraph@0.14.12useLangGraphState and useLangGraphSetState hooks exposing graph values as shared agent state with optimistic updates that ride the next run input9 changes
Features1
Fixes5
forward
threadId and initialThreadId from useLangGraphRuntime to the underlying thread list runtime, so URL-based thread routing (threadId in, onThreadIdChange out) works with LangGraph the same way it does with the base runtimeserialize runs in useLangGraphRuntime so a frontend tool result resume never overlaps the run that emitted the tool call. isRunning stays true across the seam, cancel stops the whole turn and drops the queued resume, and a run that aborts or errors drops the sends queued behind it.
drop a frontend tool result for a call that was already answered instead of releasing it as a resume run. A slow frontend tool resolving after a new turn auto-cancelled its dangling call no longer sends a second tool message to the graph.
preserve attachments on the user message state in useLangGraphRuntime
Refactors1
host the streaming-stable tool-args stringifier in @assistant-ui/core/internal
>@assistant-ui/react-lexical@0.2.5support lexical 0.475 changes
>@assistant-ui/react-mcp@0.0.18expose MCP resource listing on connected servers7 changes
>@assistant-ui/react-native@0.1.30support prefixed MCP toolkit tool names8 changes
>@assistant-ui/react-opencode@0.2.11propagate OpenCode SDK response errors through runtime operations5 changes
>@assistant-ui/react-pi@0.0.7parse all standard SSE line endings5 changes
>@assistant-ui/tap@0.9.4preserve React-hosted tap resource roots and keyed fiber registries for the component lifetime4 changes
Fixes2
preserve React-hosted tap resource roots and keyed fiber registries for the component lifetime
keep tap root scheduler, fiber, queue, and subscribers in React state for the full component lifetime
>@assistant-ui/x-generative-compiler@0.0.9recognize exported same-file toolkit fragments in toolkit spreads4 changes
>assistant-cloud@0.1.35expose CloudAPIError with the HTTP status on failed requests6 changes
>assistant-stream@0.3.26export a spec-complete SSE event decoder from assistant-stream/utils12 changes
Features3
Fixes4
accept the AI SDK v5+
delta text chunks, source-url, flat file, and bare lifecycle chunks in UIMessageStreamDecoderRefactors2
Chores3
>assistant-ui@0.0.106install the base ui quick start from init when the initialized project uses a base style14 changes
Fixes11
cli
doctor now detects duplicate assistant-ui packages in pnpm node_modules layouts
Other1
cli: register the
with-resumable-stream example so npx assistant-ui create -e with-resumable-stream resolves instead of failing with "Unknown example".>14 maintenance releasesdependency updates and chores
>@assistant-ui/agent-launcher@0.1.9update dependencies2 changes
>@assistant-ui/gorp@0.0.5update dependencies1 change
>@assistant-ui/metro@0.0.5update dependencies5 changes
>@assistant-ui/next@0.0.11update dependencies2 changes
>@assistant-ui/react-hook-form@0.12.23update dependencies1 change
>@assistant-ui/react-markdown@0.14.6update dependencies3 changes
>@assistant-ui/react-o11y@0.0.26update dependencies2 changes
>@assistant-ui/react-streamdown@0.3.6update dependencies2 changes
>@assistant-ui/vite@0.0.9update dependencies2 changes
>@assistant-ui/x-buildutils@0.0.18update dependencies5 changes
>create-assistant-ui@0.0.69assistant-ui@0.0.1061 change
Other1
assistant-ui@0.0.106
>heat-graph@0.0.13update dependencies2 changes
>safe-content-frame@0.0.23update dependencies2 changes
Jul 4, 2026
23 releases
>@assistant-ui/core@0.2.20skip malformed generative UI component nodes1 change
>@assistant-ui/mcp-docs-server@0.1.38add assistantUISearch tool for keyword search over the docs2 changes
Features2
add assistantUISearch tool for keyword search over the docs
add argument completions for the docs and examples resources
>@assistant-ui/react-ag-ui@0.0.44restore interrupt status in fromAgUiMessages from persisted metadata1 change
Features1
react-ag-ui
restore interrupt status in fromAgUiMessages from persisted metadata
>@assistant-ui/react-ai-sdk@1.3.40support server-side MCP connection timeouts2 changes
>@assistant-ui/react-generative-ui@0.0.7name duplicate prop owners in generative UI schema warnings5 changes
Fixes4
Other1
add
ActionRegistry and wire $action dispatch end to end. createActionRegistry(handlers) maps $action.type to a handler; omit actions for a read-only render where $dispatch stays un-injected and interactive clicks are silent. the vocabulary's Button/Select/Input/DatePicker attach real event handlers that fire $dispatch($action), merging the user's runtime value into the payload under the reserved $input key so a model-supplied value is never clobbered; an unknown action type degrades to a no-op with a dev warning rather than throwing. HITL resume-value typing is left as unknown (IR doc open question #2); the resume value reaching the runtime is a follow-up.>@assistant-ui/react-ink@0.0.31re-export documented context providers from platform barrels1 change
>@assistant-ui/react-mcp@0.0.17support MCP connection timeouts2 changes
>@assistant-ui/react-native@0.1.29re-export documented context providers from platform barrels1 change
>@assistant-ui/x-buildutils@0.0.17preserve package imports as external build specifiers1 change
>@assistant-ui/x-generative-compiler@0.0.8support exported module-scope JSONGenerativeUI instances3 changes
>assistant-stream@0.3.25support server-side MCP connection timeouts1 change
>assistant-ui@0.0.105skip shadcn registry install when --skip-install is passed1 change
>11 maintenance releasesdependency updates and chores
>@assistant-ui/cloud-ai-sdk@0.1.24update dependencies1 change
>@assistant-ui/eve@0.0.3update dependencies1 change
>@assistant-ui/next@0.0.10@assistant-ui/x-generative-compiler@0.0.81 change
Other1
@assistant-ui/x-generative-compiler@0.0.8
>@assistant-ui/react@0.14.26Thread list accessibility improvements, focused on keyboard and focus handling:1 change
Other1
Thread list accessibility improvements, focused on keyboard and focus handling:
>@assistant-ui/react-ink-markdown@0.0.30@assistant-ui/react-ink@0.0.311 change
Other1
@assistant-ui/react-ink@0.0.31
>@assistant-ui/react-langchain@0.0.18update dependencies1 change
>@assistant-ui/react-langgraph@0.14.11update dependencies1 change
>@assistant-ui/react-pi@0.0.6update dependencies1 change
>@assistant-ui/vite@0.0.8@assistant-ui/x-generative-compiler@0.0.81 change
Other1
@assistant-ui/x-generative-compiler@0.0.8
>create-assistant-ui@0.0.68assistant-ui@0.0.1051 change
Other1
assistant-ui@0.0.105
>safe-content-frame@0.0.22update dependencies1 change
Jun 25, 2026
1 release
>@assistant-ui/eve@0.0.2honor startRun false across staged-message-capable runtimes3 changes
Fixes1
Jun 17, 2026
13 releases
>@assistant-ui/core@0.2.18apply external state from ThreadHistoryAdapter.load2 changes
>@assistant-ui/react-ag-ui@0.0.42apply external state from ThreadHistoryAdapter.load1 change
>@assistant-ui/react-devtools@1.2.7stop reporting shared (non-cyclic) references as [Circular] when serializing model context3 changes
Fixes1
Other2
render devtools inline instead of in a hosted iframe. the devtools UI now ships inside the package and renders in an isolated shadow root, so it no longer loads the deployed
devtools-frame web app. DevToolsModal is unchanged at the call site and gains an extensible tab registry via the plugins prop (createDevToolsPlugin, DevToolsPanel).redesign the devtools panel and add new inspection capabilities. visually the panel becomes a borderless, flatter floating window (lighter dim backdrop, smaller spring-animated launcher) with a single consolidated top nav bar (underline-pill tabs, multi-instance select, a live status pill, close), a refreshed ChatGPT-style light/dark token theme (bumped --radius, retuned surfaces/borders, new --shadow-window and --shadow-launcher elevation tokens, prefers-reduced-motion handling), and an interactive collapsible JSONTree with copy-to-clipboard replacing the old static JSON dumps throughout.
>@assistant-ui/react-langchain@0.0.15forward runConfig to the graph as config.configurable5 changes
Features5
react-langchain
forward runConfig to the graph as config.configurable
react-langchain
convert file content parts in messages
react-langchain
surface thread-loading state via isLoading
react-langchain
surface root tool calls via useLangChainToolCalls
react-langchain
surface useStream error via useLangChainError
>@assistant-ui/react-langgraph@0.14.9collapse file content conversion to the single flat block langgraph emits, dropping the nested and top-level base64 shapes that no upstream produces1 change
Refactors1
>assistant-ui@0.0.102authenticate CLI GitHub downloads with configured tokens1 change
Fixes1
authenticate CLI GitHub downloads with configured tokens
>pypi/assistant-stream@0.0.34enrich attachmentAddError event with typed payload by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3917435 changes
What's Changed
Features135
composer
enrich attachmentAddError event with typed payload by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3917
react
add MessagePrimitive.PartGroups for hierarchical adjacent grouping by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3853
docs/traction
activity heatmap, unified github/npm fetching by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3921
docs
promote guides to top-level section + content refresh by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3922
docs
rewrite @assistant-ui/react imports per platform selector by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3938
docs
platform URL params, changelog UX, traction forecast by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3946
migrate to new
GroupedParts API by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3955thread-list
cursor-based loadMore pagination by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3953
react-ag-ui
surface AG-UI interrupt-aware run lifecycle by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3974
react-ag-ui
tighten interrupt lifecycle by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3977
assistant-stream
add resumable stream primitives by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3979
core
composer canSend state and isSendDisabled adapter input by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3984
core,react-ai-sdk
support source-document parts by @sicko7947 in https://github.com/assistant-ui/assistant-ui/pull/3634
react-ai-sdk
expose onResume on useAISDKRuntime by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4001
react-ai-sdk
expose suggestions on AI SDK runtime hooks by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4003
support multi-modal tool results via toModelOutput by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4008
react
native MCP Apps renderer by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4024
react
clamp MCP app auto-resize height to configurable max by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4031
react|ui
ungroup MCP-app tool calls in chain of thought by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4033
cloud
allow custom baseUrl with API key auth by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4041
core
expose modelName and toolNames in ModelContextState by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3636
react-ink
add intra line highlighting to DiffView by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3860
react-ink
add ComposerPrimitive.Quote parity by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3969
react-ink
harden pressable interactions by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3957
react-ink
harden AttachmentPrimitive with Status sub-component… by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3983
react-langchain
parity with react-langgraph (path to deprecation) by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4049
react-ink
add message part primitives by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3958
react-ink
add composer queue primitives by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3965
examples
add browser extension example with side panel chat by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3718
add message timing support for LangGraph, AG-UI, and OpenCode runtimes by @shashank-100 in https://github.com/assistant-ui/assistant-ui/pull/3925
cli
resolve template components from ui package by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4054
react-ink
add LoadingPrimitive by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3633
react-ink
add StatusBarPrimitive components by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3635
docs
expose example docs pages to docs assistant by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4083
react-mcp
new package for user-managed MCP servers by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4025
image generation guide, example, and Image component by @samdickson22 in https://github.com/assistant-ui/assistant-ui/pull/3867
core, react
add MessagePrimitive.GenerativeUI primitive by @samdickson22 in https://github.com/assistant-ui/assistant-ui/pull/3967
react-ink
add file storage adapter by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3651
react
add unstable_insertNewlineOnTouchEnter to composer input by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4093
core
add unarchive option to switchToThread by @adityamohta in https://github.com/assistant-ui/assistant-ui/pull/4099
add respondToApproval prop for AI SDK v6 tool approvals by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4107
examples
add opt-in generative UI adoption path by @samdickson22 in https://github.com/assistant-ui/assistant-ui/pull/4112
simplify GroupedParts API and add groupPartByType helper by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4120
core
build tool-invocations pipeline into useExternalStoreRuntime by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4118
forward per-tool providerOptions and stabilize tool order by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4133
align shared adapter options across runtime wrapper hooks by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4135
add useNotification hook for terminal and custom notifications by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3852
add indicator slot to MessagePrimitive.GroupedParts by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4160
add checklist primitives by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3681
core
tool
display hint + standalone-tool-call grouping by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4167add @assistant-ui/next + "use generative" toolkit support by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4172
move use-generative markers to core/react, extract the compiler, add @assistant-ui/vite by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4176
cli
prompt to add agent skills on create by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4180
docs
list deprecated/new packages and add ?refresh=true by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4187
@assistant-ui/react-generative-ui — JSON generative UI with use-generative split by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4199
docs
add Xulux AI Builder playground by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4019
core
add thread custom metadata updates by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4208
react-ag-ui
apply STATE_DELTA events by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4210
add MCP toolkit support by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4212
add provider tool support by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4213
add tool call renderText support by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4214
react-ag-ui
honor resume stream in AgUiThreadRuntimeCore by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4224
add toolkit tool override APIs by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4236
assistant-transport
honour Aui-Replay-Content-Length on resume by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4127
metro
@assistant-ui/metro for "use generative" on React Native by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4244
examples
showcase react-ink primitives in terminal agent demo by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4164
add externalTool for generative toolkits by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4249
react-ink
runtime defineToolkit for Ink by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4253
queue messages sent while a run is in progress by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4246
react-ag-ui
emit multimodal input parts for file attachments by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4232
rename hitlTool to humanTool by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4256
merge toolkits across "use generative" files by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4267
expose joinStrategy on useAISDKRuntime / useChatRuntime by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4271
ag-ui
export fromAgUiMessages from the package root by @serhiizghama in https://github.com/assistant-ui/assistant-ui/pull/4264
react-ag-ui
consume ACTIVITY_SNAPSHOT to support MCP Apps by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4278
ui
add ToolFallback.Approval slot for requires-action tools by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4229
ui
rewrite mermaid-diagram with beautiful-mermaid by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4279
devtools
inspect messages, tool calls, and MCP servers by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4288
devtools
surface full tool metadata and redact credentials by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4291
tap
React hook integration by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4282
devtools
add a run timeline tab by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4295
devtools
scope graph tab with per-scope method catalog by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4296
devtools
surface the composer message queue by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4297
devtools
surface composer attachment lifecycle by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4299
devtools
redesign the panel ui onto the product design system by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4301
react
add htmlArtifact generative UI tool by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4300
docs
replace mermaid diagrams with custom flow components by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4272
gorp
new state-sync package + tap-docs migration by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4090
add message delete runtime support by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4315
(tap): v0.7, resource(useHook), useTapRoot by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4318
react-ag-ui
restore multimodal user input as attachments in fromAgUiMessages by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4321
core
expose lastMessageAt on thread list items by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4328
ui
design refresh for the thread kit by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4330
ui
component override slots for the thread kit by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4336
support tool approvals on the local runtime by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4347
add opt-in defer prop to markdown text primitives by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4348
public, tunable useSmooth by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4350
unstable_useComposerInputHistory by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4352
ui
skip shiki tokenization while the message part streams by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4349
ui
streaming disclosure for reasoning by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4355
examples
with-virtualized-thread + virtualization guide by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4356
add smooth prop to StreamdownTextPrimitive by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4357
branch switching for the ExternalThread client by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4359
tap
useTapHost passive-commit React host by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4366
add NumberRoll rolling number component by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4370
add DotMatrix status indicator component by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4373
registry
redesign ModelSelector component by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4367
docs
live ink demo on /ink powered by with-react-ink-web by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4375
approval options vocabulary on tool approvals by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4378
per-tool-call timing and stall detection by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4379
precompile packages with React Compiler by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4385
pi
add pi integration, react-pi + with-pi example by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4368
react-ag-ui
type the agent as AbstractAgent instead of HttpAgent by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4381
react-ag-ui
forward the full ExternalStoreThreadListAdapter through adapters.threadList by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4380
docs
live traction stats, rolling downloads, bot contributors by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4386
tap
array-based useResources + per-child memoization via withKey deps by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4387
docs
traction bot co-authors, cross-section nav, ui polish by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4388
docs
redesign marketing homepage, header, and footer by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4397
docs
animate homepage demo expansion with View Transitions by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4400
docs
show homepage hiring banner only from second visit by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4401
docs
react-o11y showcase page and live demos by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4406
export math-delimiter preprocess helpers for the markdown text primitives by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4408
react
add unstable_useLiveCompletionAdapter for async trigger completions by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4411
export fromThreadMessageLike and generateId from the public API by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4414
react
add minCommitMs to SmoothOptions by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4419
react-ag-ui
apply external state from ThreadHistoryAdapter.load by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4420
devtools
render the inspector inline instead of a hosted iframe by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4433
devtools
redesign the panel and add thread inspection by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4443
docs
sync embedded form demo iframe with docs theme by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4442
react-langchain
surface thread-loading state via isLoading by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4432
react-langchain
convert file content parts in messages by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4438
react-langchain
forward runConfig to the graph as config.configurable by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4435
react-langchain
surface useStream error via useLangChainError by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4431
react-langchain
surface root tool calls via useLangChainToolCalls by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4436
python/langgraph
send granular delta chunks over the network by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4449
Fixes106
core
add typesVersions for moduleResolution: node compatibility by @shashank-100 in https://github.com/assistant-ui/assistant-ui/pull/3914
core
drop "./*" wildcard export by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3916
react
recover ComposerPrimitive.Input from stuck IME composition state by @nitnizzie in https://github.com/assistant-ui/assistant-ui/pull/3924
react
top scroll anchoring by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3908
store
RenderChildrenWithAccessor missed re-renders after access by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3937
react-ai-sdk
respect startRun:false on append/edit by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3942
ui
make TooltipIconButton self-contained with TooltipProvider by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3944
core
restore adapter context flow through RemoteThreadListAdapter.unstable_Provider by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3948
cloud-ai-sdk
drive telemetry status from ai sdk onFinish event by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3949
docs
clarify makeAssistantTool/UI coexist with Tools api by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3950
top anchor scroll stuttering by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3954
core
ExternalStoreThreadList crashes when mainThreadId has no matching threads entry by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3972
react-ink
followups to #3966 (memo deps, clamp, tests, bench runner) by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3991
core
guard against undefined attachments in MessagePrimitive.Attachments by @cewinharhar in https://github.com/assistant-ui/assistant-ui/pull/3674
python
auto-convert nested StateProxy += to append-text deltas by @GuyPaikowsky in https://github.com/assistant-ui/assistant-ui/pull/3409
react-ai-sdk
preserve tool args when AI SDK briefly emits null input by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4004
react-ag-ui
adopt server messageId as assistant message id by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4017
composer
accept highlighted trigger popover item on Tab by @serhiizghama in https://github.com/assistant-ui/assistant-ui/pull/4020
composer
wire WAI-ARIA combobox attributes into trigger popover by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4022
docs
resolve MDX content for LLM outputs by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4013
react-ai-sdk
resolve MCP app metadata from output _meta by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4030
core
drop phantom siblings when external store swaps message id by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4040
ui
make sources favicon provider configurable, default to DuckDuckGo by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4039
react|safe-content-frame
handle MCP-UI 2026-01-26 method names + guard onload by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4046
cli
improve scaffold validation and respect package managers by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4044
tsconfig
TS 6.0 deprecation prep + latent dep fixes by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4050
guard clipboard availability before calling writeText by @JustAnOkapi in https://github.com/assistant-ui/assistant-ui/pull/3513
core
fire streamCall for already-resolved tool calls observed live by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4057
react
thread initialization timing race by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4063
react-opencode
recover event stream after StrictMode cleanup by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4068
react-ag-ui
preserve arrival order of parts in RunAggregator by @tlecomte in https://github.com/assistant-ui/assistant-ui/pull/4066
store
key Derived scopes by meta so consumers see new client in the same render pass by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4069
react
resync useSmooth displayedText on part change by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4073
core
key part fibers by absolute part index in MessageParts/GroupedParts by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4077
docs
normalize docs assistant folder paths by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4076
core
replay latched initialize event to late subscribers by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4072
react-native
support children render-prop on ThreadPrimitive.Messages by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4095
registry
Avoid direct core dependency for directive text by @Gujiassh in https://github.com/assistant-ui/assistant-ui/pull/4117
assistant-stream
preserve parentId on streamed text and reasoning parts by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4116
thread
scroll jitter and footer not appearing by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4132
react
release auto-stick intent on user scroll-up; fix retina at-bottom detection by @vaniyokk in https://github.com/assistant-ui/assistant-ui/pull/4141
core
branch picker not appearing by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4137
docs
render markdown and tool fallback in ChatGPT example theme by @joealves517 in https://github.com/assistant-ui/assistant-ui/pull/4139
docs
Expose examples in llms output by @Gujiassh in https://github.com/assistant-ui/assistant-ui/pull/4150
react-a2a
send 'parts' on wire per A2A v1.0 spec by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4158
don't abort ai-sdk history load on a malformed stored row by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4169
react-ink
show error icon for completed tool calls that errored by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4165
drop phantom siblings on optimistic message id swap (#4037) by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4162
resolve workspace type-check errors by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4178
assistant-stream
resolve argsReader.get to undefined once args close by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4163
next
bust use-generative loader cache when the compiler changes by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4200
docs
host legal pages on site by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4202
react-ai-sdk
convert data message parts in toCreateMessage by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4192
react-ai-sdk
strip stale approval when cancelling tool pending approval by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4196
react-ai-sdk
convert generative tool
toModelOutput to AI SDK content shape by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4216docs
correct star and downloads chart projections by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4218
externalize node builtins in package builds by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4222
omit backend-default generative tool schemas by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4226
type defineToolkit streamCall args by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4234
react-ag-ui
preserve frontend tool results and auto-continue across RUN_FINISHED by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4241
react-ink
block Enter submission while running unless runtime supports queueing by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4243
with-expo
build @assistant-ui/metro for the Vercel deploy by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4248
react-langgraph
batch parallel tool results into a single resume by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4250
omit external tools from server builds by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4254
check generative compiler compatibility by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4255
react-ag-ui
import reasoning messages from MESSAGES_SNAPSHOT by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4233
handle LangGraph reasoning without summary by @puneetdixit200 in https://github.com/assistant-ui/assistant-ui/pull/4259
use defineToolkit in toolkit docs by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4260
bake generative compiler version at build time so the compat check works when bundled into metro by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4265
mcp-apps
send 2026-01-26 dialect on host→app bridge messages by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4280
x-buildutils
type-check tsdown config under exactOptionalPropertyTypes by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4274
core
make Simple attachment adapters work without FileReader by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4245
react-ai-sdk
make the package metro-bundleable in react native / expo by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4285
docs
remove polynomial redos in xulux sandbox name sanitizer by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4289
react-ai-sdk
bundle the root entry on edge, workers, browsers by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4304
support React 18 in tap shim by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4313
react-ai-sdk
externalize assistant-stream as a regular dependency by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4320
react-ag-ui
mark the assistant placeholder optimistic so the id swap doesn't leave a phantom branch by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4317
next
avoid collisions between multiple toolkits in dev by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4327
collapsible and streaming interaction jank by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4329
ci
template sync override + redundant-copy guard for examples by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4332
react-opencode
keep the event subscription stable across renders by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4334
react-opencode
re-sync state after the event stream reconnects by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4338
exclude reasoning parts from copied message text by @serhiizghama in https://github.com/assistant-ui/assistant-ui/pull/4340
example
disable Nitro wasm condition to fix with-tanstack SSR build by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4343
generative-ui
hold back nodes whose
$type is still streaming instead of reporting them as unknown componentstap
swap useEffect with useLayoutEffect by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4345
stable identity for grouped message parts across reorders by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4351
ui
render mermaid diagrams without an AuiProvider by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4354
react-ag-ui
attach TOOL_CALL_RESULT for a prior run's tool call to its owning message by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4362
with-expo
stop React Compiler from compiling workspace dist by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4374
with-react-ink-web
pin turbopack workspace root for vercel build by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4376
with-react-ink-web
deploy as static export to bypass vercel's next builder by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4377
react-ag-ui
don't finalize a failed run as successful by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4382
docs
show demo dropdowns in fullscreen mode by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4402
prevent compiled context store hook memoization by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4403
keep tap React imports compatible with React 18 by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4405
docs
redirect .md doc and example URLs to .mdx by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4407
ui
only truncate sidebar thread titles on hover by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4424
docs
center collapsed sidebar rail in the base demo by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4423
ui
show thread list item menu button instantly on hover by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4425
devtools
preserve shared references when sanitizing model context by @JSap0914 in https://github.com/assistant-ui/assistant-ui/pull/4430
thread, attachment
minor styling fixes for chat kit components by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4439
examples
activate dark mode in react-hook-form demo by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4441
keep registry markdown highlighting opt-in by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4444
authenticate CLI GitHub downloads by @ProfTrader in https://github.com/assistant-ui/assistant-ui/pull/4446
Performance7
cut per-message overhead in long threads by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3952
react-ink
virtualize message list + diff-aware reconciler by @samdickson22 in https://github.com/assistant-ui/assistant-ui/pull/3966
core
memoize RuntimeAdapterProvider context value by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4161
cli
merge create's two shadcn add calls into one by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4228
tap
optimize memo hook hot paths by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4389
core
sync external-store messageRepository incrementally by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4415
react-streamdown
tail-bounded incomplete-markdown repair by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4418
Refactors7
centralize thread-level shared options helper by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4136
docs
group app routes into route groups by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4189
react
extract a shared sandbox host and reuse it for mcp apps by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4298
tap
drop the tap-root pending-update queue by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4323
migrate in-repo usages off deprecated tool ui apis by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4337
tap
correctness and performance improvements by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4364
react-langgraph
collapse file content block to single shape by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4445
Reverts2
drop phantom siblings on external-store id swap (#4040) by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4148
htmlArtifact generative UI tool (#4300) by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4303
Docs68
tool-ui
document deferred rendering pattern by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3928
api type table improvements by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3930
fix, feat
improve platform switcher fix, add runtime, integration, and cloud docs for rn/ink by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3932
improve api reference by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3963
update react-shiki, remove declaration by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3978
rewrite titles and descriptions for organic discovery by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3985
rewrite runtime, cloud, and platform overview titles by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3987
rewrite remaining guide and example titles for organic discovery by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3988
rewrite titles and descriptions across guides and examples by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3986
rewrite API reference titles and descriptions by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3989
trim redundant "AI Chat" prefix from hub page titles by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3992
refresh perplexity example by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3890
polish all five clone examples to match their real products by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3993
document runtime driven suggestions by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3999
standardize package READMEs to a tier convention by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4007
new section for migration docs by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3996
improve api-reference coverage by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3995
use semantic html for parameters-table component by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4014
add robots config by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4012
support jsdoc link tags in api-reference auto generation by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4015
claude
add tap/store conventions skill by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4026
claude
expand tap skill — store coverage + useAui resolution rule by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4028
streamdown
document tailwind @source and CSS setup by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4038
add Cloudflare Agents integration guide by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4042
refresh integration icons, add react-langgraph regression test by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4045
expand public API JSDoc and message part deprecations by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4023
api-reference
improve clarity of tool APIs by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4058
api-reference
automatically render jsdoc examples as markdown code blocks by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4059
fix link for a2a protcol by @LGmatrix13 in https://github.com/assistant-ui/assistant-ui/pull/4060
examples
redesign the Gemini clone to match Gemini's latest UI by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4061
mcp-apps
document OpenAI Apps SDK servers and model-agnostic UI by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4084
add descriptions to docs assistant listDocs by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4087
assistant-stream, runtimes
fix protocol mismatch in data-stream quickstarts by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4096
cross-link runtime architecture, adapters, threads by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4111
reformat api-reference meta.json pages arrays by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4119
api-reference
update generator classification, links, and formatting by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4155
api-reference
standalone-tool-call grouping + display hint by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4171
add code comment guidelines to AGENTS.md by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4174
mark a docs-toolkit tool as standalone; refresh livekit uv.lock by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4179
display weather widget standalone by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4184
add trusted-publishing skill for new npm packages by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4186
gate AI playground behind feature flag by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4209
llms
add text variants to mdx components by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4217
support Celsius weather widget display by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4220
add GitButler agent guidance by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4221
update generated API reference by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4225
migrate tool docs to toolkit API by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4235
update Weather component schema by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4238
consolidate tool docs into a dedicated Tools section by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4242
add dark mode variant of readme header by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4251
cross-file toolkit merge, MCP-only export, tool stubs and disabling by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4268
tools
use AISDKToolkit in the defining-tools server step by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4269
api-reference
update classification logic by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4252
rename Docs section to Getting Started, split out Copilots by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4286
update keywords on the react package for better discoverability by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4307
add 2nd level breadcrumbs for mobile screens by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4308
base demo, /demos pages, and showcase actions by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4331
minor fixes by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4346
fix broken adapter links by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4353
fix type tables and re-generate api-reference by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4383
add machine-readable pricing by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4391
migrate langgraph example and template to react-langchain useStreamRuntime by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4396
surface react-o11y, document thread.export, add the live-completion hook to the api-reference by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4412
demo
make sidebar animation smoother by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4428
demo
smooth example-showcase fullscreen morph animation by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4429
fix runnable mem0 example snippets by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4440
examples
refine gemini landing visuals and animation by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4410
example
refresh chatgpt example to match current chatgpt UI by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4413
Tests2
tap
stabilize flaky StrictMode setTimeout rerender test by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4103
python
repair stale langgraph tests and async test collection by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4293
Build1
x-buildutils
migrate to tsdown with unbundle: true by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4097
CI9
traction
install sharp in isolated dir to avoid pnpm workspace conflict by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3934
Change version of '@assistant-ui/react' to minor by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3931
npm-publish
disable OIDC pre-flight verification by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4029
use opus 4.8 for reviews by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4239
python
add pytest workflow and align langgraph docs by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4294
cancel redundant workflow runs by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4316
npm-publish
fail fast on pending changesets and skip git hooks by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4361
claude-code-review
switch review model to claude-fable-5 by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4369
switch claude code review to opus 4.8 by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4384
Chores57
butflow
codify no-review-narration rule for comments by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3918
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/3915
docs
refresh model picker by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3939
templates
sync with packages/ui + guard drift in CI by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3945
update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3962
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/3927
drop APIs deprecated in v0.11/v0.12 by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3970
add missing .env.example files by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3980
fix accuracy of existing .env.example files by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3982
remove SEO-ANALYSIS.md by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4010
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/3973
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4021
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4032
enforce 1-day minimum package release age by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4047
react-langchain
bump @langchain/react peer to ^1.0.2 by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4048
update model names throughout monorepo by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4043
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4034
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4074
trim onlyBuiltDependencies to genuine native builds by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4081
update dependencies and migrate to pnpm 11 by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4085
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4080
examples
consolidate grouping + sources into chain-of-thought by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4115
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4114
update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4123
prototype migration from Biome to oxlint + oxfmt by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4100
add update-deps skill by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4124
drop tracker-behaviour explainer comments in satellites by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4125
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4122
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4126
update dependencies across packages by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4128
drop stale biome-ignore pragmas after migrating to oxlint by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4151
drop mcp-app-studio by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4170
update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4175
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4129
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4177
skip Vercel builds for version branches by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4203
share butflow skill with Codex by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4204
update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4198
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4185
react-ai-sdk
deprecate generativeTools in favor of AISDKToolkit by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4266
deps
upgrade python packages, drop python 3.9 by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4290
update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4306
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4247
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4309
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4314
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4319
tap
bump to 0.7.0 and update dependent ranges by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4325
remove retired shadcn sync script and dead docs file by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4335
remove unused useEffect import by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4365
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4322
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4372
update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4390
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4394
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4404
update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4422
update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4409
core
mark generateId and fromThreadMessageLike as experimental by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4426
Other41
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/3935
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/3947
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4006
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4011
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4055
Fix suggestions in chain-of-thought example by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4079
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4106
Add duplicate detection and doctor command for diagnosing version mismatches by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4121
Add
fetchOptions passthrough for A2A client/runtime requests by @sdg9670f in https://github.com/assistant-ui/assistant-ui/pull/4138Revert "fix(core): branch picker not appearing" by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4147
Revert "docs: reformat api-reference meta.json pages arrays" by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4154
Improve docs chat examples discovery by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4145
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4197
fix lockfile peer resolution by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4207
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4281
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4284
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4305
Revert "refactor(tap): drop the tap-root pending-update queue" by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4324
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4341
tap: react parity improvements by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4360
fix unrelated type errors by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4393
fix tap context tracking across roots by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4392
Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4421
@shashank-100 made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/3914
@nitnizzie made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/3924
@cewinharhar made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/3674
@sicko7947 made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/3634
@GuyPaikowsky made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/3409
@serhiizghama made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4020
@LGmatrix13 made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4060
@tlecomte made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4066
@vivek100 made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4079
@adityamohta made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4099
@Gujiassh made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4117
@sdg9670f made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4138
@vaniyokk made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4141
@joealves517 made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4139
@dkachur1 made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4224
@puneetdixit200 made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4259
@JSap0914 made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4430
@ProfTrader made their first contribution in https://github.com/assistant-ui/assistant-ui/pull/4446
>6 maintenance releasesdependency updates and chores
>@assistant-ui/react@0.14.23mark generateId and fromThreadMessageLike as experimental1 change
>@assistant-ui/react-ink@0.0.29mark generateId and fromThreadMessageLike as experimental1 change
>@assistant-ui/react-ink-markdown@0.0.28@assistant-ui/core@0.2.181 change
Other1
@assistant-ui/core@0.2.18
>@assistant-ui/react-mcp@0.0.15@assistant-ui/core@0.2.181 change
Other1
@assistant-ui/core@0.2.18
>@assistant-ui/react-native@0.1.27mark generateId and fromThreadMessageLike as experimental1 change
>create-assistant-ui@0.0.65assistant-ui@0.0.1021 change
Other1
assistant-ui@0.0.102
Jun 15, 2026
20 releases
>@assistant-ui/core@0.2.17export fromThreadMessageLike and generateId from the public API2 changes
>@assistant-ui/react@0.14.22export fromThreadMessageLike and generateId from the public API3 changes
>@assistant-ui/react@0.14.21prevent compiled context store hooks from skipping subscriptions1 change
>@assistant-ui/react-ink@0.0.28export fromThreadMessageLike and generateId from the public API2 changes
>@assistant-ui/react-markdown@0.14.4export math-delimiter preprocess helpers for the markdown text primitives1 change
Features1
>@assistant-ui/react-native@0.1.26export fromThreadMessageLike and generateId from the public API1 change
>@assistant-ui/react-streamdown@0.3.4export math-delimiter preprocess helpers for the markdown text primitives2 changes
>@assistant-ui/tap@0.9.2keep tap React hooks compatible with React 18 builds1 change
>@assistant-ui/x-buildutils@0.0.15keep tap React hooks compatible with React 18 builds1 change
>11 maintenance releasesdependency updates and chores
>@assistant-ui/cloud-ai-sdk@0.1.22update dependencies1 change
>@assistant-ui/react-a2a@0.2.20import generateId and fromThreadMessageLike from the public @assistant-ui/core entry instead of /internal1 change
Chores1
>@assistant-ui/react-ag-ui@0.0.41import generateId and fromThreadMessageLike from the public @assistant-ui/core entry instead of /internal1 change
Chores1
>@assistant-ui/react-ai-sdk@1.3.37update dependencies1 change
>@assistant-ui/react-hook-form@0.12.21update dependencies1 change
>@assistant-ui/react-ink-markdown@0.0.27update dependencies1 change
>@assistant-ui/react-mcp@0.0.14@assistant-ui/core@0.2.171 change
Other1
@assistant-ui/core@0.2.17
>@assistant-ui/react-mcp@0.0.13@assistant-ui/tap@0.9.21 change
Other1
@assistant-ui/tap@0.9.2
>@assistant-ui/react-o11y@0.0.24@assistant-ui/tap@0.9.21 change
Other1
@assistant-ui/tap@0.9.2
>@assistant-ui/react-opencode@0.2.9update dependencies1 change
>@assistant-ui/react-pi@0.0.4update dependencies1 change
Jun 14, 2026
31 releases
>@assistant-ui/core@0.2.16resolve typecheck regressions2 changes
>@assistant-ui/react@0.14.20resolve typecheck regressions3 changes
>@assistant-ui/react-generative-ui@0.0.5resolve typecheck regressions1 change
>@assistant-ui/store@0.2.18preserve tap context across nested tap root rerenders and mark tap context as supported2 changes
>@assistant-ui/tap@0.9.1preserve tap context across nested tap root rerenders and mark tap context as supported2 changes
>@assistant-ui/vite@0.0.5resolve typecheck regressions2 changes
>assistant-stream@0.3.23resolve typecheck regressions1 change
>24 maintenance releasesdependency updates and chores
>@assistant-ui/agent-launcher@0.1.7update dependencies1 change
>@assistant-ui/cloud-ai-sdk@0.1.21update dependencies1 change
>@assistant-ui/gorp@0.0.3update dependencies1 change
>@assistant-ui/mcp-docs-server@0.1.35update dependencies1 change
>@assistant-ui/metro@0.0.3update dependencies1 change
>@assistant-ui/next@0.0.7update dependencies1 change
>@assistant-ui/react-ag-ui@0.0.40update dependencies1 change
>@assistant-ui/react-ai-sdk@1.3.36update dependencies1 change
>@assistant-ui/react-devtools@1.2.6update dependencies2 changes
>@assistant-ui/react-hook-form@0.12.20update dependencies1 change
>@assistant-ui/react-ink@0.0.27update dependencies2 changes
>@assistant-ui/react-ink-markdown@0.0.26update dependencies1 change
>@assistant-ui/react-langchain@0.0.14update dependencies1 change
>@assistant-ui/react-langgraph@0.14.8update dependencies1 change
>@assistant-ui/react-mcp@0.0.12assistant-stream@0.3.231 change
Other1
assistant-stream@0.3.23
>@assistant-ui/react-native@0.1.25update dependencies2 changes
>@assistant-ui/react-o11y@0.0.23@assistant-ui/tap@0.9.11 change
Other1
@assistant-ui/tap@0.9.1
>@assistant-ui/react-opencode@0.2.8update dependencies1 change
>@assistant-ui/react-pi@0.0.3update dependencies1 change
>@assistant-ui/x-buildutils@0.0.14update dependencies1 change
>@assistant-ui/x-generative-compiler@0.0.5update dependencies1 change
>assistant-cloud@0.1.33update dependencies1 change
>assistant-ui@0.0.101update dependencies1 change
>create-assistant-ui@0.0.64assistant-ui@0.0.1011 change
Other1
assistant-ui@0.0.101