Changelog

Release history

All releases published from the assistant-ui monorepo, grouped by date.

Jul 16, 2026

40 packages

@assistant-ui/agent-launcher@0.1.9patchGitHub →

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/cloud-ai-sdk@0.1.25patchGitHub →

Features

1
featwiden AI SDK peer range to allow v7 alongside v6 (ai@^6 || ^7, @ai-sdk/react@^3 || ^4)

Fixes

1
fixpreserve mounted state and ignore superseded thread refreshes when Strict Mode replays effects

Chores

4
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
@assistant-ui/core@0.2.21patchGitHub →

Features

9
featsurface the upload failure reason on failed attachment status
featAssistantError 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
featcreateSuggestionAdapter factory and AbortSignal forwarding for suggestion generation
featinfer tool argument types from Standard Schema parameters
featsupport prefixed MCP toolkit tool names
featsupport disabled MCP toolkit entries
featsupport disabled MCP toolkit tools
featplumb an optional serverId through MCP Apps metadata and host calls for multi-MCP routing
featpreserve providerMetadata on text, reasoning, and tool-call message parts

Fixes

14
fix· coreaccept application/json text attachments and parameterized MIME types
fix· corelog the swallowed CloudFileAttachmentAdapter upload error instead of discarding it
fix· coreCloudFileAttachmentAdapter now fails uploads that return an HTTP error status instead of attaching a dead link
fixpreserve user attachments in Cloud history
fixrestore composer text and attachments when an attachment upload fails during send
fixre-convert cached messages when the converter callback or metadata changes, and re-parent children of skipped optimistic messages in repository export
fixstop isJSONArray from consuming the array index as recursion depth
fixresume the local runtime when a human tool returns a falsy result
fixignore malformed local thread storage
fixmake 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
fixinclude thread ids in thread list runtime errors
fixkeep tool-args key-order caches independent for keys containing dots or brackets
fixgenerate unique IDs for built-in file attachments
fixcomplete unsupported title generation streams

Refactors

2
refactorhost the shared JSON type guards in @assistant-ui/core/internal
refactorhost the streaming-stable tool-args stringifier in @assistant-ui/core/internal

Chores

3
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
@assistant-ui/eve@0.0.4patchGitHub →

Features

1
featrequire eve 0.24.3

Chores

3
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
@assistant-ui/gorp@0.0.5patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/mcp-docs-server@0.1.39patchGitHub →

Features

3
featreturn structuredContent from the docs, examples, and search tools
featsurface doc title and excerpt on assistantUIDocs responses
featexpose playground template tools through the MCP docs server

Performance

1
perfcache the docs and examples file listings

Chores

3
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
@assistant-ui/metro@0.0.5patchGitHub →

Chores

5
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
choreupdate TypeScript to 7
choreupdate dependencies
@assistant-ui/next@0.0.11patchGitHub →

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react@0.14.27patchGitHub →

Features

9
featrender prop support for AssistantModalPrimitive Trigger, Anchor, and Content
featadd compact mode to ComposerPrimitive.Root
featsupport prefixed MCP toolkit tool names
featsupport disabled MCP toolkit entries
featsupport disabled MCP toolkit tools
featplumb an optional serverId through MCP Apps metadata and host calls for multi-MCP routing
featpreserve providerMetadata on text, reasoning, and tool-call message parts
featsupport data-aui-quote-selectable="false" exclusions
featsupport opt-in quote regions for the selection toolbar

Fixes

2
fixpreserve user attachments in Cloud history
fixadd MCP App host request error context

Refactors

1
refactorhost the shared JSON type guards in @assistant-ui/core/internal

Chores

3
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-a2a@0.2.22patchGitHub →

Fixes

2
fixparse CRLF-delimited SSE frames in the A2A client
fixvalidate A2A stream response content types before parsing

Refactors

1
refactorconsume the shared SSE event decoder

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-ag-ui@0.0.45patchGitHub →

Features

5
featuseAgUiState and useAgUiSetState hooks exposing shared agent state with optimistic updates that ride the next run
featauto-cancel pending client-side tool calls on send, edit, and reload (opt out with autoCancelPendingToolCalls: false)
featplumb an optional serverId through MCP Apps metadata and host calls for multi-MCP routing
featsteer-away cancels pending client-side tool calls
featsurface the mcp-apps ACTIVITY_SNAPSHOT CallToolResult on the tool part result while preserving the model-facing text for subsequent runs

Fixes

1
fixpreserve branchable history loaded by the AG-UI runtime

Refactors

1
refactorback AG-UI thread state with a MessageRepository source of truth

Chores

2
chorereformat with oxfmt 0.59
choreupdate dependencies
@assistant-ui/react-ai-sdk@1.3.41patchGitHub →

Features

11
featforward onResumeToolCall to the external store adapter
featadapters.suggestion generates follow-up suggestions after each run
featexpose chat runtime resume errors
featexport a FrontendTools type for typing uploaded frontend tool definitions.
featadd MCP toolkit entry names to close errors
featsupport prefixed MCP toolkit tool names
featsupport disabled MCP toolkit tools
featadd MCP toolkit entry names to connection and tool-listing errors
featplumb an optional serverId through MCP Apps metadata and host calls for multi-MCP routing
featpreserve providerMetadata on text, reasoning, and tool-call message parts
featupgrade to AI SDK v7 (ai@^7, @ai-sdk/react@^4, @ai-sdk/mcp@^2); pin the previous release to stay on v6

Fixes

7
fixpreserve direct file parts in AI SDK message creation
fixpreserve image media types when creating AI SDK messages
fixguard converters against missing parts and mediaType on non-spec payloads
fixguard resumable session storage access
fixmake 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
fixguard toolOutputConversion against missing mediaType on non-spec tool output
fixvalidate frontend tool schemas before conversion

Refactors

3
refactoruse addToolOutput instead of the deprecated addToolResult for tool results
refactorhost the streaming-stable tool-args stringifier in @assistant-ui/core/internal
refactoremit file tool output parts instead of deprecated image-data/file-data

Docs

1
docsmove the resumable streams cross-links into jsdoc so the api-reference generator preserves them

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-data-stream@0.12.19patchGitHub →

Features

3
featdetect data stream protocol from response headers
featdetect UI message stream protocol from response headers
featwiden @ai-sdk/provider range to allow the v7 line alongside v6 (^3 || ^4)

Fixes

2
fixpreserve base64 file data during AI SDK message conversion
fixinclude current assistant message in toLanguageModelMessages to properly send frontend tool results

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-devtools@1.2.9patchGitHub →

Fixes

1
fixresolve the tailwind cli entry explicitly so pnpm install completes on windows

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-generative-ui@0.0.8patchGitHub →

Features

8
featadd Box, image round, and multi-series chart support
featadd Form, Checkbox, RadioGroup, ListView vocabulary and real Chart/Carousel renders
featadd icon vocabulary component
featadd fromSlackBlocks to the ./slack subpath
featadd toSlackBlocks and decodeBlockAction under the ./slack subpath
featadd toAdaptiveCard, toTeamsAttachments, and decodeSubmitData under the ./teams subpath
featadd escape option to generativeUIToJSX for copy-pasteable output
featadd pretty option to generativeUIToJSX

Fixes

2
fixserialize a model-provided $key as the JSX key attribute
fixexpose stable generative UI keys in the present schema

Chores

1
choreupdate dependencies
@assistant-ui/react-google-adk@0.0.17patchGitHub →

Fixes

5
fixclarify invalid ADK proxy request body errors
fixparse standard SSE frames in Google ADK streams
fixnormalize direct ADK stream API URLs
fixnormalize trailing slashes in ADK session API URLs
fixcomplete unsupported title generation streams

Refactors

1
refactorconsume the shared SSE event decoder

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-hook-form@0.12.23patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-ink@0.0.32patchGitHub →

Features

8
feattrack hunkIndex on parsed diff lines
featrender the upload failure message in AttachmentStatus
featexport attachment Props aliases from the composer and message barrels
featexport flat Props aliases from the messagePart and statusBar barrels
featsupport prefixed MCP toolkit tool names
featsupport disabled MCP toolkit entries
featsupport disabled MCP toolkit tools
featadd standalone TextInput primitive

Fixes

1
fixpreserve the TextInput cursor when a controlled owner corrects an edit

Refactors

1
refactormove useTextBuffer beside TextInput

Chores

4
choredelete dead re-export shims and stale local RuntimeAdapterProvider
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-ink-markdown@0.0.31patchGitHub →

Features

1
featdeclare color, tableTruncate, and tableEllipsis on MarkdownTextProps

Performance

1
perfmemoize markdansi render in MarkdownText

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-langchain@0.0.19patchGitHub →

Fixes

1
fixemit url source blocks for http(s) file attachment data instead of mislabeling it base64

Chores

3
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-langgraph@0.14.12patchGitHub →

Features

1
featuseLangGraphState and useLangGraphSetState hooks exposing graph values as shared agent state with optimistic updates that ride the next run input

Fixes

