ACP-Protokoll
Was ist ACP
Agent Client Protocol (ACP) ist ein standardisiertes Kommunikationsprotokoll zwischen KI-Agenten und ihren Clients. Es definiert, wie Clients (IDEs, Editoren, Automatisierungstools) Agentensitzungen ueber strukturierte JSON-RPC-Nachrichten starten, mit ihnen interagieren und sie verwalten.
iac-code als ACP-Server
iac-code stellt seine Infrastructure-as-Code-Faehigkeiten ueber einen ACP-Server bereit. Jeder ACP-kompatible Client kann iac-code acp als Unterprozess starten (oder ueber HTTP+SSE verbinden) und programmatisch:
- Sitzungen erstellen, die auf ein Projektverzeichnis beschraenkt sind
- Eingaben in natuerlicher Sprache senden und Streaming-Antworten empfangen
- Dateischreib- und destruktive Operationen genehmigen oder ablehnen
- Mehrere gleichzeitige Sitzungen verwalten
Dies verwandelt iac-code von einem Terminal-Tool in ein komponierbares Backend fuer jede Entwicklungsumgebung.
Anwendungsfaelle
- IDE- / Editor-Integration -- Zed, VS Code oder benutzerdefinierte Editoren koennen iac-code als Kontextserver einbetten, um IaC-Generierung inline bereitzustellen.
- Agent-zu-Agent-Orchestrierung -- Andere KI-Agenten koennen die IaC-Faehigkeiten von iac-code ueber das Protokoll aufrufen und so Multi-Agenten-Workflows ermoeglichen.
- Automatisierungspipelines -- CI/CD-Skripte oder ChatOps-Bots koennen iac-code kopflos aufrufen, um Vorlagen zu generieren und zu validieren.
Vergleich der Interaktionsmodi
| Modus | Befehl | Geeignet fuer |
|---|---|---|
| Interaktives REPL | iac-code | Praktische Erkundung, iteratives Erstellen von Vorlagen |
| Nicht-interaktive CLI | iac-code --prompt "..." oder --headless | Skripting, einmalige Generierung, CI-Pipelines |
| ACP-Server | iac-code acp | IDE-Integration, Multi-Sitzungs-Verwaltung, programmatischer Zugriff |
Der ACP-Server-Modus ist der einzige Modus, der mehrere gleichzeitige Sitzungen unterstuetzt und strukturierte Streaming-Ereignisse (Tool-Aufrufe, Berechtigungsanfragen, Denkprozesse) statt reiner Textausgabe bereitstellt.
Kernfaehigkeiten
- Multi-Sitzungs-Verwaltung -- Erstellen, auflisten, verzweigen, fortsetzen und schliessen Sie unabhaengige Sitzungen, jede mit eigenem Gespraechsverlauf und Arbeitsverzeichnis.
- Streaming-Antworten -- Echtzeit-Ereignisse fuer Agententext, Denkprozesse, Tool-Aufrufe, Tool-Fortschritt und Abschluss.
- Berechtigungsframework -- Nur-Lese-Tools werden automatisch zugelassen; Schreib- und destruktive Tools erfordern eine explizite Client-Genehmigung vor der Ausfuehrung.
- Dualer Transport -- Stdio fuer lokale/Unterprozess-Nutzung, HTTP+SSE fuer entfernte und Netzwerk-Szenarien.
- MCP-Serverkonfigurations-Durchleitung -- Clients koennen bei der Sitzungserstellung MCP-Server zur Tool-Erweiterung deklarieren.
- Slash-Befehle-Unterstuetzung -- Leiten Sie Slash-Befehle (
/compact,/clear,/debugusw.) ueber das Protokoll weiter. - Laufzeitmetriken -- Token-Nutzung, Latenz und Tool-Aufruf-Statistiken auf Sitzungsebene.