Leitfaden für Entwickler · 18 Aufgaben
KI für Entwickler: Coding-Agenten, Kosten und sichere Übergaben
Wenn du schon Autovervollständigung und Chat nutzt, kommen als Nächstes Agenten, die das Repository lesen, Befehle ausführen und Pull Requests öffnen. Ob das Zeit spart, hängt weniger vom Modell ab als vom Setup. Der erste Teil funktioniert mit jedem Coding-Agenten; die Teile zu Claude Code und Codex gehen auf Befehle, Dateien und Einstellungen des jeweiligen Tools ein, nach dessen offizieller Dokumentation.
Jeder Coding-Agent
01
Gib dem Agenten eine Aufgabe, deren Erledigung er beweisen kann
Agenten scheitern an „Verbessere das“ und haben Erfolg bei Aufgaben, die mit einem Check enden: ein fehlschlagender Test, der bestehen muss, ein Befehl, dessen Ausgabe sich ändern muss. Schreib den Nachweis in die Aufgabe, dann arbeitet der Agent weiter, bis er fertig ist, statt aufzuhören, sobald es fertig aussieht.
Beispiel
„Korrigiere den Datumsparser für ISO-Wochendaten. Fertig heißt: npm test -- dates läuft durch, einschließlich des neuen Tests für 2026-W01. Ändere die Tests nicht.“ Der Agent führt den Test aus, bis er besteht, und fügt die Ausgabe ein; du prüfst einen Diff mit 30 Zeilen statt einer Vermutung.
So geht's
- 1Bevor du die Aufgabe übergibst, schreib den Check oder verweise darauf: den fehlschlagenden Test oder den Befehl und seine erwartete Ausgabe.
- 2Gib dem Agenten die Aufgabe mit dem Prompt auf dieser Seite, einschließlich der Dateien, die er ändern darf, und derer, die er nicht ändern darf.
- 3Lass ihn den Check selbst ausführen und die finale Ausgabe einfügen.
- 4Prüfe den Diff wie den Pull Request eines Kollegen; ein bestandener Check beginnt das Review, er beendet es nicht.
Eingebaut
Prompt zum Kopieren
Aufgabe: [Änderung]. Fertig heißt: [Test oder Befehl] läuft durch und gibt [erwartete Ausgabe] aus. Führ ihn aus, bevor du fertig bist, und füge das Ergebnis ein. Du darfst ändern: [Pfade]. Nicht ändern: [Pfade], die Abhängigkeiten oder die Tests. Wenn du ihn nicht zum Durchlaufen bringst, hör auf und erklär, warum, statt den Check zu umgehen.Wo es schiefgeht
- Agenten bringen einen Test manchmal zum Bestehen, indem sie ihn abschwächen. Verbiete Änderungen an Tests und achte im Diff darauf.
- Eine Aufgabe, die für einen Check zu groß ist, ist für eine Übergabe zu groß. Teil sie auf.
02
Lass Aufgaben in der Cloud laufen, während du an etwas anderem arbeitest
Cloud-Agenten arbeiten in ihrer eigenen Umgebung an deinem Repository und kommen mit Änderungen zum Prüfen zurück, sodass mehrere Aufgaben laufen, während du etwas anderes machst. Das lohnt sich nur bei klar spezifizierten Aufgaben; vage Aufgaben kommen als große Diffs zurück, die du auseinandernehmen musst.
Beispiel
Drei kleine Aufgaben vor dem Mittagessen: eine Abhängigkeit aktualisieren, einen fehlenden Datenbankindex hinzufügen, einen instabilen Test reparieren. Jede geht mit eigenem Check an einen Cloud-Agenten, und am Nachmittag prüfst du drei Pull Requests, statt dreimal den Kontext zu wechseln.
So geht's
- 1Nimm den, der dort läuft, wo dein Code liegt: Codex Cloud, den Copilot cloud agent auf GitHub oder Claude Code on the web.
- 2Stell sicher, dass seine Umgebung deine Abhängigkeiten installieren und deine Tests ausführen kann; sonst rät der Agent.
- 3Schick kleine, unabhängige Aufgaben, jede mit eigenem Check, wie in der Aufgabe oben.
- 4Lass zuerst einen automatischen Reviewer jeden Pull Request lesen und prüfe ihn dann selbst.
Eingebaut
Prompt zum Kopieren
In diesem Repository: [Aufgabe]. Kontext: [wo im Code, zugehöriges Issue]. Fertig, wenn: [Test oder Befehl] in deiner Umgebung durchläuft; füge die Ausgabe in die Beschreibung des Pull Requests ein. Halte den Pull Request unter [n] geänderten Zeilen. Wenn mehr nötig ist, hör auf und schlag vor, wie er sich aufteilen lässt.Wo es schiefgeht
- Tests, die Secrets oder Dienste brauchen, die du nicht eingerichtet hast, werden übersprungen oder schlagen fehl. Ein grüner Lauf ohne sie beweist wenig.
- Mehrere Agenten an zusammenhängendem Code erzeugen Pull Requests, die miteinander kollidieren. Halte parallele Aufgaben in getrennten Bereichen.
03
Checks ohne dich laufen lassen
Verschwende keine Review-Zeit mit dem, was eine Maschine prüfen kann. Hooks führen nach jeder Änderung des Agenten deinen Formatter, Linter und deine Tests aus, und ein Review-Bot liest jeden Pull Request vor dir. In deinem Review geht es dann um das Design, nicht um Tippfehler.
Beispiel
Ein Hook führt nach jeder Bearbeitung den Formatter und die Unit-Tests aus. Durch die Änderung des Agenten schlagen zwei Tests fehl; er sieht den Fehler in der Hook-Ausgabe und behebt ihn, bevor du hinschaust. Der Review-Bot markiert danach einen unbehandelten Fehlerfall, und über den entscheidest du.
So geht's
- 1Schreib deine Build-, Test- und Lint-Befehle in die Anweisungsdatei, die dein Agent zu Beginn jeder Session liest; welche Datei das ist, steht in der Dokumentation des jeweiligen Agenten.
- 2Füge in Claude Code Hooks hinzu, die nach jeder Bearbeitung den Formatter und die Tests ausführen, damit der Agent Fehler sieht und behebt.
- 3Lass einen Bot jeden Pull Request prüfen: Aktiviere „Automatic review“ in Codex oder fordere Copilot als Reviewer an.
- 4Wenn der Agent einen Fehler zweimal macht, mach daraus einen Test oder eine Regel in der Anweisungsdatei.
Eingebaut
Prompt zum Kopieren
Lies dieses Repository und schreib die Anweisungsdatei für Coding-Agenten: 1. Die genauen Befehle zum Installieren, Bauen, Testen, Linten und Formatieren. 2. Der Projektaufbau in höchstens 10 Zeilen. 3. Konventionen, die Neulinge hier falsch machen, mit je einem Beispiel. 4. Was ein Agent hier nie tun darf, zum Beispiel Migrationen ändern oder generierte Dateien bearbeiten. Liste nur Befehle auf, die du erfolgreich ausgeführt hast; markiere den Rest als „nicht verifiziert“.Wo es schiefgeht
- Eine Anweisungsdatei mit Befehlen, die nicht mehr funktionieren, bringt dem Agenten bei, sie zu ignorieren. Führ die Befehle erneut aus, wenn sich das Setup ändert.
- Auch Review-Bots machen Fehler, und das mit voller Überzeugung. Behandle ihre Kommentare als Vorschläge.
04
Den Agenten mit deinen Tools verbinden, mit so wenig Zugriff wie möglich
Ein Agent ist nur so gut wie das, was er sehen kann: Issues, Dokumentation, Logs, das Datenbankschema. MCP bindet das an, aber jede Verbindung ist Zugriff, und Text, den er von außen liest, kann Anweisungen enthalten. Fang mit reinem Lesezugriff an und erweitere ihn nur, wenn eine Aufgabe es erfordert.
Beispiel
Der Agent liest Issue 482 im Tracker, findet den Stacktrace in den Logs und prüft die Dokumentation der Bibliothek, dann nennt er die fehlerhafte Datei, alles über Tokens mit reinem Lesezugriff. Den Fix schreibt er in dein Repository, wo du ihn wie gewohnt prüfst.
So geht's
- 1Notiere, was du am häufigsten in Chats einfügst, etwa Issues, Fehlerlogs, Dokumentation oder das Schema. Binde das zuerst an.
- 2Füge für jede Quelle den offiziellen MCP-Server hinzu, mit einem Token, das nur lesen darf. In Gemini CLI kann eine Extension den MCP-Server und seine Einrichtung bündeln.
- 3Gib dem Agenten eine Aufgabe, die diese Server braucht, und prüfe, ob er den richtigen aufgerufen hat.
- 4Entferne alle paar Wochen die Server, die du nicht mehr nutzt.
Eingebaut
Prompt zum Kopieren
Bevor du irgendetwas änderst: Lies Issue [ID] im Tracker, finde den Fehler in den Logs und prüfe die Dokumentation zu [Bibliothek]. Sag, was dir jede Quelle gesagt hat und welche Datei du für fehlerhaft hältst. Schreib in keines der verbundenen Tools.Wo es schiefgeht
- Eine Webseite, ein Issue oder ein Dokument kann Text enthalten, der den Agenten steuern soll. Gib Tools, die Inhalte von außen lesen, keinen Schreibzugriff.
- Tokens in Konfigurationsdateien leaken. Nutze den Secret-Speicher des Clients oder Umgebungsvariablen, nie das Repository.
05
Zwischen Abo und Bezahlung pro Token wählen
Agent-Sessions lesen Dateien und laufen über viele Schritte, deshalb verbrauchen sie viel mehr Tokens als ein Chat. Rechne vor der Wahl aus, was eine typische Woche deiner eigenen Nutzung kostet: Ein Abo deckelt die interaktive Nutzung, mit Abrechnung pro Token kannst du jeden automatisierten Lauf einzeln deckeln.
Beispiel
Eine Woche tägliche Agent-Nutzung kommt auf etwa 40 Millionen Input- und 3 Millionen Output-Tokens. Berechne das mit den Preisen auf der API-Preisseite für das Modell, das du nutzt, und vergleiche es mit einem Monat Abo. Ist das Abo günstiger und passen seine Limits zu deiner Woche, nimm es und behalte einen gedeckelten API-Key für CI.
So geht's
- 1Prüfe, wofür du schon bezahlst: ChatGPT-Tarife enthalten Codex, und die kostenpflichtigen Tarife von Claude enthalten Claude Code.
- 2Notiere den Tokenverbrauch einiger typischer Sessions dort, wo dein Agent ihn anzeigt.
- 3Berechne die Kosten dafür auf unserer API-Preisseite und vergleiche sie mit dem Abo.
- 4Nutze für Automatisierung und CI API-Keys mit Ausgabenlimit, damit eine Schleife keine hohe Rechnung verursachen kann.
Eingebaut
Prompt zum Kopieren
Hier ist meine Nutzung aus [n] typischen Sessions: [Input- und Output-Tokens]. Ich arbeite etwa [Tage] Tage pro Woche. Schätze meine monatlichen Kosten bei Abrechnung pro Token zu diesen Preisen: [von der API-Preisseite einfügen]. Vergleiche sie mit einem Abo für [Preis] pro Monat. Zeig die Rechnung, damit ich sie prüfen kann.Wo es schiefgeht
- Auch Abos haben Nutzungslimits. Stößt du mitten in einer Aufgabe an eines, kostet das Zeit; prüfe das Limit, nicht nur den Preis.
- Nichts beeinflusst die Rechnung so stark wie das Modell. Vergleiche mit dem Modell, das du tatsächlich nutzt.
Claude Code
06
Jeder Session mit CLAUDE.md denselben Start geben
Wenn du zu Beginn jeder Session deine Build-Befehle und Konventionen erklärst, machst du genau das, wofür CLAUDE.md da ist. Claude liest die Datei zu Beginn jeder Session; halte sie kurz und korrekt, dann kommen dieselben Fehler nicht wieder.
Beispiel
Ein Repository, in dem Claude immer wieder npm test statt des projekteigenen pnpm test:unit ausführte und immer wieder generierte Dateien bearbeitete. Zwei Zeilen in CLAUDE.md, der richtige Befehl und „bearbeite nie src/gen/“, und beide Fehler hören auf.
So geht's
- 1Führe /init im Repository aus: Der Befehl analysiert die Codebasis und schreibt eine erste CLAUDE.md oder schlägt Verbesserungen für deine bestehende vor.
- 2Leg Teamregeln wie Build- und Testbefehle und Coding-Standards in ./CLAUDE.md ab und committe die Datei. Deine eigenen Vorlieben gehören in ~/.claude/CLAUDE.md für alle Projekte oder in CLAUDE.local.md für dieses eine.
- 3Verweise auf längere Dokumente, statt sie einzufügen: @path/to/file importiert beim Start eine andere Datei.
- 4Jedes Mal, wenn Claude dasselbe zweimal falsch macht, füge die eine Zeile hinzu, die es verhindert hätte.
Prompt zum Kopieren
Lies dieses Repository und verbessere CLAUDE.md. Bleib unter 60 Zeilen: 1. Die genauen Befehle zum Bauen, Testen und Linten. 2. Der Aufbau in wenigen Zeilen. 3. Konventionen, die ein Neuling hier falsch macht. 4. Dateien und Ordner, die nie bearbeitet werden dürfen. Entferne alles, was nicht mehr stimmt. Markiere Befehle, die du nicht ausgeführt hast, als „nicht verifiziert“.Wo es schiefgeht
- Alles in CLAUDE.md wird in jeder Session geladen und belegt Kontext. Lagere Details in Dateien aus, die sie importiert.
- Anweisungen, die nicht mehr stimmen, sind schlimmer als gar keine. Prüfe die Befehle erneut, wenn sich das Setup ändert.
Aus der offiziellen Dokumentation: Claude Code docs: How Claude remembers your project
07
Erst planen, dann bearbeiten lassen
Bei einer Änderung über viele Dateien ist der teure Fehler ein falscher Ansatz, nicht eine falsche Zeile. Im Plan mode recherchiert Claude und schreibt einen Plan, ohne deine Quelldateien zu bearbeiten; du korrigierst den Plan und gibst ihn dann frei.
Beispiel
Die Umstellung der Authentifizierung von Cookies auf Tokens in 14 Dateien. Der erste Plan vergisst den mobilen Client; du weist darauf hin, der Plan bekommt einen Schritt dazu, und erst dann bearbeitet Claude überhaupt etwas.
So geht's
- 1Drücke Shift+Tab, bis die Statusleiste „plan mode on“ anzeigt, oder beginne deinen Prompt mit /plan.
- 2Beschreibe die Änderung und was sich nicht ändern darf. Claude kann weiterhin Befehle ausführen, um sich umzusehen, bearbeitet während der Planung aber keine Dateien.
- 3Lies den Plan wie ein Designkonzept: eine falsche Datei, ein fehlender Fall, eine zu große Änderung. Fordere Änderungen an, bis er stimmt, und gib ihn dann frei.
- 4Starte vor der nächsten, davon unabhängigen Aufgabe mit /clear neu.
Prompt zum Kopieren
/plan Ändere [was] so, dass [Ziel]. Randbedingungen: [was sich nicht ändern darf]. Liste die Dateien auf, die du anfassen wirst, die Reihenfolge der Änderungen, den Test, der jeden Schritt belegt, und alles, bei dem du unsicher bist. Bearbeite nichts, bevor ich zustimme.Wo es schiefgeht
- Ein Plan, der mehr Dateien anfasst als erwartet, ist das Warnsignal. Frag nach dem Grund, bevor du ihn freigibst.
- Plan mode führt zur Erkundung trotzdem Befehle aus. Ein unbekanntes Repository lässt sich damit nicht gefahrlos ausführen.
Aus der offiziellen Dokumentation: Claude Code docs: Choose a permission mode · Claude Code docs: Commands · Claude Code docs: Best practices
08
Nicht mehr fünfzigmal denselben Befehl freigeben
Wenn du jeden Testlauf von Hand freigibst, gewöhnst du dir an, ohne zu lesen auf „Yes“ zu klicken. Erlaube die sicheren, wiederkehrenden Befehle einmal in den Projekteinstellungen, verbiete die gefährlichen und behalte die Abfragen für alles andere bei.
Beispiel
Ein Team erlaubt in den gemeinsamen Projekteinstellungen seine Test- und Lint-Befehle und verbietet das Lesen von .env-Dateien. Die Abfragen schrumpfen auf die wenigen Befehle, die es wert sind, gelesen zu werden, und keine Session im Team kann die Keys öffnen.
So geht's
- 1Öffne /permissions, um jede Regel zu sehen und aus welcher Einstellungsdatei sie stammt.
- 2Leg die Regeln des Teams in .claude/settings.json ab und committe die Datei. Persönliche Regeln gehören in ~/.claude/settings.json oder .claude/settings.local.json.
- 3Regeln werden zuerst auf deny, dann auf ask, dann auf allow geprüft, deshalb sticht eine einzige deny-Regel jede allow-Regel aus.
- 4Wechsle die Modi mit Shift+Tab: acceptEdits genehmigt Dateiänderungen im Arbeitsverzeichnis. bypassPermissions schaltet Abfragen und Sicherheitsprüfungen ab; laut Dokumentation sollst du es nur in isolierten Containern oder VMs ohne Internetzugang verwenden.
Prompt zum Kopieren
Sieh dir die Befehle an, die du in dieser Session ausgeführt hast. Schlag Berechtigungsregeln für .claude/settings.json vor: Erlaube die rein lesenden Befehle und die Testbefehle, die wir täglich nutzen, verbiete alles, was Secrets liest oder außerhalb des Projekts löscht, und lass bei allem anderen nachfragen. Erkläre jede Regel in einer Zeile.Wo es schiefgeht
- Eine allow-Regel, die auf jeden Befehl passt, ist dasselbe wie gar keine Abfragen. Erlaube exakte Befehle.
- Regeln in .claude/settings.json gelten nach dem Commit für das ganze Team. Prüfe sie wie Code.
Aus der offiziellen Dokumentation: Claude Code docs: Configure permissions · Claude Code docs: Settings files and precedence · Claude Code docs: Choose a permission mode
09
Jede Session fokussiert halten
Eine Session, die drei unabhängige Aufgaben hinter sich hat, hat noch alle drei im Kontext, und das merkt man. Leere den Kontext zwischen Aufgaben, komprimiere lange Aufgaben mit einem Schwerpunkt und lass Subagenten breite Suchen in ihrem eigenen Kontext erledigen.
Beispiel
Nach einem Bugfix bittest du in derselben Session um ein Refactoring, und sie hält sich weiter an den alten Workaround für den Bug. /clear und ein Satz Kontext, und das hört auf.
So geht's
- 1Zwischen unabhängigen Aufgaben startet /clear ein neues Gespräch mit leerem Kontext.
- 2Bei einer langen Aufgabe fasst /compact mit einem Schwerpunkt, zum Beispiel „/compact behalte den Plan und den fehlschlagenden Test“, das Bisherige zusammen.
- 3Gib breite Suchen an einen Subagenten ab: Jeder läuft in seinem eigenen Kontextfenster, sodass nur seine Antwort in deine Session zurückkommt.
- 4Claude Code komprimiert kurz vor dem Limit auch von selbst; wenn du selbst zu einem guten Zeitpunkt komprimierst, bleibt erhalten, was du auswählst.
Eingebaut
Prompt zum Kopieren
/compact Behalte: das Ziel, den Plan, die bisher geänderten Dateien und den Test, der noch fehlschlägt. Lass die Erkundung weg.Wo es schiefgeht
- /clear vergisst das Gespräch. Alles, was du wieder brauchst, gehört vorher in CLAUDE.md.
- Von einem Subagenten bekommst du nur seine Antwort zurück. Frag ihn nach Dateipfaden und Zeilennummern, nicht nur nach Schlussfolgerungen.
Aus der offiziellen Dokumentation: Claude Code docs: Commands · Claude Code docs: Best practices · Claude Code docs: Create custom subagents
10
Zwei Aufgaben gleichzeitig ausführen, ohne dass sie sich in die Quere kommen
Zwei Sessions im selben Checkout ändern sich gegenseitig dieselben Dateien unter den Füßen weg. claude --worktree gibt jeder Session eine eigene Kopie auf einem eigenen Branch, sodass ein Refactoring und ein Bugfix parallel laufen können.
Beispiel
Ein Dependency-Upgrade in einem Worktree und ein UI-Fix in einem anderen, beide laufen, während du einen dritten Pull Request prüfst. Keine Session sieht die halbfertigen Dateien der anderen.
So geht's
- 1Starte jede Session mit claude --worktree <name> (oder -w). Das legt einen Git-Worktree unter .claude/worktrees/<name>/ auf dem Branch worktree-<name> an.
- 2Füge .claude/worktrees/ zu .gitignore hinzu, wie die Dokumentation empfiehlt.
- 3Gib jeder Session eine Aufgabe mit eigener Prüfung, damit du sie einzeln durchsehen kannst.
- 4Prüfe und merge jeden Branch wie jeden anderen Pull Request.
Prompt zum Kopieren
Du arbeitest in einem Worktree auf dem Branch worktree-[Name]. Aufgabe: [eine Änderung]. Fertig, wenn: [Test oder Befehl] durchläuft. Committe nur auf diesem Branch; merge oder rebase keine anderen Branches.Wo es schiefgeht
- Jeder Worktree ist ein eigener Ordner, Abhängigkeiten und Build-Ausgaben werden also nicht geteilt. Installiere sie in jedem.
- Zwei Aufgaben, die dieselben Dateien anfassen, kollidieren beim Mergen trotzdem, ob mit Worktree oder ohne.
Aus der offiziellen Dokumentation: Claude Code docs: Run parallel sessions with worktrees
11
Einen Irrweg mit Rewind rückgängig machen
Wenn eine Session schiefläuft, sorgt die Bitte an Claude, die eigenen Änderungen zurückzunehmen, oft für ein zweites Durcheinander. Rewind setzt das Gespräch, den Code oder beides auf einen Punkt vor dem Fehler zurück. Was Shell-Befehle getan haben, kann Rewind nicht rückgängig machen, also committe vor riskanten Schritten.
Beispiel
Ein Refactoring, das vor drei Prompts in die falsche Richtung lief. Ein Rewind auf den Punkt davor stellt die Dateien und das Gespräch wieder her, und du formulierst die Anfrage neu, statt den Code zurückzudiskutieren.
So geht's
- 1Drücke bei leerer Eingabe zweimal Esc oder tippe /rewind (/checkpoint und /undo funktionieren auch).
- 2Wähle den Punkt, bevor es schiefging, und stelle das Gespräch, den Code oder beides wieder her.
- 3Kenne die Grenzen: Dateien, die Shell-Befehle wie rm, mv oder cp geändert haben, werden nicht wiederhergestellt, ebenso wenig Änderungen außerhalb von Claude Code oder in einer anderen Session.
- 4Committe vor riskanten Schritten. Checkpoints dienen der schnellen Wiederherstellung innerhalb einer Session und ersetzen git nicht.
Prompt zum Kopieren
Bevor du anfängst, committe den aktuellen Stand mit der Nachricht „Checkpoint vor [Aufgabe]“. Dann [Aufgabe]. Frag mich vor jedem Befehl, der Dateien löscht oder verschiebt.Wo es schiefgeht
- Rewind holt keine Datei zurück, die ein Befehl gelöscht hat. Das kann nur git.
- Änderungen, die du zwischendurch von Hand gemacht hast, werden ebenfalls nicht erfasst. Committe sie vor dem Rewind.
Aus der offiziellen Dokumentation: Claude Code docs: Checkpointing · Claude Code docs: Commands
12
Aus Skripten und CI heraus ausführen
Derselbe Agent läuft auch ohne Chat: claude -p nimmt einen Prompt entgegen, erledigt die Arbeit und beendet sich mit einem Status, den dein Skript prüfen kann. In CI überspringt --bare deine lokalen Hooks, Skills, MCP-Server und CLAUDE.md, damit sich ein Lauf überall gleich verhält.
Beispiel
Ein nächtlicher Job führt claude -p mit „aktualisiere das Changelog anhand der heute gemergten Pull Requests“ und --output-format json aus und lässt den Build fehlschlagen, wenn der Exit-Status nicht 0 ist; so fällt ein kaputter Lauf am nächsten Morgen auf.
So geht's
- 1claude -p "..." läuft nicht interaktiv. --output-format json oder stream-json liefert eine Ausgabe, die ein Skript parsen kann.
- 2Der Befehl endet bei Erfolg mit 0, bei einem Fehler mit einem Wert ungleich 0, sodass CI danach verzweigen kann.
- 3Füge in CI --bare hinzu, damit Läufe nicht vom lokalen Setup abhängen.
- 4Für Pull Requests richtet /install-github-app Claude Code GitHub Actions ein (nur für Repositories auf github.com); erwähne danach @claude in einem Kommentar in einem Pull Request oder Issue.
Prompt zum Kopieren
claude -p "Lies den Diff gegen main. Liste jede Änderung, die eine Abhängigkeit hinzufügt, die Authentifizierung berührt oder eine Datenbankmigration ändert, als JSON auf: {\"files\": [], \"reason\": \"\"}. Gib eine leere Liste zurück, wenn es keine gibt." --output-format jsonWo es schiefgeht
- Ein Skript läuft mit den Rechten, die du ihm gibst. Gib CI nur das Nötigste.
- /install-github-app funktioniert nur mit Repositories auf github.com.
Aus der offiziellen Dokumentation: Claude Code docs: Run Claude Code programmatically · Claude Code docs: GitHub Actions
Codex
13
AGENTS.md: die Anweisungen, mit denen jede Codex-Aufgabe beginnt
Codex liest AGENTS.md vor jeder Arbeit, von deiner globalen Datei bis hinunter zu dem Ordner, in dem gearbeitet wird. Schreib die Befehle und Regeln einmal auf, nah an dem Code, für den sie gelten; die nächstgelegene Datei hat Vorrang.
Beispiel
Ein Repository mit einer Web-App und einem Zahlungsdienst. Die AGENTS.md im Stammverzeichnis enthält die gemeinsamen Befehle; payments/AGENTS.md ergänzt „ändere die Rundung von Währungsbeträgen nie ohne Test“. Arbeit in payments/ folgt beiden, und wo sie sich unterscheiden, hat die nähere Datei Vorrang.
So geht's
- 1Führe /init in der CLI aus, um eine erste AGENTS.md im aktuellen Ordner anzulegen.
- 2Leg persönliche Vorgaben in ~/.codex/AGENTS.md ab und Projektregeln im Repository. Ein Unterordner kann eine eigene Datei haben; Dateien näher an dem Ort, an dem Codex arbeitet, haben Vorrang.
- 3Halte die Dateien kurz: Ihre Gesamtgröße ist begrenzt, standardmäßig auf 32 KiB.
- 4Füge einen Abschnitt „## Code Review Rules“ hinzu: Die Reviews von Codex auf GitHub richten sich danach.
Prompt zum Kopieren
Lies dieses Repository und schreib AGENTS.md: 1. Die genauen Befehle zum Installieren, Bauen, Testen und Linten. 2. Der Aufbau in wenigen Zeilen. 3. Konventionen, die ein Neuling hier falsch macht. 4. Ein Abschnitt „## Code Review Rules“ mit dem, was ein Reviewer immer anmerken muss. Liste nur Befehle auf, die du erfolgreich ausgeführt hast; markiere den Rest als „nicht verifiziert“.Wo es schiefgeht
- Lange Dateien arbeiten gegen dich: Die Gesamtgröße ist standardmäßig auf 32 KiB begrenzt.
- Eine Datei im Unterordner, die der Datei im Stammverzeichnis widerspricht, ohne das zu sagen, verwirrt Menschen genauso wie Codex. Schreib dazu, was sie überschreibt.
Aus der offiziellen Dokumentation: Codex docs: AGENTS.md · Codex docs: CLI commands · Codex docs: GitHub integration
14
Festlegen, wie viel Codex selbstständig tun darf
Der Berechtigungsmodus legt fest, was Codex ohne Rückfrage tut. „Ask for approval“ arbeitet innerhalb des Arbeitsbereichs und pausiert vor allem, was darüber hinausgeht; „Full access“ entfernt die Sandbox und die Rückfragen. Wähle pro Aufgabe, nicht ein für alle Mal.
Beispiel
Ein unbekanntes Repository im Nur-Lese-Modus lesen, dann für einen Bugfix zu „Ask for approval“ wechseln. Codex bearbeitet Dateien im Repository, hält aber an und fragt nach, bevor es darüber hinausgreift.
So geht's
- 1In der CLI wechselt /permissions den Modus, und /status zeigt die geltende Freigaberichtlinie und die beschreibbaren Ordner.
- 2„Ask for approval“, die empfohlene Standardeinstellung, bearbeitet Dateien und führt Befehle aus, solange es innerhalb des Arbeitsbereichs bleibt, und pausiert vor allem, was darüber hinausgeht.
- 3„Approve for me“ behält dieselbe Sandbox bei, schickt Freigabeanfragen aber an eine automatische Prüfung statt an dich.
- 4„Full access“ hebt die Grenzen für Dateisystem und Netzwerk auf. Die Dokumentation fügt einen Warnhinweis hinzu; reserviere den Modus für Umgebungen, die du wegwerfen kannst.
Prompt zum Kopieren
Bevor du anfängst, führe /status aus und nenne mir die Freigaberichtlinie und die beschreibbaren Ordner. Dann [Aufgabe]. Frag nach, bevor du einen Befehl ausführst, der das Netzwerk braucht oder außerhalb dieses Repositorys schreibt.Wo es schiefgeht
- Bei „Approve for me“ liest kein Mensch die einzelnen Anfragen. Nutze den Modus dort, wo sich eine falsche Aktion mit wenig Aufwand rückgängig machen lässt.
- „Full access“ gilt für den ganzen Rechner, nicht nur für das Repository.
Aus der offiziellen Dokumentation: Codex docs: Permission modes · Codex docs: Sandboxing · Codex docs: Approvals and security · Codex docs: CLI commands
15
Codex aus Skripten und CI heraus ausführen
codex exec führt eine Aufgabe ohne Chat aus: Der Fortschritt geht an stderr und nur die letzte Nachricht an stdout, sodass ein Skript die Antwort weiterverwenden kann. codex exec startet mit reinem Lesezugriff; gib Schreibzugriff nur, wenn der Job ihn braucht.
Beispiel
Ein Release-Skript führt codex exec mit „schreib Release Notes aus den Commits seit dem letzten Tag“ aus und speichert stdout in RELEASE.md. Reiner Lesezugriff reicht, weil das Skript die Datei selbst schreibt.
So geht's
- 1codex exec "..." läuft nicht interaktiv und nutzt standardmäßig eine Sandbox mit reinem Lesezugriff.
- 2Füge --sandbox workspace-write hinzu, wenn Dateien bearbeitet werden müssen; --full-auto ist veraltet.
- 3--json gibt einen JSON-Lines-Stream mit Events aus, für Skripte, die jeden Schritt brauchen.
- 4In GitHub Actions führt openai/codex-action@v1 codex exec für dich aus.
Prompt zum Kopieren
codex exec "Lies die Änderungen seit dem Tag [v1.2.0]. Schreib Release Notes, gruppiert nach Neu, Geändert und Behoben: eine Zeile pro Änderung, in Worten, die Nutzer verstehen, keine Commit-Hashes."Wo es schiefgeht
- Ältere Anleitungen verwenden noch --full-auto. Das ist veraltet; nutze --sandbox workspace-write.
- Ein Job, der nur liest, sollte nur Lesezugriff haben, auch in CI.
Aus der offiziellen Dokumentation: Codex docs: Non-interactive mode · Codex docs: GitHub Action
16
Vor dem Push ein Review einholen
Codex prüft deinen Working Tree, einen Branch oder einen Pull Request. Auf GitHub markiert Codex nur die schwerwiegendsten Probleme, P0 und P1, deshalb lohnt es sich, die Kommentare zu lesen. Lass Codex vor dem Push prüfen und jeden Pull Request reviewen.
Beispiel
Vor dem Push einer Migration meldet /review, dass die neue Spalte keinen Standardwert hat, sodass bestehende Zeilen scheitern würden. Eine Minute vor dem Push statt eines fehlgeschlagenen Deploys.
So geht's
- 1/review in der CLI prüft deinen Working Tree. codex review macht dasselbe ohne Chat, gegen einen Basis-Branch, einen Commit oder nicht committete Änderungen.
- 2Kommentiere auf GitHub @codex review in einem Pull Request.
- 3Aktiviere automatische Reviews unter „Personal preferences“ in den Codex-Einstellungen; dann ist kein Kommentar nötig.
- 4Schreib die Regeln deines Teams in einen Abschnitt „## Code Review Rules“ in AGENTS.md.
Eingebaut
Prompt zum Kopieren
## Code Review Rules - Markiere jede Änderung an Authentifizierung oder Berechtigungen. - Markiere Datenbankmigrationen ohne Rückweg. - Markiere neue Abhängigkeiten und sag, ob sie nötig sind. - Ignoriere die Formatierung; darum kümmert sich der Linter.Wo es schiefgeht
- Reviews auf GitHub markieren nur Probleme der Stufen P0 und P1. Kein Kommentar heißt nicht, dass das Design stimmt.
- Ein Review ist eine zweite Meinung, kein Testlauf. Behalte die Tests bei.
Aus der offiziellen Dokumentation: Codex docs: CLI commands · Codex docs: GitHub integration
17
Aufgaben an Codex Cloud abgeben
Codex Cloud arbeitet weiter, während dein Computer schläft, jede Aufgabe in einem eigenen Arbeitsbereich, der aus einer einmal eingerichteten Umgebung entsteht. Mit einer passenden Umgebung kann Codex Cloud installieren, bauen und testen; ohne eine solche rät es.
Beispiel
Vier kleine Refactorings, vor einem Meeting mit codex cloud exec abgeschickt, jedes in einem eigenen Arbeitsbereich aus derselben Umgebung. Für das kniffligste hast du drei Versuche angefordert und behältst den besten; danach prüfst du vier Diffs.
So geht's
- 1Leg eine Umgebung mit den Repositories, Abhängigkeiten, Tools und Zugriffseinstellungen an, die die Aufgaben brauchen. Neue Umgebungen zeichnen ein Installationsskript und einen Start-Skill auf.
- 2Leg den Internetzugang pro Umgebung fest: nur Paketmanager, ausgewählte Domains oder alles.
- 3Starte Aufgaben aus ChatGPT, für längere Jobs aus der IDE-Erweiterung oder aus dem Terminal mit codex cloud exec; --attempts 1-4 fordert mehrere Versuche zum Vergleichen an.
- 4Code Review und die Integrationen für GitHub und Linear laufen noch auf dem älteren Codex Cloud (Legacy), das OpenAI einstellen will.
Eingebaut
Prompt zum Kopieren
codex cloud exec --attempts 3 "Aufgabe: [Änderung]. Kontext: [Dateien]. Fertig, wenn [Test] in dieser Umgebung durchläuft. Halte den Diff unter [n] Zeilen."Wo es schiefgeht
- Mit uneingeschränktem Internet erreicht eine Aufgabe jede Seite, auch Seiten, die geschrieben wurden, um die Aufgabe zu steuern. Erlaube nur, was der Job braucht.
- Fehlt das Installationsskript, sind die Tests vielleicht nicht gelaufen. Prüfe, ob eine Aufgabe sie wirklich ausgeführt hat.
Aus der offiziellen Dokumentation: Codex docs: Cloud environments · Codex docs: CLI commands · Codex docs: IDE extension
18
Codex einmal einrichten: Konfiguration, Profile und MCP
Wenn du in jeder Session Modell und Einstellungen von Hand änderst, leg sie in config.toml ab. Codex liest jedes Mal ~/.codex/config.toml, in vertrauenswürdigen Projekten auch die Projekteinstellungen, und ein Profil wechselt einen ganzen Satz Einstellungen auf einmal.
Beispiel
Ein Profil „deep“ mit hohem Reasoning-Aufwand für Designfragen und die Standardeinstellung für schnelle Fixes. codex --profile deep vor einer Architekturfrage, einfach codex für alles andere.
So geht's
- 1Leg das Standardmodell und den Reasoning-Aufwand in ~/.codex/config.toml fest (model und model_reasoning_effort). Die CLI und die IDE-Erweiterung nutzen die Datei gemeinsam.
- 2Leg ein Profil als eigene Datei an, ~/.codex/<name>.config.toml, und starte mit --profile <name>.
- 3Füge MCP-Server mit codex mcp add <name> -- <command> hinzu; jeder wird zu einer Tabelle [mcp_servers.<name>], und /mcp listet die aktiven auf.
- 4/status zeigt, was gerade gilt, und codex resume --last setzt die letzte Session in diesem Ordner fort.
Prompt zum Kopieren
Lies ~/.codex/config.toml und die .codex/config.toml dieses Projekts. Nenne mir das geltende Modell, den Reasoning-Aufwand, die Sandbox und die MCP-Server, aus welcher Datei jeweils was stammt, und alles, was sich widerspricht.Wo es schiefgeht
- Projekteinstellungen werden nur in vertrauenswürdigen Projekten geladen. Wenn eine ignoriert zu werden scheint, prüfe das zuerst.
- Profile sind jetzt eigene Dateien. Anleitungen, die [profiles.name] in config.toml ablegen, sind veraltet.
Aus der offiziellen Dokumentation: Codex docs: MCP · Codex docs: Config basics · Codex docs: Advanced config · Codex docs: CLI commands
Regeln für Entwickler
- Füge niemals Secrets, Schlüssel oder Kundendaten in einen Prompt ein; halte sie aus indexierten Ordnern heraus.
- Lass Agenten auf einem Branch laufen, mit Berechtigungen, die vor Befehlen nachfragen; prüfe jeden Diff.
- Führe die Tests selbst aus, bevor du mergst, was ein Agent geschrieben hat.
- Setz ein Ausgabenlimit für jeden API-Schlüssel, den ein Agent nutzt.
Weiter vertiefen
- Den richtigen Kontext geben Lektion, etwa 8 Min.
- Beispiele und das gewünschte Format zeigen Lektion, etwa 8 Min.
- Die Antwort Schritt für Schritt verbessern Lektion, etwa 8 Min.
- Claude Code 101 Anthropic (Claude Academy)
- Get Started with Codex OpenAI (OpenAI Academy)
- AI Agents Course Hugging Face
- Full Course: Spec-Driven Development with Coding Agents DeepLearningAI on YouTube