diff --git a/docs/tools/authentication.md b/docs/tools/authentication.md index 14b9aa004..c00b3d3f1 100644 --- a/docs/tools/authentication.md +++ b/docs/tools/authentication.md @@ -365,6 +365,20 @@ if auth_request_function_call_id and auth_config: ``` +!!! note "Note: Authorization response with Resume feature" + + If your ADK agent workflow is configured with the + [Resume](/adk-docs/runtime/resume/) feature, you also must include + the Invocation ID (`invocation_id`) parameter with the authorization + response. The Invocation ID you provide must be the same invocation + that generated the authorization request, otherwise the system + starts a new invocation with the authorization response. If your + agent uses the Resume feature, consider including the Invocation ID + as a parameter with your authorization request, so it can be included + with the authorization response. For more details on using the Resume + feature, see + [Resume stopped agents](/adk-docs/runtime/resume/). + **Step 5: ADK Handles Token Exchange & Tool Retry and gets Tool result** * ADK receives the `FunctionResponse` for `adk_request_credential`. diff --git a/docs/tools/confirmation.md b/docs/tools/confirmation.md index 31a06a155..a277e351d 100644 --- a/docs/tools/confirmation.md +++ b/docs/tools/confirmation.md @@ -207,6 +207,20 @@ requirements: - The `response` object contains the confirmation status and any additional payload data required by the tool. +!!! note "Note: Confirmation with Resume feature" + + If your ADK agent workflow is configured with the + [Resume](/adk-docs/runtime/resume/) feature, you also must include + the Invocation ID (`invocation_id`) parameter with the confirmation + response. The Invocation ID you provide must be the same invocation + that generated the confirmation request, otherwise the system + starts a new invocation with the confirmation response. If your + agent uses the Resume feature, consider including the Invocation ID + as a parameter with your confirmation request, so it can be + included with the response. For more details on using the Resume + feature, see + [Resume stopped agents](/adk-docs/runtime/resume/). + ## Known limitations {#known-limitations} The tool confirmation feature has the following limitations: @@ -219,4 +233,4 @@ The tool confirmation feature has the following limitations: ## Next steps For more information on building ADK tools for agent workflows, see [Function -tools](/adk-docs/tools/function-tools/). \ No newline at end of file +tools](/adk-docs/tools/function-tools/). diff --git a/docs/tools/function-tools.md b/docs/tools/function-tools.md index f466e828e..1b05f0eef 100644 --- a/docs/tools/function-tools.md +++ b/docs/tools/function-tools.md @@ -241,6 +241,20 @@ Define your tool function and wrap it using the `LongRunningFunctionTool` class: Agent client received an event with long running function calls and check the status of the ticket. Then Agent client can send the intermediate or final response back to update the progress. The framework packages this value (even if it's None) into the content of the `FunctionResponse` sent back to the LLM. +!!! note "Note: Long running function response with Resume feature" + + If your ADK agent workflow is configured with the + [Resume](/adk-docs/runtime/resume/) feature, you also must include + the Invocation ID (`invocation_id`) parameter with the long running + function response. The Invocation ID you provide must be the same + invocation that generated the long running function request, otherwise + the system starts a new invocation with the response. If your + agent uses the Resume feature, consider including the Invocation ID + as a parameter with your long running function request, so it can be + included with the response. For more details on using the Resume + feature, see + [Resume stopped agents](/adk-docs/runtime/resume/). + ??? Tip "Applies to only Java ADK" When passing `ToolContext` with Function Tools, ensure that one of the following is true: @@ -354,4 +368,4 @@ The `AgentTool` class provides the following attributes for customizing its beha 3. Behind the scenes, the `main_agent` will call the `summary_agent` with the long text as input. 4. The `summary_agent` will process the text according to its instruction and generate a summary. 5. **The response from the `summary_agent` is then passed back to the `main_agent`.** -6. The `main_agent` can then take the summary and formulate its final response to the user (e.g., "Here's a summary of the text: ...") \ No newline at end of file +6. The `main_agent` can then take the summary and formulate its final response to the user (e.g., "Here's a summary of the text: ...")