All 46 articles, sorted alphabetically
ADK + A2A interop
How Google ADK interoperates with the A2A protocol: exposing an ADK agent tree as an A2A service, publishing an agent card and skills, consuming a rem…
Read article →Agent-as-tool -- composing agents as callable capabilities
Deep-dive on the agent-as-tool composition pattern: a parent calling a sub-agent wrapped as a tool, call-and-return vs sub-agent transfer, encapsulati…
Read article →ADK Agent Lifecycle
A timeline of one ADK agent invocation, end to end: the user message reaching the Runner, the InvocationContext, agent.run_async and the async event l…
Read article →ADK Agent Types
A decision-framework guide to the four families of Google ADK agent: the reasoning, tool-using LlmAgent; the deterministic Workflow agents (Sequential…
Read article →The ADK Artifact Service
Deep-dive on ADK's Artifact Service: named, versioned, immutable blobs stored out of band in a pluggable backend (in-memory or GCS), referenced f…
Read article →ADK caching
Caching for Google ADK agents at every layer: provider-side context and prompt caching and what actually makes a prefix cacheable, request assembly th…
Read article →ADK callbacks architecture
How ADK callbacks actually work: the six before/after hooks around agent, model, and tool; the return-None-or-replace contract; CallbackContext and To…
Read article →ADK circuit breaker architecture
Resilience patterns for ADK agents: the closed/open/half-open circuit breaker with concrete rate-and-volume thresholds, why naive retry amplifies an o…
Read article →ADK code executor -- letting the agent run code safely
Deep-dive on the ADK code executor: the computation need, the code execution tool (agent writes and runs code), the sandbox, result feedback, iteratin…
Read article →ADK Context Compaction: Architecture Deep-Dive
How ADK reconciles unbounded session history with a bounded context window — token budgeting, pinned invariants, the elision-to-summarization ladder, …
Read article →ADK deployment architecture
Getting a Google ADK agent to production: the agent package layout, containerizing the API server, the three deployment targets (Agent Engine, Cloud R…
Read article →Building an Agent Eval Harness
A hands-on reference for the ADK evaluation harness: the two artifacts (a lightweight .test.json vs a .evalset.json of many cases), what an eval case …
Read article →ADK evaluation architecture
The architecture of evaluating ADK agents: eval sets and replay, the two scoring axes of tool trajectory versus final response, designing a rubric an …
Read article →ADK Events
A deep dive on ADK Events: the Event object (author, content, actions, invocation_id, timestamp), how agents yield events as an async stream, how the …
Read article →ADK guardrail architecture
Policy design for ADK agent guardrails: the capability envelope, provenance and trust boundaries, input screening, tool-use authorization by subject a…
Read article →ADK Guardrails Pattern
Hands-on implementation patterns for agent guardrails in Google ADK using callbacks: validate and sanitize user input in before_model_callback and sho…
Read article →ADK LlmAgent
A deep dive on ADK's LlmAgent: the instruction/system prompt and how session state is templated into it, model selection across Gemini an…
Read article →ADK long-running tools
Deep-dive on long-running tools in an agent development kit: a tool that starts async work and returns an operation handle, session pause with durable…
Read article →ADK Memory
A developer's guide to memory in Google's ADK: the distinction between short-term memory (a single Session's ev…
Read article →ADK memory bank
How a long-term memory bank works behind ADK's MemoryService: where the Session/State boundary falls, what is worth persisting, extractin…
Read article →ADK model fallback architecture
Deep-dive on model fallback in the Agent Development Kit: the swappable model abstraction, a health check that classifies failures into retry/next-tie…
Read article →ADK multi-agent architecture
How to compose multiple agents in Google ADK: the sub_agents hierarchy and its one-parent rule, LLM transfer versus AgentTool, description-driven rout…
Read article →ADK multimodal
A practical guide to non-text content in Google ADK: how images, audio, video and documents are typed as content parts, inline blobs versus file URIs …
Read article →ADK observability architecture
Running Google ADK agents observably in production: the four-lens architecture (events, traces, metrics, quality signals), the correlation contract th…
Read article →ADK Observability and Traces
A deep dive on tracing Google ADK agents with OpenTelemetry: the span tree a single invocation produces (agent span, LLM call spans, tool call spans, …
Read article →Google ADK Overview
An orientation to Google's Agent Development Kit (ADK): what it is and why it exists, its code-first Python and Java model, the core buil…
Read article →ADK planning architecture
Planning inside a single ADK agent: ReAct-style interleaved reasoning versus plan-then-execute, what the planner slot on an LlmAgent actually injects,…
Read article →ADK plugin system architecture
Deep-dive on the Agent Development Kit plugin system: registering plugins with the Runner to run before/after agent, tool, and model callbacks across …
Read article →ADK RAG grounding
Deep-dive on RAG grounding in Google ADK: retrieval as a tool versus retrieval built into the turn, chunking and indexing choices, hybrid search and r…
Read article →ADK runtime architecture
How the Google ADK runtime actually executes: the Runner as entry point, run_async as an async generator of events, invocation context, what an Event …
Read article →ADK Safety Evaluation
How to evaluate agent safety in Google's ADK: why safety eval differs from capability eval, building adversarial and red-team test sets (…
Read article →Sandboxing ADK agents
Execution isolation for ADK agents: why model-generated code must never run in your process, the isolation ladder from exec() to containers to gVisor …
Read article →ADK session resumption architecture
Deep-dive on ADK session resumption: the session store and append-only event log, checkpointing on each event and recovering on reconnect, resume toke…
Read article →ADK Session Storage
A production guide to ADK session storage backends: InMemorySessionService for dev and tests, DatabaseSessionService on SQLAlchemy (Postgres/MySQL/SQL…
Read article →ADK Sessions
A deep dive on ADK Sessions: the Session object as the unit of a conversation, what it holds (id, app_name, user_id, the ordered events list, the stat…
Read article →ADK sessions, state, and memory
How Google ADK models a conversation: the Session as the unit of a thread, the append-only event list as the durable record, State as a fold of state …
Read article →ADK Skills
What a ‘skill’ means in Google ADK: not a formal class, but a reuse and composition pattern — bundling cohesive to…
Read article →ADK State Management
A deep dive on state mechanics in Google's Agent Development Kit: the session.state dict as a shared scratchpad, the session / user: / ap…
Read article →ADK streaming architecture
How streaming actually works in ADK: the event stream as the API, partial versus aggregated events, StreamingMode SSE and BIDI, run_live and the LiveR…
Read article →Tool authentication architecture
Deep-dive on tool authentication in agent frameworks like ADK: how an agent calls authenticated external APIs and MCP servers without ever holding a r…
Read article →ADK Tool Design Patterns
Design patterns for building good ADK tools: the docstring and type hints as the contract the model reads, returning structured dicts with a status fi…
Read article →ADK tool architecture
How the ADK tool system actually works: what a tool is under the BaseTool abstraction, how function declarations are generated from type hints and doc…
Read article →Building a Voice Agent with ADK
A hands-on guide to building voice and live-audio agents with Google ADK: native audio versus cascaded ASR-LLM-TTS, the run_live bidirectional runtime…
Read article →ADK workflow agents architecture
Deep-dive on ADK workflow agents: SequentialAgent, ParallelAgent, and LoopAgent as deterministic control-flow primitives wrapping LLM sub-agents, sess…
Read article →Scaling ADK Agents on Vertex AI Agent Engine Runtime
A deep dive on scaling ADK agents on Google Cloud's Vertex AI Agent Engine: serverless vs orchestrated runtimes, cost optimization with C…
Read article →State Management and Callbacks in Complex Asynchronous ADK Workflows
In a sophisticated agentic system, many valuable tasks are not instantaneous.
Read article →