Zum Hauptinhalt springen

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.

Auf dieser Seite erfahren Sie, was Sie implementieren müssen, um einen benutzerdefinierten ACP-Agenten zu erstellen, der mit Devin Desktop funktioniert. Die vollständige Protokollspezifikation finden Sie unter agentclientprotocol.com. Offizielle Client-Bibliotheken sind für Rust, TypeScript, Python, Kotlin und Java verfügbar.

Grundlagen

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

Methoden, die Sie implementieren müssen

Ihr Agent muss mindestens diese Methoden von Devin Desktop unterstützen:
  • initialize — Die Protokollversion aushandeln, die Fähigkeiten Ihres Agenten bekanntgeben und Agenteninformationen (Name, Version) zurückgeben.
  • session/new — 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 — Eine Nutzernachricht empfangen, den Prompt-Turn steuern und nach Abschluss einen stopReason zurückgeben.
  • session/cancel — Laufende Vorgänge für eine Sitzung abbrechen, wenn der Nutzer abbricht.

Lifecycle eines Prompt-Turns

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 verwaltet.
Der Turn endet, wenn Ihr Agent eine session/prompt-Antwort mit einem stopReason zurückgibt (z. B. end_turn, cancelled, max_tokens).

Testen

So testen Sie Ihren Agenten mit Devin Desktop:
  1. Fügen Sie in Ihrer lokalen Registry-Konfiguration 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.

Einschränkungen

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 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 mit der Kategorie "mode" bereit.
  • Terminalfunktionen werden nicht offengelegt. Devin Desktop meldet keine Terminalfunktionen, 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.