Start / Cheat Sheets

Cheat Sheet

Codex: Auftrag und Kontext — Cheat Sheet

Stand: · Codex für Entwickler

OpenAI CodexAGENTS.mdPlan ModeContext Engineering

Der Spickzettel zum Seminar Codex für Entwickler, erster Teil: alles, was vor dem ersten Diff passiert — Auftrag zuschneiden, Kontext setzen, Regeln verankern, planen. Der Betrieb steht auf dem zweiten Blatt, Codex im Projektbetrieb. Befehle und Konfigurationsschlüssel ändern sich schnell; maßgeblich bleibt die offizielle Codex-Dokumentation. Das Blatt fasst Entscheidungen zusammen — es bringt die Arbeitsweise nicht bei.

Assistent oder Agent

Klassischer AssistentCodex als Agent
Vervollständigt die offene DateiArbeitet über das ganze Projekt
Schlägt vor, du tippst abÄndert Dateien selbst
Kennt keine TestausgabeFührt Tests aus und liest sie
Ein Prompt, eine AntwortViele Schritte bis zum Ergebnis

Beides hat seinen Platz — nur die Erwartung an Aufwand und Prüfung ist eine andere: Vorschläge prüft man beim Lesen, Agentenarbeit erst am Diff.

Modul: Codex verstehen und einsetzen

Oberflächen und Modelle

OberflächeStärkeTypischer Einsatz
CLIdirekt, skriptbarlokale Arbeit, Automatisierung
IDE-ErweiterungDiffs im EditorPairing beim Entwickeln
Desktop-Appmehrere Threadsparallele Aufträge im Blick
Cloudläuft ohne dich weiterlange Aufgaben, Reviews

Alle vier sprechen denselben Agenten an und teilen sich dieselbe Konfiguration — aber nicht denselben Kontext. Die Cloud kennt lokale Dienste und Datenbanken nicht.

curl -fsSL https://chatgpt.com/codex/install.sh | sh   # empfohlen
npm install -g @openai/codex                           # Alternative
codex                                                  # Session im Projekt

Nach der Installation ein neues Terminal öffnen. Windows nutzt das PowerShell-Skript. Die Konfiguration landet unter ~/.codex/, nicht im Projekt.

/model                       # Modell in der Session umschalten
/status                      # Modell, Rechte, Kontextstand
codex --model <name>         # beim Start festlegen
# ~/.codex/config.toml — gilt für CLI, App und IDE
model = "<name>"
model_reasoning_effort = "high"

Modellnamen veralten schnell; die Auswahlregel nicht: großes Modell mit hohem Denkaufwand für Architektur und Planung, schnelles und günstiges fürs Sichten großer Codebasen und mechanische Umbenennungen. Kosten und Wartezeit gehören zur Entscheidung.

OrtAuslöserErgebnis
Lokal vor dem Commit/review in der SessionHinweise vor dem Push
Pull RequestKommentar an den AgentenReview als Kommentar
Build-PipelineGitHub ActionPrüfschritt im CI

Ein Review des Agenten ersetzt kein menschliches Review — es geht ihm voraus. Automatisch auf jedem Pull Request erzeugt es schnell Rauschen.

Modul: Codex verstehen und einsetzen

Aufgaben zuschneiden

GrößeBeispielVorgehen
KleinTippfehler, Umbenennungdirekt beauftragen
MittelEndpunkt ergänzenPlan sichten, dann bauen
GroßModul umbauenanalysieren, planen, staffeln
OffenFehlersucheerst untersuchen lassen

Im Zweifel eine Stufe kleiner schneiden. Ein guter Auftrag hat ein prüfbares Ziel, einen eingegrenzten Bereich, ein Erfolgskriterium (meist ein Test) und einen Umfang, der in ein Review passt.

Die fachliche Anforderung ist noch kein Auftrag — links die Anforderung, rechts der erste von mehreren Schnitten:

Fachliche AnforderungAgentenauftrag
Kunden sollen später stornieren könnenStornofrist auf 48 h ändern
Wir brauchen bessere FehlermeldungenFehlertexte in einem Modul ersetzen
Die Buchung ist zu langsamEngpass messen, dann Abfrage ändern
Ziel:     Stornofrist von 24 h auf 48 h ändern.
Kontext:  @src/buchung/storno.ts und die Tests dazu.
Ergebnis: Änderung plus Test, npm test läuft grün.
Grenzen:  Preislogik und Migrationen nicht anfassen.

Diese vier Zeilen ersetzen keine Spezifikation, verhindern aber die häufigsten Rückfragen. Ohne Erfolgskriterium erklärt sich der Agent selbst für fertig.

Module: Codex verstehen und einsetzen · Context Engineering

Kontexthebel und ihre Reichweite

HebelWirktLebensdauer
Auftrag im Promptauf diese Aufgabeeine Runde
Dateiverweiseauf diese Sessioneine Session
AGENTS.mdauf jede Sessiondauerhaft
.codexignoreauf den Suchraumdauerhaft

Faustregel: Was sich wiederholt, gehört ins Repository — nicht in den nächsten Prompt. Immer längere Prompts kaschieren nur fehlenden Projektkontext.

