acp

Startet die ACP-Bridge (Agent Client Protocol), die mit einem OpenClaw Gateway kommuniziert.

Dieser Befehl spricht ACP über stdio für IDEs und leitet Prompts per WebSocket an das Gateway weiter. Er hält ACP-Sessions den Gateway-Session-Keys zugeordnet.

Verwendung

openclaw acp

# Remote Gateway
openclaw acp --url wss://gateway-host:18789 --token <token>

# An einen bestehenden Session-Key anhängen
openclaw acp --session agent:main:main

# Per Label anhängen (muss bereits existieren)
openclaw acp --session-label "support inbox"

# Session-Key vor dem ersten Prompt zurücksetzen
openclaw acp --session agent:main:main --reset-session

ACP Client (Debug)

Mit dem eingebauten ACP-Client kannst du die Bridge ohne IDE testen. Er startet die ACP-Bridge und lässt dich Prompts interaktiv eingeben.

openclaw acp client

# Die gestartete Bridge auf ein Remote Gateway zeigen
openclaw acp client --server-args --url wss://gateway-host:18789 --token <token>

# Server-Befehl überschreiben (Standard: openclaw)
openclaw acp client --server "node" --server-args openclaw.mjs acp --url ws://127.0.0.1:19001

So verwendest du das

Nutze ACP, wenn eine IDE (oder ein anderer Client) das Agent Client Protocol spricht und du damit eine OpenClaw Gateway Session steuern willst.

  1. Stelle sicher, dass das Gateway läuft (lokal oder remote).
  2. Konfiguriere das Gateway-Ziel (per Config oder Flags).
  3. Richte deine IDE so ein, dass sie openclaw acp über stdio ausführt.

Beispiel-Config (dauerhaft gespeichert):

openclaw config set gateway.remote.url wss://gateway-host:18789
openclaw config set gateway.remote.token <token>

Beispiel für direkten Aufruf (ohne Config-Speicherung):

openclaw acp --url wss://gateway-host:18789 --token <token>

Agents auswählen

ACP wählt Agents nicht direkt aus. Es routet über den Gateway-Session-Key.

Verwende agent-spezifische Session-Keys, um einen bestimmten Agent anzusprechen:

openclaw acp --session agent:main:main
openclaw acp --session agent:design:main
openclaw acp --session agent:qa:bug-123

Jede ACP-Session ist einem einzelnen Gateway-Session-Key zugeordnet. Ein Agent kann viele Sessions haben; ACP verwendet standardmäßig eine isolierte acp:<uuid>-Session, es sei denn, du überschreibst den Key oder das Label.

Zed Editor einrichten

Füge einen benutzerdefinierten ACP-Agent in ~/.config/zed/settings.json hinzu (oder nutze die Zed-Einstellungen):

{
  "agent_servers": {
    "OpenClaw ACP": {
      "type": "custom",
      "command": "openclaw",
      "args": ["acp"],
      "env": {}
    }
  }
}

Um ein bestimmtes Gateway oder einen Agent anzusprechen:

{
  "agent_servers": {
    "OpenClaw ACP": {
      "type": "custom",
      "command": "openclaw",
      "args": [
        "acp",
        "--url",
        "wss://gateway-host:18789",
        "--token",
        "<token>",
        "--session",
        "agent:design:main"
      ],
      "env": {}
    }
  }
}

Öffne in Zed das Agent-Panel und wähle “OpenClaw ACP”, um einen Thread zu starten.

Session-Mapping

Standardmäßig bekommen ACP-Sessions einen isolierten Gateway-Session-Key mit dem Präfix acp:. Um eine bekannte Session wiederzuverwenden, übergib einen Session-Key oder ein Label:

  • --session <key>: einen bestimmten Gateway-Session-Key verwenden.
  • --session-label <label>: eine bestehende Session per Label auflösen.
  • --reset-session: eine neue Session-ID für diesen Key erstellen (gleicher Key, neues Transkript).

Wenn dein ACP-Client Metadaten unterstützt, kannst du pro Session überschreiben:

{
  "_meta": {
    "sessionKey": "agent:main:main",
    "sessionLabel": "support inbox",
    "resetSession": true
  }
}

Mehr über Session-Keys erfährst du unter /concepts/session.

Optionen

  • --url <url>: Gateway WebSocket URL (Standard: gateway.remote.url, wenn konfiguriert).
  • --token <token>: Gateway Auth-Token.
  • --password <password>: Gateway Auth-Passwort.
  • --session <key>: Standard-Session-Key.
  • --session-label <label>: Standard-Session-Label zum Auflösen.
  • --require-existing: Fehler, wenn der Session-Key/das Label nicht existiert.
  • --reset-session: Session-Key vor der ersten Verwendung zurücksetzen.
  • --no-prefix-cwd: Prompts nicht mit dem Arbeitsverzeichnis präfixen.
  • --verbose, -v: ausführliches Logging nach stderr.

acp client Optionen

  • --cwd <dir>: Arbeitsverzeichnis für die ACP-Session.
  • --server <command>: ACP-Server-Befehl (Standard: openclaw).
  • --server-args <args...>: zusätzliche Argumente für den ACP-Server.
  • --server-verbose: ausführliches Logging auf dem ACP-Server aktivieren.
  • --verbose, -v: ausführliches Client-Logging.