„Schon wieder ein neues KI-Terminal-Tool?" Das war mein erster Gedanke, als OpenAI im August 2025 Codex CLI ankündigte. Nach Claude Code dachte ich ehrlich: Brauchen wir das wirklich?
Dann hab ich Codex CLI getestet. Und wow - das Teil hat mich überrascht. Nicht nur, dass es GPT-5 nutzt (ja, das neue Modell ist krass gut), es läuft auch komplett lokal in deinem Terminal. Keine Browser-Tabs, kein Hin- und Herkopieren. Einfach codex
tippen und loslegen.
Nach drei Wochen intensiver Nutzung zeige ich dir heute alle OpenAI Codex CLI Befehle - von der Installation bis zu fortgeschrittenen MCP-Integrationen. Dies ist die vollständigste deutsche Referenz, die du finden wirst.
- OpenAI Codex CLI bietet direkten Terminal-Zugriff auf GPT-5 mit lokaler Ausführung und Bildanalyse-Features
- Installation via npm oder Homebrew in 2 Minuten - Authentifizierung über ChatGPT-Account oder API-Key
- Drei Approval-Modi (Auto, Read-Only, Full Access) geben dir volle Kontrolle über Dateizugriffe und Befehlsausführung
OpenAI Codex CLI installieren: Zwei Wege, ein Ziel
Die Installation von Codex CLI ist erfrischend simpel. Du brauchst nur Node.js 18+ oder Homebrew und einen ChatGPT-Account:
# Methode 1: npm (funktioniert überall)
npm install -g @openai/codex
# Methode 2: Homebrew (für Mac/Linux-Fans)
brew install codex
# Direkte Binary-Installation (ohne Package Manager)
curl -L https://github.com/openai/codex/releases/latest/download/codex-darwin-arm64 -o codex
chmod +x codex
sudo mv codex /usr/local/bin/
Authentifizierung: ChatGPT-Account oder API-Key
OpenAI bietet zwei Authentifizierungsmethoden. Die ChatGPT-Variante ist definitiv bequemer:
# Option 1: Mit ChatGPT-Account (empfohlen)
codex auth login
# Öffnet Browser für OAuth-Login
# Option 2: Mit API-Key
export OPENAI_API_KEY="sk-dein-api-key"
codex
# Option 3: Config-Datei (~/.codex/config.toml)
echo 'api_key = "sk-dein-api-key"' > ~/.codex/config.toml
Grundbefehle: Der tägliche Workflow
Die Basis-Befehle von Codex CLI sind intuitiv gestaltet. Hier meine täglichen Favoriten:
Interaktiver Modus starten
# Einfacher Start
codex
# Mit spezifischem Prompt
codex "Analysiere diese React-Komponente"
# Mit Bild-Input (NEU!)
codex -i screenshot.png "Was ist hier falsch?"
# Mehrere Bilder gleichzeitig
codex --image error1.png,error2.png "Erkläre diese Fehler"
Non-Interactive Mode (für Automatisierung)
Der Clou für CI/CD-Pipelines und Automatisierung:
# Direkte Ausführung ohne Interaktion
codex exec "Fix the failing unit tests"
# Mit Pipe-Input
echo "function add(a, b) { return a + b }" | codex "Add TypeScript types"
# Git-Integration
git diff | codex "Schreibe eine Commit-Message"
# Build-Fehler analysieren
npm run build 2>&1 | codex "Erkläre den Fehler und schlage eine Lösung vor"
Approval-Modi: Volle Kontrolle über deine Sicherheit
Das ist richtig clever gelöst - du bestimmst, was Codex CLI darf:
Modus | Was ist erlaubt? | Wann nutzen? |
---|---|---|
auto | Lesen, Bearbeiten, sichere Befehle ausführen | Standard für normale Entwicklung |
read-only | Nur Lesen und Analysieren, keine Änderungen | Für Code-Reviews oder Analyse |
full-access | Uneingeschränkter Zugriff auf alles | Nur in isolierten Umgebungen! |
# Read-Only Modus aktivieren
codex --approval read-only
# Full Access (Vorsicht!)
codex --approval full-access
# In der Config dauerhaft setzen
echo 'default_approval = "read-only"' >> ~/.codex/config.toml
full-access
Modus ist gefährlich! Nutze ihn nur in Docker-Containern oder VMs. Ich hab mal aus Versehen meine .zshrc gelöscht - nicht cool.Slash-Commands: Die versteckten Power-Features
Innerhalb der Codex CLI Session kannst du spezielle Befehle nutzen:
Befehl | Funktion | Beispiel / Tipp |
---|---|---|
/model | Modell wechseln | /model gpt-4 |
/clear | Kontext löschen | Spart Tokens bei langen Sessions |
/save | Session speichern | /save debugging-session |
/load | Session laden | /load debugging-session |
/context | Kontext-Größe anzeigen | Zeigt Token-Verbrauch |
/reset | Kompletter Reset | Wenn Codex verwirrt ist |
/help | Hilfe anzeigen | Zeigt alle Commands |
/exit | Session beenden | Oder Ctrl+D |
CLI-Flags
Hier findest du die komplette Liste aller verfügbaren CLI-Flags:
CLI Flag | Beschreibung | Beispiel-Verwendung |
---|---|---|
--verbose | Aktiviert detailliertes Logging für Debugging-Zwecke. Zeigt alle API-Calls, Token-Verbrauch und interne Verarbeitung. | codex --verbose "Debug diesen Code" |
--dry-run | Simuliert Befehle ohne tatsächliche Ausführung. Perfekt zum Testen gefährlicher Operationen. | codex --dry-run "Lösche alle .log Dateien" |
--system | Überschreibt den System-Prompt für spezifische Expertise oder Personas. | codex --system "Du bist ein Python-Experte" "Optimiere diesen Code" |
--json | Formatiert Output als JSON für Scripting und Automation. Ideal für CI/CD-Integration. | codex --json "Liste alle Funktionen in main.js" |
--timeout | Setzt maximale Ausführungszeit in Sekunden. Standard: 120, Maximum: 600. | codex --timeout 300 "Refaktoriere die gesamte Codebasis" |
--reasoning | Steuert die Reasoning-Tiefe des Modells. Optionen: minimal, low, medium, high. | codex --reasoning high "Löse dieses komplexe Problem" |
--model | Wählt ein spezifisches Modell. Standard: gpt-5, Alternativen: gpt-4, o3. | codex --model o3 "Analysiere diese Architektur" |
--sandbox | Kontrolliert Sandboxing-Modus: read-only, workspace-write, danger-full-access. | codex --sandbox workspace-write |
--config | Überschreibt Config-Werte direkt aus der Kommandozeile. | codex --config temperature=0.2 "Schreibe präzisen Code" |
--profile | Lädt vordefiniertes Konfigurationsprofil aus ~/.codex/profiles/ | codex --profile production "Deploy-Checks durchführen" |
--ask-for-approval | Approval-Policy: untrusted, on-failure, on-request, never. | codex --ask-for-approval never --sandbox danger-full-access |
--image / -i | Fügt Bilder als Input hinzu. Unterstützt PNG, JPG, WebP. Mehrere Bilder mit Komma trennen. | codex -i screenshot.png,error.jpg "Was ist hier falsch?" |
MCP-Integration
Model Context Protocol (MCP) macht Codex CLI zum Schweizer Taschenmesser:
[mcp_servers.github]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-github"]
env = { GITHUB_TOKEN = "ghp_dein_token" }
[mcp_servers.postgres]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-postgres"]
env = { DATABASE_URL = "postgresql://localhost/mydb" }
[mcp_servers.slack]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-slack"]
env = { SLACK_TOKEN = "xoxb-dein-token" }
Nach der Konfiguration hast du Zugriff auf erweiterte Funktionen:
# GitHub-Integration nutzen
codex "Erstelle ein Issue für den Bug in Zeile 42"
# Datenbank-Queries
codex "Zeige alle User, die sich heute registriert haben"
# Slack-Nachrichten
codex "Poste den Deploy-Status in #dev-channel"
# Alles kombiniert
codex "Analysiere den letzten Commit, teste die Änderungen und poste das Ergebnis in Slack"
Konfiguration und Anpassung
Die ~/.codex/config.toml
ist deine Schaltzentrale:
# Authentifizierung
api_key = "sk-xxx" # Optional, wenn nicht via OAuth
# Standard-Einstellungen
default_model = "gpt-5"
default_approval = "auto"
temperature = 0.7
max_tokens = 4000
# Logging
log_level = "info" # debug, info, warn, error
log_file = "~/.codex/codex.log"
# Performance
cache_enabled = true
cache_ttl = 3600 # Sekunden
# Sicherheit
zero_data_retention = true
disable_telemetry = true
# Custom Prompts
[prompts]
startup = "Du bist ein Senior Developer mit 10 Jahren Erfahrung."
error_analysis = "Erkläre Fehler ausführlich mit Lösungsvorschlägen."
# MCP-Server (siehe oben)
[mcp_servers]
# ...
Troubleshooting
Problem | Mögliche Ursache | Lösung |
---|---|---|
Authentication failed | Abgelaufener Token | codex auth logout && codex auth login |
Command not found | PATH nicht gesetzt | export PATH=$PATH:/usr/local/bin |
Timeout errors | Zu große Anfrage | --timeout erhöhen oder Query aufteilen |
MCP server not working | Fehlende Dependencies | npx installieren, Server neu starten |
High token usage | Zu viel Kontext | /clear nutzen oder --max-tokens setzen |
Slow responses | GPT-5 überlastet | /model gpt-4 für schnellere Antworten |