„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 login
# Öffnet Browser für OAuth-Login
# Status prüfen
codex login status
# Option 2: Mit API-Key über stdin
echo "sk-dein-api-key" | codex login --with-api-key
# Option 3: Umgebungsvariable
export OPENAI_API_KEY="sk-dein-api-key"
codex
# Ausloggen
codex logoutGrundbefehle: 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"
# Kurzform mit Alias
codex e "Refaktoriere diese Funktion"
# 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"
# JSON-Output für CI/CD
codex exec --json "Liste alle TODO-Kommentare"
# Letzten Assistant-Output in Datei speichern
codex exec -o result.txt "Generiere Unit-Tests"
# Session fortsetzen
codex exec resume --lastApproval-Modi: Volle Kontrolle über deine Sicherheit
Das ist richtig clever gelöst - du bestimmst, was Codex CLI darf:
Sandbox-Modi (--sandbox / -s)
Sandbox-Modus | Was ist erlaubt? | Wann nutzen? |
|---|---|---|
read-only | Nur Lesen und Analysieren, keine Änderungen | Für Code-Reviews oder Analyse |
workspace-write | Schreibzugriff nur im Workspace-Ordner | Standard für normale Entwicklung |
danger-full-access | Uneingeschränkter Zugriff auf das gesamte System | Nur in isolierten Umgebungen! |
Approval-Modi (--ask-for-approval / -a)
Approval-Modus | Wann wird gefragt? | Wann nutzen? |
|---|---|---|
untrusted | Fragt bei jeder Aktion nach Bestätigung | Für sensible Projekte |
on-failure | Fragt nur bei Fehlern nach Bestätigung | Guter Kompromiss |
on-request | Fragt nur auf explizite Anfrage | Für erfahrene Nutzer |
never | Fragt nie nach Bestätigung | Für automatisierte Workflows |
# Read-Only Sandbox
codex --sandbox read-only
# Workspace-Schreibzugriff mit Approval bei Fehlern
codex --sandbox workspace-write --ask-for-approval on-failure
# Full-Auto Shortcut (workspace-write + on-failure)
codex --full-auto
# YOLO-Modus - alles erlaubt (GEFÄHRLICH!)
codex --dangerously-bypass-approvals-and-sandbox
# Kurzform:
codex --yolo
# Zusätzliche Ordner beschreibbar machen
codex --add-dir /tmp/build --add-dir ~/shared--yolo 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 und Reasoning-Effort wechseln | /model gpt-5 |
/approvals | Autorisierungsmodus ändern | Bestimmt, was ohne Nachfrage erlaubt ist |
/init | AGENTS.md Gerüst erstellen | Projekt-spezifische Anweisungen für Codex |
/new | Neue Konversation in derselben Session | Startet frisch ohne CLI neu zu öffnen |
/compact | Konversation zusammenfassen | Spart Tokens bei langen Sessions |
/undo | Letzte Änderung rückgängig machen | Stellt Dateien wieder her |
/diff | Git-Diff anzeigen (inkl. untracked Files) | Zeigt alle staged und unstaged Änderungen |
/mention | Datei zum Kontext hinzufügen | /mention src/utils.ts |
/status | Session-Config und Token-Nutzung anzeigen | Zeigt aktuelles Modell und Verbrauch |
/review | Codex bittet um Review des Working Trees | Findet Probleme in deinen Änderungen |
/mcp | MCP-Server und Tools anzeigen | Listet konfigurierte MCP-Tools |
/feedback | Logs an Maintainer senden | Bei Bugs oder Problemen |
/logout | Aus Codex ausloggen | Entfernt gespeicherte Credentials |
/quit | CLI beenden | Auch /exit oder Ctrl+D |
Custom Slash-Commands erstellen
Du kannst eigene wiederverwendbare Prompts als Slash-Commands anlegen:
# Erstelle einen Custom Command
mkdir -p ~/.codex/prompts
cat > ~/.codex/prompts/draftpr.md << 'EOF'
---
description: "Erstellt einen PR-Entwurf"
argument-hint: "FILES PR_TITLE"
---
Analysiere die folgenden Dateien: $1
Erstelle einen PR mit dem Titel: $PR_TITLE
Schreibe eine aussagekräftige Beschreibung.
EOF
# Nutze den Command in Codex:
# /prompts:draftpr FILES="src/index.ts" PR_TITLE="Add validation"$1-$9) und benannte Argumente ($UPPERCASE). Mit YAML-Frontmatter kannst du Beschreibungen und Hinweise hinzufügen.CLI-Flags
Hier findest du die komplette Liste aller verfügbaren CLI-Flags:
CLI Flag | Beschreibung | Beispiel-Verwendung |
|---|---|---|
--model / -m | Wählt ein spezifisches Modell. Standard: gpt-5, Alternativen: gpt-4, o3. | codex -m o3 "Analysiere diese Architektur" |
--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?" |
--sandbox / -s | Kontrolliert Sandboxing: read-only, workspace-write, danger-full-access. | codex -s workspace-write |
--ask-for-approval / -a | Approval-Policy: untrusted, on-failure, on-request, never. | codex -a on-failure |
--full-auto | Shortcut für unbeaufsichtigte Arbeit: setzt --ask-for-approval on-failure und --sandbox workspace-write. | codex --full-auto "Fix alle Linter-Fehler" |
--yolo | Deaktiviert alle Sicherheitschecks. Nur in isolierten Umgebungen verwenden! | codex --yolo "Refaktoriere alles" |
--cd / -C | Setzt das Arbeitsverzeichnis für den Agenten. | codex -C ~/projects/myapp |
--search | Aktiviert Web-Suche. Agent kann web_search Tool ohne Nachfrage nutzen. | codex --search "Aktuelle Best Practices für React 19" |
--add-dir | Gewährt Schreibzugriff auf zusätzliche Ordner neben dem Workspace. | codex --add-dir /tmp/build --add-dir ~/shared |
--profile / -p | Lädt vordefiniertes Konfigurationsprofil aus ~/.codex/config.toml. | codex -p production |
--oss | Nutzt lokalen Open-Source Model Provider (Ollama). Validiert, dass Ollama läuft. | codex --oss "Erkläre diesen Code" |
--config / -c | Überschreibt Config-Werte direkt aus der Kommandozeile. | codex -c temperature=0.2 |
--enable / --disable | Aktiviert oder deaktiviert Feature-Flags. | codex --enable experimental-feature |
Flags für codex exec
Der Non-Interactive Mode hat zusätzliche Flags für Automatisierung:
CLI Flag | Beschreibung |
|---|---|
--json | Gibt newline-delimited JSON Events aus. Ideal für CI/CD-Integration. |
--output-last-message / -o | Schreibt die letzte Assistant-Nachricht in eine Datei. |
--output-schema | JSON Schema zur Validierung der finalen Antwort. |
--skip-git-repo-check | Erlaubt Ausführung außerhalb eines Git-Repositories. |
--color | Steuert ANSI-Farbausgabe: always, never, auto. |
Subcommands: Alle Befehle im Überblick
Codex CLI hat mehrere Subcommands für verschiedene Anwendungsfälle:
Subcommand | Beschreibung |
|---|---|
codex | Startet die interaktive Terminal-UI (Standard). |
codex exec / codex e | Non-Interactive Mode für Scripting und CI/CD. |
codex login | Authentifizierung via ChatGPT OAuth, Device Auth oder API-Key. |
codex logout | Entfernt gespeicherte Credentials. |
codex resume | Setzt eine frühere Session fort (per ID oder --last). |
codex apply / codex a | Wendet einen Diff von Codex Cloud auf dein lokales Repo an. |
codex sandbox | Führt Befehle in macOS Seatbelt oder Linux Landlock Sandbox aus. |
codex completion | Generiert Shell-Completion-Scripts (bash, zsh, fish, powershell). |
codex mcp | Verwaltet Model Context Protocol Server (list, add, remove, login). |
codex mcp-server | Startet Codex als MCP-Server über stdio. |
codex cloud | Interagiert mit Codex Cloud Tasks aus dem Terminal. |
MCP-Integration
Model Context Protocol (MCP) macht Codex CLI zum Schweizer Taschenmesser. Die Verwaltung erfolgt über den codex mcp Subcommand:
# Alle konfigurierten Server anzeigen
codex mcp list
codex mcp list --json
# Server-Details abrufen
codex mcp get github
# Neuen Server hinzufügen (stdio-Transport)
codex mcp add github -- npx -y @modelcontextprotocol/server-github
# Mit Umgebungsvariablen
codex mcp add github --env GITHUB_TOKEN=ghp_xxx -- npx -y @modelcontextprotocol/server-github
# Server mit URL hinzufügen
codex mcp add myserver --url https://api.example.com/mcp
# OAuth-Login für MCP-Server
codex mcp login github --scopes repo,user
# Server entfernen
codex mcp remove githubAlternativ kannst du Server in der Config-Datei definieren:
[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 |






