a2ui-project / a2ui-project/a2ui

Gaps in A2UI Specification & Extensibility Guidance

Open
#871 2 comments 1 reaction 1 assignee Claimed by @jacobsimionato View on GitHub
P3 question
Dominant language
TypeScript
Stars
16.4k
Forks
1.3k
Avg merge
2d 13h
Merged PRs (30d)
134

Description

Hi there,

This is mainly a clarification on what to expect from A2UI as a mindset. I’m evaluating A2UI as a standard for enterprise UI generation, and I’ve noticed some gaps in the current specification and renderer packages.

A few examples:
- Some controls exist but are underspecified (e.g., Date control lacks support for date ranges or extended attributes).
- Some common controls are missing entirely (e.g., time picker, color picker, grid, charts, maps, rating).
- In several cases, the renderer implementation supports only basic attributes, limiting real-world use.

This raises a few important questions:
- Are organizations expected to use A2UI as-is, despite that builtin controls provide limited attributes?
- Is the intention that teams should implement their own renderers, while only reusing A2UI structure?
- If organizations extend the A2UI specification, how should they maintain compatibility with the standard renderer?
- Is there a roadmap or strategy for extensibility and custom controls (e.g., extension schemas, plugin model, namespacing)?

From an enterprise perspective, extensibility seems critical—especially for agent-generated UIs that may need both standard compatibility and enriched experiences depending on the renderer.

I am aware of how to add custom components or nodes to the catalog, but what about extending the builtin catalog components e.g. button, textfield, if a behaviour or attribute is not available what is the recommended appraoch, should I introduce a new custom node adding the missing behaviour or there is a way to extend the behaviour of builtin nodes.

I used this as a reference: https://github.com/zeroasterisk/A2UI-1/blob/eda1e6c9d087b79cd8393041f83d8f0995c6f121/docs/guides/custom-components.md

There is a debate that I would like to confirm, If Company X Agent is using a standard A2UI catalog that will produce a standard A2UI JSON response where a standard A2UI render able to understand and render. However If Company Y Agent, is using a Custom A2UI catalog (YouTube, Maps, Charts, etc) that will produce custom A2UI JSON reponse, now the Standard A2UI renderer will not be able to render that JSON cause some JSON nodes requiers components that standard A2UI renderer doesn't know anything about.

The common understanding is, if the agent and client use the same A2UI protocol/catalog, then Agent by Compay X can be used By a Client Renderer from company Y. But since Agent of Company X can use a custom catalog it can produce a response that Client Renderer from company Y CANNOT understand, because simply the renderer catalog doesn't have this component.

Would appreciate guidance on the intended direction here.

Thanks!

Contributor guide

Open the contributing guide

Research direction

Review the A2UI specification and renderer packages to understand the current control set and extensibility mechanisms. Examine the custom components guide at docs/guides/custom-components.md and the existing catalog implementation. Determine the intended direction for extending built-in nodes versus creating custom nodes, and assess compatibility strategies between different renderers and catalogs.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.