Workflow
Przekaż zadanie z Claude Code do Codexa bez utraty kontekstu
Limit Claude skończył Ci się w połowie refaktoryzacji albo chcesz drugiej opinii. Oto co musi trafić do następnego agenta i trzy sposoby, żeby to tam dostarczyć.
Krótka odpowiedź
Żaden z agentów nie wczytuje transkryptu drugiego, więc zadanie przenosisz za pomocą podsumowania: cel i Twoje ostatnie polecenie, plan, zmienione pliki i stan gita, a sam kod zostaje na dysku. Wspólne zasady trzymaj w AGENTS.md, zrób commit lub git stash create bieżącej pracy, a potem napisz podsumowanie sam, wygeneruj je narzędziem takim jak hop albo pozwól, by aplikacja taka jak Maude zbudowała je przy przełączeniu.
Możesz przełączyć się z Claude Code na Codexa w trakcie zadania bez zaczynania od nowa, ale żaden z agentów sam nie przejmie rozmowy drugiego. Zadanie przenosi krótkie podsumowanie: cel, plan, zmienione pliki, stan gita i Twoje ostatnie polecenie, plus kod na dysku. Możesz napisać je ręcznie, wygenerować małym narzędziem albo użyć aplikacji, która zbuduje je za Ciebie przy przełączeniu.
Po co przekazywać zadanie między agentami kodującymi
- Trafiasz na limit. To najczęstszy powód. W planie Claude kończy się użycie w środku refaktoryzacji, a w planie ChatGPT wciąż jest zapas. Czekanie na reset kosztuje godziny, a rozpoczęcie od zera w Codexie kosztuje kontekst.
- Druga opinia. Jeden agent kręci się w kółko przy jakimś błędzie. Inny model czytający ten sam kod z czystym kontekstem często zauważa to, czego pierwszy już nie widzi. Poproszenie jednego agenta o przegląd diffa drugiego przed commitem też niewiele kosztuje.
- Różne mocne strony. Ludzie używają jednego agenta do planowania, a innego do długich, mechanicznych edycji, albo trzymają jednego do języka lub frameworka, z którym dobrze im się sprawdza. To, który jest lepszy w czym, zmienia się z każdym nowym modelem, więc traktuj to jako własną ocenę, a nie regułę.
Czy Codex potrafi odczytać sesję Claude Code?
Nie sam z siebie. Oba agenty przechowują pełne transkrypty jako pliki JSONL na dysku. Claude Code zapisuje je w ~/.claude/projects/<project>/<session>.jsonl (dokumentacja Claude Code), a Codex w datowanych plikach rollout-*.jsonl w ~/.codex/sessions/. Każdy wznawia własne sesje (claude --resume, codex resume), ale żaden nie opisuje wczytywania sesji drugiego. Polecenie /import w Claude Code przenosi konfigurację innego agenta, taką jak pliki instrukcji, serwery MCP i skille. Nie przenosi rozmowy.
Możesz wskazać nowemu agentowi surowy plik transkryptu. W praktyce to słabe podsumowanie: jest długi, pełen wyjścia narzędzi i zakopuje jedyną rzecz, której nowy agent potrzebuje, czyli to, gdzie jesteś i co dalej.
Jaki kontekst musi zostać przekazany
| Kontekst | Dlaczego to ważne | Skąd pochodzi |
|---|---|---|
| Cel i ostatnie polecenie | Nowy agent musi wiedzieć, co znaczy „gotowe” i czego dotyczyła Twoja ostatnia prośba | Twój ostatni prompt, słowo w słowo |
| Plan / lista zadań | Agent nie planuje od nowa pracy, która ma już ustalony zakres | Lista zadań odchodzącego agenta |
| Zmienione pliki | Mówią agentowi, co przeczytać przed edycją | Edycje w transkrypcie plus git status |
| Stan gita | Gałąź, HEAD i niezacommitowane zmiany. Bez nich nowy agent może powtórzyć pracę albo ją nadpisać commitem | git status, git diff --stat |
| Decyzje i ślepe zaułki | Żeby nowy agent nie próbował ponownie podejścia, które już zawiodło | Ostatnia część rozmowy albo pisemne podsumowanie |
Konwencji projektu, takich jak polecenia budowania i styl kodu, w ogóle nie powinno być w podsumowaniu. Ich miejsce jest w plikach instrukcji, które oba agenty już czytają.
Ręcznie: wspólne instrukcje w AGENTS.md i CLAUDE.md
Codex buduje swoje instrukcje z plików AGENTS.md, z ~/.codex/ oraz od katalogu głównego repozytorium git w dół do katalogu roboczego (dokumentacja AGENTS.md w Codexie). Od v2.1.277 Claude Code też czyta AGENTS.md, ale domyślnie tylko wtedy, gdy w katalogu roboczym ani wyżej nie ma CLAUDE.md ani CLAUDE.local.md (dokumentacja pamięci Claude Code). Najprostsza konfiguracja, którą czytają oba agenty: wspólne zasady trzymaj w AGENTS.md, a jeśli potrzebujesz zasad tylko dla Claude, zacznij CLAUDE.md od importu:
@AGENTS.md
## Claude Code
Use plan mode for changes under src/billing/.
W drugą stronę też to działa. Ustawienie project_doc_fallback_filenames w ~/.codex/config.toml pozwala Codexowi czytać dodatkowe nazwy plików, gdy nie ma AGENTS.md.
Ręcznie: dokument przekazania i git
Przed przełączeniem poproś odchodzącego agenta, by napisał podsumowanie, póki ma jeszcze kontekst — o ile zostało mu jakieś użycie:
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.
Potem ustal jednoznacznie stan kodu. Najczytelniejszą opcją jest commit bieżącej pracy na gałąź. Jeśli wolisz nie robić commita, git stash create zapisuje niezacommitowane zmiany w śledzonych plikach jako obiekt commita, nie ruszając katalogu roboczego, co daje Ci stały punkt do porównania, jeśli następny agent coś zepsuje. Uruchom drugiego agenta w tym samym katalogu i powiedz mu, żeby przeczytał HANDOFF.md i ponownie czytał pliki przed edycją.
Narzędzia, które to automatyzują
hop (MIT) robi to jednym poleceniem: hop codex z Claude Code do Codexa, hop cc w drugą stronę. Czyta pliki sesji agenta źródłowego bezpośrednio, więc działa nawet wtedy, gdy ten agent wyczerpał limit. Możesz uruchomić ! hop codex z wnętrza zablokowanej sesji Claude Code. Zapisuje dokument przekazania z Twoimi instrukcjami, gałęzią git i ostatnią częścią rozmowy w ramach limitu rozmiaru (domyślnie 48 KB) i otwiera drugiego agenta w nowej karcie terminala. Podobne projekty to cli-handoff i session-handoff.
| Podejście | Działa po wyczerpaniu limitu | Nakład przy przełączeniu | Przenosi rozmowę |
|---|---|---|---|
| Tylko wspólny AGENTS.md | Tak | Żaden, ale przenosi konwencje, a nie stan zadania | Nie |
| HANDOFF.md napisany przez agenta + git | Tylko jeśli odchodzący agent jeszcze odpowiada | Jeden prompt i commit | Jako podsumowanie |
| hop i podobne CLI | Tak | Jedno polecenie | Ostatnie tury, w limicie rozmiaru |
| Aplikacja z wbudowanym przełączaniem | Tak | Jedno dotknięcie | Zależy od aplikacji |
Jak działa przekazanie w Maude
Maude uruchamia Twoje agenty na Twoim własnym serwerze, a sesja nie jest przywiązana do jednego agenta. Gdy sesja jest bezczynna, możesz z telefonu przełączyć ją na przykład z Claude Code na Codex (albo OpenCode, Grok Build czy Antigravity). Demon na serwerze buduje podsumowanie z własnego zapisu sesji, a nie ze streszczenia pisanego pod presją:
- ramę informującą nowego agenta, że przejmuje zadanie, że pliki na dysku są źródłem prawdy i że przed edycją powinien je ponownie przeczytać
- Twoje ostatnie polecenie, przypięte
- bieżący plan lub listę zadań
- zmienione pliki, z edycji agenta plus pliki, które git zgłasza jako zmienione
- stan gita: gałąź, HEAD, skrócony status i statystykę diffa. Niezacommitowana praca jest też zapisywana przez
git stash createi trzymana pod referencją, bez ruszania katalogu roboczego - ostatnią część rozmowy, dosłownie, do około 120 000 znaków
- odnośnik do pełnego transkryptu, wyeksportowanego jako markdown do
.maude/handoff/w projekcie i wyłączonego zgit status
Podsumowanie trafia przed Twoją następną wiadomość do nowego agenta, a czat pokazuje separator, który możesz rozwinąć, żeby przeczytać dokładnie to, co zostało wysłane. Ponieważ podsumowanie powstaje z zapisu sesji, nie zależy od tego, czy odchodzący agent jest w stanie odpowiedzieć, co ma największe znaczenie, gdy właśnie trafił na limit.
Powrót działa inaczej. Jeśli agent, do którego wracasz, już pracował w tej sesji i obsługuje wznawianie, Maude wznawia jego własną rozmowę i wysyła tylko to, co działo się pod jego nieobecność. Nie dostaje drugiego pełnego podsumowania.
Maude nie jest jedyną aplikacją, która to potrafi. Happier pozwala zmienić silnik w trakcie rozmowy i daje nowemu agentowi narzędzia do czytania wcześniejszego transkryptu. AgentsRoom przy zmianie dostawcy buduje podsumowanie przekazania ze zmienionymi plikami, aktywnością sesji i ostatnią odpowiedzią. Kompromisy porównujemy w tekście Maude vs Happier. Jakie agenty ze sobą łączyć, podpowie Claude Code vs Codex vs OpenCode.
Najczęściej zadawane pytania
Czy Codex potrafi odczytać sesję Claude Code?
~/.claude/projects/, a Codex ich nie wczytuje. Zadanie przenosisz za pomocą podsumowania: napisz je sam, wygeneruj narzędziem takim jak hop albo użyj aplikacji, która zbuduje je przy przełączeniu.Czy AGENTS.md i CLAUDE.md się gryzą?
AGENTS.md tylko wtedy, gdy nie ma CLAUDE.md. Żeby używać jednego pliku, trzymaj zasady w AGENTS.md i umieść @AGENTS.md na początku CLAUDE.md. Codex czyta AGENTS.md natywnie.Co jeśli trafię na limit Claude w trakcie zadania?
Czy zmiana agenta powoduje utratę niezacommitowanych zmian?
git stash create daje Ci stały punkt do porównania, jeśli następny agent coś zepsuje.