Skip to content

feat: add A2UI support with OpenUI Lang components - #854

Open
vishxrad wants to merge 16 commits into
mainfrom
codex/a2ui-openui-lang
Open

feat: add A2UI support with OpenUI Lang components#854
vishxrad wants to merge 16 commits into
mainfrom
codex/a2ui-openui-lang

Conversation

@vishxrad

@vishxrad vishxrad commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add the experimental @openuidev/a2ui package
  • preserve A2UI v1.0 lifecycle and message envelopes while representing createSurface.components and updateComponents.components as OpenUI Lang statement strings
  • support the current v1.0 candidate RPC envelopes: callRendererFunction, agentFunctionResponse, callAgentFunction, and rendererFunctionResponse
  • provide a framework-neutral client for surface lifecycle, incremental component and data-model updates, actions, RPC, errors, capabilities, and renderer metadata
  • provide a React adapter that delegates rendering to @openuidev/react-lang
  • publish Zod runtime schemas for both message directions, capabilities, and renderer data-model metadata

Scope

This PR contains the new package, its package and repository documentation, the required workspace lockfile, and the npm publish selector. The example app and changes to lang-core, react-lang, and react-ui remain excluded.

The package keeps statement-level patch handling self-contained so temporarily unreachable components survive until a later update attaches them to root. Hosts can map OpenUI actions to A2UI sourceComponentId values through mapAction; the fallback is root.

Why

We want A2UI to remain the lifecycle and transport protocol. The only wire-level component change is that component arrays contain OpenUI Lang instead of catalog JSON component objects, and the existing OpenUI parser and renderer remain the evaluation path.

Validation

  • 32 package tests, including React rendering, incremental protocol behavior, and bidirectional function calls
  • TypeScript typecheck
  • package build
  • ESLint and Prettier checks
  • Publint
  • Are the Types Wrong package checks
  • docs typecheck, production build, and desktop/mobile browser QA

@vishxrad vishxrad changed the title feat: add A2UI OpenUI Lang support feat: add A2UI support with OpenUI Lang components Jul 31, 2026
@vishxrad
vishxrad marked this pull request as ready for review August 1, 2026 11:59
@vercel

vercel Bot commented Aug 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
openui-docs Ready Ready Preview Aug 28, 2026 3:53pm

Request Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant