3 Punkte von GN⁺ 2026-01-24 | Noch keine Kommentare. | Auf WhatsApp teilen
  • Codex CLI ist als Agent konzipiert, der in lokalen Umgebungen sicher und effizient hochwertige Softwareänderungen ausführt
  • Die zentrale Struktur, die Agentenschleife (agent loop), verknüpft Benutzereingaben, Modellinferenz und Tool-Aufrufe zyklisch, um sinnvolle Aufgaben auszuführen
  • Während der Schleife entstehende Prompt-Zusammenstellung, Verwaltung des Kontextfensters und Prompt-Caching sind zentrale Faktoren für Leistung und Stabilität
  • Codex kommuniziert über die Responses API mit dem Modell; jede Anfrage besteht aus einer vollständigen JSON-Payload und bleibt dadurch zustandslos (stateless)
  • Diese Struktur ermöglicht fortgeschrittene Funktionen wie Zero Data Retention (ZDR), Prompt-Caching und automatische Verdichtung (compaction) und bildet die Grundlage für das Design großer Agentensysteme

Überblick über die Codex-Agentenschleife

  • Codex CLI arbeitet im Kern mit einer Schleifenstruktur, die die Interaktion zwischen Benutzer, Modell und Tools koordiniert
    • Es übernimmt die Benutzereingabe und erstellt den Prompt, der an das Modell gesendet wird
    • Wenn das Modell eine Antwort erzeugt oder einen Tool-Aufruf (tool call) anfordert, führt der Agent diesen aus und fügt das Ergebnis wieder dem Prompt hinzu
    • Sobald das Modell keine weiteren Tool-Aufrufe mehr macht und eine assistant-Nachricht erzeugt, endet ein Turn
  • Jeder Turn ist Teil einer Konversation; frühere Nachrichten und Tool-Aufrufe werden vollständig in den Prompt der nächsten Anfrage aufgenommen
  • Da die Prompt-Länge durch das Kontextfenster (context window) des Modells begrenzt ist, muss Codex dieses aktiv verwalten

Responses API und die Kommunikationsstruktur von Codex

  • Codex CLI sendet für die Modellinferenz HTTP-Anfragen an die Responses API
    • Der API-Endpunkt variiert je nach Konfiguration und kann in OpenAI-, ChatGPT-, Azure- oder lokalen Umgebungen wie LM Studio und Ollama genutzt werden
  • API-Anfragen bestehen aus einer JSON-Payload mit folgenden Hauptfeldern
    • System-/Developer-Nachrichten: legen den grundlegenden Kontext des Modells fest
    • instructions: Liste der Tools, die das Modell aufrufen kann
    • tools: Tool-Definitionen, die von Codex CLI, der Responses API oder dem Benutzer bereitgestellt werden, etwa über einen MCP-Server
    • input: Nachrichtenliste mit Konversationsverlauf und Umgebungsinformationen
  • Codex liest Konfigurationen aus ~/.codex/config.toml sowie AGENTS.md und skills-Dateien im Projekt und fügt Benutzeranweisungen und Umgebungsinformationen automatisch ein

Prompt-Zusammenstellung und Ereignisverarbeitung

  • Codex sendet jede Nachricht als JSON-Objekt (type, role, content) an die Responses API
  • Der Server erzeugt daraus den Modell-Prompt und gibt die Antwort als SSE-Stream (Server-Sent Events) zurück
    • Das Ereignis response.output_text.delta wird für Streaming-Ausgaben verwendet
    • Das Ereignis response.output_item.added wird dem input der nächsten Anfrage hinzugefügt und setzt so die Schleife fort
  • Das System ist so ausgelegt, dass ein früherer Prompt ein exakter Präfix des neuen Prompts bleibt, sodass Prompt-Caching genutzt werden kann

Leistungsoptimierung: Caching und zustandsloses Design

  • Codex verwendet previous_response_id nicht und behält dadurch eine vollständig zustandslose (stateless) Anfragestruktur bei
    • Das ermöglicht Unterstützung für Zero Data Retention (ZDR)-Kunden und minimiert die Datenspeicherung
  • Prompt-Caching nutzt identische Präfixe erneut und linearisiert die Sampling-Kosten
    • Ein Cache-Treffer tritt nur bei exakter Präfix-Übereinstimmung auf
    • Änderungen an Tool-Listen, Modell, Sandbox-Einstellungen oder Arbeitsverzeichnis führen zu Cache-Misses
  • Dynamische Änderungen an MCP-Tools können Cache-Verluste verursachen; daher spiegelt Codex solche Änderungen durch das Einfügen neuer Nachrichten wider

Verwaltung des Kontextfensters und automatische Verdichtung (compaction)

  • Wenn eine Konversation länger wird, führt Codex zur Vermeidung einer Überschreitung des Kontextfensters eine Konversationsverdichtung (compaction) durch
    • Anfangs geschah dies manuell über den Befehl /compact, inzwischen nutzt Codex automatisch den /responses/compact-Endpunkt der Responses API
    • Dieser Endpunkt gibt ein Element vom Typ type=compaction sowie verschlüsselten encrypted_content zurück, um das Modellverständnis zu erhalten
  • Überschreitet Codex den auto_compact_limit, wird automatisch eine Verdichtung ausgeführt, um die Kontinuität der Konversation zu sichern

Fazit und Ausblick

  • Die Agentenschleife von Codex ist eine Kernstruktur, die Modellinferenz, Tool-Aufrufe, Caching und Kontextverwaltung integriert
  • Diese Struktur ermöglicht ein leistungsstarkes, zustandsloses und sicherheitsorientiertes Agentendesign
  • In späteren Beiträgen sollen weitere interne Strukturen von Codex behandelt werden, darunter CLI-Architektur, Implementierung der Tool-Nutzung und Sandbox-Modelle

Noch keine Kommentare.

Noch keine Kommentare.