@@ -51,6 +51,7 @@ async def send_message(
5151 * ,
5252 context : ClientCallContext | None = None ,
5353 request_metadata : dict [str , Any ] | None = None ,
54+ extensions : list [str ] | None = None ,
5455 ) -> AsyncIterator [ClientEvent | Message ]:
5556 """Sends a message to the agent.
5657
@@ -62,6 +63,7 @@ async def send_message(
6263 request: The message to send to the agent.
6364 context: The client call context.
6465 request_metadata: Extensions Metadata attached to the request.
66+ extensions: List of extensions to be activated.
6567
6668 Yields:
6769 An async iterator of `ClientEvent` or a final `Message` response.
@@ -81,7 +83,7 @@ async def send_message(
8183
8284 if not self ._config .streaming or not self ._card .capabilities .streaming :
8385 response = await self ._transport .send_message (
84- params , context = context
86+ params , context = context , extensions = extensions
8587 )
8688 result = (
8789 (response , None ) if isinstance (response , Task ) else response
@@ -91,7 +93,9 @@ async def send_message(
9193 return
9294
9395 tracker = ClientTaskManager ()
94- stream = self ._transport .send_message_streaming (params , context = context )
96+ stream = self ._transport .send_message_streaming (
97+ params , context = context , extensions = extensions
98+ )
9599
96100 first_event = await anext (stream )
97101 # The response from a server may be either exactly one Message or a
@@ -128,17 +132,21 @@ async def get_task(
128132 request : TaskQueryParams ,
129133 * ,
130134 context : ClientCallContext | None = None ,
135+ extensions : list [str ] | None = None ,
131136 ) -> Task :
132137 """Retrieves the current state and history of a specific task.
133138
134139 Args:
135140 request: The `TaskQueryParams` object specifying the task ID.
136141 context: The client call context.
142+ extensions: List of extensions to be activated.
137143
138144 Returns:
139145 A `Task` object representing the current state of the task.
140146 """
141- return await self ._transport .get_task (request , context = context )
147+ return await self ._transport .get_task (
148+ request , context = context , extensions = extensions
149+ )
142150
143151 async def list_tasks (
144152 self ,
@@ -154,57 +162,70 @@ async def cancel_task(
154162 request : TaskIdParams ,
155163 * ,
156164 context : ClientCallContext | None = None ,
165+ extensions : list [str ] | None = None ,
157166 ) -> Task :
158167 """Requests the agent to cancel a specific task.
159168
160169 Args:
161170 request: The `TaskIdParams` object specifying the task ID.
162171 context: The client call context.
172+ extensions: List of extensions to be activated.
163173
164174 Returns:
165175 A `Task` object containing the updated task status.
166176 """
167- return await self ._transport .cancel_task (request , context = context )
177+ return await self ._transport .cancel_task (
178+ request , context = context , extensions = extensions
179+ )
168180
169181 async def set_task_callback (
170182 self ,
171183 request : TaskPushNotificationConfig ,
172184 * ,
173185 context : ClientCallContext | None = None ,
186+ extensions : list [str ] | None = None ,
174187 ) -> TaskPushNotificationConfig :
175188 """Sets or updates the push notification configuration for a specific task.
176189
177190 Args:
178191 request: The `TaskPushNotificationConfig` object with the new configuration.
179192 context: The client call context.
193+ extensions: List of extensions to be activated.
180194
181195 Returns:
182196 The created or updated `TaskPushNotificationConfig` object.
183197 """
184- return await self ._transport .set_task_callback (request , context = context )
198+ return await self ._transport .set_task_callback (
199+ request , context = context , extensions = extensions
200+ )
185201
186202 async def get_task_callback (
187203 self ,
188204 request : GetTaskPushNotificationConfigParams ,
189205 * ,
190206 context : ClientCallContext | None = None ,
207+ extensions : list [str ] | None = None ,
191208 ) -> TaskPushNotificationConfig :
192209 """Retrieves the push notification configuration for a specific task.
193210
194211 Args:
195212 request: The `GetTaskPushNotificationConfigParams` object specifying the task.
196213 context: The client call context.
214+ extensions: List of extensions to be activated.
197215
198216 Returns:
199217 A `TaskPushNotificationConfig` object containing the configuration.
200218 """
201- return await self ._transport .get_task_callback (request , context = context )
219+ return await self ._transport .get_task_callback (
220+ request , context = context , extensions = extensions
221+ )
202222
203223 async def resubscribe (
204224 self ,
205225 request : TaskIdParams ,
206226 * ,
207227 context : ClientCallContext | None = None ,
228+ extensions : list [str ] | None = None ,
208229 ) -> AsyncIterator [ClientEvent ]:
209230 """Resubscribes to a task's event stream.
210231
@@ -213,6 +234,7 @@ async def resubscribe(
213234 Args:
214235 request: Parameters to identify the task to resubscribe to.
215236 context: The client call context.
237+ extensions: List of extensions to be activated.
216238
217239 Yields:
218240 An async iterator of `ClientEvent` objects.
@@ -230,12 +252,15 @@ async def resubscribe(
230252 # we should never see Message updates, despite the typing of the service
231253 # definition indicating it may be possible.
232254 async for event in self ._transport .resubscribe (
233- request , context = context
255+ request , context = context , extensions = extensions
234256 ):
235257 yield await self ._process_response (tracker , event )
236258
237259 async def get_card (
238- self , * , context : ClientCallContext | None = None
260+ self ,
261+ * ,
262+ context : ClientCallContext | None = None ,
263+ extensions : list [str ] | None = None ,
239264 ) -> AgentCard :
240265 """Retrieves the agent's card.
241266
@@ -244,11 +269,14 @@ async def get_card(
244269
245270 Args:
246271 context: The client call context.
272+ extensions: List of extensions to be activated.
247273
248274 Returns:
249275 The `AgentCard` for the agent.
250276 """
251- card = await self ._transport .get_card (context = context )
277+ card = await self ._transport .get_card (
278+ context = context , extensions = extensions
279+ )
252280 self ._card = card
253281 return card
254282
0 commit comments