5
fixemit url source blocks for http(s) file attachment data instead of mislabeling it base64
fixforward 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 runtime
fixserialize 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.
fixdrop 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.
fixpreserve attachments on the user message state in useLangGraphRuntime

Refactors

1
refactorhost the streaming-stable tool-args stringifier in @assistant-ui/core/internal

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-lexical@0.2.5patchGitHub →

Features

2
featsupport lexical 0.47
featrender children as custom Lexical plugins in LexicalComposerInput

Fixes

1
fixdelete directive chips as one unit with forward Delete and on mobile backspace

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-markdown@0.14.6patchGitHub →

Chores

3
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-mcp@0.0.18patchGitHub →

Features

2
featexpose MCP resource listing on connected servers
featsupport cursor pagination when listing MCP resources

Fixes

3
fixignore malformed persisted MCP custom servers
fixclarify MCP OAuth callback failures
fixignore malformed persisted MCP auth state

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-native@0.1.30patchGitHub →

Features

4
featsupport prefixed MCP toolkit tool names
featsupport disabled MCP toolkit entries
featsupport disabled MCP toolkit tools
featexport attachment Props aliases from the composer and message barrels

Fixes

2
fix· react-nativeshow composer scrollbar at max height
fixforward ThreadPrimitive.Messages refs to the underlying FlatList

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-o11y@0.0.26patchGitHub →

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-opencode@0.2.11patchGitHub →

Fixes

1
fixpropagate OpenCode SDK response errors through runtime operations

Chores

4
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-pi@0.0.7patchGitHub →

Fixes

1
fixparse all standard SSE line endings

Chores

4
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
@assistant-ui/react-streamdown@0.3.6patchGitHub →

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/tap@0.9.4patchGitHub →

Fixes

2
fixpreserve React-hosted tap resource roots and keyed fiber registries for the component lifetime
fixkeep tap root scheduler, fiber, queue, and subscribers in React state for the full component lifetime

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/vite@0.0.9patchGitHub →

Chores

2
choreupdate dependencies
choreupdate dependencies
@assistant-ui/x-buildutils@0.0.18patchGitHub →

Chores

5
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
choreupdate TypeScript to 7
choreupdate dependencies
@assistant-ui/x-generative-compiler@0.0.9patchGitHub →

Fixes

1
fixrecognize exported same-file toolkit fragments in toolkit spreads

Chores

3
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
assistant-cloud@0.1.35patchGitHub →

Features

1
featexpose CloudAPIError with the HTTP status on failed requests

Fixes

3
fixguard localStorage access in anonymous auth strategy
fixhandle empty successful Cloud API responses
fixawait auth headers when initializing Assistant Cloud auth

Chores

2
choreupdate dependencies
choreupdate dependencies
assistant-stream@0.3.26patchGitHub →

Features

3
featexport a spec-complete SSE event decoder from assistant-stream/utils
featdetect data stream protocol from response headers
featoptional code and severity metadata on error chunks

Fixes

4
fixaccept parameterized event-stream content types
fixparse all standard SSE line endings
fixdiscard unterminated SSE frames
fixaccept the AI SDK v5+ delta text chunks, source-url, flat file, and bare lifecycle chunks in UIMessageStreamDecoder

Refactors

2
refactorback the internal SSE pipelines with the shared SSEEventDecoder
refactorremove the dead is-json copy

Chores

3
choreupdate dependencies
choreupdate dependencies
choreupdate dependencies
assistant-ui@0.0.106patchGitHub →

Fixes

11
fixinstall the base ui quick start from init when the initialized project uses a base style
fixresolve base ui flavored registry urls in add when the project style starts with base-
fixinclude declared assistant-ui packages in info output
fixvalidate peer dependency ranges using semver
fixclarify MCP install config parse errors
fixstrip every workspace path alias when materializing a template
fixaccept JSONC syntax when transforming scaffold tsconfig files
fixclarify assistant-ui update package.json parse errors
fix· clidoctor now detects duplicate assistant-ui packages in pnpm node_modules layouts
fixcompare prerelease versions using SemVer rules in assistant-ui doctor
fix· clidetect monorepos from the workspace root

Chores

2
choreupdate dependencies
choreupdate dependencies

Other

1
misccli: register the with-resumable-stream example so npx assistant-ui create -e with-resumable-stream resolves instead of failing with "Unknown example".
create-assistant-ui@0.0.69patchGitHub →
heat-graph@0.0.13patchGitHub →

Chores

2
choreupdate dependencies
choreupdate dependencies
safe-content-frame@0.0.23patchGitHub →

Chores

2
choreupdate dependencies
choreupdate dependencies
tw-shimmer@0.4.12patchGitHub →

Chores

1
choreupdate dependencies

Other

1
miscfix background shimmer animation speed in Firefox

Jul 4, 2026

23 packages

@assistant-ui/cloud-ai-sdk@0.1.24patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/core@0.2.20patchGitHub →

Fixes

1
fixskip malformed generative UI component nodes
@assistant-ui/eve@0.0.3patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/mcp-docs-server@0.1.38patchGitHub →

Features

2
featadd assistantUISearch tool for keyword search over the docs
featadd argument completions for the docs and examples resources
@assistant-ui/next@0.0.10patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react@0.14.26patchGitHub →

Other

1
miscThread list accessibility improvements, focused on keyboard and focus handling:
@assistant-ui/react-ag-ui@0.0.44patchGitHub →

Features

1
feat· react-ag-uirestore interrupt status in fromAgUiMessages from persisted metadata
@assistant-ui/react-ai-sdk@1.3.40patchGitHub →

Features

1
featsupport server-side MCP connection timeouts

Fixes

1
fixdetect MCP tool name collisions with toolkit tools
@assistant-ui/react-generative-ui@0.0.7patchGitHub →

Fixes

4
fixname duplicate prop owners in generative UI schema warnings
fixclarify unknown generative UI action warnings
fixhonor stable generative UI item keys
fixskip malformed generative UI action types

Other

1
miscadd 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.31patchGitHub →

Fixes

1
fixre-export documented context providers from platform barrels
@assistant-ui/react-ink-markdown@0.0.30patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-langchain@0.0.18patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-langgraph@0.14.11patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-mcp@0.0.17patchGitHub →

Features

1
featsupport MCP connection timeouts

Fixes

1
fixvalidate duplicate MCP server ids in the React MCP manager
@assistant-ui/react-native@0.1.29patchGitHub →

Fixes

1
fixre-export documented context providers from platform barrels
@assistant-ui/react-pi@0.0.6patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/vite@0.0.8patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/x-buildutils@0.0.17patchGitHub →

Fixes

1
fixpreserve package imports as external build specifiers
@assistant-ui/x-generative-compiler@0.0.8patchGitHub →

Fixes

3
fixsupport exported module-scope JSONGenerativeUI instances
fixname tools in missing toolkit member compiler errors
fixvalidate JSONGenerativeUI constructor imports
assistant-stream@0.3.25patchGitHub →

Features

1
featsupport server-side MCP connection timeouts
assistant-ui@0.0.105patchGitHub →

Fixes

1
fix· cliskip shadcn registry install when --skip-install is passed
create-assistant-ui@0.0.68patchGitHub →
safe-content-frame@0.0.22patchGitHub →

Chores

1
choreupdate dependencies

Jun 25, 2026

1 package

@assistant-ui/eve@0.0.2patchGitHub →

Features

1
feathonor startRun false across staged-message-capable runtimes

Fixes

1
fixsupport eve 0.12 (the InputResponse and SendTurnPayload types now come from eve/client, and output-denied tool parts carry a required approval)

Chores

1
choreupdate dependencies

Jun 17, 2026

13 packages

@assistant-ui/core@0.2.18patchGitHub →

Features

1
feat· react-ag-uiapply external state from ThreadHistoryAdapter.load

Chores

1
choremark generateId and fromThreadMessageLike as experimental
@assistant-ui/react@0.14.23patchGitHub →

Chores

1
choremark generateId and fromThreadMessageLike as experimental
@assistant-ui/react-ag-ui@0.0.42patchGitHub →

Features

1
feat· react-ag-uiapply external state from ThreadHistoryAdapter.load
@assistant-ui/react-devtools@1.2.7patchGitHub →

Fixes

1
fix· devtoolsstop reporting shared (non-cyclic) references as [Circular] when serializing model context

Other

2
miscrender 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).
miscredesign 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-ink@0.0.29patchGitHub →

Chores

1
choremark generateId and fromThreadMessageLike as experimental
@assistant-ui/react-ink-markdown@0.0.28patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-langchain@0.0.15patchGitHub →

Features

5
feat· react-langchainforward runConfig to the graph as config.configurable
feat· react-langchainconvert file content parts in messages
feat· react-langchainsurface thread-loading state via isLoading
feat· react-langchainsurface root tool calls via useLangChainToolCalls
feat· react-langchainsurface useStream error via useLangChainError
@assistant-ui/react-langgraph@0.14.9patchGitHub →

Refactors

1
refactor· react-langgraphcollapse file content conversion to the single flat block langgraph emits, dropping the nested and top-level base64 shapes that no upstream produces
@assistant-ui/react-mcp@0.0.15patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-native@0.1.27patchGitHub →

