Workflow
Eine Aufgabe von Claude Code an Codex übergeben, ohne Kontext zu verlieren
Dein Claude-Limit ist mitten im Refactoring erreicht, oder du willst eine zweite Meinung. Hier steht, was zum nächsten Agenten mitmuss – und drei Wege, es dorthin zu bringen.
Kurze Antwort
Keiner der beiden Agenten lädt das Transkript des anderen, also trägst du die Aufgabe mit einem Briefing hinüber: Ziel und letzte Anweisung, der Plan, die geänderten Dateien und der git-Stand, der Code selbst liegt auf der Platte. Halte gemeinsame Regeln in AGENTS.md, committe deine laufende Arbeit oder sichere sie mit git stash create, und schreib das Briefing dann selbst, erzeuge es mit einem Tool wie hop oder lass es beim Wechsel von einer App wie Maude bauen.
Du kannst mitten in einer Aufgabe von Claude Code zu Codex wechseln, ohne von vorn anzufangen – aber keiner der beiden Agenten übernimmt von sich aus die Unterhaltung des anderen. Was eine Aufgabe hinüberträgt, ist ein kurzes Briefing: das Ziel, der Plan, die geänderten Dateien, der git-Stand und deine letzte Anweisung, dazu der Code auf der Platte. Dieses Briefing kannst du von Hand schreiben, mit einem kleinen Tool erzeugen oder von einer App bauen lassen, wenn du wechselst.
Warum eine Aufgabe zwischen Coding-Agenten übergeben
- Du stößt an ein Limit. Das ist der häufigste Grund. Dein Claude-Abo hat mitten im Refactoring kein Kontingent mehr, und dein ChatGPT-Abo hat noch Luft. Auf den Reset zu warten kostet Stunden, in Codex neu anzufangen kostet den Kontext.
- Eine zweite Meinung. Ein Agent dreht sich bei einem Bug im Kreis. Ein anderes Modell, das denselben Code mit frischem Kontext liest, sieht oft, was der erste nicht mehr gesehen hat. Einen Agenten den Diff eines anderen prüfen zu lassen, bevor du committest, ist außerdem günstig.
- Unterschiedliche Stärken. Manche nutzen einen Agenten zum Planen und einen anderen für lange, mechanische Änderungen, oder behalten einen für eine Sprache oder ein Framework, mit dem er bei ihnen gut zurechtkommt. Wer worin besser ist, ändert sich mit jedem Modell-Release – sieh es also als dein eigenes Urteil, nicht als Regel.
Kann Codex die Session von Claude Code lesen?
Nicht von sich aus. Beide Agenten speichern vollständige Transkripte als JSONL-Dateien auf der Platte. Claude Code schreibt sie nach ~/.claude/projects/<project>/<session>.jsonl (Claude-Code-Doku), Codex in datierte rollout-*.jsonl-Dateien unter ~/.codex/sessions/. Jeder setzt seine eigenen Sessions fort (claude --resume, codex resume), aber keiner dokumentiert, die des anderen zu laden. Der Befehl /import von Claude Code übernimmt die Konfiguration eines anderen Agenten, etwa Anweisungsdateien, MCP-Server und Skills. Die Unterhaltung übernimmt er nicht.
Du könntest den neuen Agenten auf die rohe Transkriptdatei verweisen. In der Praxis ist das ein schlechtes Briefing: lang, voller Tool-Ausgaben, und das Einzige, was der neue Agent braucht – wo du stehst und was als Nächstes kommt –, geht darin unter.
Welcher Kontext mitmuss
| Kontext | Warum er zählt | Woher er kommt |
|---|---|---|
| Ziel und letzte Anweisung | Der neue Agent muss wissen, was „fertig“ heißt und worum du zuletzt gebeten hast | Dein letzter Prompt, Wort für Wort |
| Plan / Todo-Liste | Der Agent plant nicht neu, was schon abgesteckt ist | Die Todo-Liste des abgebenden Agenten |
| Geänderte Dateien | Der Agent weiß, wo er lesen muss, bevor er ändert | Die Änderungen im Transkript plus git status |
| git-Stand | Branch, HEAD und nicht committete Änderungen. Ohne sie macht der neue Agent Arbeit womöglich doppelt oder committet darüber | git status, git diff --stat |
| Entscheidungen und Sackgassen | Damit der neue Agent keinen Ansatz wiederholt, der schon gescheitert ist | Der letzte Gesprächsverlauf oder eine schriftliche Zusammenfassung |
Projektkonventionen wie Build-Befehle und Code-Stil gehören gar nicht ins Briefing. Sie gehören in Anweisungsdateien, die beide Agenten ohnehin lesen.
Selbst gemacht: gemeinsame Anweisungen mit AGENTS.md und CLAUDE.md
Codex baut seine Anweisungen aus AGENTS.md-Dateien zusammen, aus ~/.codex/ und vom git-Root bis hinunter in dein Arbeitsverzeichnis (Codex-Doku zu AGENTS.md). Seit v2.1.277 liest auch Claude Code AGENTS.md, standardmäßig aber nur, wenn in deinem Arbeitsverzeichnis oder darüber keine CLAUDE.md oder CLAUDE.local.md existiert (Claude-Code-Doku zu Memory). Das einfachste Setup, das beide Agenten lesen: gemeinsame Regeln in AGENTS.md, und wenn du Regeln nur für Claude brauchst, beginnt deine CLAUDE.md mit einem Import:
@AGENTS.md
## Claude Code
Use plan mode for changes under src/billing/.
Die andere Richtung funktioniert auch. Mit der Einstellung project_doc_fallback_filenames in ~/.codex/config.toml liest Codex weitere Dateinamen, wenn keine AGENTS.md vorhanden ist.
Selbst gemacht: ein Übergabedokument und git
Bitte vor dem Wechsel den abgebenden Agenten, das Briefing zu schreiben, solange er den Kontext noch hat – sofern er noch Kontingent übrig hat:
Write HANDOFF.md for another coding agent taking over this task:
the goal, what is done, what is in progress or broken, decisions
and dead ends, files touched, and the exact next steps.
Don't change any other file.
Sorg dann für einen eindeutigen Stand des Codes. Laufende Arbeit auf einen Branch zu committen ist die klarste Option. Willst du nicht committen, hält git stash create die nicht committeten Änderungen an getrackten Dateien als Commit-Objekt fest, ohne dein Arbeitsverzeichnis anzufassen. So hast du einen festen Bezugspunkt für den Diff, falls der nächste Agent danebenliegt. Starte den anderen Agenten im selben Verzeichnis und sag ihm, er soll HANDOFF.md lesen und Dateien vor dem Ändern neu einlesen.
Tools, die das automatisieren
hop (MIT) erledigt das mit einem Befehl: hop codex von Claude Code zu Codex, hop cc in die Gegenrichtung. Es liest die Session-Dateien des Ausgangsagenten direkt und funktioniert deshalb auch, wenn dieser kein Kontingent mehr hat. Du kannst ! hop codex aus einer festgefahrenen Claude-Code-Session heraus ausführen. Es schreibt ein Übergabedokument mit deinen Anweisungen, dem git-Branch und dem letzten Gesprächsverlauf innerhalb eines Größenbudgets (standardmäßig 48 KB) und öffnet den anderen Agenten in einem neuen Terminal-Tab. Ähnliche Projekte sind cli-handoff und session-handoff.
| Ansatz | Funktioniert ohne Kontingent | Aufwand pro Wechsel | Trägt die Unterhaltung mit |
|---|---|---|---|
| Nur gemeinsame AGENTS.md | Ja | Keiner, aber sie trägt Konventionen, nicht den Stand der Aufgabe | Nein |
| Vom Agenten geschriebene HANDOFF.md + git | Nur, wenn der abgebende Agent noch antwortet | Ein Prompt und ein Commit | Als Zusammenfassung |
| hop und ähnliche CLIs | Ja | Ein Befehl | Die letzten Turns, im Budget |
| Eine App mit eingebautem Wechsel | Ja | Ein Tipp | Hängt von der App ab |
Wie die Übergabe in Maude funktioniert
Maude betreibt deine Agenten auf deinem eigenen Server, und eine Session ist nicht an einen Agenten gebunden. Solange eine Session gerade nicht arbeitet, kannst du sie vom Handy aus wechseln, etwa von Claude Code zu Codex (oder zu OpenCode, Grok Build oder Antigravity). Der Daemon auf dem Server baut das Briefing aus der eigenen Aufzeichnung der Session, nicht aus einer unter Zeitdruck geschriebenen Zusammenfassung:
- einen Rahmen, der dem neuen Agenten sagt, dass er übernimmt, dass die Dateien auf der Platte maßgeblich sind und dass er vor dem Ändern neu einlesen soll
- deine letzte Anweisung, angeheftet
- den aktuellen Plan oder die Todo-Liste
- die geänderten Dateien, aus den Änderungen des Agenten plus den Dateien, die git als geändert meldet
- den git-Stand: Branch, HEAD, Kurzstatus und Diff-Statistik. Nicht committete Arbeit wird zusätzlich mit
git stash createals Snapshot gesichert und unter einer Ref aufbewahrt, ohne dein Arbeitsverzeichnis anzufassen - den letzten Gesprächsverlauf im Wortlaut, bis etwa 120.000 Zeichen
- einen Verweis auf das vollständige Transkript, als Markdown nach
.maude/handoff/im Projekt exportiert und ausgit statusherausgehalten
Das Briefing wird deiner nächsten Nachricht an den neuen Agenten vorangestellt, und der Chat zeigt eine Trennlinie, die du aufklappen kannst, um genau zu lesen, was gesendet wurde. Weil das Briefing aus der Aufzeichnung der Session entsteht, hängt es nicht davon ab, dass der abgebende Agent noch antworten kann – und das zählt am meisten, wenn er gerade sein Limit erreicht hat.
Zurückwechseln funktioniert anders. Hat der Agent, zu dem du zurückkehrst, in dieser Session schon gearbeitet und unterstützt er das Fortsetzen, setzt Maude die eigene Unterhaltung dieses Agenten fort und schickt nur, was in seiner Abwesenheit passiert ist. Ein zweites vollständiges Briefing bekommt er nicht.
Maude ist nicht die einzige App, die das kann. Bei Happier wechselst du die Engine mitten in der Unterhaltung, und der neue Agent bekommt Tools, um das frühere Transkript zu lesen. AgentsRoom erstellt beim Anbieterwechsel eine Übergabe-Zusammenfassung aus geänderten Dateien, Session-Aktivität und der letzten Antwort. Die Abwägungen vergleichen wir in Maude vs. Happier. Welche Agenten du kombinieren solltest, zeigt Claude Code vs. Codex vs. OpenCode.
Häufige Fragen
Kann Codex die Session von Claude Code lesen?
~/.claude/projects/, und Codex lädt sie nicht. Du trägst die Aufgabe mit einem Briefing hinüber: selbst schreiben, mit einem Tool wie hop erzeugen oder eine App nutzen, die es beim Wechsel baut.Kommen sich AGENTS.md und CLAUDE.md in die Quere?
AGENTS.md nur, wenn es keine CLAUDE.md gibt. Um eine Datei zu teilen, halte deine Regeln in AGENTS.md und setz @AGENTS.md an den Anfang von CLAUDE.md. Codex liest AGENTS.md nativ.Was, wenn ich mitten in der Aufgabe mein Claude-Limit erreiche?
Verliere ich beim Agentenwechsel meine nicht committeten Änderungen?
git stash create auszuführen, gibt dir einen festen Vergleichspunkt, falls der nächste Agent danebenliegt.