feat: add support for extendedAgentCard on client side#234
feat: add support for extendedAgentCard on client side#234guglielmo-san merged 14 commits intoa2aproject:mainfrom
Conversation
Summary of ChangesHello @guglielmo-san, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request enhances the client-side capabilities by adding support for fetching and utilizing an 'extended' agent card. This involves modifying the core Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request adds client-side support for fetching an authenticated extended agent card. The changes introduce a new method getAgentCard on the Client class and update the transport layer accordingly. While the overall goal is clear, I've identified a few areas for improvement in the implementation. Specifically, making the agentCard property mutable is a significant change to the class's public API and could introduce risks. The new getAgentCard method has a race condition and a potentially misleading name due to its side effects. I've also suggested adding a test case to cover the scenario where an extended card is not supported, to ensure the new logic is fully tested. The other changes in the transport layer and interface definitions look correct.
Co-authored-by: Ivan Shymko <vana.shimko@gmail.com>
Co-authored-by: Ivan Shymko <vana.shimko@gmail.com>
Co-authored-by: Ivan Shymko <vana.shimko@gmail.com>
🤖 I have created a release *beep* *boop* --- ## [0.3.6](v0.3.5...v0.3.6) (2025-12-10) ### Features * add support for extendedAgentCard on client side ([#234](#234)) ([3073376](3073376)) * Add support for extension headers on client side ([#227](#227)) ([8c57002](8c57002)) * implement client interceptors ([#223](#223)) ([5694c22](5694c22)) * Implement extended card support on server side ([#197](#197)) ([45014ac](45014ac)) * implement server http+json ([#142](#142)) ([f20e662](f20e662)) * introduce AgentCardResolver ([#225](#225)) ([ddaf7de](ddaf7de)) * introduce transport agnostic client ([#198](#198)) ([94a9848](94a9848)) * server side support for extensions ([5ef7396](5ef7396)) * support authentication on server side ([#195](#195)) ([9872d93](9872d93)) ### Bug Fixes * handle errors occurred in non-blocking sendMessage ([#187](#187)) ([e55c0f4](e55c0f4)) ### Miscellaneous Chores * set version to 0.3.6 ([#191](#191)) ([3f8cea0](3f8cea0)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: Ivan Shymko <ishymko@google.com>
Description
This PR adds the support on client side for the getAuthenticatedExtendedCard api.
Fixes #196 🦕
Release-As: 0.3.6