# adk_ex v0.2.0 - Table of Contents Elixir port of Google's Agent Development Kit (ADK) — agent orchestration, sessions, tools, LLM abstraction, plugins, and telemetry. Transport-agnostic. ## Pages - [ADK Ex](readme.md) - [Changelog](changelog.md) - [Architecture](architecture.md) - [Onboarding Guide](onboarding.md) - [LLM Usage Rules](usage-rules.md) ## Modules - [ADK](ADK.md): Elixir port of Google's Agent Development Kit (ADK). - [ADK.Types.Blob](ADK.Types.Blob.md): Binary data with MIME type. - [ADK.Types.Content](ADK.Types.Content.md): A message containing one or more parts with a role. - [ADK.Types.FunctionCall](ADK.Types.FunctionCall.md): Represents a function call request from an LLM. - [ADK.Types.FunctionResponse](ADK.Types.FunctionResponse.md): Represents a function call response. - [ADK.Types.Part](ADK.Types.Part.md): A single part of a Content message. - Core - [ADK.Event](ADK.Event.md): Represents an interaction event in an agent session. - [ADK.Event.Actions](ADK.Event.Actions.md): Side-effect actions produced by an event. - [ADK.RunConfig](ADK.RunConfig.md): Runtime configuration for agent execution. - [ADK.Runner](ADK.Runner.md): Orchestrates agent execution within a session. - [ADK.Session](ADK.Session.md): Represents a series of interactions between a user and agents. - [ADK.Session.InMemory](ADK.Session.InMemory.md): In-memory session service backed by ETS tables. - [ADK.Session.Service](ADK.Session.Service.md): Behaviour for session storage backends. - [ADK.Session.State](ADK.Session.State.md): Utilities for working with prefixed session state keys. - [ADK.Types](ADK.Types.md): Core content types equivalent to Google's genai SDK types. - Agents - [ADK.Agent](ADK.Agent.md): Behaviour for ADK agents. - [ADK.Agent.CallbackContext](ADK.Agent.CallbackContext.md): Context available to before/after agent callbacks. - [ADK.Agent.Config](ADK.Agent.Config.md): Configuration struct for creating a custom agent via `ADK.Agent.CustomAgent`. - [ADK.Agent.CustomAgent](ADK.Agent.CustomAgent.md): A custom agent built from an `ADK.Agent.Config`. - [ADK.Agent.InvocationContext](ADK.Agent.InvocationContext.md): Immutable context threaded through agent invocations. - [ADK.Agent.LlmAgent](ADK.Agent.LlmAgent.md): An agent backed by a large language model. - [ADK.Agent.LoopAgent](ADK.Agent.LoopAgent.md): An agent that runs its sub-agents iteratively in sequence. - [ADK.Agent.ParallelAgent](ADK.Agent.ParallelAgent.md): An agent that runs all its sub-agents concurrently. - [ADK.Agent.SequentialAgent](ADK.Agent.SequentialAgent.md): An agent that runs its sub-agents once in sequence. - [ADK.Agent.Tree](ADK.Agent.Tree.md): Utilities for working with agent trees (hierarchies of agents and sub-agents). - Tools - [ADK.Tool](ADK.Tool.md): Behaviour for ADK tools. - [ADK.Tool.Context](ADK.Tool.Context.md): Context passed to tool execution. - [ADK.Tool.FunctionTool](ADK.Tool.FunctionTool.md): A tool backed by an anonymous function. - [ADK.Tool.LoadArtifacts](ADK.Tool.LoadArtifacts.md): A tool that loads artifacts by name from the artifact service. - [ADK.Tool.LoadMemory](ADK.Tool.LoadMemory.md): A tool that searches memory for relevant past interactions. - [ADK.Tool.Toolset](ADK.Tool.Toolset.md): Behaviour for dynamic tool providers. - [ADK.Tool.TransferToAgent](ADK.Tool.TransferToAgent.md): A tool that signals a transfer to another agent. - Model - [ADK.Model](ADK.Model.md): Behaviour for LLM model providers. - [ADK.Model.Claude](ADK.Model.Claude.md): Anthropic Claude model provider. - [ADK.Model.Gemini](ADK.Model.Gemini.md): Google Gemini model provider. - [ADK.Model.LlmRequest](ADK.Model.LlmRequest.md): Request to a model's generate_content call. - [ADK.Model.LlmResponse](ADK.Model.LlmResponse.md): Response from a model's generate_content call. - [ADK.Model.Mock](ADK.Model.Mock.md): Mock model for testing without real API calls. - [ADK.Model.Registry](ADK.Model.Registry.md): Resolves model name strings to provider structs. - Flow - [ADK.Flow](ADK.Flow.md): Core execution engine for LLM agents. - [ADK.Flow.Processors.AgentTransfer](ADK.Flow.Processors.AgentTransfer.md): Request processor that injects the `transfer_to_agent` tool and transfer instructions into the LLM request when the current agent has transfer targets. - [ADK.Flow.Processors.Basic](ADK.Flow.Processors.Basic.md): Copies the agent's generate_content_config into the LLM request config. - [ADK.Flow.Processors.Contents](ADK.Flow.Processors.Contents.md): Builds conversation history from session events and appends to the request. - [ADK.Flow.Processors.Instructions](ADK.Flow.Processors.Instructions.md): Injects system instructions into the LLM request. - [ADK.Flow.Processors.ToolProcessor](ADK.Flow.Processors.ToolProcessor.md): Populates the request's tools map and adds function declarations to config. - Services - [ADK.Artifact.InMemory](ADK.Artifact.InMemory.md): In-memory artifact service backed by an ETS table. - [ADK.Artifact.Service](ADK.Artifact.Service.md): Behaviour for artifact storage backends. - [ADK.Memory.Entry](ADK.Memory.Entry.md): A single memory entry extracted from a session event. - [ADK.Memory.InMemory](ADK.Memory.InMemory.md): In-memory memory service backed by an ETS table. - [ADK.Memory.Service](ADK.Memory.Service.md): Behaviour for memory storage backends. - [ADK.Telemetry](ADK.Telemetry.md): Dual telemetry instrumentation for the ADK. - Plugins - [ADK.Plugin](ADK.Plugin.md): Plugin struct for hooking into the agent lifecycle. - [ADK.Plugin.Manager](ADK.Plugin.Manager.md): Chains plugin callbacks. First non-nil return wins (short-circuit).