Human Agent Interface / Tutorials / Codex Referenz

Codex CLI Harness — Referenz-Guide

Stand: März 2026. Aus der täglichen Praxis mit Codex; Flags, Preise und Bugs können sich seitdem geändert haben. Siehe auch: Codex Tutorial.

Für alle, die Claude Code gut kennen: Dieser Guide erklärt Codex im direkten Vergleich.


1. Architektur

Codex ist OpenAIs autonomer Coding-Agent mit TUI und Non-interactive-Mode. Konfiguration läuft über TOML statt JSON.

codex (CLI)
├── interaktive TUI         — Standard bei `codex` ohne Argumente
├── codex exec "prompt"     — Non-interactive One-Shot Execution
├── codex review            — Eingebauter Code-Review-Modus
├── codex resume/fork       — Session-Management
└── codex features          — Feature-Flag-Verwaltung

Schichten-Überblick:

Schicht Pfad Funktion
Haupt-Config ~/.codex/config.toml Modell, Trust-Level, Migrationen
Auth ~/.codex/auth.json ChatGPT OAuth Tokens (Google Account)
Runbooks ~/.codex/runbooks/ Session-Typ-Instruktionen (4 Typen)
Approval-Rules ~/.codex/rules/default.rules Command-Approval via prefix_rule
Skills ~/.codex/skills/ 33 Skill-Verzeichnisse
Logs ~/.codex/log/ Session-Logs
History ~/.codex/history.jsonl Session-History

Kernunterschied zu Claude Code: Codex verwendet Runbooks statt Hooks. Wo Claude Code mit PreToolUse/PostToolUse-Hooks in Shell oder Python Verhalten steuert, definiert Codex pro Session-Typ eine Markdown-Instruktionsdatei. Kein programmatisches Hook-System.

Auth-Modell: Nicht API-Key-basiert wie Claude Code — Codex nutzt ChatGPT OAuth (Google Account, auto-refresh). Token liegt in ~/.codex/auth.json. Kein manuelles Key-Rotieren nötig.


2. Konfiguration

config.toml

model = "gpt-5.4"
model_reasoning_effort = "medium"  # low | medium | high | xhigh

[projects."~/Projekte"]
trust_level = "trusted"

[projects."~/Projekte/untrusted-experiment"]
trust_level = "untrusted"

[notice.model_migrations]
"gpt-5.1-codex-max" = "gpt-5.4"   # Auto-Redirect veralteter Modell-Namen

Trust-Level ist das Äquivalent zu Claude Codes Permissions-System — aber granularer, weil per-Project und nicht global. Aktuell: 17 trusted, 2 untrusted Projekte.

Runbooks (~/.codex/runbooks/)

Jeder Session-Typ hat eine eigene Instruktionsdatei:

Runbook Zweck Wann verwenden
build.md "Implement one stable outcome" Feature bauen, Bug fixen
planning.md "Fuzzy goals → buildable artifacts" Ideen strukturieren, Architektur
review.md "Quality + regression checks" Code reviewen, vor Commit
inspect.md "Read-only exploration" Codebase verstehen, Analyse

Runbooks direkt editieren für projekt-spezifische Instruktionen — das ist Codex' Äquivalent zu CLAUDE.md (AGENTS.md ist geplant, aber noch nicht implementiert).

Approval-Policies

Codex hat zwei orthogonale Kontrollebenen — Sandbox-Mode (was darf die Umgebung?) und Approval-Policy (wann fragt der Agent nach?):

Sandbox-Mode Bedeutung
read-only Nur lesen, keine Schreiboperationen
workspace-write Schreiben im Projektverzeichnis erlaubt
danger-full-access Unbeschränkter Zugriff
Approval-Policy Bedeutung
untrusted Fragt bei allem nach
on-request Fragt nur wenn unsicher
on-failure Fragt nur bei Fehler
never Fragt nie (volle Autonomie)

Vergleich zu Claude Code:

Feature Claude Code Codex
Config-Format JSON TOML
Auth API Key (Anthropic) ChatGPT OAuth (Google)
Modell Claude Opus/Sonnet/Haiku GPT-5.4 (OpenAI)
Hooks 5 Lifecycle-Points (Shell/Python) Keine — Runbooks statt Hooks
Session-Typen Frei (Plan Mode optional) 4 definierte Typen
Sandbox Permissions allow/deny 3 Sandbox-Modes + 4 Approval-Policies
Trust Global Per-Project Trust-Level
Skills SKILL.md in ~/.claude/skills/ 33 Skill-Verzeichnisse
Feature Flags Nicht vorhanden Togglebar
Regel-Datei CLAUDE.md AGENTS.md (geplant, noch nicht aktiv)

3. Tuning

Modell und Reasoning-Tiefe

codex -m gpt-5.4 "prompt"                          # Modell wählen
codex -c model_reasoning_effort="high" exec "..."   # Mehr Reasoning
codex -c model_reasoning_effort="xhigh" exec "..."  # Maximum — langsamer, gründlicher

