Skip to main content
Pure Java implementation of the Agent Communication Protocol (ACP) — a standard for agent-to-agent and agent-to-IDE communication. Build agents that any ACP-compatible IDE can connect to, or consume agents from any ACP-compatible runtime. Three-phase lifecycle: Initialize → Session → Prompt. Three agent API styles: sync, async, and annotation-driven. ACP is the planned wire protocol for A2AStep in Agent Workflow — wrapping a remote agent as a local Step<I,O>.

Getting Started

Overview

Client SDK, agent SDK, test utilities — three-phase lifecycle, three API styles

First Contact

Launch an agent subprocess, create a session, send your first prompt

Tutorials

30 progressive modules across four parts:

Client Basics

Protocol basics, sessions, prompts, streaming updates, agent requests, permissions, error handling

Building Agents

Echo agent (25 lines), handlers, sending updates, agent requests, in-memory testing, capability negotiation, MCP servers

Advanced

Async client with Project Reactor, async agent, reactive patterns

IDE Integration

Zed, JetBrains, and VS Code integration guides

Reference

Java API Reference

Client classes, agent classes, protocol types, transports, error codes

Source Code

SDK implementation — client and server support

Tutorial Code

30 runnable tutorial modules

Role in the Lab

  • Agent Workflow — planned A2AStep will wrap remote ACP agents as local Step<I,O> in workflows
  • ACP standardizes how agents discover, connect, and delegate — the communication backbone for multi-agent architectures
  • IDE integration enables agents built with Agent Workflow to run inside Zed, JetBrains, and VS Code