Conversation
b4e907b to
ab49ba9
Compare
There was a problem hiding this comment.
Code Review
This pull request is a large-scale refactoring that restructures the Python SDK into the agent_sdks folder, improving project organization. A key design change is that component catalogs are now expected to be standalone, with the SDK no longer resolving $refs to other catalogs. This simplifies the SDK's logic but places more responsibility on catalog creators. The A2uiSchemaManager API has been significantly updated to reflect this new approach. My review includes a couple of suggestions to address a potential regression and improve adherence to Python best practices in the new API.
a075f5a to
d211021
Compare
The basic catalog maintained by the A2UI team has no difference from third-party catalogs. This PR removes the notion of custom catalogs. Each catalog provided at runtime should be independent and immutable. At build time, catalogs can refer to components from other catalogs. They need to be bundled into a free-standing one using the `tools/build_catalog/build_catalog.py` script. Fixes google#650
The code is reorganized with the following structure
```
agent_sdks/python
- src/a2ui
- core
- schema
- manager.py
- validation.py
- payload_fixer.py
- ...
- template
- ...
- inference_stategy.py
- adk
- a2a_extension
- a2ui_extension.py
- send_a2ui_to_client_toolset.py
```
Tested:
- [x] All individual sample ADKs are working with connected client.
- [x] The orchestrator sample is also working with all sub-agents.
This comment was marked as spam.
This comment was marked as spam.
|
SGTM overall! I am wondering:
|
|
a2ui_extension.py only depends on the A2A sdk, not the ADK could we rename it to a2a.py and put it at base? we'd expect another file mcp.py, and interactions_api.py |
Description
The code is reorganized with the following structure
Tested:
Pre-launch Checklist
If you need help, consider asking for advice on the discussion board.