> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Einen benutzerdefinierten ACP-Agenten erstellen

> Erstellen Sie einen benutzerdefinierten Agenten, der in Devin Desktop über das Agent Client Protocol ausgeführt wird.

Auf dieser Seite erfahren Sie, was Sie implementieren müssen, um einen benutzerdefinierten [ACP](/de/desktop/acp)-Agenten zu erstellen, der mit Devin Desktop funktioniert.

Die vollständige Protokollspezifikation finden Sie unter [agentclientprotocol.com](https://agentclientprotocol.com/). Offizielle Client-Bibliotheken sind für [Rust](https://agentclientprotocol.com/libraries/rust), [TypeScript](https://agentclientprotocol.com/libraries/typescript), [Python](https://agentclientprotocol.com/libraries/python), [Kotlin](https://agentclientprotocol.com/libraries/kotlin) und [Java](https://agentclientprotocol.com/libraries/java) verfügbar.

<div id="basics">
  ## Grundlagen
</div>

ACP-Agenten werden als lokale Unterprozesse ausgeführt, die Devin Desktop bei Bedarf startet. Die gesamte Kommunikation erfolgt über JSON-RPC via stdio.

<div id="methods-you-must-implement">
  ### Methoden, die Sie implementieren müssen
</div>

Ihr Agent muss mindestens diese Methoden von Devin Desktop unterstützen:

* [`initialize`](https://agentclientprotocol.com/protocol/initialization) — Die Protokollversion aushandeln, die Fähigkeiten Ihres Agenten bekanntgeben und Agenteninformationen (Name, Version) zurückgeben.
* [`session/new`](https://agentclientprotocol.com/protocol/session-setup) — Eine neue Sitzung für ein Arbeitsverzeichnis erstellen und eine Sitzungs-ID zurückgeben. Devin Desktop übergibt das cwd und alle konfigurierten MCP-Server.
* [`session/prompt`](https://agentclientprotocol.com/protocol/prompt-turn) — Eine Nutzernachricht empfangen, den Prompt-Turn steuern und nach Abschluss einen `stopReason` zurückgeben.
* [`session/cancel`](https://agentclientprotocol.com/protocol/prompt-turn) — Laufende Vorgänge für eine Sitzung abbrechen, wenn der Nutzer abbricht.

<div id="prompt-turn-lifecycle">
  ### Lifecycle eines Prompt-Turns
</div>

Während eines `session/prompt`-Turns sendet Ihr Agent Updates als JSON-RPC-Benachrichtigungen an Devin Desktop:

* `session/update` mit `agent_message_chunk` für gestreamten Assistententext.
* `session/update` mit `tool_call` und `tool_call_update`, um Tool-Aufrufe und ihren Status in der Devin Desktop UI anzuzeigen.
* `session/request_permission`, um den Nutzer vor der Ausführung eines sensiblen Tool-Aufrufs um Bestätigung zu bitten.
* `session/update` mit `plan`, wenn Ihr Agent einen [Agent-Plan](https://agentclientprotocol.com/protocol/agent-plan) verwaltet.

Der Turn endet, wenn Ihr Agent eine `session/prompt`-Antwort mit einem `stopReason` zurückgibt (z. B. `end_turn`, `cancelled`, `max_tokens`).

<div id="testing">
  ## Testen
</div>

So testen Sie Ihren Agenten mit Devin Desktop:

1. Fügen Sie in Ihrer [lokalen Registry-Konfiguration](/de/desktop/acp#local-registry-config) einen Eintrag für Ihren Agenten hinzu und setzen Sie `cmd` auf den Pfad Ihrer lokalen Agent-Binärdatei (oder eines Wrapper-Skripts).
2. Nehmen Sie bei Bedarf Änderungen an Ihrem Agenten vor und bauen Sie ihn neu.
3. Führen Sie `Reload ACP Connections` in der Command Palette aus, damit die neueste Version geladen wird — Devin Desktop muss zwischen den Iterationen nicht neu gestartet werden.

<div id="limitations">
  ## Einschränkungen
</div>

Devin Desktop unterstützt derzeit nicht alle Teile der ACP-Spezifikation. Im Folgenden finden Sie die wichtigsten Unterschiede, die Sie beim Erstellen eines Agenten für Devin Desktop beachten sollten:

* **Sitzungsmodi werden nicht unterstützt.** [Sitzungsmodi](https://agentclientprotocol.com/protocol/session-modes) sind in der Devin Desktop UI nicht verfügbar. Wenn Ihr Agent es Nutzern ermöglichen muss, zwischen Modi zu wählen (z. B. plan / build / review), stellen Sie diese stattdessen als [Sitzungskonfigurationsoption](https://agentclientprotocol.com/protocol/session-config-options) mit der Kategorie `"mode"` bereit.
* **Terminalfunktionen werden nicht offengelegt.** Devin Desktop meldet keine [Terminalfunktionen](https://agentclientprotocol.com/protocol/terminals), daher können Agenten in der Devin Desktop UI keine Terminals erstellen. Agenten sollten Befehle in ihrem eigenen Unterprozess ausführen und die Ausgabe über `tool_call`-Updates streamen.
