Skip to content

Created a new agent to showcase the list of components in the std catalog. Also fixed a few component bugs#596

Merged
dmandar merged 8 commits intomainfrom
md-componentslistagent
Feb 6, 2026
Merged

Created a new agent to showcase the list of components in the std catalog. Also fixed a few component bugs#596
dmandar merged 8 commits intomainfrom
md-componentslistagent

Conversation

@dmandar
Copy link
Collaborator

@dmandar dmandar commented Feb 4, 2026

Description

Replace this paragraph with a description of what this PR is changing or adding, and why. Consider including before/after screenshots.

List which issues are fixed by this PR. For larger changes, raising an issue first helps reduce redundant work.

Pre-launch Checklist

If you need help, consider asking for advice on the discussion board.

@github-project-automation github-project-automation bot moved this to Todo in A2UI Feb 4, 2026
@dmandar dmandar changed the title Created a new agent to showcase the list of components in the std catalog. Created a new agent to showcase the list of components in the std catalog. Aso fixed a few component bugs Feb 4, 2026
@dmandar dmandar changed the title Created a new agent to showcase the list of components in the std catalog. Aso fixed a few component bugs Created a new agent to showcase the list of components in the std catalog. Also fixed a few component bugs Feb 4, 2026
@dmandar
Copy link
Collaborator Author

dmandar commented Feb 4, 2026

Screenshot 2026-02-03 at 10 24 53 PM

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new component gallery sample, which is a valuable addition for demonstrating A2UI capabilities. The changes include a new agent, a Lit-based client, and improvements to existing UI components, notably a much-improved MultipleChoice component. While this is a great feature, there are several areas for improvement. The new code appears to have been partially copied from another sample, resulting in confusing naming and some irrelevant files that should be cleaned up. The new agent code also has some Python style guide violations. Finally, this large addition of functionality lacks corresponding tests for the agent logic, which is something to address per the repository's contribution guidelines.

@dmandar
Copy link
Collaborator Author

dmandar commented Feb 4, 2026

Will be overhauling docs for this and other changes in a followup PR

dmandar and others added 3 commits February 3, 2026 22:59
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Copy link
Collaborator

@jacobsimionato jacobsimionato left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm wondering if we can tweak the structure of this to try to aim for consistency and reduce the overall side of the code we are maintaining.

There are already a couple of examples of galleries:

I do think it'd be nice to have a gallery for each renderer, so we can compare how they render. I believe the other two galleries use the React and Angular renderers, so there is value in creating a Lit sample. How about trying to follow the structure of the other apps, to aim for consistency? This might involve:

  • Building this as a client-only app rather than an agent + client. I'm not sure if the agent adds much value if it just outputs canned content.

  • Reusing the same sample content as the other gallery apps. I think AG-UI folk provided nice sample content. Maybe we can reuse that in the other galleries? Then it's easy to compare between them.

@dmandar
Copy link
Collaborator Author

dmandar commented Feb 5, 2026

I'm wondering if we can tweak the structure of this to try to aim for consistency and reduce the overall side of the code we are maintaining.

There are already a couple of examples of galleries:

I do think it'd be nice to have a gallery for each renderer, so we can compare how they render. I believe the other two galleries use the React and Angular renderers, so there is value in creating a Lit sample. How about trying to follow the structure of the other apps, to aim for consistency? This might involve:

  • Building this as a client-only app rather than an agent + client. I'm not sure if the agent adds much value if it just outputs canned content.
  • Reusing the same sample content as the other gallery apps. I think AG-UI folk provided nice sample content. Maybe we can reuse that in the other galleries? Then it's easy to compare between them.

I think there is value in having the agent as it is an e2e loop that gets tests - this is how most customers would use it too. In the sample, clicking on the log value button, the action is sent up to the agent and the agent updates a second surface.
I agree it will be nice to have the same overall layout for all renderers, i can do that as a followup. This is to unblock an internal team who wants to see this list. Also, this sample has an event logger built in which adds transparency to how things work internally

Copy link
Collaborator

@gspencergoog gspencergoog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a rubber stamp, as I'm not qualified for the web code.

LGTM

@jacobsimionato jacobsimionato requested a review from ditman February 6, 2026 04:53
@dmandar
Copy link
Collaborator Author

dmandar commented Feb 6, 2026

I will check this in given the urgency and there are minimal renderer changes (bug fixes only). Will do any changes in followup as reqd

@dmandar dmandar dismissed jacobsimionato’s stale review February 6, 2026 18:37

Chatted offline. We will have any followup request from dit addressed later.

@dmandar dmandar merged commit 401409e into main Feb 6, 2026
10 checks passed
@dmandar dmandar deleted the md-componentslistagent branch February 6, 2026 18:37
@github-project-automation github-project-automation bot moved this from Todo to Done in A2UI Feb 6, 2026
Copy link
Collaborator

@ditman ditman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some small comments in general. The changes to the web renderer seem all right. The new example app is rather large, but if you like it, let's go with it.

Note that there's a bunch of missing copyright notices at the top of the python code that should be there.

Comment on lines +195 to +197
return Array.isArray(this.selections) ? this.selections : [];
}
if (Array.isArray(this.selections)) {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is the Array.isArray(this.selections) check duplicated?

Comment on lines +74 to +75


Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why the extra whitespace?

(PS: We probably need autoformatting rules in the repo)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this file needa copyright header, like the a2ui schema?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Same comment about the copyright header)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Missing copyright header)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copyright header missing.

Also it might be nice to have an example of a silly tool for demonstration purposes (or remove the wiring for the empty file for clarity of the sample?)


## Running

This sample depends on the Lit renderer. Before running this sample, you need to build the renderer.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you also add a script(s) to run the sample in the samples/lit/package.json?

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

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants