Python framework for building AI agents that use LLMs and tools, and coordinate with each other in multi-agent workflows.
google/adk-java
A code-first Java toolkit from Google for building, evaluating, and deploying AI agents, with a Python-ADK-style API.
- Stars
- 1,755
- Forks
- 440
- Open issues
- 116
- Last commit
- 17 hours ago
What is it?
ADK for Java is a toolkit for building AI agents in Java. Agent behavior, orchestration, and tool use are defined directly in code, which makes agents easier to test, version, and debug than configuration-driven approaches.
The API mirrors the Python ADK. An LlmAgent is configured with a name, description, model, instruction, and tools through a builder. Tools can be pre-built ones such as Google Search, custom Java functions, or tools generated from OpenAPI specs. Multiple specialized agents can be composed into hierarchies for multi-agent systems.
The project includes a built-in development UI for testing, debugging, and showcasing agents, and it supports agent-to-agent communication through the A2A protocol. Maven artifacts are published to Maven Central, and the project is licensed under Apache 2.0.
Key features
- 01Define agent logic, tools, and orchestration directly in Java code.
- 02Use built-in tools such as Google Search, custom functions, or OpenAPI-based tools.
- 03Compose multiple specialized agents into hierarchical multi-agent systems.
- 04Test, evaluate, and debug agents with a built-in development UI.
- 05Communicate with remote agents through the A2A protocol.
Use cases
- Building Java backend services that add LLM-driven agents with tool calling.
- Creating agents that search the web or call internal APIs described by OpenAPI specs.
- Prototyping and debugging multi-agent workflows in a local development UI.
- Deploying agents to Google Cloud from a Java codebase.
Quick start
- 1
Add the google-adk Maven dependency to your project
- 2
Optionally add the google-adk-dev dependency for the Dev UI
Things to know
- Some features are pre-GA and may have limited support.
- Evaluation support is listed as coming soon in the README.
- The default examples use Gemini models and Google Search, which suggests a Google Cloud-oriented setup.
Topics
FAQ
- What is adk-java?
- A code-first Java toolkit from Google for building, evaluating, and deploying AI agents, with a Python-ADK-style API. ADK for Java is a toolkit for building AI agents in Java. Agent behavior, orchestration, and tool use are defined directly in code, which makes agents easier to test, version, and debug than configuration-driven approaches.
- Is adk-java free to use? What license does it have?
- adk-java is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is adk-java still maintained?
- Actively maintained. The last commit to adk-java was on Oct 21, 2026.
- What can I use adk-java for?
- Building Java backend services that add LLM-driven agents with tool calling. Creating agents that search the web or call internal APIs described by OpenAPI specs. Prototyping and debugging multi-agent workflows in a local development UI. Deploying agents to Google Cloud from a Java codebase.
- How do I install adk-java?
- Add the google-adk Maven dependency to your project Optionally add the google-adk-dev dependency for the Dev UI
- Where can I get adk-java?
- The source code and installation instructions are on GitHub: https://github.com/google/adk-java
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Code-first Python framework from Google for building, evaluating, and deploying AI agents, optimized for Gemini but model-agnostic.
Enterprise-grade agentic workflow platform for building and running AI agents, with model management, MCP tool integration and RPA automation.
An agent harness for Claude Code and Codex that adds multi-agent swarms, self-learning memory, vector retrieval and cross-machine agent federation.
A Python CLI that wraps coding agents like Codex and Claude Code with an optional supervisor, reviewer, adversary, and local log distiller, each on its own model.
A Java framework for building agentic, workflow and multi-agent AI applications on top of Spring AI.