Codex als Reviewer in Claude Code einbinden
Claude Code plant und entwirft. Codex CLI prüft das Ergebnis in einer eigenen Instanz gegen — als unabhängiger Reviewer, nicht als zweiter Autor. Das Setup wird nicht selbst gebaut: der Prompt unten wird in Claude Code eingefügt, Claude Code legt den Skill lokal an.
Warum überhaupt ein zweites Modell
Bei komplexen KI-Workflows reicht ein Modell selten aus. Ein zweites Modell findet im Review oft genau die Stellen, die im ersten Durchgang plausibel wirken: falsche Annahmen, fehlende Tests, unklare Kantenfälle. Deshalb gehört Review für mich zum Setup.
Die Arbeitsteilung
Claude entwirft — den Plan, die Analyse, die Argumentation, die Software. Codex bekommt das Ergebnis und prüft dagegen: Logiklücken, nicht adressierte Edge-Cases, fragwürdige Annahmen, stillschweigende Vorab-Entscheidungen. Codex formuliert Forderungen zurück an Claude, keine Umsetzung, nur Review. Die Freigabe bleibt beim Menschen.
Der Kern der Übung: der Reviewer ist nie der Autor. Sonst prüft das Modell seine eigene Logik und landet wieder bei seinen eigenen blinden Flecken.
Der Setup-Prompt
Den folgenden Prompt kopieren und in einer Claude-Code-Session absetzen. Den Pfad ~/Projects/ bei Bedarf an den eigenen Projekt-Workspace anpassen. Claude Code baut den Skill — kein eigener Code nötig. Ein Hinweis vorweg: Modelle entwickeln sich laufend weiter, gelegentlich ist Nacharbeit nötig.
Lege einen Claude-Code-Skill an,
der Codex CLI als unabhängigen Reviewer einbindet. Alles in einem
Rutsch bauen, sinnvolle Defaults verwenden.
Zweck: Wenn in einer Session "Codex Review", "lass Codex
drüberschauen" oder "zweites Augenpaar" fällt, wird eine Channel-Datei
mit dem zu prüfenden Kontext erstellt, ein Watcher gestartet und Codex
genau einmal gestartet, damit er antwortet.
Architektur — file-basierter Channel:
- Pfad: ~/Projects/_scratch/codex-channel/<topic-slug>.md
- Zeile 1 ist Status-Header: STATUS: NEEDS-CODEX (Codex am Zug),
NEEDS-CLAUDE (Claude am Zug), NEEDS-USER (wartet auf
menschliche Entscheidung) oder DONE (Review abgeschlossen)
- Beide Akteure hängen ihre Turns ans Dateiende an und
überschreiben nie
- Wer im Status-Header steht, ist dran; der andere beendet sich
Lege vier Dateien an:
1. SKILL.md mit Trigger-Phrasen, Workflow-Beschreibung und
Antwort-Templates für jeden Channel-Event
2. assets/channel-template.md mit verbatim-Protokoll
(Reviewer-only, nur anhängen, Status-Prüfung vor jedem
Schreiben)
3. scripts/channel-watcher.sh — prüft Zeile 1 alle 60 Sekunden
per head, gibt bei Statuswechsel exit 0 mit Event-Zeile aus
4. scripts/codex-launcher.sh — startet Codex mit einem
Single-Turn-Prompt (Datei lesen, letzten NEEDS-CODEX-Turn
beantworten, Antwort appenden, Status auf NEEDS-CLAUDE
setzen, sofort beenden)
Der Launcher muss robust sein:
- vor dem Launch head -1 prüfen: nur bei STATUS: NEEDS-CODEX starten
- per atomarem Lock verhindern, dass zwei Codex-Jobs parallel laufen
- Launch-State-Sidecar schreiben (<channel>.launch-state) mit Job-ID,
Status und Turn-Zahl
- direkt vor jedem Schreibzugriff erneut head -1 prüfen
- Bevorzugt codex-companion.mjs nutzen, wenn ein Claude-Code-Codex-
Plugin installiert ist; sonst Fallback auf codex exec --full-auto
mit Channel-Ordner als Arbeitsverzeichnis
- bei Unsicherheit oder echter menschlicher Entscheidung STATUS:
NEEDS-USER setzen
Kritisch: Codex ist REVIEWER ONLY. Er baut nichts selbst, nur
OK/NOK, Findings und Forderungen an mich. Das steht verbatim im
Protokoll, im Channel-Template und im Launcher-Prompt.
Kritisch: Claude formuliert die Review-Aufträge neutral. Nicht
"bestätige den Plan", sondern "finde Lücken, falsche Annahmen,
fehlende Tests und offene Risiken; gib OK/NOK pro Punkt". Diese
Regel steht in SKILL.md und im Channel-Template.
Nach dem Setup: eine Trockensimulation mit einem Dummy-Topic
durchführen, die Testdatei wieder entfernen und in SKILL.md
dokumentieren, wie ein laufender Review manuell abgebrochen wird
(STATUS: DONE in Zeile 1 setzen).
Voraussetzungen
- Codex CLI von OpenAI installiert und einmalig authentifiziert
Was Claude Code damit einrichtet
- Einen Skill der auf die drei Trigger-Phrasen reagiert
- Einen file-basierten Channel unter
~/Projects/_scratch/codex-channel/, in dem beide Modelle ihre Turns nacheinander ablegen - Einen Watcher im Hintergrund, der Status-Wechsel in Echtzeit zurück an Claude Code meldet
- Einen Launcher, der Codex pro Turn frisch startet — keine Session-Timeouts, keine halluzinierten Zustände aus Vorrunden
- Ein eingebettetes Protokoll, das beide Modelle bei jedem Turn an die Reviewer-only-Rolle erinnert
Was man davon hat
Nach ein paar Anwendungen merkt man, dass fast jeder komplexe Plan Mängel enthält — meist keine Show-Stopper, aber oft substanzielle. Die Gegenprüfung ist kein Misstrauen gegen das eine Modell, sondern realistischer Umgang mit dem, was Modelle nach heutigem Stand sind: starke Textgeneratoren, keine Wahrheitsmaschinen.