Codex Plugin dla Claude Code: Instalacja, konfiguracja, unikanie pętli recenzji
Jak uruchomić Codex i Claude Code razem: wybierz hosta, zainstaluj oficjalny plugin, udostępnij reguły AGENTS.md, użyj poleceń do przeglądania i ratowania oraz ogranicz pętlę przeglądania.
Źródła: Codex Plugin for Claude Code: Choose, Install, and Run a Reliable Two-Agent Workflow
Każdy, kto kiedykolwiek używał dwóch narzędzi do programowania równocześnie, zna ten schemat. Jedna konsola planuje, druga sprawdza, a my siedzimy pomiędzy nimi, kopiując tekst w obie strony jak skrawek papieru z opiniami. Gdy próbujemy zautomatyzować tę wymianę, oba narzędzia zaczynają się kłócić o przecinki, a sesja, którą chcieliśmy zakończyć przed obiadem, wciąż przepisuje ten sam nagłówek o czwartej po południu.
Oficjalny plugin OpenAI dla Claude Code, codex-plugin-cc, eliminuje większość konieczności kopiowania. Umożliwia on korzystanie z funkcji przeglądania dokumentów w Codex, delegowania zadań oraz przenoszenia sesji bezpośrednio wewnątrz Claude Code. Instalacja jest szybka: należy zainstalować narzędzie Codex CLI na komputerze, zarejestrować marketplace OpenAI w Claude Code, zainstalować plugin, odświeżyć aplikację i wykonać komendę konfiguracyjną. W przypadku układu odwrotnego, gdy Claude działa jako proces gościnny wewnątrz Codex, istnieje oddzielny plugin w tym celu z własną ścieżką instalacji. W obu przypadkach rozsądnym krokiem jest najpierw udostępnienie instrukcji dotyczących projektu, a następnie dodanie zasad ograniczonych przeglądów i przenoszenia danych przed automatyzacją jakichkolwiek procesów pętlowych.
Zysk wynika z krótszego przenoszenia danych, a nie ze sprytniejszych modeli. Repozytorium posiadające jeden terminal hosta, w którym agent gościnny sam przeprowadza analizę, oszczędza człowiekowi konieczności przenoszenia każdego fragmentu różnic między oknami. Szczegóły poniżej pochodzą z dokumentacji pluginów oraz wpisów społecznościowych, a nazwy poleceń lub modeli mogły ulec zmianie od czasu ich zebrania, więc sprawdź je w aktualnych plikach README przed użyciem.
Wybierz kierunek przed zainstalowaniem czegokolwiek
Wyobraź sobie wsiadanie do samochodu, w którym dwie jednostki nawigacyjne uruchamiają się jednocześnie. Jedna woli autostradę, a druga ulice boczne, i żadna z nich nie czeka, aż ty wybierzesz kierowcę. Wyjedź z podjazdu, nie decydując się, kto wyznaczy następny skręt, i utkniesz, gdy oba ekrany będą się ze sobą kłócić.
Głównym problemem jest host. Wtyczka Codex dla Claude Code pełni rolę dodatkowego przeglądarki, a nie dodatkowego kierownicy, więc należy ustalić, który terminal będzie sterowany, zanim zostanie wydany pierwszy polecenie instalacji.
Istnieją dwa sposoby rozwiązania, a każdy z nich wymaga odrębnego proceduru. Polecenie $cc: nie pasuje do sesji Claude Code, a polecenie /plugin wklejone do Codex nie uruchomi tej samej wtyczki.
Oficjalna metoda: Codex wewnątrz Claude Code
To własny produkt OpenAI do tego celu, codex-plugin-cc. Claude Code pozostaje przestrzenią roboczą, a Codex łączy się jako agent, który może przeglądać kod, kwestionować projekt, przejąć naprawę, wykonywać zadania w tle oraz przenosić sesję między urządzeniami.
Rynek wtyczek to po prostu rejestr, do którego odwołuje się Claude Code w celu znalezienia wtyczek, które może zainstalować. Sekwencja działań polega na dodaniu rynku OpenAI, zainstalowaniu codex@openai-codex, ponownym załadowaniu i uruchomieniu /codex:setup. Wtyczka komunikuje się z lokalnym interfejsem CLI Codex oraz serwerem aplikacji Codex i nie uruchamia oddzielnego środowiska w chmurze. Wybierz tę metodę, gdy Claude Code już znajduje się tam, gdzie planujesz go używać – do wyszukiwania i sterowania. Gdy post na blogu i plik README w repozytorium są sprzeczne, przeważa plik README.
Metoda odwrotna: Claude wewnątrz Codex
cc-plugin-codex od Sendbird działa w przeciwnym kierunku. Codex pełni rolę hosta, a Claude Code jest wzywany jako gość, zazwyczaj poprzez nowy, nieinteraktywny proces potomny claude -p dla każdego zadań. Instalacja odbywa się wewnątrz Codex:
codex plugin marketplace add sendbird/codex-marketplace
codex plugin add cc@sendbird
$cc:setup
Istnieje pomocnik idempotentny, npx cc-plugin-codex install, który można ponownie uruchomić w celu aktualizacji. $cc:setup sprawdza haki, zaufanie do pamięci cache oraz ścieżki do zapisu, a haki odwrotne wymagają również ustawienia hooks = true w sekcji [features] pliku ~/.codex/config.toml.
Istnieje także trzecia, nieoficjalna opcja: marketplace społecznościowy (yanchuk/claude-plugin-codex) z poleceniem $claude setup. Traktuj go jako oprogramowanie społecznościowe i nie myl go z pluginem od OpenAI.
Jeśli chcesz wiedzieć, który produkt jest lepszy, to jest to zupełnie inna porównywalność, a dyskusja tutaj dotyczy wyłącznie konfiguracji. Krótko mówiąc, decyzja zależy od tego, kto jest hostem, a kto gościem, oraz od tego, jakie pole instalacji możesz wpisać.
Instalacja oficjalnego pluginu wewnątrz Claude Code
Pozostała część tego rozdziału follows oficjalną ścieżkę, chyba że nagłówek wskazuje inaczej. Porównania marek, VS Code i Cursor to odrębne tematy, a sama CLI, włączając instalatory platform i flagi bezpieczeństwa przy pierwszym uruchomieniu, ma własną dokumentację instalacyjną.
Proces może się nie udać, jeśli Node.js jest starszy niż 18.18, jeśli Codex nie jest zalogowany na komputerze lub jeśli pominiesz ponowne załadowanie, a następnie uznasz, że wtyczka jest uszkodzona.
Potwierdź wymagania opisane w dokumentacji
Oficjalny plugin wymaga Node.js 18.18 lub nowszej wersji. Odwrotny plugin od Sendbird wymaga jedynie Node.js 18+, ale ci, którzy korzystają z oficjalnej drogi, muszą spełniać wyższe wymagania. Potrzebujesz również działającej lokalnej wersji Codex CLI oraz sposobu na jej opłacenie, co oznacza plan ChatGPT (bezpłatny wersja jest dozwolona, zgodnie z dokumentacją) lub klucz API OpenAI. Claude Code ma własne wymagania – albo klucz API Anthropic, albo plan Claude Pro lub Max. To oznacza dwa produkty i dwa rachunki, a plugin ich nie łączy.
Jeśli brakuje CLI, zainstaluj je:
npm install -g @openai/codex
Następnie zaloguj się za pomocą opisanego w dokumentacji procesu Claude Code:
!codex login
Unikaj stron lustrzanych oraz list z plikami wykonywalnymi od osób trzecich. Prawdziwe wersje pakietów to repozytorium na GitHubie oraz narzędzie npm CLI. A jeśli twoim codziennym narzędziem jest pasek boczny IDE, a nie Claude Code, masz do czynienia z innym hostem, który ma własne instrukcje.
Dodaj rynek, zainstaluj, odśwież, skonfiguruj
Zainstalowanie oficjalnego pluginu wymaga czterech poleceń z użyciem średnika. Polecenie typu średnik to /command wpisywane w sesji Claude Code, a nie plik binarny z Twojej ścieżki shell. Wykonaj je w następującej kolejności:
/plugin marketplace add openai/codex-plugin-cc
/plugin install codex@openai-codex
/reload-plugins
/codex:setup
/reload-plugins odświeża listę aktywnych pluginów, a pominięcie tego kroku może sprawić, że mimo udanej instalacji polecenia nadal będą wyglądać na nieobecne. /codex:setup potwierdza, że Codex jest zalogowany, a gdy interfejs CLI nie istnieje, może zaproponować instalację globalnego pakietu @openai/codex za pomocą npm. To cała oficjalna procedura instalacji. Większość problemów, które ludzie przypisują pluginowi, wynika z kroków związanych z jego instalacją.
Konfiguruj Codex dla projektu, a nie tylko dla komputera
Globalna instalacja dostarcza polecenia, ale nie określa, w jaki sposób dany repozytorium ma być traktowany. Domyślne ustawienia użytkownika oraz modyfikacje projektu znajdują się w różnych plikach, a plik projektu jest ładowany tylko wtedy, gdy projekt jest uznawany za wiarygodny.
Częstym błędem jest edytowanie pliku użytkownika w celu ustawienia modelu projektu, a następnie zastanawianie się, dlaczego drugi repozytorium go odziedziczyło. Dziedziczenie jest elementem projektu: to edycja skonfigurowała maszynę, a nie drzewo.
Ustawienia użytkownika versus przejęcia z zaufanego projektu
Konfiguracja na poziomie użytkownika znajduje się w pliku ~/.codex/config.toml, który Codex odczytuje dla każdego projektu. Przejęcia specyficzne dla zaufanego projektu znajdują się w pliku .codex/config.toml w korzeniu repozytorium. „Zaufany” odnosi się do flagi zaufania projektu w Codexie: przejęcia są ładowane tylko wtedy, gdy katalog jest oznaczony jako zaufany, natomiast niezaufane drzewo ignoruje lokalny plik. To zasada bezpieczeństwa, a nie błąd, więc gdy plik projektu wydaje się nie być ładowany, sprawdź ustawienie zaufania przed debugowaniem pliku TOML.
Rozsądny podział polega na przechowywaniu informacji poufnych oraz domyślnej ostrożności w pliku użytkownika, a specyficzne dla repozytorium opcje modelu i środowiska testowego umieszcza się w pliku projektu po upewnieniu się co do jego wiarygodności.
Model i zachowanie rozumowania
Tutaj istotne są dwa klucze: model oraz model_reasoning_effort. Dokument README w źródle pokazuje taką możliwość modyfikacji projektu:
model = "gpt-5.4-mini"
model_reasoning_effort = "high"
Traktuj te wartości jako przykłady, które szybko stają się przestarzałe. Tagi modeli zmieniają się błyskawicznie, a ciąg znaków widoczny na zrzutce ekranu może być już nieaktualny po tygodniu. Skopiuj klucze, a następnie ponownie sprawdź wartości w odniesieniu do aktualnej dokumentacji przed umieszczeniem ich w repozytorium. Wtyczka akceptuje również skrót spark, który odpowiada gpt-5.3-codex-spark; ta mapa jest udokumentowana, ale równie podatna na zmiany, więc jeśli późniejszy plik README ją usunie, należy wierzyć temu plikowi.
model_reasoning_effort = „high” nie jest swobodnym suwakiem kontroli jakości, ponieważ wyższy poziom wysiłku zużywa więcej tokenów przy każdej rundzie. Zachowaj go na trudne zadania projektowe lub poważne błędy testowe, a nie pozostawaj przy nim podczas prostego przemianowania nazwy.
Zatwierdzenia i środowisko testowe
Przewodnik ShakaCode stworzony przez stronę trzecią opisuje interaktywne przejęcia kontroli oraz klucze środowiskowe, których oficjalny plik README do pluginu nie podkreśla, dlatego należy je traktować jako wskazówki pochodzące od strony trzeciej. approval_policy określa, kiedy Codex pyta o zgodę przed podjęciem działań, przy czym jako wartości podawane są untrusted i on-request. sandbox_mode ogranicza to, do czego proces ma dostęp, a wymienione opcje to read-only, workspace-write oraz danger-full-access.
approval_policy = "untrusted"
sandbox_mode = "workspace-write"
W przytoczonym przewodniku to jest standardowy profil do pracy z funkcjami: Codex może pisać w przestrzeni roboczej, ale nadal pyta przed działaniem, jakby drzewo struktury plików było tylko częściowo godne zaufania. Zachowaj danger-full-access dla narzędzi testowych i skryptów budowania, którym już ufasz, i nigdy nie używaj go podczas pierwszego przeglądania nieznanej repozytorium.
W interfejsie wiersza poleceń codex --auto-edit nadal pyta przed uruchomieniem w shellu, natomiast codex --full-auto działa w pełni w izolacji bez żadnych pytań. Te flagi zmieniają zachowanie dotyczące pytań i nie są synonimami, więc nie uciekaj się do --full-auto tylko dlatego, że brzmi zdecydowanie.
Ludzie często instalują drugi plugin, aby niczego nie przegapić w funkcjach, podczas gdy brakującym elementem była decyzja dotycząca środowiska, którą trzeba podjąć przed pierwszym poleceniem.
Jedno źródło prawdy projektu dla obu agentów
Dwóch agentów na jednym drzewie bez wspólnych instrukcji wymyśli do czwartku dwa style domów. Można się spodziewać powtórzonych zasad dotyczących brudu, powtórzonych poleceń testowych oraz przeglądu, który unieważnia konwencję, którą drugi agent dopiero co przywrócił. Codex czerpie swoje zasady repozytorium z pliku Markdown AGENTS.md, a CLAUDE.md jest odpowiednim plikiem dla Claude Code. Potrzebna jest polityka określająca, jak te dwa elementy powinny ze sobą współpracować, ponieważ nic nie utrzymuje ich w zgodności, chyba że ktoś to zapewni.
Najlepiej udokumentowanym przeglądem dostępnych opcji jest plik claude-code-with-codex.md od ShakaCode. Zawiera on daty modeli, więc należy na niego polegać przy planowaniu plików, a nie przy domyślnych tagach modeli.
Odniesienie do pojedynczego pliku z instrukcjami
Umieść polecenia budowania, notatki dotyczące architektury oraz konwencje w pliku AGENTS.md, a CLAUDE.md użyj jako wskaźnik:
# Project Instructions
See @AGENTS.md for build commands, architecture, and conventions.
Pozostały dwa pliki, a notatki specyficzne dla Claude nadal mogą znajdować się pod wskaźnikiem. Kosztem jest konieczność regularnego utrzymywania, ponieważ zapomnienie o aktualizacji wskaźnika sprawia, że Claude nadal kieruje się starymi informacjami. W Codex można również ustawić fallback w przypadku braku pliku AGENTS.md, poprzez plik ~/.codex/config.toml:
project_doc_fallback_filenames = ["CLAUDE.md", "COPILOT.md"]
To jest ścieżka odczytu, a nie łączenie. Codex będzie szukał tych nazw plików, ale nie połączy trzech plików w jedną zasadę.
Stwórz symlink do reguł uniwersalnych
Szybka wersja to jeden poleceń:
ln -s AGENTS.md CLAUDE.md
Jeden inode, dwa nazwy – dzięki temu uniwersalne zasady pozostają identyczne. Istnieje jednak pewna kompromisowa sytuacja: nie można oddzielić poleceń specyficznych dla danego narzędzia, ponieważ nie ma już drugiego pliku. Jeśli Claude potrzebuje elementu, którego Codex nie powinien widzieć, symlink nie może tego oddać.
Zachowaj wspólną bazę wraz z dodatkami specyficznymi dla narzędzia
Zasady, które muszą być identyczne, takie jak polecenie testowe, ustawienia lintingu oraz zasada „nie modyfikuj formatowania”, powinny znajdować się w pliku AGENTS.md, natomiast notatki przeznaczone wyłącznie dla Claude’a lub Codexa trafiają do CLAUDE.md. Jest to bardziej dojrzała opcja, wymagająca świadomej konserwacji, dlatego zespoły ją pomijają i potem obwiniają modele o odchylenia.
Jeśli oba agenty będą edytować jednocześnie, wspólne instrukcje nie wystarczą. Należy izolować ich drzewa robocze, przy czym git worktrees jest standardowym narzędziem w tym celu, aby uniknąć konfliktów o jeden indeks. Jednoczesne zapisy do tego samego stanu projektu powodują konflikty łączeniowe, których żaden z agentów nie spowodował celowo.
Przeglądy, wyzwania, interwencje i praca w tle
Gdy plugin jest załadowany, pojawia się pokusa automatyzacji wszystkiego. Lepszym nawykiem jest używanie najprostszego możliwego polecenia odpowiadającego zadaniu, ponieważ przegląd tylko do odczytu nie stanowi implementacji, a implementacja nie jest argumentem projektowym.
Zwykły przegląd czy przegląd adwersarialny
/codex:review uruchamia sprawdzenie poprawności tylko do odczytu lokalnych zmian niewprowadzonych do repozytorium lub określonej bazy. Przyjmuje parametry --base <ref>, --wait i --background, a nigdy nie zapisuje plików.
/codex:review --background
/codex:adversarial-review to sterowalne wyzwanie projektowe, które kwestionuje podejmowane decyzje, a tekst wolny może być umieszczony obok flag.
/codex:adversarial-review --base main challenge whether this was the right caching and retry design
Na drodze powrotnej odpowiednikami są $cc:review i $cc:adversarial-review, które wykonywają te same zadania, ale pod innym hostem. Nie mieszajcie prefiksów. Recenzja, która skupia się wyłącznie na drobnych błędach w kolejności importu, nie jest prawdziwą recenzją – dlatego należy wpisać pytanie funkcjonalne do polecenia, a jeśli nie można sformułować pytania, to nie jesteśmy gotowi przeznaczyć rundy na rozumowanie.
Przekazanie poprawki za pomocą rescue
/codex:rescue przekazuje prace nad implementacją podagentowi wtyczki codex:codex-rescue, który, w odróżnieniu od poleceń recenzji, modyfikuje pliki. Do jego flag należą --background, --wait, --resume oraz --fresh.
/codex:rescue fix the failing test with the smallest safe patch
Odwrotnym odpowiednikiem jest $cc:rescue. Trzymaj prośbę konkretną, ponieważ żądanie „poprawienia tego” skutkuje koniecznością przepisania tekstu, czego wcale nie chcesz, oraz niekończącym się cyklem recenzji.
Śledzenie i kontrola zadań w tle
Pojęcie „w tle” oznacza tutaj, że zadanie wtyczki nadal jest wykonywane, podczas gdy kontynuujesz używanie Claude Code. Nie jest to druga procedura weryfikacji, ani gwarancja, że praca została zakończona.
/codex:status
/codex:result
/codex:cancel
/codex:status informuje o stanie zadań w tle, /codex:result pokazuje ich wyniki, a /codex:cancel je zatrzymuje. Sprawdzaj intencjonalnie i nie interpretuj braku odpowiedzi jako sukcesu. Odpowiednik tego w pluginie Reverse oferuje te same trzy funkcje pod nazwami $cc:status, $cc:result i $cc:cancel, przy czym to host decyduje o prefiksie.
Przenoszenie kontekstu i tworzenie zamkniętego cyklu przekazywania
Przeglądanie w Claude Code nie jest tym samym co sesja w Codex, która umożliwia widzenie wcześniejszych rozważań, a gdy wątek debugowania jest już długi, kopiowanie i wklejanie powoduje utratę informacji. /codex:transfer to dokumentowana rozwiązanie tego problemu. Pełna synchronizacja stanu nie jest dostępna. Otrzymujesz natomiast trwały wątek w Codex oraz poleceń do wydrukowania streszczenia, dzięki czemu rozmowa może przechodzić między nimi bez konieczności ponownego interwencji człowieka.
Kontynuowanie w Codex po przeniesieniu
/codex:transfer szuka źródłowego transkryptu w katalogu ~/.claude/projects, a jeśli plik JSONL tam nie znajduje się, przeniesienie nie może go stworzyć. Wynik wyświetlany ma być uruchomiony w aplikacji Codex lub w interfejsie tekstowym:
codex resume <session-id>
Użyj ID sesji wygenerowanego przez polecenie, nigdy wymyślonego numeru ani URL rozmowy z ChatGPT wklejonego z innej strony.
Planuj, wdrażaj, sprawdzaj, przekazuj
Pętla, która faktycznie utrzymuje proces w ruchu, jest monotonna:
- Zrób plan w Claude Code i najpierw napisz linię akceptacji.
- Wdroż rozwiązanie, albo w Claude Code, albo za pomocą
/codex:rescue, gdy patch jest ograniczony. - Przeczytaj go za pomocą
/codex:reviewlub/codex:adversarial-review, po jednym na raz. - Zwróć kontrolę, aby osoba mogła go zaakceptować, odrzucić lub przekazać dalej.
Proces musi się kiedyś zakończyć. Błędne koło, w którym ciągle wraca się do „jeszcze jednej próby”, zamienia proces w niekończącą się rutynę.
Zatrzymanie nieskończonej pętli przeglądania: protokół rozwiązywania konfliktów i zarządzania budżetem
Funkcja mająca na celu poprawę jakości może przekroczyć budżet z powodu kwestii subiektywnych upodobań. Uruchomienie polecenia /codex:setup --enable-review-gate dodaje lokalny hook typu Stop, czyli punkt kontrolny na końcu rundy: gdy Claude próbuje zakończyć pracę, Codex musi sprawdzić wynik przed tym, jak runda zostanie zamknięta. Jeśli Codex znajdzie problemy, Claude jest zablokowany, aby mógł je rozwiązać. Gdy nikt tego nie nadzoruje, ten błędny cykl może szybko wyczerpać tokeny. Oficjalna dokumentacja ostrzega przed tym, ale nie proponuje żadnego protokołu zarządzania budżetem.
Limit trzech iteracji jest jedynie wskazówką redakcyjną wynikającą z tej luki, a nie oficjalną funkcją wtyczki. Nie istnieje żadne pole --max-iterations 3, którego należałoby szukać.
Najpierw zdefiniuj kryteria akceptacji funkcjonalnej
Napisz listę przeszkód przed tym, jak ktoś je przejrzy, i utrzymuj ją aktualną: testy, które muszą przejść, zachowanie, które nie może ulec pogorszeniu, oraz problemy z bezpieczeństwem lub danymi, które stanowią powód automatycznego odrzucenia. Formatowanie, styl komentarzy i poziom nagłówków nie są przeszkodami, chyba że plik instrukcji repozytorium już ich zabrania. Włącz reguły stylowe do mechanizmu weryfikacji – wtedy dwa agenty spędzą trzy rundy na kłótni co do wyboru poziomu nagłówka H2.
Jeden przykład ostrzegawczy: gdy mechanizm weryfikacji był włączony przy komitcie zawierającym tylko dokumentację, dwa agenty spierali się o to, czy nagłówek powinien mieć poziom H2 czy H3, aż sesja została przerwana, mimo że strona była już poprawna. Bez jasnej definicji zakończenia pracy mechanizm sam stworzył taką definicję. Przechowuj listę kontrolną w pliku AGENTS.md, aby oba agenty widzieli identyczne zasady. Ponowne sformułowanie ich w komendzie weryfikacji jest w porządku, ale niejasny żądanie typu „uczynić to bardziej przejrzystym” skutkuje koniecznością przepisania tekstu.
Ogranicz liczby iteracji i zmusz do decyzji człowieka
Ogranicz się do trzech rund przeglądania i korygowania na każdą zmianę:
- Iteracja 1: tylko błędy funkcjonalne.
- Iteracja 2: wszystkie pozostałe błędy, bez nowych problemów stylistycznych.
- Iteracja 3: ostatnia próba, a potem przerwa.
Po trzech iteracjach osoba decyduje, czy połączyć zmiany, cofnąć je lub przepisać specyfikację, a agenci nie mogą ponownie głosować. Tematy w społeczności dotyczące wrapperów tmux i niestandardowych skryptów stanowią jedynie dowody eksperymentalne, a nie drugą oficjalną drogę postępowania, więc traktuj te skrypty jako prace kogoś innego, a nie polecenia od OpenAI.
Zatrzymaj się, gdy nic się tak naprawdę nie zmieniło
Wtyczka odwrotna Sendbird tworzy odcisk palca drzewa roboczego i pomija przegląd na końcu rundy, gdy poprzednia runda w systemie Codex nie spowodowała żadnych zmian. Ta ochrona jest udokumentowana dla ścieżki odwrotnej, natomiast brama w wersji upstream nie informuje o takim pominięciu. Na oficjalnej ścieżce to właśnie odcisk palca decyduje: jeśli git status pokazuje brak zmian, pomija się kolejny przegląd, a jeśli ostatnia runda zmieniła tylko komentarze, sprawdza się, czy znajdowały się one na liście akceptacji, i w razie negatywnego wyniku przerwa się proces.
Poczekaj z automatyzacją bramy, dopóki pojedynczy przegląd ręczny nie potwierdzi spełnienia listy kontrolnej. Włączaj --enable-review-gate na końcu, a nigdy na początku.
Rozwiązywanie problemów według ścieżki, autoryzacji, zaufania i przestarzałych zadań
Zdiagnozuj trasę przed ponowną instalacją czegokolwiek. Błędy na oficjalnej trasie głównej oraz problemy z hookami pluginu odwrotnego wyglądają podobnie w frustrujących wiadomościach, ale nie dotyczą tego samego systemu. Ponowna instalacja prawie nigdy nie jest pierwszym krokiem diagnostycznym.
Oficjalna trasa główna
- Polecenia pluginu niedostępne: uruchom
/reload-plugins. Jeśli nadal ich brakuje, upewnij się, że polecenie/plugin install codex@openai-codexfaktycznie się zakończyło, a następnie uruchom/codex:setup. - Codex nie może się zalogować: wpisz
!codex loginzgodnie z opisem w procedurze Claude Code. Plugin odczytuje lokalny stan autoryzacji – zalogowana karta przeglądarki ChatGPT nie jest równoznaczna z zalogowanym interfejsem CLI.
.codex/config.toml w korzeniu repozytorium, a nie tylko do pliku w katalogu domowym.~/.claude/projects, więc sesja, która nigdy tam nic nie zapisала, nie może zostać przeniesiona. Najpierw uruchom prawdziwą sesję projektu Claude Code./codex:status, a następnie /codex:result lub /codex:cancel; nie uruchamiaj drugiej próby naprawy tylko dlatego, że pierwsza przestała działać.node -v przed zgłaszaniem problemu.Haki pluginu odwrotnego i zaufanie do cache’u
Jeśli odwrotne haki nie działają, ustaw hooks = true w sekcji [features] pliku ~/.codex/config.toml. Jeśli konfiguracja odwrotna wydaje się niekompletna, uruchom $cc:setup – ma on potwierdzić poprawność haków, zaufanie do pamięci cache oraz dostępnych ścieżek do zapisu. W przypadku pluginu społecznościowego $claude setup jest własną procedurą weryfikacyjną tego projektu, a ponieważ jest nieoficjalny, jego błędy nie powinny być zgłaszane w związku z projektem openai/codex-plugin-cc. Obsługa systemu Windows w rozwiązaniu Sendbird jest oznaczona jako eksperymentalna w jego repozytorium, więc lepszym wyborem będzie środowisko pracy WSL, jeśli celem jest użycie pluginu odwrotnego.
Szybkie odpowiedzi na najczęstsze pytania
Czy istnieje jeden prawidłowy sposób na ich połączenie? Właściwie nie. Pierwszą decyzją jest wybór narzędzia, które będzie hostowało sesję. Gdy hostem jest Claude Code, wystarczy plugin OpenAI w połączeniu z udostępnianymi plikami instrukcji oraz krótkimi zadaniami typu slash-command. Gdy hostem jest Codex, odwrotny plugin Sendbird wraz z prefiksem $cc: pełni tę samą funkcję. Należy trzymać te dwa podejścia oddzielnie i nie pozwalać, by oba agenty pracowały nad tymi samymi plikami w tym samym czasie.
Co dokładnie należy wpisać, aby zainstalować oficjalny plugin? Cztery linie w poleceń Claude Code, po kolei: dodanie z marketplace dla openai/codex-plugin-cc, instalacja codex@openai-codex, ponowne załadowanie pluginu oraz /codex:setup. Jeśli Codex CLI jeszcze nie jest na komputerze, proces konfiguracji może zaproponować jego pobranie, albo można samodzielnie zainstalować @openai/codex wcześniej i zalogować się za pomocą !codex login.
Czy plugin posiada własny backend Codex? Nie. Wszystko jest kierowane do już istniejącego na twoim komputerze Codex CLI oraz serwera aplikacji, więc obowiązuje ten sam login oraz ten sam plan ChatGPT lub klucz API. Wszystkie uprawnienia, których potrzebował ten CLI, są nadal wymagane.
Jaki jest najczystszy sposób na przekazanie tym samym zasadom obu agentom? Działają trzy rozwiązania: można sprawić, by CLAUDE.md wskazywał na AGENTS.md, stworzyć symboliczny link między nimi lub umieścić wspólną bazę w AGENTS.md, a dodatkowe elementy specyficzne dla narzędzia w CLAUDE.md. Ustawienie nazwy pliku awaryjnego w konfiguracji użytkownika pozwala Codexowi na odczytanie pliku Claude’a, gdy AGENTS.md nie istnieje. Symboliczny link jest najszybszy, ale wymaga usunięcia plików specyficznych dla narzędzia.
Gdzie umieszcza się wybór modelu dla poszczególnych projektów? W pliku .codex/config.toml znajdującym się w korzeniu zaufanego projektu, używając kluczy model i model_reasoning_effort. Przykładowe wartości z dokumentacji, takie jak gpt-5.4-mini i high, szybko się starzeją, więc warto je sprawdzić. Projekt niezaufany automatycznie korzysta z domyślnych ustawień użytkownika.
Czym jest brama recenzji? Jej włączenie rejestruje lokalny hook Stop. Gdy Claude próbuje zakończyć turę, Codex najpierw sprawdza wykonaną pracę, a wszelkie znalezione problemy blokują tę turę, aby Claude mógł je naprawić. W trybie nieznadzorowanym może to zużywać tokeny. Odwrotny plugin może pominąć tę weryfikację, jeśli nic się nie zmieniło w drzewie roboczym, ale to jest jego własne zachowanie, a nie coś, co obiecuje oprogramowanie główne.
Jak przenosi się sesję między urządzeniami? Uruchom w Claude Code komendę /codex:transfer. Przekształca ona transkrypcję zapisaną w katalogu ~/.claude/projects w trwałe wątki Codex i wyświetla linijkę codex resume z identyfikatorem sesji, który następnie można uruchomić w aplikacji Codex lub interfejsie TUI. Brak transkrypcji w tym folderze oznacza, że nie ma nic do przeniesienia.
Jak powstrzymać te dwa elementy przed niszczeniem tokenów? Z góry określ kryteria akceptacji dotyczące wyłącznie funkcjonalności, umożliw troje rund przeglądu i korekty, a następnie zaangażuj człowieka. Włącz bramkę kontrolną dopiero po pozytywnym przeglądzie ręcznym. Jeśli git status pokazuje czystą strukturę, albo ostatnia runda dotyczyła wyłącznie stylu, a nikt nie został wskazany jako przeszkoda, sam zakończ pętlę.
Bezpieczny pierwszy eksperyment
Wybierz repozytorium, które już znasz, oraz jeden nieprzechodzący test lub małą zmianę do przeanalizowania, a następnie zrób commit lub stash. Zainstaluj tylko oficjalną ścieżkę i uruchom /codex:review w odniesieniu do tej zmiany. Przeczytaj wynik, następnie sam go zastosuj lub odrzuć, i pozostaw opcję --enable-review-gate wyłączoną podczas pierwszego popołudnia.
Jeśli ten przegląd okaże się przydatny, udostępnij dalej plik AGENTS.md i spróbuj wykonać jedno polecenie /codex:transfer w rzeczywistym wątku debugowania. To cały eksperyment. Nazwy modeli będą się zmieniać, ale decyzja hosta oraz warunek zatrzymania pozostaną aktualne. Nie jest jasne, jak długo zespoły będą tolerować dwa rachunki i dwa pliki z instrukcjami, zanim ktoś ponownie poprosi o jednego dostawcę. Na razie rozsądną wersją tego zestawu jest dzwonek do drzwi z zasadami domowymi, a nie współlokator z kluczem.
Literatura pokrewna
- Używanie Codex w VS Code: zakres działania, punkty odzyskiwania oraz rozwiązania typowych problemów — Praktyczny przewodnik po rozszerzeniu Codex dla VS Code: instalacja, logowanie, pierwsze zadań dla agenta, różnice między chmurą a interfejsem wiersza poleceń, wspólna konfiguracja oraz rozwiązania problemów z WSL, procedury zatwierdzania i autoryzacji zdalnej.
- Odbudowa agenta w stylu Claude Code za pomocą LangChain Deep Agents — Jak działa mechanizm agenta programistycznego, od podstawowego pętli po narzędzia, planowanie, pamięć, podagenty oraz zatwierdzania w środowisku izolowanym, pokazane krok po kroku przy użyciu deepagents.