Chores

1
choremark generateId and fromThreadMessageLike as experimental
assistant-ui@0.0.102patchGitHub →

Fixes

1
fixauthenticate CLI GitHub downloads with configured tokens
create-assistant-ui@0.0.65patchGitHub →
pypi/assistant-stream@0.0.34GitHub →

What's Changed

  • fix(core): add typesVersions for moduleResolution: node compatibility by @shashank-100 in https://github.com/assistant-ui/assistant-ui/pull/3914
  • fix(core): drop "./*" wildcard export by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3916
  • feat(composer): enrich attachmentAddError event with typed payload by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3917
  • feat(react): add MessagePrimitive.PartGroups for hierarchical adjacent grouping by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3853
  • chore(butflow): codify no-review-narration rule for comments by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3918
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/3915
  • feat(docs/traction): activity heatmap, unified github/npm fetching by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3921
  • feat(docs): promote guides to top-level section + content refresh by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3922
  • fix(react): recover ComposerPrimitive.Input from stuck IME composition state by @nitnizzie in https://github.com/assistant-ui/assistant-ui/pull/3924
  • docs(tool-ui): document deferred rendering pattern by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3928
  • fix(react): top scroll anchoring by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3908
  • docs: api type table improvements by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3930
  • ci(traction): install sharp in isolated dir to avoid pnpm workspace conflict by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3934
  • Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/3935
  • fix(store): RenderChildrenWithAccessor missed re-renders after access by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3937
  • feat(docs): rewrite @assistant-ui/react imports per platform selector by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3938
  • chore(docs): refresh model picker by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3939
  • ci: Change version of '@assistant-ui/react' to minor by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3931
  • fix(react-ai-sdk): respect startRun:false on append/edit by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3942
  • fix(ui): make TooltipIconButton self-contained with TooltipProvider by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3944
  • chore(templates): sync with packages/ui + guard drift in CI by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3945
  • feat(docs): platform URL params, changelog UX, traction forecast by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3946
  • fix(core): restore adapter context flow through RemoteThreadListAdapter.unstable_Provider by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3948
  • fix(cloud-ai-sdk): drive telemetry status from ai sdk onFinish event by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3949
  • fix(docs): clarify makeAssistantTool/UI coexist with Tools() api by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3950
  • perf: cut per-message overhead in long threads by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3952
  • fix: top anchor scroll stuttering by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3954
  • feat: migrate to new GroupedParts API by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3955
  • chore: update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3962
  • feat(thread-list): cursor-based loadMore pagination by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3953
  • docs(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
  • docs: improve api reference by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3963
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/3927
  • chore: drop APIs deprecated in v0.11/v0.12 by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3970
  • fix(core): ExternalStoreThreadList crashes when mainThreadId has no matching threads entry by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3972
  • feat(react-ag-ui): surface AG-UI interrupt-aware run lifecycle by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3974
  • feat(react-ag-ui): tighten interrupt lifecycle by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3977
  • docs: update react-shiki, remove declaration by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3978
  • feat(assistant-stream): add resumable stream primitives by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3979
  • chore: add missing .env.example files by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3980
  • chore: fix accuracy of existing .env.example files by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3982
  • feat(core): composer canSend state and isSendDisabled adapter input by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3984
  • docs: rewrite titles and descriptions for organic discovery by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3985
  • docs: rewrite runtime, cloud, and platform overview titles by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3987
  • perf(react-ink): virtualize message list + diff-aware reconciler by @samdickson22 in https://github.com/assistant-ui/assistant-ui/pull/3966
  • docs: rewrite remaining guide and example titles for organic discovery by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3988
  • docs: rewrite titles and descriptions across guides and examples by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3986
  • docs: rewrite API reference titles and descriptions by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3989
  • fix(react-ink): followups to #3966 (memo deps, clamp, tests, bench runner) by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3991
  • docs: trim redundant "AI Chat" prefix from hub page titles by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/3992
  • docs: refresh perplexity example by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3890
  • docs: polish all five clone examples to match their real products by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3993
  • Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/3947
  • fix(core): guard against undefined attachments in MessagePrimitive.Attachments by @cewinharhar in https://github.com/assistant-ui/assistant-ui/pull/3674
  • feat(core,react-ai-sdk): support source-document parts by @sicko7947 in https://github.com/assistant-ui/assistant-ui/pull/3634
  • docs: document runtime driven suggestions by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/3999
  • feat(react-ai-sdk): expose onResume on useAISDKRuntime by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4001
  • fix(python): auto-convert nested StateProxy += to append-text deltas by @GuyPaikowsky in https://github.com/assistant-ui/assistant-ui/pull/3409
  • feat(react-ai-sdk): expose suggestions on AI SDK runtime hooks by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4003
  • fix(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
  • Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4006
  • docs: standardize package READMEs to a tier convention by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4007
  • feat: support multi-modal tool results via toModelOutput by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4008
  • docs: new section for migration docs by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3996
  • chore: remove SEO-ANALYSIS.md by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4010
  • docs: improve api-reference coverage by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/3995
  • docs: use semantic html for parameters-table component by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4014
  • docs: add robots config by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4012
  • fix(react-ag-ui): adopt server messageId as assistant message id by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4017
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/3973
  • fix(composer): accept highlighted trigger popover item on Tab by @serhiizghama in https://github.com/assistant-ui/assistant-ui/pull/4020
  • fix(composer): wire WAI-ARIA combobox attributes into trigger popover by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4022
  • fix(docs): resolve MDX content for LLM outputs by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4013
  • docs: support jsdoc link tags in api-reference auto generation by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4015
  • docs(claude): add tap/store conventions skill by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4026
  • docs(claude): expand tap skill — store coverage + useAui resolution rule by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4028
  • feat(react): native MCP Apps renderer by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4024
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4021
  • ci(npm-publish): disable OIDC pre-flight verification by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4029
  • fix(react-ai-sdk): resolve MCP app metadata from output _meta by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4030
  • feat(react): clamp MCP app auto-resize height to configurable max by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4031
  • feat(react|ui): ungroup MCP-app tool calls in chain of thought by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4033
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4032
  • docs(streamdown): document tailwind @source and CSS setup by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4038
  • fix(core): drop phantom siblings when external store swaps message id by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4040
  • fix(ui): make sources favicon provider configurable, default to DuckDuckGo by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4039
  • feat(cloud): allow custom baseUrl with API key auth by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4041
  • docs: add Cloudflare Agents integration guide by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4042
  • docs: refresh integration icons, add react-langgraph regression test by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4045
  • feat(core): expose modelName and toolNames in ModelContextState by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3636
  • fix(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
  • chore: enforce 1-day minimum package release age by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4047
  • chore(react-langchain): bump @langchain/react peer to ^1.0.2 by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4048
  • feat(react-ink): add intra line highlighting to DiffView by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3860
  • docs: expand public API JSDoc and message part deprecations by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4023
  • fix(cli): improve scaffold validation and respect package managers by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4044
  • feat(react-ink): add ComposerPrimitive.Quote parity by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3969
  • chore: update model names throughout monorepo by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4043
  • feat(react-ink): harden pressable interactions by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3957
  • feat(react-ink): harden AttachmentPrimitive with Status sub-component… by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3983
  • Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4011
  • feat(react-langchain): parity with react-langgraph (path to deprecation) by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4049
  • fix(tsconfig): TS 6.0 deprecation prep + latent dep fixes by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4050
  • feat(react-ink): add message part primitives by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3958
  • feat(react-ink): add composer queue primitives by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3965
  • fix: guard clipboard availability before calling writeText by @JustAnOkapi in https://github.com/assistant-ui/assistant-ui/pull/3513
  • feat(examples): add browser extension example with side panel chat by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3718
  • feat: add message timing support for LangGraph, AG-UI, and OpenCode runtimes by @shashank-100 in https://github.com/assistant-ui/assistant-ui/pull/3925
  • fix(core): fire streamCall for already-resolved tool calls observed live by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4057
  • docs(api-reference): improve clarity of tool APIs by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4058
  • docs(api-reference): automatically render jsdoc examples as markdown code blocks by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4059
  • feat(cli): resolve template components from ui package by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4054
  • docs: fix link for a2a protcol by @LGmatrix13 in https://github.com/assistant-ui/assistant-ui/pull/4060
  • docs(examples): redesign the Gemini clone to match Gemini's latest UI by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4061
  • Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4055
  • feat(react-ink): add LoadingPrimitive by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3633
  • feat(react-ink): add StatusBarPrimitive components by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3635
  • fix(react): thread initialization timing race by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4063
  • fix(react-opencode): recover event stream after StrictMode cleanup by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4068
  • fix(react-ag-ui): preserve arrival order of parts in RunAggregator by @tlecomte in https://github.com/assistant-ui/assistant-ui/pull/4066
  • fix(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
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4034
  • fix(react): resync useSmooth displayedText on part change by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4073
  • fix(core): key part fibers by absolute part index in MessageParts/GroupedParts by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4077
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4074
  • Fix suggestions in chain-of-thought example by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4079
  • fix(docs): normalize docs assistant folder paths by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4076
  • fix(core): replay latched initialize event to late subscribers by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4072
  • docs(mcp-apps): document OpenAI Apps SDK servers and model-agnostic UI by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4084
  • feat(docs): expose example docs pages to docs assistant by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4083
  • feat(react-mcp): new package for user-managed MCP servers by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4025
  • chore: trim onlyBuiltDependencies to genuine native builds by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4081
  • docs: add descriptions to docs assistant listDocs by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4087
  • chore: update dependencies and migrate to pnpm 11 by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4085
  • feat: image generation guide, example, and Image component by @samdickson22 in https://github.com/assistant-ui/assistant-ui/pull/3867
  • feat(core, react): add MessagePrimitive.GenerativeUI primitive by @samdickson22 in https://github.com/assistant-ui/assistant-ui/pull/3967
  • feat(react-ink): add file storage adapter by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3651
  • feat(react): add unstable_insertNewlineOnTouchEnter to composer input by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4093
  • fix(react-native): support children render-prop on ThreadPrimitive.Messages by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4095
  • docs(assistant-stream, runtimes): fix protocol mismatch in data-stream quickstarts by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4096
  • build(x-buildutils): migrate to tsdown with unbundle: true by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4097
  • feat(core): add unarchive option to switchToThread by @adityamohta in https://github.com/assistant-ui/assistant-ui/pull/4099
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4080
  • Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4106
  • feat: add respondToApproval prop for AI SDK v6 tool approvals by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4107
  • docs: cross-link runtime architecture, adapters, threads by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4111
  • chore(examples): consolidate grouping + sources into chain-of-thought by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4115
  • fix(registry): Avoid direct core dependency for directive text by @Gujiassh in https://github.com/assistant-ui/assistant-ui/pull/4117
  • feat(examples): add opt-in generative UI adoption path by @samdickson22 in https://github.com/assistant-ui/assistant-ui/pull/4112
  • fix(assistant-stream): preserve parentId on streamed text and reasoning parts by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4116
  • docs: reformat api-reference meta.json pages arrays by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4119
  • feat: simplify GroupedParts API and add groupPartByType helper by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4120
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4114
  • test(tap): stabilize flaky StrictMode setTimeout rerender test by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4103
  • Add duplicate detection and doctor command for diagnosing version mismatches by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4121
  • chore: update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4123
  • chore: prototype migration from Biome to oxlint + oxfmt by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4100
  • chore: add update-deps skill by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4124
  • feat(core): build tool-invocations pipeline into useExternalStoreRuntime by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4118
  • chore: drop tracker-behaviour explainer comments in satellites by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4125
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4122
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4126
  • chore: update dependencies across packages by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4128
  • fix(thread): scroll jitter and footer not appearing by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4132
  • feat: forward per-tool providerOptions and stabilize tool order by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4133
  • feat: align shared adapter options across runtime wrapper hooks by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4135
  • refactor: centralize thread-level shared options helper by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4136
  • feat: add useNotification hook for terminal and custom notifications by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3852
  • Add fetchOptions passthrough for A2A client/runtime requests by @sdg9670f in https://github.com/assistant-ui/assistant-ui/pull/4138
  • fix(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
  • fix(core): branch picker not appearing by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4137
  • Revert "fix(core): branch picker not appearing" by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4147
  • revert: drop phantom siblings on external-store id swap (#4040) by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4148
  • fix(docs): render markdown and tool fallback in ChatGPT example theme by @joealves517 in https://github.com/assistant-ui/assistant-ui/pull/4139
  • chore: drop stale biome-ignore pragmas after migrating to oxlint by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4151
  • fix(docs): Expose examples in llms output by @Gujiassh in https://github.com/assistant-ui/assistant-ui/pull/4150
  • Revert "docs: reformat api-reference meta.json pages arrays" by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4154
  • docs(api-reference): update generator classification, links, and formatting by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4155
  • fix(react-a2a): send 'parts' on wire per A2A v1.0 spec by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4158
  • perf(core): memoize RuntimeAdapterProvider context value by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4161
  • Improve docs chat examples discovery by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4145
  • feat: add indicator slot to MessagePrimitive.GroupedParts by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4160
  • feat: add checklist primitives by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/3681
  • feat(core): tool display hint + standalone-tool-call grouping by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4167
  • fix: don't abort ai-sdk history load on a malformed stored row by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4169
  • chore: drop mcp-app-studio by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4170
  • docs(api-reference): standalone-tool-call grouping + display hint by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4171
  • fix(react-ink): show error icon for completed tool calls that errored by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4165
  • feat: add @assistant-ui/next + "use generative" toolkit support by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4172
  • fix: drop phantom siblings on optimistic message id swap (#4037) by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4162
  • docs: add code comment guidelines to AGENTS.md by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4174
  • chore: update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4175
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4129
  • feat: 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
  • docs: mark a docs-toolkit tool as standalone; refresh livekit uv.lock by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4179
  • feat(cli): prompt to add agent skills on create by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4180
  • docs: display weather widget standalone by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4184
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4177
  • fix: resolve workspace type-check errors by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4178
  • fix(assistant-stream): resolve argsReader.get() to undefined once args close by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4163
  • docs: add trusted-publishing skill for new npm packages by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4186
  • feat(docs): list deprecated/new packages and add ?refresh=true by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4187
  • refactor(docs): group app routes into route groups by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4189
  • feat: @assistant-ui/react-generative-ui — JSON generative UI with use-generative split by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4199
  • fix(next): bust use-generative loader cache when the compiler changes by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4200
  • feat(docs): add Xulux AI Builder playground by @vivek100 in https://github.com/assistant-ui/assistant-ui/pull/4019
  • fix(docs): host legal pages on site by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4202
  • chore: skip Vercel builds for version branches by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4203
  • chore: share butflow skill with Codex by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4204
  • chore: update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4198
  • 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
  • fix(react-ai-sdk): convert data message parts in toCreateMessage by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4192
  • fix(react-ai-sdk): strip stale approval when cancelling tool pending approval by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4196
  • feat(core): add thread custom metadata updates by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4208
  • docs: gate AI playground behind feature flag by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4209
  • feat(react-ag-ui): apply STATE_DELTA events by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4210
  • feat: add MCP toolkit support by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4212
  • feat: add provider tool support by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4213
  • fix(react-ai-sdk): convert generative tool toModelOutput to AI SDK content shape by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4216
  • docs(llms): add text variants to mdx components by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4217
  • fix(docs): correct star and downloads chart projections by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4218
  • docs: support Celsius weather widget display by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4220
  • docs: add GitButler agent guidance by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4221
  • fix: externalize node builtins in package builds by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4222
  • feat: add tool call renderText support by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4214
  • docs: update generated API reference by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4225
  • fix: omit backend-default generative tool schemas by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4226
  • feat(react-ag-ui): honor resume stream in AgUiThreadRuntimeCore by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4224
  • perf(cli): merge create's two shadcn add calls into one by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4228
  • fix: type defineToolkit streamCall args by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4234
  • feat: add toolkit tool override APIs by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4236
  • docs: migrate tool docs to toolkit API by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4235
  • feat(assistant-transport): honour Aui-Replay-Content-Length on resume by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4127
  • docs: update Weather component schema by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4238
  • ci: use opus 4.8 for reviews by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4239
  • docs: consolidate tool docs into a dedicated Tools section by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4242
  • fix(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
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4185
  • feat(metro): @assistant-ui/metro for "use generative" on React Native by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4244
  • fix(react-ink): block Enter submission while running unless runtime supports queueing by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4243
  • fix(with-expo): build @assistant-ui/metro for the Vercel deploy by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4248
  • fix(react-langgraph): batch parallel tool results into a single resume by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4250
  • feat(examples): showcase react-ink primitives in terminal agent demo by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4164
  • feat: add externalTool for generative toolkits by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4249
  • fix: omit external tools from server builds by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4254
  • fix: check generative compiler compatibility by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4255
  • feat(react-ink): runtime defineToolkit for Ink by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4253
  • feat: queue messages sent while a run is in progress by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4246
  • feat(react-ag-ui): emit multimodal input parts for file attachments by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4232
  • fix(react-ag-ui): import reasoning messages from MESSAGES_SNAPSHOT by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4233
  • feat: rename hitlTool to humanTool by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4256
  • docs: add dark mode variant of readme header by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4251
  • fix: handle LangGraph reasoning without summary by @puneetdixit200 in https://github.com/assistant-ui/assistant-ui/pull/4259
  • fix: use defineToolkit in toolkit docs by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4260
  • fix: 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
  • feat: merge toolkits across "use generative" files by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4267
  • chore(react-ai-sdk): deprecate generativeTools in favor of AISDKToolkit by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4266
  • docs: cross-file toolkit merge, MCP-only export, tool stubs and disabling by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4268
  • docs(tools): use AISDKToolkit in the defining-tools server step by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4269
  • docs(api-reference): update classification logic by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4252
  • feat: expose joinStrategy on useAISDKRuntime / useChatRuntime by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4271
  • feat(ag-ui): export fromAgUiMessages from the package root by @serhiizghama in https://github.com/assistant-ui/assistant-ui/pull/4264
  • feat(react-ag-ui): consume ACTIVITY_SNAPSHOT to support MCP Apps by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4278
  • fix(mcp-apps): send 2026-01-26 dialect on host→app bridge messages by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4280
  • fix(x-buildutils): type-check tsdown config under exactOptionalPropertyTypes by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4274
  • Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4281
  • fix(core): make Simple attachment adapters work without FileReader by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4245
  • feat(ui): add ToolFallback.Approval slot for requires-action tools by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4229
  • feat(ui): rewrite mermaid-diagram with beautiful-mermaid by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4279
  • fix(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: rename Docs section to Getting Started, split out Copilots by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4286
  • fix(docs): remove polynomial redos in xulux sandbox name sanitizer by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4289
  • feat(devtools): inspect messages, tool calls, and MCP servers by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4288
  • Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4284
  • chore(deps): upgrade python packages, drop python 3.9 by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4290
  • feat(devtools): surface full tool metadata and redact credentials by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4291
  • feat(tap): React hook integration by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4282
  • test(python): repair stale langgraph tests and async test collection by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4293
  • ci(python): add pytest workflow and align langgraph docs by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4294
  • feat(devtools): add a run timeline tab by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4295
  • feat(devtools): scope graph tab with per-scope method catalog by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4296
  • feat(devtools): surface the composer message queue by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4297
  • feat(devtools): surface composer attachment lifecycle by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4299
  • refactor(react): extract a shared sandbox host and reuse it for mcp apps by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4298
  • feat(devtools): redesign the panel ui onto the product design system by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4301
  • feat(react): add htmlArtifact generative UI tool by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4300
  • revert: htmlArtifact generative UI tool (#4300) by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4303
  • Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4305
  • fix(react-ai-sdk): bundle the root entry on edge, workers, browsers by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4304
  • chore: update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4306
  • feat(docs): replace mermaid diagrams with custom flow components by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4272
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4247
  • docs: update keywords on the react package for better discoverability by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4307
  • docs: add 2nd level breadcrumbs for mobile screens by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4308
  • feat(gorp): new state-sync package + tap-docs migration by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4090
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4309
  • fix: support React 18 in tap shim by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4313
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4314
  • ci: cancel redundant workflow runs by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4316
  • feat: add message delete runtime support by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4315
  • fix(react-ai-sdk): externalize assistant-stream as a regular dependency by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4320
  • feat:(tap): v0.7, resource(useHook), useTapRoot by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4318
  • fix(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
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4319
  • feat(react-ag-ui): restore multimodal user input as attachments in fromAgUiMessages by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4321
  • refactor(tap): drop the tap-root pending-update queue by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4323
  • chore(tap): bump to 0.7.0 and update dependent ranges by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4325
  • Revert "refactor(tap): drop the tap-root pending-update queue" by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4324
  • fix(next): avoid collisions between multiple toolkits in dev by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4327
  • feat(core): expose lastMessageAt on thread list items by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4328
  • fix: collapsible and streaming interaction jank by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4329
  • feat(ui): design refresh for the thread kit by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4330
  • fix(ci): template sync override + redundant-copy guard for examples by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4332
  • docs: base demo, /demos pages, and showcase actions by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4331
  • fix(react-opencode): keep the event subscription stable across renders by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4334
  • chore: remove retired shadcn sync script and dead docs file by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4335
  • refactor: migrate in-repo usages off deprecated tool ui apis by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4337
  • feat(ui): component override slots for the thread kit by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4336
  • fix(react-opencode): re-sync state after the event stream reconnects by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4338
  • fix: exclude reasoning parts from copied message text by @serhiizghama in https://github.com/assistant-ui/assistant-ui/pull/4340
  • fix(example): disable Nitro wasm condition to fix with-tanstack SSR build by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4343
  • fix(generative-ui): hold back nodes whose $type is still streaming instead of reporting them as unknown components by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4344
  • fix(tap): swap useEffect with useLayoutEffect by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4345
  • docs: minor fixes by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4346
  • Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4341
  • feat: support tool approvals on the local runtime by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4347
  • feat: add opt-in defer prop to markdown text primitives by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4348
  • fix: stable identity for grouped message parts across reorders by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4351
  • feat: public, tunable useSmooth by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4350
  • feat: unstable_useComposerInputHistory by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4352
  • docs: fix broken adapter links by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4353
  • feat(ui): skip shiki tokenization while the message part streams by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4349
  • fix(ui): render mermaid diagrams without an AuiProvider by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4354
  • feat(ui): streaming disclosure for reasoning by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4355
  • feat(examples): with-virtualized-thread + virtualization guide by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4356
  • feat: add smooth prop to StreamdownTextPrimitive by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4357
  • feat: branch switching for the ExternalThread client by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4359
  • ci(npm-publish): fail fast on pending changesets and skip git hooks by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4361
  • tap: react parity improvements by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4360
  • refactor(tap): correctness and performance improvements by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4364
  • chore: remove unused useEffect import by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4365
  • feat(tap): useTapHost passive-commit React host by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4366
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4322
  • ci(claude-code-review): switch review model to claude-fable-5 by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4369
  • fix(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
  • feat: add NumberRoll rolling number component by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4370
  • feat: add DotMatrix status indicator component by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4373
  • fix(with-expo): stop React Compiler from compiling workspace dist by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4374
  • feat(registry): redesign ModelSelector component by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4367
  • feat(docs): live ink demo on /ink powered by with-react-ink-web by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4375
  • fix(with-react-ink-web): pin turbopack workspace root for vercel build by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4376
  • fix(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
  • feat: approval options vocabulary on tool approvals by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4378
  • feat: per-tool-call timing and stall detection by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4379
  • docs: fix type tables and re-generate api-reference by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4383
  • ci: switch claude code review to opus 4.8 by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4384
  • feat: precompile packages with React Compiler by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4385
  • fix(react-ag-ui): don't finalize a failed run as successful by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4382
  • feat(pi): add pi integration, react-pi + with-pi example by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4368
  • feat(react-ag-ui): type the agent as AbstractAgent instead of HttpAgent by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4381
  • feat(react-ag-ui): forward the full ExternalStoreThreadListAdapter through adapters.threadList by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4380
  • feat(docs): live traction stats, rolling downloads, bot contributors by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4386
  • feat(tap): array-based useResources + per-child memoization via withKey deps by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4387
  • feat(docs): traction bot co-authors, cross-section nav, ui polish by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4388
  • perf(tap): optimize memo hook hot paths by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4389
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4372
  • docs: add machine-readable pricing by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4391
  • 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
  • chore: update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4390
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4394
  • feat(docs): redesign marketing homepage, header, and footer by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4397
  • feat(docs): animate homepage demo expansion with View Transitions by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4400
  • feat(docs): show homepage hiring banner only from second visit by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4401
  • fix(docs): show demo dropdowns in fullscreen mode by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4402
  • fix: prevent compiled context store hook memoization by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4403
  • fix: keep tap React imports compatible with React 18 by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4405
  • feat(docs): react-o11y showcase page and live demos by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4406
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4404
  • docs: migrate langgraph example and template to react-langchain useStreamRuntime by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4396
  • fix(docs): redirect .md doc and example URLs to .mdx by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4407
  • feat: export math-delimiter preprocess helpers for the markdown text primitives by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4408
  • feat(react): add unstable_useLiveCompletionAdapter for async trigger completions by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4411
  • docs: 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
  • feat: export fromThreadMessageLike and generateId from the public API by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4414
  • perf(core): sync external-store messageRepository incrementally by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4415
  • perf(react-streamdown): tail-bounded incomplete-markdown repair by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4418
  • feat(react): add minCommitMs to SmoothOptions by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4419
  • Update README traction chart by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4421
  • fix(ui): only truncate sidebar thread titles on hover by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4424
  • fix(docs): center collapsed sidebar rail in the base demo by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4423
  • chore: update dependencies by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4422
  • fix(ui): show thread list item menu button instantly on hover by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4425
  • chore: update versions by @github-actions[bot] in https://github.com/assistant-ui/assistant-ui/pull/4409
  • chore(core): mark generateId and fromThreadMessageLike as experimental by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4426
  • feat(react-ag-ui): apply external state from ThreadHistoryAdapter.load() by @dkachur1 in https://github.com/assistant-ui/assistant-ui/pull/4420
  • docs(demo): make sidebar animation smoother by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4428
  • docs(demo): smooth example-showcase fullscreen morph animation by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4429
  • fix(devtools): preserve shared references when sanitizing model context by @JSap0914 in https://github.com/assistant-ui/assistant-ui/pull/4430
  • feat(devtools): render the inspector inline instead of a hosted iframe by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4433
  • fix(thread, attachment): minor styling fixes for chat kit components by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4439
  • feat(devtools): redesign the panel and add thread inspection by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4443
  • fix(examples): activate dark mode in react-hook-form demo by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4441
  • feat(docs): sync embedded form demo iframe with docs theme by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4442
  • docs: fix runnable mem0 example snippets by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4440
  • feat(react-langchain): surface thread-loading state via isLoading by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4432
  • feat(react-langchain): convert file content parts in messages by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4438
  • fix: keep registry markdown highlighting opt-in by @AVGVSTVS96 in https://github.com/assistant-ui/assistant-ui/pull/4444
  • refactor(react-langgraph): collapse file content block to single shape by @okisdev in https://github.com/assistant-ui/assistant-ui/pull/4445
  • feat(react-langchain): forward runConfig to the graph as config.configurable by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4435
  • feat(react-langchain): surface useStream error via useLangChainError by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4431
  • fix: authenticate CLI GitHub downloads by @ProfTrader in https://github.com/assistant-ui/assistant-ui/pull/4446
  • feat(react-langchain): surface root tool calls via useLangChainToolCalls by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4436
  • docs(examples): refine gemini landing visuals and animation by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4410
  • docs(example): refresh chatgpt example to match current chatgpt UI by @ShobhitPatra in https://github.com/assistant-ui/assistant-ui/pull/4413
  • feat(python/langgraph): send granular delta chunks over the network by @Yonom in https://github.com/assistant-ui/assistant-ui/pull/4449

New Contributors

  • @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 Full Changelog: https://github.com/assistant-ui/assistant-ui/compare/pypi/[email protected]/[email protected]

Jun 15, 2026

20 packages

@assistant-ui/cloud-ai-sdk@0.1.22patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/core@0.2.17patchGitHub →

Features

1
featexport fromThreadMessageLike and generateId from the public API

Performance

1
perfsync the external-store messageRepository incrementally instead of clear+import
@assistant-ui/react@0.14.22patchGitHub →

Features

3
featexport fromThreadMessageLike and generateId from the public API
feat· reactadd minCommitMs to SmoothOptions to throttle committed reveal updates
featadd unstable_useLiveCompletionAdapter for async trigger completions
@assistant-ui/react@0.14.21patchGitHub →

Fixes

1
fixprevent compiled context store hooks from skipping subscriptions
@assistant-ui/react-a2a@0.2.20patchGitHub →

Chores

1
choreimport generateId and fromThreadMessageLike from the public @assistant-ui/core entry instead of /internal
@assistant-ui/react-ag-ui@0.0.41patchGitHub →

Chores

1
choreimport generateId and fromThreadMessageLike from the public @assistant-ui/core entry instead of /internal
@assistant-ui/react-ai-sdk@1.3.37patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-hook-form@0.12.21patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-ink@0.0.28patchGitHub →

Features

1
featexport fromThreadMessageLike and generateId from the public API

Chores

1
choreupdate dependencies
@assistant-ui/react-ink-markdown@0.0.27patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-markdown@0.14.4patchGitHub →

Features

1
featexport math-delimiter preprocess helpers for the markdown text primitives
@assistant-ui/react-mcp@0.0.14patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-mcp@0.0.13patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-native@0.1.26patchGitHub →

Features

1
featexport fromThreadMessageLike and generateId from the public API
@assistant-ui/react-o11y@0.0.24patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-opencode@0.2.9patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-pi@0.0.4patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-streamdown@0.3.4patchGitHub →

Features

1
featexport math-delimiter preprocess helpers for the markdown text primitives

Performance

1
perfrepair only the trailing block of streaming markdown instead of the whole message
@assistant-ui/tap@0.9.2patchGitHub →

Fixes

1
fixkeep tap React hooks compatible with React 18 builds
@assistant-ui/x-buildutils@0.0.15patchGitHub →

Fixes

1
fixkeep tap React hooks compatible with React 18 builds

Jun 14, 2026

31 packages

@assistant-ui/agent-launcher@0.1.7patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/cloud-ai-sdk@0.1.21patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/core@0.2.16patchGitHub →

Fixes

1
fixresolve typecheck regressions

Chores

1
choreupdate peer and dependency ranges for @assistant-ui/tap 0.9
@assistant-ui/gorp@0.0.3patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/mcp-docs-server@0.1.35patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/metro@0.0.3patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/next@0.0.7patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react@0.14.20patchGitHub →

Fixes

1
fixresolve typecheck regressions

Chores

2
choreupdate dependencies
choreupdate peer and dependency ranges for @assistant-ui/tap 0.9
@assistant-ui/react-ag-ui@0.0.40patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-ai-sdk@1.3.36patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-devtools@1.2.6patchGitHub →

Chores

2
choreupdate dependencies
choreupdate peer and dependency ranges for @assistant-ui/tap 0.9
@assistant-ui/react-generative-ui@0.0.5patchGitHub →

Fixes

1
fixresolve typecheck regressions
@assistant-ui/react-hook-form@0.12.20patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-ink@0.0.27patchGitHub →

Chores

2
choreupdate dependencies
choreupdate peer and dependency ranges for @assistant-ui/tap 0.9
@assistant-ui/react-ink-markdown@0.0.26patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-langchain@0.0.14patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-langgraph@0.14.8patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-mcp@0.0.12patchGitHub →

Other

1
@assistant-ui/react-native@0.1.25patchGitHub →

Chores

2
choreupdate dependencies
choreupdate peer and dependency ranges for @assistant-ui/tap 0.9
@assistant-ui/react-o11y@0.0.23patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-opencode@0.2.8patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-pi@0.0.3patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/store@0.2.18patchGitHub →

Fixes

1
fixpreserve tap context across nested tap root rerenders and mark tap context as supported

Chores

1
choreupdate peer and dependency ranges for @assistant-ui/tap 0.9
@assistant-ui/tap@0.9.1patchGitHub →

Fixes

1
fixpreserve tap context across nested tap root rerenders and mark tap context as supported

Chores

1
choreupdate dependencies
@assistant-ui/vite@0.0.5patchGitHub →

Fixes

1
fixresolve typecheck regressions

Chores

1
choreupdate dependencies
@assistant-ui/x-buildutils@0.0.14patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/x-generative-compiler@0.0.5patchGitHub →

Chores

1
choreupdate dependencies
assistant-cloud@0.1.33patchGitHub →

Chores

1
choreupdate dependencies
assistant-stream@0.3.23patchGitHub →

Fixes

1
fixresolve typecheck regressions
assistant-ui@0.0.101patchGitHub →

Chores

1
choreupdate dependencies
create-assistant-ui@0.0.64patchGitHub →

Jun 13, 2026

14 packages

@assistant-ui/core@0.2.15patchGitHub →

Features

4
featadd reasoningEffort to LanguageModelConfig
featprecompile packages with React Compiler
featapproval options vocabulary on tool approvals. ToolCallMessagePart.approval gains request-supplied options (machine-readable kinds allow-once / allow-always / reject-once / reject-always, open to _-prefixed custom kinds), a recorded optionId, and a terminal resolution ("cancelled" | "expired") for non-decision outcomes. respondToApproval additionally accepts { optionId }, resolved in core against the option's kind; custom kinds require an explicit approved. ExternalThread gains an onRespondToToolApproval callback. The kit approval bar renders supplied options with an opt-in confirmation step showing the grants an option would persist. Persistence stays host-owned.
featper-tool-call timing and stall detection. ToolCallMessagePart gains a timing field ({ startedAt, completedAt? } in epoch ms), auto-populated by the assistant-stream accumulator at part start and result, and accepted on ThreadMessageLike for external-store hosts. New useToolCallElapsed hook returns the call's elapsed milliseconds, ticking once per second while running; unstable_useMessageStallDetection({ thresholdMs }) reports mid-run output stalls by watching a message content fingerprint. The kit ToolFallback trigger renders the duration when timing is present.
@assistant-ui/react@0.14.19patchGitHub →

Features

3
featprecompile packages with React Compiler
featapproval options vocabulary on tool approvals. ToolCallMessagePart.approval gains request-supplied options (machine-readable kinds allow-once / allow-always / reject-once / reject-always, open to _-prefixed custom kinds), a recorded optionId, and a terminal resolution ("cancelled" | "expired") for non-decision outcomes. respondToApproval additionally accepts { optionId }, resolved in core against the option's kind; custom kinds require an explicit approved. ExternalThread gains an onRespondToToolApproval callback. The kit approval bar renders supplied options with an opt-in confirmation step showing the grants an option would persist. Persistence stays host-owned.
featper-tool-call timing and stall detection. ToolCallMessagePart gains a timing field ({ startedAt, completedAt? } in epoch ms), auto-populated by the assistant-stream accumulator at part start and result, and accepted on ThreadMessageLike for external-store hosts. New useToolCallElapsed hook returns the call's elapsed milliseconds, ticking once per second while running; unstable_useMessageStallDetection({ thresholdMs }) reports mid-run output stalls by watching a message content fingerprint. The kit ToolFallback trigger renders the duration when timing is present.
@assistant-ui/react-ag-ui@0.0.39patchGitHub →

Features

2
feataccept any AbstractAgent in useAgUiRuntime instead of requiring HttpAgent
featforward the full ExternalStoreThreadListAdapter (threads, archivedThreads, onRename, onArchive, ...) through adapters.threadList so server-persisted threads can be registered and switched to; clear messages before onSwitchToThread so the previous thread's messages no longer merge in as a phantom sibling branch; onSwitchToThread can return unstable_resume to reattach to an in-flight run after switching (resumes in the background and requires a ThreadHistoryAdapter with resume, otherwise it reports through onError instead of re-running the agent)

Fixes

2
fixattach a TOOL_CALL_RESULT for a prior run's tool call to its owning message instead of synthesizing a duplicate empty-args part
fixkeep failed and aborted runs visible. the synthetic RUN_FINISHED from onRunFinalized used to overwrite RUN_ERROR with a successful status, so failed runs rendered as complete and MessagePrimitive.Error never showed. aborts (which @ag-ui/client routes through onRunFailed) now map to RUN_CANCELLED instead of RUN_ERROR, so the run lands as incomplete/cancelled.
@assistant-ui/react-devtools@1.2.5patchGitHub →

Features

1
featprecompile packages with React Compiler
@assistant-ui/react-ink@0.0.26patchGitHub →

Features

1
featprecompile packages with React Compiler
@assistant-ui/react-ink-markdown@0.0.25patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-mcp@0.0.11patchGitHub →

Features

1
featprecompile packages with React Compiler
@assistant-ui/react-native@0.1.24patchGitHub →

Features

3
featprecompile packages with React Compiler
featapproval options vocabulary on tool approvals. ToolCallMessagePart.approval gains request-supplied options (machine-readable kinds allow-once / allow-always / reject-once / reject-always, open to _-prefixed custom kinds), a recorded optionId, and a terminal resolution ("cancelled" | "expired") for non-decision outcomes. respondToApproval additionally accepts { optionId }, resolved in core against the option's kind; custom kinds require an explicit approved. ExternalThread gains an onRespondToToolApproval callback. The kit approval bar renders supplied options with an opt-in confirmation step showing the grants an option would persist. Persistence stays host-owned.
featper-tool-call timing and stall detection. ToolCallMessagePart gains a timing field ({ startedAt, completedAt? } in epoch ms), auto-populated by the assistant-stream accumulator at part start and result, and accepted on ThreadMessageLike for external-store hosts. New useToolCallElapsed hook returns the call's elapsed milliseconds, ticking once per second while running; unstable_useMessageStallDetection({ thresholdMs }) reports mid-run output stalls by watching a message content fingerprint. The kit ToolFallback trigger renders the duration when timing is present.
@assistant-ui/react-o11y@0.0.22patchGitHub →

Features

1
featprecompile packages with React Compiler
@assistant-ui/react-pi@0.0.2patchGitHub →

Features

1
featinitial @assistant-ui/react-pi MVP — a Pi coding-agent runtime adapter
@assistant-ui/store@0.2.17patchGitHub →

Features

1
featprecompile packages with React Compiler
@assistant-ui/tap@0.8.1patchGitHub →

Features

1
featprecompile packages with React Compiler

Performance

1
perfoptimize tap memo hook hot paths
@assistant-ui/x-buildutils@0.0.13patchGitHub →

Features

1
featprecompile packages with React Compiler
assistant-stream@0.3.22patchGitHub →

Features

1
featper-tool-call timing and stall detection. ToolCallMessagePart gains a timing field ({ startedAt, completedAt? } in epoch ms), auto-populated by the assistant-stream accumulator at part start and result, and accepted on ThreadMessageLike for external-store hosts. New useToolCallElapsed hook returns the call's elapsed milliseconds, ticking once per second while running; unstable_useMessageStallDetection({ thresholdMs }) reports mid-run output stalls by watching a message content fingerprint. The kit ToolFallback trigger renders the duration when timing is present.

Jun 12, 2026

20 packages

@assistant-ui/core@0.2.14patchGitHub →

Features

3
featbranch switching for the ExternalThread client
featsupport tool approvals on the local runtime
featexpose lastMessageAt on thread list items, populated from the cloud thread list adapter

Fixes

2
fixexclude reasoning parts from copied message text
fixstable identity for grouped message parts across reorders

Chores

1
choreupdate @assistant-ui/tap dependency ranges to ^0.7.0
@assistant-ui/next@0.0.6patchGitHub →

Fixes

1
fixgive each "use generative" module a distinct bundler-redirect identity so two toolkits in one app no longer collide under next dev
@assistant-ui/react@0.14.18patchGitHub →

Features

3
featunstable_useComposerInputHistory
featbranch switching for the ExternalThread client
featpublic, tunable useSmooth

Fixes

4
fixexclude reasoning parts from copied message text
fixemit the GroupedParts streaming indicator for empty running messages, so the assistant slot shows a loading affordance immediately after sending instead of staying blank
fixcompensate scrollbar gutter in useScrollLock so collapsible animations don't shift centered content horizontally on classic scrollbars
fixclear pending viewport bottom-scroll intent on pointer interaction, preventing collapsible expand/collapse from yanking the thread to the bottom

Chores

1
choreupdate @assistant-ui/tap dependency ranges to ^0.7.0
@assistant-ui/react-ag-ui@0.0.38patchGitHub →

Features

1
featrestore multimodal user input (image, audio, video, document, and legacy binary parts) as attachments in fromAgUiMessages, so persisted conversations reload attachments instead of dropping them and re-send them on the next run
@assistant-ui/react-ai-sdk@1.3.35patchGitHub →

Fixes

1
fixattach partial-JSON meta to streaming tool args so consumers can tell which field is still mid-arrival
@assistant-ui/react-devtools@1.2.4patchGitHub →

Chores

1
choreupdate @assistant-ui/tap dependency ranges to ^0.7.0
@assistant-ui/react-generative-ui@0.0.4patchGitHub →

Fixes

1
fixhold back nodes whose $type is still streaming instead of reporting them as unknown components
@assistant-ui/react-hook-form@0.12.19patchGitHub →

Refactors

1
refactorreplace deprecated useAssistantToolUI with the tools client API
@assistant-ui/react-ink@0.0.25patchGitHub →

Docs

1
docsreword the useNotification JSDoc from "pauses for human approval" to "pauses for user input"; the needs-input trigger fires on requires-action with reason interrupt, not on tool approval gates

Chores

1
choreupdate @assistant-ui/tap dependency ranges to ^0.7.0
@assistant-ui/react-ink-markdown@0.0.24patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-markdown@0.14.3patchGitHub →

Features

2
featopt-in defer prop on the markdown text primitives
featpublic, tunable useSmooth
@assistant-ui/react-mcp@0.0.10patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-native@0.1.23patchGitHub →

Chores

1
choreupdate @assistant-ui/tap dependency ranges to ^0.7.0
@assistant-ui/react-o11y@0.0.21patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-opencode@0.2.7patchGitHub →

Fixes

2
fix· react-opencodere-sync thread history, session status, and pending permissions/questions after the event stream reconnects, so events lost while disconnected (e.g. session.idle or permission.asked) cannot leave isRunning stuck or deadlock a run
fix· react-opencodestop re-subscribing to the OpenCode event stream on every render, which could drop session.idle and leave isRunning stuck at true
@assistant-ui/react-streamdown@0.3.3patchGitHub →

Features

2
featopt-in defer prop on the markdown text primitives
featsmooth prop on StreamdownTextPrimitive
@assistant-ui/store@0.2.16patchGitHub →

Features

1
feathost the assistant client with useTapHost so the tap commit runs in the passive phase (no paint blocking); AuiProvider mounts the host's commit effects ahead of its children's effects

Chores

1
choreupdate @assistant-ui/tap dependency ranges to ^0.7.0
@assistant-ui/tap@0.7.1patchGitHub →

Features

1
featadd useTapHost, a React host that commits the resource in the passive phase without blocking paint; the returned per-render effects callback lets descendant consumers mount the commit ahead of their own effects via useEffect(effects). The React bridge hosts (useResource, useResources, useTapRoot) now also commit in useEffect instead of useLayoutEffect.

Fixes

1
fixmatch React semantics: support render-phase updates (setState during render re-renders before committing, capped at 25 passes, instead of throwing; discarded render attempts drop their render-phase dispatches like React; updating a resource other than the one currently rendering throws), apply dispatches exactly once across React-discarded and replayed renders of tap sub-roots, run all effect cleanups before any setups within a commit, and compare only the common prefix of deps arrays that change length (with a dev warning)
assistant-ui@0.0.100patchGitHub →

Docs

1
docsteach defineToolkit instead of deprecated makeAssistantToolUI in the assistant-ui skill
create-assistant-ui@0.0.63patchGitHub →

Jun 9, 2026

6 packages

@assistant-ui/core@0.2.12patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/gorp@0.0.2patchGitHub →

Features

1
featadd gorp state-sync primitives
@assistant-ui/react@0.14.16patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-mcp@0.0.8patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/react-o11y@0.0.19patchGitHub →

Other

1
misc@assistant-ui/[email protected]
@assistant-ui/tap@0.6.1patchGitHub →

Fixes

1
fixkeep the tap React shim compatible with React 18 builds

Jun 8, 2026

38 packages

@assistant-ui/agent-launcher@0.1.6patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/cloud-ai-sdk@0.1.20patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/core@0.2.11patchGitHub →

Features

5
featexpose joinStrategy on useAISDKRuntime / useChatRuntime
featcheck the generative compiler version against the core package compatibility range
featmessage queuing for external-store, langgraph, and local runtimes
featadd externalTool for render-only generative toolkit entries
featrename hitlTool to humanTool while keeping deprecated compatibility aliases

Fixes

2
fixmake defineToolkit usable for plain runtime toolkits
fixmake SimpleTextAttachmentAdapter and SimpleImageAttachmentAdapter work without FileReader. they read files via the browser only FileReader, so sending an attachment in a non browser runtime (e.g. @assistant-ui/react-ink in a terminal) threw ReferenceError: FileReader is not defined. the adapters now feature detect: they keep using FileReader when it exists (browser, and React Native whose Blob polyfill provides it) and fall back to file.text / file.arrayBuffer in Node. output is byte identical across all three environments, so @assistant-ui/react, @assistant-ui/react-native, and @assistant-ui/react-ink all keep re-exporting the same core implementation.

Chores

1
choreupdate dependencies
@assistant-ui/mcp-docs-server@0.1.34patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/metro@0.0.2patchGitHub →

Features

2
featmerge toolkits across "use generative" files and allow a bare defineMcpToolkit default export
featadd @assistant-ui/metro — the "use generative" directive compiler for Expo / React Native, so RN apps author tools with the same defineToolkit API as the web via withAui in metro.config.js

Fixes

1
fixbake the compiler version into the build so the core compatibility check works when the compiler is bundled

Chores

1
choreupdate dependencies
@assistant-ui/next@0.0.5patchGitHub →

Features

1
featrename hitlTool to humanTool while keeping deprecated compatibility aliases

Docs

1
docsreference AISDKToolkit instead of the deprecated generativeTools in the README

Chores

1
choreupdate dependencies
@assistant-ui/react@0.14.15patchGitHub →

Features

3
featmessage queuing for external-store, langgraph, and local runtimes
featadd externalTool for render-only generative toolkit entries
featrename hitlTool to humanTool while keeping deprecated compatibility aliases

Fixes

2
fixmake defineToolkit usable for plain runtime toolkits
fix· mcp-appssend the 2026-01-26 dialect on host→app messages so widgets built with @modelcontextprotocol/ext-apps initialize and receive tool results

Refactors

1
refactorextract a shared sandbox host (SafeContentFrame lifecycle, the single cross-origin guarded message listener, auto-resize) and reuse it for the MCP app frame, with no behavior change

Chores

1
choreupdate dependencies
@assistant-ui/react-a2a@0.2.19patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-ag-ui@0.0.36patchGitHub →

Features

3
featconsume ACTIVITY_SNAPSHOT events to support MCP Apps on the AG-UI runtime
featexport fromAgUiMessages from the package root
featemit AG-UI multimodal input parts (image/audio/video/document with typed data/url sources) for file attachments instead of the legacy binary input content

Fixes

1
fiximport AG-UI reasoning messages from MESSAGES_SNAPSHOT

Chores

1
choreupdate dependencies
@assistant-ui/react-ai-sdk@1.3.33patchGitHub →

Features

1
featexpose joinStrategy on useAISDKRuntime / useChatRuntime

Fixes

2
fix· react-ai-sdkmake the package metro-bundleable in react native / expo by serving a client-only entry under the react-native export condition
fix· react-ai-sdkmake the package root bundle on edge, cloudflare workers, deno, and browsers, not just react native. the node-only stdio MCP transport is now resolved through a package.json "imports" condition (#mcp-stdio), so importing @assistant-ui/react-ai-sdk at root carries the full server toolkit on every target with http/sse MCP working on edge, while stdio MCP throws a clear runtime error only where a subprocess cannot be spawned (browser, react native, edge, workers) instead of breaking the build via @ai-sdk/mcp/mcp-stdio -> node:child_process. node, bun, and deno keep the real stdio transport.

Chores

2
choredeprecate generativeTools in favor of AISDKToolkit
choreupdate dependencies
@assistant-ui/react-data-stream@0.12.17patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-devtools@1.2.3patchGitHub →

Features

2
featsurface full tool metadata (type, provider id, MCP server, providerOptions, deferred-results, backend defaults) in the devtools model context, and redact credentials (apiKey, authorization headers, tokens, MCP server headers/env) at the serializer boundary before they cross the postMessage bridge
featforward the scope graph from the host (each accessor's name, source, query, and available method names) so the devtools frame can show a Scopes tab with the scope hierarchy and a per-scope read-only method catalog

Chores

2
choreupdate dependencies
choreallow @assistant-ui/tap 0.6 in the peer dependency range
@assistant-ui/react-generative-ui@0.0.3patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-google-adk@0.0.15patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-hook-form@0.12.18patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-ink@0.0.24patchGitHub →

Features

3
featadd externalTool for render-only generative toolkit entries
featdefineToolkit and the tool markers (hitlTool / stubTool / providerTool) now have runtime implementations in @assistant-ui/react-ink, so Ink apps author tools with the same defineToolkit API (and typed args) as the web. An Ink app runs in a single Node process with no client/server boundary, so there is nothing for the "use generative" compiler to split: defineToolkit resolves each tool's type at runtime and no build step is required.
featrename hitlTool to humanTool while keeping deprecated compatibility aliases

Fixes

2
fixmake defineToolkit usable for plain runtime toolkits
fix· react-inkblock Enter submission while the thread is running unless the runtime supports queueing. ComposerInput called composer.send unconditionally, so pressing Enter mid-run interrupted the active stream even on runtimes with capabilities.queue: false. It now applies the same gate as the web ComposerInput (isRunning && !capabilities.queue no-ops, keeping the typed text). The onSubmit override path is unaffected; apps using it own their submit behavior.

Chores

1
choreupdate dependencies
@assistant-ui/react-ink-markdown@0.0.23patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-langchain@0.0.13patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-langgraph@0.14.7patchGitHub →

Features

1
featmessage queuing for external-store, langgraph, and local runtimes

Fixes

2
fixbatch parallel tool results so a turn with multiple tool calls resumes in a single run
fixpreserve LangChain reasoning content when summary is absent

Chores

1
choreupdate dependencies
@assistant-ui/react-lexical@0.2.3patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-markdown@0.14.2patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-mcp@0.0.7patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-native@0.1.22patchGitHub →

Features

2
featadd externalTool for render-only generative toolkit entries
featrename hitlTool to humanTool while keeping deprecated compatibility aliases

Fixes

1
fixmake defineToolkit usable for plain runtime toolkits

Chores

1
choreupdate dependencies
@assistant-ui/react-o11y@0.0.18patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-opencode@0.2.6patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-streamdown@0.3.2patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/react-syntax-highlighter@0.14.2patchGitHub →

Chores

1
choreupdate dependencies
@assistant-ui/store@0.2.14patchGitHub →

Refactors

1
refactorrename the client composition and event hooks to the use* convention to match the tap resource API: tapClientResource -> useClientResource, tapClientLookup -> useClientLookup, tapClientList -> useClientList, tapAssistantClientRef -> useAssistantClientRef, tapAssistantEmit -> useAssistantEmit.

Chores

1
choreupdate dependencies
@assistant-ui/tap@0.6.0minorGitHub →

Features

1
featReact integration

Chores

1
choreupdate dependencies
@assistant-ui/vite@0.0.4patchGitHub →

Features

1
featrename hitlTool to humanTool while keeping deprecated compatibility aliases

Chores

1
choreupdate dependencies
@assistant-ui/x-buildutils@0.0.12patchGitHub →

Fixes

1
fixomit onSuccess instead of passing undefined so the tsdown config type-checks under exactOptionalPropertyTypes

Chores

1
choreupdate dependencies
@assistant-ui/x-generative-compiler@0.0.4patchGitHub →

Features

4
featcheck the generative compiler version against the core package compatibility range
featadd externalTool for render-only generative toolkit entries
featmerge toolkits across "use generative" files and allow a bare defineMcpToolkit default export
featrename hitlTool to humanTool while keeping deprecated compatibility aliases

Fixes

2
fixbake the compiler version into the build so the core compatibility check works when the compiler is bundled
fixomit externalTool entries from server toolkits

Chores

1
choreupdate dependencies
assistant-cloud@0.1.32patchGitHub →

Chores

1
choreupdate dependencies
assistant-stream@0.3.21patchGitHub →

Chores

1
choreupdate dependencies
assistant-ui@0.0.99patchGitHub →

Chores

1
choreupdate dependencies
create-assistant-ui@0.0.62patchGitHub →
heat-graph@0.0.11patchGitHub →

Chores

1
choreupdate dependencies
safe-content-frame@0.0.21patchGitHub →

Chores

1
choreupdate dependencies