xhigh entspricht ungefähr Claude Codes extended thinking — für komplexe Architektur- oder Debug-Tasks sinnvoll, für einfache Edits Overhead.

Sandbox + Approval kombinieren

# Standard für den meisten Alltag: Schreiben erlaubt, fragt bei Unsicherheit
codex exec -s workspace-write -a on-request "..."

# Shorthand (identisch mit oben)
codex exec --full-auto "..."

# Nur lesen — für Analyse und Review
codex exec -s read-only "..."

# Volle Autonomie — nur für bekannte, stabile Aufgaben
codex exec -s workspace-write -a never "..."

Trust-Level per Projekt setzen

# In ~/.codex/config.toml ergänzen:
[projects."~/Projekte/MeinNeuesProjekt"]
trust_level = "trusted"

Nach dem Editieren kein Reload nötig — wird beim nächsten codex-Aufruf im Verzeichnis gelesen.

Feature Flags

codex features list                     # Alle Features und Status anzeigen
codex features enable multi_agent       # Feature global aktivieren
codex features disable js_repl          # Feature deaktivieren
codex --enable multi_agent exec "..."   # Nur für diese Session aktivieren

Stabile Features (produktionstauglich): multi_agent, personality, shell_snapshot, shell_tool, enable_request_compression, fast_mode

Experimentell (mit Vorsicht): guardian_approval, js_repl, prevent_idle_sleep

In Entwicklung (nicht für Produktion): code_mode, memories, plugins, realtime_conversation, child_agents_md

Session Management

codex resume              # Interaktiver Session-Picker
codex resume --last       # Direkt letzte Session fortsetzen
codex fork                # Session branchen (Picker)
codex fork --last         # Letzte Session forken — für Experimente ohne Hauptsession zu verlieren

fork ist praktisch wenn eine Session gut läuft, aber ein riskanter nächster Schritt ansteht — Branch erstellen, ausprobieren, bei Bedarf zur Hauptsession zurück.

Code Review

codex review                                      # Alle uncommitted Changes
codex review --base main                          # Diff gegen Branch
codex review --commit abc123                      # Einzelnen Commit reviewen
codex review --uncommitted "Focus on security"    # Mit Custom-Focus

Kein Equivalent in Claude Code nativ — dort müsste man den Review manuell als Prompt formulieren.

Runbooks anpassen

# Build-Runbook für eigene Konventionen ergänzen:
nano ~/.codex/runbooks/build.md
# → Projekt-Konventionen, Testbefehle, Style-Regeln eintragen

# Eigenes Runbook für speziellen Workflow:
cp ~/.codex/runbooks/build.md ~/.codex/runbooks/debug.md
# → Dann mit `codex --runbook debug exec "..."` aufrufen

4. Vor- und Nachteile

Vorteile

Nachteile


5. Referenz

Wichtige Dateipfade

Pfad Inhalt
~/.codex/config.toml Haupt-Config (Modell, Trust-Level, Migrationen)
~/.codex/auth.json ChatGPT OAuth Tokens
~/.codex/runbooks/build.md Build-Session-Instruktionen
~/.codex/runbooks/planning.md Planning-Session-Instruktionen
~/.codex/runbooks/review.md Review-Session-Instruktionen
~/.codex/runbooks/inspect.md Inspect-Session-Instruktionen
~/.codex/rules/default.rules Command-Approval-Rules
~/.codex/skills/ 33 Skill-Verzeichnisse
~/.codex/history.jsonl Session-History (52KB+)
~/.codex/log/ Session-Logs
~/.codex/models_cache.json Cached Modell-Liste (63KB)
~/.local/bin/codex-wrapper Usage-Tracking Wrapper → ~/.claude/usage/codex-cli.jsonl

Wichtige Befehle

# Sessions
codex                                    # Interaktive Session starten
codex exec "prompt"                      # Non-interactive
codex exec --full-auto "prompt"          # Auto (workspace-write + on-request)
codex exec -s read-only "prompt"         # Nur lesen
codex resume --last                      # Letzte Session fortsetzen
codex fork --last                        # Letzte Session branchen

# Review
codex review                             # Uncommitted Changes
codex review --base main                 # Diff gegen Branch
codex review --commit abc123             # Spezifischen Commit

# Modell und Reasoning
codex -m gpt-5.4 "prompt"               # Modell wählen
codex -c model_reasoning_effort="xhigh" exec "..."   # Maximum Reasoning

# Features
codex features list                      # Alle Feature Flags anzeigen
codex features enable multi_agent        # Feature aktivieren
codex features disable js_repl           # Feature deaktivieren
codex --enable multi_agent exec "..."    # Per-Session

# MCP
codex mcp list                           # Konfigurierte Server
codex mcp add my-tool -- my-command      # Server hinzufügen
codex mcp remove my-tool                 # Server entfernen

# Auth
codex login status                       # Auth-Status prüfen