@src/buchung/preis.ts    Datei erwähnen
/mention docs/api.md     Datei anhängen
/diff                    offene Änderungen zeigen
/status                  Kontextstand prüfen

Verweise ersetzen die Suche des Agenten — er liest zielgerichtet statt zu streifen. .codexignore ist dabei Kontexthygiene, keine Zugriffskontrolle.

Modul: Context Engineering

Context Window und Compaction

AnteilTypischer Inhalt
GrundlastSystemtext, AGENTS.md, Werkzeuge
Gelesene Dateienoft der größte Posten
WerkzeugausgabenTestläufe, Suchergebnisse, Logs
VerlaufAufträge und Antworten der Session

Schon vor der ersten Nachricht ist ein Teil des Fensters belegt. Ist es voll, wird verdichtet — und das kostet: Details aus Werkzeugausgaben gehen verloren, die Zusammenfassung ist eine Auslegung und kein Protokoll, und der Grund für frühere Entscheidungen fehlt danach oft. Deshalb vor dem Verdichten committen.

SymptomMeist die Ursache
Agent ändert die falsche DateiAusschnitt nicht begrenzt
Antworten werden vageVerlauf zu lang, verdichtet
Konventionen missachtetRegeln stehen nirgends
Fehlersuche im Kreiskeine Reproduktion vorgegeben

Fast jedes Kontextproblem hat seine Ursache im Zuschnitt, nicht im Modell.

Modul: Context Engineering

Spezifikation im Repository

docs/spec/stornofrist.md
  Kontext     Warum die Änderung nötig ist
  Verhalten   Regeln, inklusive Grenzfällen
  Abnahme     prüfbare Kriterien
  Offen       bewusst ungeklärte Punkte

Der Abschnitt Offen ist der wichtigste — er verhindert, dass der Agent Lücken selbst füllt. Eine Spezifikation ohne Abnahmekriterien ist ein Wunschzettel; erfüllte Kriterien heißen „richtig zur Spezifikation”, nicht „richtig”. Für einen Einzeiler lohnt der Aufwand nicht.

Modul: Context Engineering

AGENTS.md gegen README.md

MerkmalREADME.mdAGENTS.md
Für wenMenschenCoding-Agenten
InhaltÜberblick, EinstiegBefehle, Konventionen
Tonerklärendanweisend
Umfangso kurz wie möglichso knapp wie nötig

Die Datei gilt in jeder Session, für alle im Team gleich, ist versioniert und im Review diskutierbar. Sie kostet aber Kontext — jede Zeile muss sich rechnen, und was schon im Linter steht, gehört nicht hinein.

Gehört in den PromptGehört in die AGENTS.md
Diese eine AufgabeJede Aufgabe im Projekt
Das Ziel dieser ÄnderungDer Testbefehl
Betroffene DateienSchichtgrenzen und Tabus
Einmalige AusnahmeDauerhafte Konvention

Faustregel: Gilt es auch nächste Woche und für Kolleginnen? Dann ins Repository. Entscheidend sind exakte Befehle statt Beschreibungen — „Wir testen gründlich” hilft dem Agenten nicht.

Modul: AGENTS.md und Projektregeln

Regelebenen und Leitplanken

EbeneWofür gedacht
Benutzerordnereigene Vorlieben über alle Projekte
ProjektwurzelRegeln für das ganze Repository
ZwischenebenenRegeln je Bereich oder Paket
ArbeitsverzeichnisRegeln für genau dieses Modul

Die Ebenen werden zusammengefügt; eine AGENTS.override.md verdrängt auf ihrer Ebene die reguläre Datei. Das Ergebnis ist auf 32 KiB begrenzt, und global gesetzte Vorlieben wirken auch in fremden Projekten.

EbeneMittelWirkung
AbsichtAGENTS.mddauerhaft, aber nicht erzwungen
TechnikSandbox, Freigabenhart begrenzt
PrüfungDiff, Tests, Reviewmacht sichtbar

Regeln sind Text, keine Zusicherung. Immer neue Regeln ersetzen keine fehlende technische Grenze — die steht auf dem zweiten Blatt.

Modul: AGENTS.md und Projektregeln

Plan Mode

Sofort umsetzenErst planen
Entwurf bleibt implizitEntwurf steht als Text da
Korrektur nach der ArbeitKorrektur vor der Arbeit
Ein großes Diff am EndePrüfbare Teilschritte
Schnell zum ersten ErgebnisSchnell zum richtigen Ergebnis

Die Grenze verläuft bei mehreren Dateien: Planen lohnt, wenn mehrere Schichten betroffen sind, mehr als ein Lösungsweg vertretbar ist, fremder oder alter Code im Spiel ist oder der Fehler nur beobachtet, aber nicht verstanden ist.

/plan               Plan Mode einschalten
/plan <Auftrag>     einschalten und gleich beauftragen
Shift+Tab           zwischen den Modi wechseln
/status             aktuellen Modus prüfen

Ein Plan besteht aus Schritten, nach denen sich anhalten und ausliefern ließe:

