-
Notifications
You must be signed in to change notification settings - Fork 2k
Open
Labels
core[Component] This issue is related to the core interface and implementation[Component] This issue is related to the core interface and implementation
Description
class RemoteA2aAgent(BaseAgent):
takes in an a2a_client_factory: Optional[A2AClientFactory] = None
but within:
async def _ensure_httpx_client(self) -> httpx.AsyncClient:
it overwrites it:
self._a2a_client_factory = A2AClientFactory(
config=dataclasses.replace(
self._a2a_client_factory._config,
httpx_client=self._httpx_client,
)
)
which means I can't sub-class it. This is an issue because I need to override the create
of A2AClientFactory
.
Describe the solution you'd like
Allow the user to provide an A2AClientFactory
that will be called to create the A2AClient
.
Describe alternatives you've considered
For now I've resolved to monkey patching, which is far from ideal.
Additional context
This is needed in the context of the A2A <> x402 implementation, to get RemoteA2aAgent
working with the x402
spec over A2A
.
Metadata
Metadata
Assignees
Labels
core[Component] This issue is related to the core interface and implementation[Component] This issue is related to the core interface and implementation