Codex vs Claude Code, anhand der Dateien auf deiner Festplatte
Kein Urteil darüber, wer besseren Code schreibt. Eine Beschreibung, wie sich die beiden tatsächlich verhalten, geschrieben von Leuten, die ein einziges Fenster beide steuern lassen mussten.
Warum dieser Vergleich anders ist als die anderen
Das meiste, was über Codex vs Claude Code geschrieben wird, ist ein Benchmark auf irgendjemandes Laptop und veraltet innerhalb eines Monats, weil beide schneller neue Modelle ausliefern, als jemand darüber schreiben kann. Diese Seite macht das nicht. Ob eines besseren Code schreibt als das andere, ist eine Frage nach den Modellen am Tag der Frage, und wir werden nicht so tun, als könnten wir das klären.
Was wir dir sagen können, ist, woraus die beiden Programme bestehen, denn Vobuda musste beide lesen, um über jedes eine Kontrollleiste zu legen. Wo jedes seine Sitzungen speichert, was es das Fortsetzen einer solchen nennt, wo seine Modellliste liegt, wie es den Modus meldet, in dem es sich befindet. Das sind Fakten auf der eigenen Festplatte, sie ändern sich langsam, und sie bestimmen, wie gut sich jedes in einen Arbeitstag einfügt.
Kurz gesagt: Claude Code ist von außen das nachvollziehbarere der beiden. Es schreibt seine Modelle in eine Datei, speichert seine Sitzungen in einem Ordner pro Projekt und nimmt einen Flag entgegen, um eine davon fortzusetzen. Codex behält mehr für sich. Es wechselt Modelle über eine eigene Auswahl, deshalb ist es ehrlicher, diese Auswahl zu öffnen und zu lesen, was sie zeigt, statt eine Liste auszuliefern, die falsch sein wird.
Wo jedes was speichert
Alles in dieser Tabelle liegt auf dem Rechner vor dir, du kannst es selbst nachsehen.
| Claude Code | Codex | |
|---|---|---|
| Frühere Sitzungen | Ein Ordner pro Projekt unter ~/.claude/projects | Ein Index, ~/.codex/session_index.jsonl, der jeden Thread benennt |
| Eine alte Sitzung öffnen | --resume <id> | resume <id> |
| Die letzte fortsetzen | --continue | resume --last |
| Skills | ~/.claude/skills, plus der passende Ordner im Projekt | ~/.codex/skills, plus der passende Ordner im Projekt |
| Modellliste | Eigene Datei, geschrieben so wie der Server es meldet, ein neues Modell erscheint also am Tag seines Erscheinens | Eine eigene Auswahl, die das Menü öffnet und Zeile für Zeile liest |
| Das Modell einstellen | /model für das Modell, /effort für die Stufe | Eine eigene /model-Auswahl, dann eine Stufe je Modell |
| Seine Einstellungen | settings.json | config.toml |
| Was die Statuszeile zeigt | Opus 5.5 mit hoher Effort-Stufe, Claude Max | gpt-5.6-terra medium |
| Wie der Prozess aussieht | claude | node, denn Codex läuft als node |
Stand September 2026, geprüft an aktuellen Installationen beider Programme. Maßgeblich ist ihre eigene Dokumentation; dies ist, wie sich die beiden aus Sicht eines Fensters darstellen, das sie steuern muss.
Zwei Ordner, und alles, woraus die Tabelle oben stammt
Keiner der beiden Agenten verbirgt etwas davon. Die Kontrollleiste in Vobuda liest genau diese Dateien, deshalb kann sie eine Modellliste anzeigen, die wir nie selbst eingetragen haben.
settings.json Modell, Effort, Berechtigungenprojects/ ein Ordner pro Projekt <project>/ dessen Sitzungen, neueste zuletztskills/ eigene, plus die des Projektshistory.jsonl was du eingegeben hast, der Reihe nach config.toml Modell und Reasoning-Stufesession_index.jsonl jeder Thread, eine Zeile je Eintragskills/ eigene, plus die des Projekts Drei Fallen, in die wir getappt sind, damit du sie erkennst
Jede davon war zuerst ein Fehler in Vobuda, und jede sagt etwas Wahres über die beiden Agenten aus.
Der tiefste Prozess einer Claude-Sitzung ist oft codex
Claude Code führt Codex als eigenen Helfer aus. Wenn man also den tiefsten Prozess im Baum nimmt, um zu entscheiden, zu welchem Agenten ein Block gehört, zeigte das Dock CODEX über einer Claude-Sitzung an, und ein Neustart startete das falsche Programm. Der Agent, dem ein Block gehört, ist der, den die Person gestartet hat, nicht der, den er selbst gestartet hat.
Codex ist nicht node_repl
Codex läuft als node, und eine Shell startet ein Programm, indem sie sich selbst forkt und dann durch dieses Programm ersetzt, weshalb die Prozessliste es für den Rest seines Lebens beim alten Namen nennt, sofern man nicht namentlich nach der ausführbaren Datei fragt. Ein Block mit laufendem Codex hieß früher node_repl.
Die Liste eines Agenten über dem Block eines anderen
Zwei Modelllisten und ein Continue-Flag wurden geschrieben, als es einen einzigen Agenten gab, und blieben global, als es drei wurden. Das Öffnen eines Codex-Blocks bot Opus, Sonnet, Haiku und Fable an, und continue schickte codex --continue, worauf Codex mit einem Nutzungsfehler antwortet. Alles, was aus einem Programm gelesen wird, gehört nun diesem Programm und wird nur noch über dieses abgefragt.
Die Wörter in der Oberfläche eines Agenten ändern sich
Die Antwort eines Agenten oder die ihm gestellte Anfrage anhand bestimmter Wörter in seiner Oberfläche zu erkennen, scheitert spätestens beim nächsten Release dieses Agenten. Beide werden stattdessen an ihrer Form erkannt: Ein Agent wird an dem Wartesymbol erkannt, das er vor deine Eingabe setzt, nicht an dem Rahmen darum, denn der Rahmen ist Mode und das Symbol nicht.
Die Antwort, die die meisten eigentlich wollen, lautet: beide
In der Praxis entscheidet sich niemand für eines und löscht das andere. Das eine ist gerade in dieser Stunde besser bei der Aufgabe, das andere hat die Sitzung, in der man gerade etwas anderes gemacht hat, und beide haben Nutzungslimits, die zu ungünstigen Zeiten eintreten. Entscheidend ist, ob es etwas kostet, beide gleichzeitig laufen zu lassen.
In Vobuda kostet es nichts. Zwei Blöcke in einem Tab oder zwei Tabs, jeder mit eigener Leiste, die den eigenen Agenten ausliest, jeder mit eigenem Modell und eigener Effort-Stufe in der Anzeige, und daneben der Berechtigungsmodus von Claude Code. Beide geben ihre Signale auf dieselbe Weise an das Fenster weiter, sodass ein Badge, ein Ton und ein Hinweis dasselbe bedeuten, egal welcher von beiden ihn ausgelöst hat, und das Protokoll dessen, was während der Abwesenheit passiert ist, listet sie nebeneinander auf, gruppiert nach Block.
Keiner von beiden wird über einen Einstellungsbereich oder einen Schalter verbunden, denn ein Signal, das man erst konfigurieren muss, damit es funktioniert, ist kein Feature, sondern Hausaufgabe. Sie verbinden sich beim Start von selbst, und der Integration-Button in der Tab-Leiste setzt die Verbindungen für einen bereits laufenden Agenten erneut. Bestehende Hooks von Drittanbietern bleiben bestehen, und alles, was bereits ein Ereignis belegt, wird direkt nach unserem eigenen aufgerufen.
Codex und Claude Code, offen gefragt
Was ist besser, Codex oder Claude Code?
Bei der Codequalität ist das eine Frage danach, mit welchen Modellen jedes am Tag der Frage läuft, und jede schriftliche Antwort veraltet. Beim Verhalten als Programme ist Claude Code von außen nachvollziehbarer: Es schreibt seine Modellliste in eine Datei, speichert Sitzungen in einem Ordner pro Projekt und nimmt einen Flag zum Fortsetzen entgegen. Codex behält mehr im Inneren.
Kann ich Codex und Claude Code nebeneinander laufen lassen?
Ja. Zwei Blöcke im selben Fenster, jeder mit eigener Kontrollleiste, die den eigenen Agenten ausliest. Beide melden, wenn sie fertig sind oder eine Berechtigung brauchen, und beide erscheinen im selben Protokoll dessen, was während der Abwesenheit passiert ist.
Wie listet Vobuda Codex-Modelle auf?
Indem es Codex fragt. Wir haben einmal eine Liste mit zwei Modellen ausgeliefert, die Codex gar nicht ausführt, und das war schon am Tag der Auslieferung falsch. Der Modell-Button öffnet jetzt Codex' eigene Auswahl, liest die Zeilen, die sie zeigt, und drückt die, die du gewählt hast, und jedes Modell bietet die Stufen an, die Codex ihm gibt.
Braucht einer von beiden ein Konto bei Vobuda?
Nein. Vobuda hat überhaupt keine Konten. Jeder Agent nutzt das Abonnement oder den Schlüssel, den man ihm bereits gegeben hat. Vobuda nutzt die Anmeldung von Claude Code für eine einzige Sache, um bei Anthropic deine Nutzungslimits abzufragen, und rührt die von Codex nie an.
Und ein lokales Modell statt der beiden?
Ein lokales Modell über Ollama ist ein Eintrag in agents.json und braucht keinen Code. Es bekommt einen Block und eine Leiste mit allem, was dieser Agent ehrlich über sich selbst angeben kann.
Ein Fenster, beide Agenten
Kostenlos, ohne Konto, und jede Leiste liest den Agenten darunter aus.
curl -fsSL https://vobuda.com/install.sh | sh