Skip to content

Conversation

@SudoUserReal
Copy link

@SudoUserReal SudoUserReal commented Dec 18, 2025

Add React Renderer for A2UI

Background

We are front end team from ByteDance. Earlier this year, we independently explored approaches to standardize Agent-to-UI (A2UI) interactions within our organization. Upon discovering the A2UI project, we found strong alignment with our technical direction and decided to contribute to the community's growth rather than maintaining a parallel solution.

As React is the predominant frontend stack within our organization, contributing a React Renderer is our first step toward enriching the A2UI ecosystem.

Motivation

  • Ecosystem Completeness: React is one of the most widely adopted frontend frameworks globally. Providing a high-quality React renderer lowers the barrier to entry for a broad developer community.
  • Battle-Tested Experience: Our internal explorations have provided us with practical insights into the challenges of Agent-to-UI rendering, which we aim to incorporate into this contribution.

What's Included

  • Core React Renderer: A complete implementation following the A2UI specification.
  • Example Application: A sample client demonstrating integration patterns and best practices.

Semi Design A2UI Roadmap

We plan to introduce first-class A2UI support to our open-source React component library, @douyinfe/semi-ui (Semi Design).

About Semi Design: Developed since 2019, Semi Design originated from complex real-world scenarios across ByteDance's diverse business lines. It currently powers nearly a thousand platform products and serves over 100,000 users. With 9.6k+ GitHub stars, it is a mature, production-hardened UI system.

Target: 2026 Q1

  • Official A2UI Integration: Native A2UI support and comprehensive documentation within Semi Design.
  • AI-Native Optimizations: Enhancing component schemas to be more "agent-friendly" for better generation and manipulation by LLMs.

Ongoing Commitment

We are committed to the long-term maintenance of A2UI support, including tracking specification updates, addressing community feedback, and continuously refining AI-friendly UI patterns. We believe that enabling established component libraries with A2UI support is key to accelerating ecosystem adoption.

Feedback Welcome

We welcome feedback and suggestions from the maintainers and the community. We are ready to iterate on this implementation based on your input.

Thank you for reviewing this PR.

@SudoUserReal SudoUserReal changed the title 【】Feat: Add React Renderer for A2UI 【WIP】Feat: Add React Renderer for A2UI Dec 18, 2025
@SudoUserReal
Copy link
Author

Sample screen recording

Resaurant Finder

restaurants.webm

Contact Manager

contact_manager.webm

Custom Component

custom_components.webm

@SudoUserReal SudoUserReal changed the title 【WIP】Feat: Add React Renderer for A2UI Feat: Add React Renderer for A2UI Dec 19, 2025
@SudoUserReal
Copy link
Author

We plan to provide long-term maintenance for A2UI React Render if our PR gets merged.

@tommytroylin
Copy link

no offense, but a direct dependency on semi-ui is not ideal for all react renderer users

@SudoUserReal
Copy link
Author

After researching the render implementations for both Lit and Angular, we found that the renderer requires a baseline set of UI components to support its core functionality. We chose to integrate a mature component library rather than implementing simple components directly within the renderer — this approach allows us to keep the renderer's maintenance scope focused on rendering logic itself, while also providing A2UI users with a polished, out-of-the-box UI experience.

For users who prefer not to use the built-in UI components, A2UI provides the registerCustomComponent API to register custom components as needed.

That said, if the team would prefer that we remove the component library dependency and implement these components natively within the renderer, we're happy to revise this PR accordingly.

@jem-computer
Copy link

I love that you're doing this!

Maybe I'm misinterpreting the goal of A2UI but my read is that it should be implementation-agnostic - semi-ui is neat, but I don't think the official React renderer should have a hard dependency on it!

(like everyone else lol) I'm also working on a React renderer - open to collaboration or sharing our different sketches 💖

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.

3 participants