1  Frist als Konstante herausziehen, Tests grün
2  Konstante konfigurierbar machen, Test ergänzt
3  Wert auf 48 h setzen, Grenzfall-Test ergänzt
4  API-Dokumentation nachziehen

Modul: Plan Mode und agentische Workflows

Vier Fragen an einen Plan

FrageDeckt auf
Was hast du verworfen?unausgesprochene Annahmen
Was wird dadurch schwerer?verschwiegene Kosten
Was passiert bei Fehlern?fehlende Fehlerbehandlung
Was, wenn es doppelt läuft?Nebenläufigkeitslücken

Sie kosten eine Minute und sparen regelmäßig einen Tag. Nachgeschärft wird gezielt — mit dem Hinweis, was bleibt, sonst erfindet der Agent den ganzen Plan neu:

Schritt 2 vor Schritt 1 — sonst brechen die Tests.
Schritt 3 zerlegen: erst Wert, dann Grenzfälle.
Migration fehlt, ergänze sie als eigenen Schritt.
Alles Übrige bleibt.
PhaseDer AgentDu
Analyseliest, fragtbeantwortest
Planungschlägt vorentscheidest
Umsetzungändert, testetgibst frei, prüfst
Reviewerklärt, korrigiertbewertest

In jeder Phase liegt die Entscheidung beim Menschen — der Agent liefert die Vorarbeit.

Modul: Plan Mode und agentische Workflows

Prompt, Regel oder Skill

MittelGiltWofür
Prompteinmaligdiese eine Aufgabe
AGENTS.mdimmerRegeln und Konventionen
Skillbei Bedarfein benannter Ablauf
AspektAGENTS.mdSkill
Wann aktivimmerwenn passend
InhaltRegeln, BefehleAblauf mit Schritten
Umfangknapp haltendarf ausführlich sein

Weil Skills nur bei Bedarf geladen werden, belasten sie den Kontext nicht dauerhaft. Die Prüffrage je Aussage: Muss sie auch dann gelten, wenn niemand den Skill ruft? Dann ist sie eine Regel.

Modul: Agent Skills und wiederverwendbare Fähigkeiten

Aufbau eines Skills

endpunkt-anlegen/
  SKILL.md      Name, Beschreibung, Anweisungen
  scripts/      optional, wo Genauigkeit zählt
  references/   optional, Hintergrundwissen
  assets/       optional, Vorlagen

Nur die SKILL.md ist Pflicht. Über das Laden entscheidet die Beschreibung, nicht der Inhalt — sie muss Zweck und Abgrenzung nennen:

---
name: endpunkt-anlegen
description: Legt einen neuen REST-Endpunkt samt
  Test und Doku an. Nicht für Änderungen an
  bestehenden Endpunkten verwenden.
---
AblageWofür gedacht
RepositoryAbläufe dieses Projekts, im Team geteilt
Heimatverzeichniseigene Arbeitsweise über Projekte hinweg
SystemweitVorgaben für alle Nutzer der Maschine

Im Zweifel enger wählen und später hochziehen — nur im Repository wird ein Skill mitgereviewt. Typische Kandidaten: Endpunkt anlegen, Review-Prüfliste, Testlücken suchen, Release vorbereiten. Je öfter ein Ablauf unter Zeitdruck stattfindet, desto mehr lohnt er sich als Skill.

Modul: Agent Skills und wiederverwendbare Fähigkeiten

Was wohin gehört

ErkenntnisGehört nach
Regel, die immer giltAGENTS.md
Ablauf, der sich wiederholtSkill
Entscheidung mit BegründungCommit oder Spezifikation
Persönliche Gewohnheiteigene Prüfliste

Was nur im Kopf bleibt, ist beim nächsten Vorhaben wieder verschwunden.

Modul: Praxisprojekt: Vom Auftrag zum Ergebnis

Typische Fallen

  • Wie bei der Autovervollständigung prompten. Wer den Agenten wie eine Vervollständigung anspricht, bekommt Stückwerk.
  • npm i -g codex installiert das falsche Paket. Richtig ist @openai/codex.
  • Zwei Themen in einer Session. Vermischter Kontext führt zu vermischten Ergebnissen; Sessions gelten je Repository.
  • Alles mitgeben. Zu viele Verweise verdrängen den eigentlichen Auftrag — genauso schädlich wie zu wenig Kontext.
  • Regeln, die der Bestand selbst verletzt. Sie verwirren den Agenten mehr, als sie nützen; ungepflegte Regeln führen aktiv in die Irre.
  • Der /init-Entwurf beschreibt, was er sieht. Beschreibungen statt Befehle nützen nichts.
  • Planen für triviale Aufgaben. Reine Zeremonie — und ein Plan, den niemand liest, ist nur eine längere Antwort.
  • Vage Kritik am Plan. Führt zu einem beliebig anderen Plan statt zur gewünschten Korrektur.
  • Ein Skill, der alles kann, wird für nichts geladen; zu viele Skills konkurrieren um dieselbe Aufgabe.
  • Persönliche Skills wirken unbemerkt auch in fremden Projekten.

Zum Seminar Codex für Entwickler