-
Notifications
You must be signed in to change notification settings - Fork 717
Open
Labels
component:documentationUpdate docsUpdate docs
Description
📚 Documentation Enhancement Suggestions for ADK
Hi team, while working extensively with the ADK agent system, I’ve encountered a few gaps in documentation that would greatly benefit from clarification. Here are my suggestions to improve the developer experience and make agent development more predictable and frontend-friendly:
1. 🔁 Callback Behavior (Short-circuiting & Flow Control)
Please document what happens when a callback returns a Content
object, especially in:
after_tool_callback
after_model_callback
after_agent_callback
For example:
- Returning a
Content
fromafter_tool_callback
prevents the model from being called again. after_agent_callback
is skipped if a previous callback has already returned a final result.
📌 This kind of flow control is critical to understand but currently undocumented.
2. 🧱 Structuring Final Agent Response for Frontend Chatbots
Please document best practices or built-in support for:
- Structuring final responses in a predictable JSON schema.
- Defining a response contract that works for custom chatbot UIs.
- Adding custom metadata to responses (e.g.,
type: info | success | error
,quickReplies
, etc.)
3. 🔘 Adding Buttons / Quick Replies in Final Agent Response
There is no clear guidance on how to:
- Add buttons or interactive elements (like "quick replies") to the agent response.
- Define such buttons using
FunctionCall
,Part
, or metadata. - Support multi-modal outputs with both text and structured UI actions.
It would be helpful to show examples that include:
{
"text": "Would you like to proceed?",
"buttons": [
{ "label": "Yes", "action": "proceed_yes" },
{ "label": "No", "action": "proceed_no" }
]
}
Metadata
Metadata
Assignees
Labels
component:documentationUpdate docsUpdate docs