# Codex mit OpenCheese

> OpenAI Codex CLI, Desktop und IDE-Erweiterung mit OpenCheese: Modellanbieter in der config.toml, Responses-API, API-Schlüssel, Reasoning-Stufe, Fehlerbehebung.
>
> Webseite: https://opencheese.dev/de/docs/codex/ · Alle Seiten der Doku: https://opencheese.dev/de/docs.md

Codex spricht die Responses-API von OpenAI, die OpenCheese unter `https://api.opencheese.dev/v1`
bereitstellt. Erforderlich ist Codex 0.120 oder neuer: Ältere Builds nutzen ein
Chat-Wire-Protokoll, das OpenAI entfernt hat, und ihre Konfiguration wird nicht geladen.

Die Codex CLI, die Codex-Desktop-App und die Codex-IDE-Erweiterung (VS Code, Cursor und andere
VS-Code-Forks) lesen dieselbe `~/.codex/config.toml`, eine Einrichtung genügt also für alle drei.

## Der schnellste Weg: die generierte Datei

Melde dich an, öffne **Konfiguration**, wähle den Tab **Codex**, such dir einen API-Schlüssel aus
und bestätige dein Passwort. Führe dann die generierte Datei mit deiner Benutzerkonfiguration
zusammen:

| System | Datei |
| --- | --- |
| macOS und Linux | `~/.codex/config.toml` |
| Windows | `%USERPROFILE%\.codex\config.toml` |
| Codex in WSL | `~/.codex/config.toml` in deinem WSL-Home-Verzeichnis |

## Manuelle Einrichtung

```toml
model = "MODEL_ID"
model_provider = "opencheese"
model_reasoning_summary = "auto"

[model_providers.opencheese]
name = "OpenCheese"
base_url = "https://api.opencheese.dev/v1"
wire_api = "responses"
env_key = "OPENCHEESE_API_KEY"
request_max_retries = 4
stream_max_retries = 5
stream_idle_timeout_ms = 300000
```

Exportiere dann den Schlüssel in der Shell, aus der du Codex startest, und zwar in einfachen
Anführungszeichen (der Schlüssel enthält `$`-Zeichen, die doppelte Anführungszeichen expandieren
würden):

```bash
export OPENCHEESE_API_KEY='YOUR_OPENCHEESE_API_KEY'
```

- `base_url` muss auf `/v1` enden: Codex hängt `/responses` selbst an.
- `wire_api` muss `"responses"` sein; aktuelle Codex-Versionen lehnen `"chat"` ab.
- Alle Schlüssel der obersten Ebene (`model`, `model_provider`, ...) müssen vor dem ersten
  `[table]`-Header stehen, sonst lässt sich die Datei nicht parsen.
- Die generierte Datei speichert den Schlüssel als `experimental_bearer_token`. `env_key` hält ihn
  stattdessen aus der Datei heraus. Nutze das eine oder das andere, nie beides: Codex lehnt diese
  Kombination ab.
- Trage das in deine Benutzerkonfiguration ein. In einer projektlokalen `.codex/config.toml`
  ignoriert Codex `model_provider` und gibt beim Start eine Warnung aus.

## Modelle und Reasoning-Stufe

`/model` listet in Codex die eingebauten OpenAI-Modelle von Codex, nicht den OpenCheese-Katalog;
ein Modell aus dieser Liste funktioniert nur, wenn dein Schlüssel ein Modell mit derselben ID
hat. Für jedes andere Modell setzt du `model` in der `config.toml` oder startest Codex für diese
Sitzung mit einem bestimmten Modell:

```bash
codex -m MODEL_ID
```

`model_reasoning_effort` legt die Reasoning-Stufe zu Beginn fest (zum Beispiel `"high"`); die
generierte Datei beginnt mit `max`, wo das Modell diese Stufe anbietet, sonst mit `high` oder
`medium`. Eine Stufe, die das Modell nicht anbietet, wird mit einer Meldung abgelehnt, die die
verfügbaren Stufen nennt. Codex liest die `config.toml` nur beim Start; starte es nach jeder
Änderung neu.

Der **Fast**-Modus von Codex wechselt zur Fast-Version des Modells, wo es eine gibt: Antworten
kommen schneller und kosten mehr. Hat ein Modell keine Fast-Version, antwortet die normale.

## Verbrauch und Kosten

Jede Anfrage erscheint im Dashboard unter **Transaktionen**, gruppiert als eine Sitzung pro
Unterhaltung, mit ihrem Tokenverbrauch und ihren Kosten.

## Fehlerbehebung

- **Die Konfiguration wird nicht geladen**: Aktualisiere Codex auf 0.120 oder neuer und achte
  darauf, dass kein Schlüssel der obersten Ebene nach einem `[table]`-Header steht.
- **„Invalid or disabled OpenCheese API key“**: Prüfe den Schlüssel auf der Seite
  **API-Schlüssel** und ob `OPENCHEESE_API_KEY` in der Shell gesetzt ist, aus der du Codex
  startest.
- **Statt der API antwortet die Website**: `base_url` muss `api.opencheese.dev` verwenden.
- **`/model` zeigt meine OpenCheese-Modelle nicht**: Das ist erwartetes Verhalten; der Befehl
  listet den eingebauten Katalog von Codex. Setze `model` in der `config.toml` oder nutze
  `codex -m MODEL_ID`.
