Skip to main content
A progressive, hands-on tutorial. Each module focuses on one concept and includes runnable source code.

Prerequisites

  • Java 17 or later
  • Maven 3.8+ (or use the included ./mvnw wrapper)
  • For client modules (01-11, 21): Gemini CLI with --experimental-acp flag, and a GEMINI_API_KEY. The tutorial uses Gemini as a real ACP agent to talk to β€” the SDK launches it as a subprocess and communicates over stdin/stdout.
  • For agent modules (12-19, 22): no external dependencies. You build the agent and the tutorial provides a test client that launches it.

Tutorial Structure

Getting the Code

Running a Module

Agent modules run locally with no API key:
Client modules require GEMINI_API_KEY:

Three Agent API Styles

The SDK provides three ways to build agents: The tutorial uses Sync for agent examples (most accessible to most developers) and introduces annotations and async where relevant.

Start Learning

Begin with Module 01: First Contact to connect to your first ACP agent. Or jump to Module 12: Echo Agent to build an agent without any API key.