Agent Client Protocol (ACP)
Eintrag zuletzt aktualisiert am: 11.09.2026
Das Agent Client Protocol (ACP) ist ein offener Standard für die Kommunikation zwischen einer
Entwicklungsumgebung (
IDE/Editor) und einem KI-Coding-Agenten. Man kann ACP vereinfacht als das "
LSP für KI-Agenten" betrachten.
Beide Seiten können
Methoden aufrufen und
Notifications senden:
Client:
IDE oder Editor; stellt Oberfläche, geöffnete Dateien, Terminal und Benutzerinteraktion bereit.
Agent: KI-gestütztes Programm, das Aufgaben analysiert, Dateien bearbeitet, Befehle ausführt und Ergebnisse liefert.
Beispiele:
- VS Code steuert einen Coding-Agenten
- CRM startet einen Vertriebs-Agenten
- Web-Anwendung startet einen Recherche-Agenten
Protokolle (wie bei MCP)UrsprungACP entstand 2025 aus dem Umfeld moderner Code-Editoren. Ziel war es, AI-Agenten unabhängig von einer bestimmten IDE nutzbar zu machen. Besonders Zed, Google und später JetBrains treiben ACP voran.
AbgrenzungACP (Editor/IDE ↔ Coding-Agent ): Agent im Entwicklungsarbeitsplatz steuern
MCP ( KI-Host/Agent ↔ Tool-, Daten- oder Kontextserver ): Werkzeuge, Ressourcen und Prompts bereitstellen
A2A ( Agent ↔ Agent ): Aufgaben zwischen eigenständigen Agenten delegieren
Ein ACP-Agent kann intern MCP-Server verwenden. Beispielsweise kann ein Agent über ACP von einer IDE den Auftrag „Füge eine Funktion hinzu“ erhalten und über MCP auf Tickets, Datenbanken oder Unternehmensdokumentation zugreifen.
SDKsKotlin: https://github.com/agentclientprotocol/kotlin-sdk
Java: https://github.com/agentclientprotocol/java-sdk
Python: https://github.com/agentclientprotocol/python-sdk
Rust: https://crates.io/crates/agent-client-protocol
TypeScript: https://www.npmjs.com/package/@agentclientprotocol/sdk
.NET: https://github.com/AgenticDesktop/ACPLibrary
Weitere: https://agentclientprotocol.com/libraries/community
BeispielEin typischer Ablauf:
- Der Client ruft initialize auf. Beide Seiten handeln Protokollversion und unterstützte Fähigkeiten aus.
- Falls nötig, erfolgt eine Anmeldung, in ACP v2 etwa über auth/login.
- Der Client erzeugt mit session/new eine Arbeitssitzung.
- Mit session/prompt übermittelt er die Benutzeraufgabe.
- Der Agent sendet fortlaufend session/update-Notifications, z. B. Mit Textausgaben, Fortschritt, Bearbeitungen oder Rückfragen nach Berechtigungen.
- Der Client kann den Vorgang mit session/cancel abbrechen. Ist der Agent wieder bereit, meldet er einen Leerlaufzustand.
Beispiel einer Anfrage zum Start einer Sitzung:
{
"jsonrpc": "2.0",
"id": 1,
"method": "session/new",
"params": {
"cwd": "/src/MyProject"
}
}
Die konkrete Ausgestaltung ist umfangreicher: ACP berücksichtigt Sitzungen, Arbeitsverzeichnisse, Dateiinhalte und -änderungen, Terminalzugriff, Berechtigungsabfragen, Fortschrittsmeldungen sowie die Wiederaufnahme von Sitzungen. Dateipfade müssen absolut sein; Zeilennummern sind einsbasiert.