Vibeleaderboard
Index / agent

Agent Development Kit (ADK) for Go

https://github.com/google/adk-go
Visit google.github.io
Category
AI Agents
Rank
Pricing
Open Source
Type
AGENT
Builder
google
Latest release
v1.6.1
Date

About

Google's open-source Go toolkit for building, evaluating, and deploying production-grade AI agents — the Go counterpart to adk-python.

What it does

ADK gives Go applications a programmable runtime for agent trees. Agents stream events, call models and tools, delegate to children, retain session memory, manage artifacts, and pause sensitive tool work for human confirmation. Context objects carry invocation state, cancellation, isolation, and runtime configuration through each call.

Why it's ranked here

The toolkit covers more than prompt dispatch. It defines agent composition, streaming and live sessions, lifecycle interception, authentication, telemetry dependencies, memory, artifacts, and controlled concurrency. Its strongest case is a Go service that needs explicit orchestration boundaries. The exposed Google Gen AI types and large dependency graph temper the model-agnostic claim.

What's good

Agent runs expose streamed events rather than forcing a single blocking response. Before and after hooks can intercept runs, agents, models, and tools. Context-scoped time, identifier, and task providers improve deterministic testing and host integration. Authentication covers bearer tokens, header keys, OAuth token sources, default Google credentials, and service accounts without reimplementing token refresh.

Tradeoffs

The model contract directly uses Google Gen AI request and response types, so alternative model adapters still meet a Google-shaped boundary. Custom agents must currently use supplied constructors because direct interface implementation is intentionally restricted. The module brings many cloud, telemetry, database, protocol, and model-client dependencies. Explicit service-account keys also require scopes for access tokens.

How to use it well

Pick it for Go teams building event-driven agent services that need delegation, tool approval, streaming, memory, artifacts, and lifecycle policy in code. Wrap model access behind local adapters and inject time, identifiers, and task execution for tests. Treat it as an orchestration library, not a standalone model API or a visual agent builder.

Technical notes+

go.mod declares module google.golang.org/adk/v2 and Go 1.26.5, with direct dependencies for Gen AI, OpenAI, MCP, A2A, OpenTelemetry, Google Cloud, SQLite, gRPC, and Cobra. model/llm.go defines LLM.GenerateContent as an iter.Seq2 stream and embeds genai types in the request and response surface. agent/agent.go routes streamed session events through telemetry and ordered before and after callbacks. agent/context.go combines invocation, state, memory, artifact, confirmation, cancellation, and dynamic scheduling concerns. platform/exec.go defaults to one goroutine per task but accepts a context-carried TaskRunner. platform/time.go and platform/uuid.go provide context-scoped substitutions. auth/providers.go defers credential-source initialization until first use, shares an in-flight attempt, bounds initialization with a timeout, caches success, and retries after failure. internal/style_test.go walks Go files to enforce copyright headers while excluding copied or vendored directories.

Observed

License
Apache License 2.0, with a separate exception noted for internal/httprr
Primary language
Go
Install surface
Go module google.golang.org/adk/v2, installed with go get
Interface
Code-first Go library with streaming agent and model interfaces
Protocols and clients
Direct dependencies include MCP, A2A, OpenAI, gRPC, and Google Gen AI packages
Deployment posture
The README states container deployment support and specifically names Google Cloud Run
Testing structure
A repository-wide style test checks copyright headers on Go files

Read from README.md, go.mod, internal/style_test.go, auth/doc.go, model/llm.go, agent/live.go, agent/agent.go, agent/loader.go, platform/doc.go, agent/context.go, platform/exec.go, platform/time.go, platform/uuid.go, plugin/plugin.go, auth/providers.go.

What it can do

  • Build AI agents

    Go code and agent specificationsFunctional AI agent applications

  • Evaluate AI agent performance

    AI agent and test scenariosPerformance metrics and evaluation results

  • Deploy AI agents to production

    Developed AI agent codeProduction-ready AI agent deployment

  • Integrate with Go applications

    Existing Go codebase and ADK toolkitGo application with embedded AI agent capabilities

  • Configure agent behavior

    Agent parameters and configuration settingsCustomized AI agent with specific behaviors

  • Test agent functionality

    Agent code and test casesTest results and validation reports

Tags

agentsgogooglesdkllm

Tech Stack

Go

Media

Agent Development Kit (ADK) for Go

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.