Sekcje bazy wiedzy ▾

Nawigacja

▸ Zacznij tutaj Według ról

Kategorie

Narzędzia 37
Słownik 12

Narzędzia

Codex CLI: własny klucz zamiast subskrypcji

Codex CLI — asystent agentowy OpenAI, żyjący bezpośrednio w terminalu: czyta pliki projektu, uruchamia polecenia w piaskownicy (sandbox), poprawia kod i wyjaśnia, co zrobił. Standardowo korzysta z modeli OpenAI w ramach subskrypcji ChatGPT, ale dostawcę w nim można zastąpić własnym — wtedy te same scenariusze przelicza sieć Gonka.

Jeden szczegół czyni Codex wyjątkowym wśród narzędzi agentowych: nie posługuje się on standardowym Chat Completions, lecz Responses API — nowym protokołem OpenAI. Właśnie dlatego wcześniej nie można było podłączyć go do zewnętrznej bramki (gateway). JoinGonka Gateway przyjmuje Responses od 22 sierpnia 2026 r., a wszystko, co opisano poniżej, zostało sprawdzone w praktyce, a nie na podstawie dokumentacji.

Czym jest Codex CLI i czym różni się od czatu

Codex to nie podpowiadacz w edytorze, lecz samodzielny wykonawca. Formułujesz zadanie słowami, a on sam decyduje, jakie pliki przeczytać, jakie polecenia wykonać i co zmienić. Ma do dyspozycji około dziesięciu narzędzi: uruchamianie poleceń, czytanie plików, prowadzenie planu prac, prośba o doprecyzowanie od użytkownika, tworzenie podagentów do podzadań.

Dwa tryby pracy. Interaktywny — codex bez argumentów, dialog w terminalu z pokazaniem każdego kroku. Nieinteraktywny — codex exec „zadanie”, jednorazowe wykonanie do skutku: wygodne w skryptach i CI.

Bezpieczeństwo jest wbudowane: domyślnie agent pracuje w piaskownicy i prosi o potwierdzenie przed wprowadzeniem zmian. Poziom kontroli ustala się w konfiguracji — od „pytaj o wszystko” do w pełni autonomicznego wykonania z prawem zapisu do katalogu roboczego.

Kolejną cechą jest stan dialogu. Codex nie prosi serwera o zapamiętywanie czegokolwiek: trzyma cały ciąg u siebie i wysyła go w całości przy każdym kroku. Dla Ciebie oznacza to, że korespondencja nie osiada po stronie dostawcy modelu, a zmiana endpointu nie przerywa rozpoczętej sesji.

Różnica od Claude Code i innych agentów terminalowych polega właśnie na protokole. Codex komunikuje się z modelem przez Responses API, gdzie korespondencja nie jest opisywana jako płaska lista wiadomości, lecz jako taśma elementów: tekst, wywołanie narzędzia, wynik wywołania, blok rozumowania. Narzędziu daje to bardziej rygorystyczny model dialogu, a Tobie — konieczność posiadania endpointu, który rozumie ten protokół.

Podłączenie: jedna zmiana w config.toml

Codex przechowuje ustawienia w ~/.codex/config.toml. Własny dostawca jest opisywany blokiem [model_providers.*], a kluczowym polem jest tutaj wire_api: bez niego Codex spróbuje komunikować się przez Chat Completions i nie zbuduje pętli agentowej.

# ~/.codex/config.toml
model_provider = "joingonka"
model = "deepseek-ai/DeepSeek-V4-Flash-0731"

[model_providers.joingonka]
name = "JoinGonka Gateway"
base_url = "https://gate.joingonka.ai/v1"
env_key = "JOINGONKA_API_KEY"
wire_api = "responses"

Klucz nie jest zapisywany w pliku: env_key wskazuje nazwę zmiennej środowiskowej, z której Codex go pobierze. Nazwa zmiennej jest własna, nie OPENAI_API_KEY — dzięki temu ustawienie nie zakłóca pracy innych narzędzi korzystających z OpenAI.

export JOINGONKA_API_KEY=jg-twój-klucz

Pole model definiuje model domyślny, a model_provider — który z opisanych bloków użyć. Oba można nadpisać w momencie uruchomienia, więc jedna konfiguracja bez problemu obsługuje kilku dostawców: produkcyjnego, eksperymentalnego i zapasowego.

Klucz wydawany jest w panelu użytkownika po rejestracji, tam również widać saldo i zużycie. Jeśli wolisz nie edytować głównej konfiguracji, ten sam blok można przekazać jednorazowo przez -c: codex -c model_provider=joingonka …. Aby utrzymywać kilka niezależnych konfiguracji, wskaż katalog ustawień w zmiennej CODEX_HOME.

Weryfikacja: co powinno się wydarzyć

Najszybszym sposobem na sprawdzenie, czy połączenie działa, jest jednorazowy test:

codex exec "Odpowiedz jednym zdaniem: ile to 17*3?"

W nagłówku odpowiedzi Codex drukuje informacje o tym, z kim współpracuje: model, provider: joingonka, tryb piaskownicy (sandbox) oraz identyfikator sesji. Jeśli widzisz tam swojego dostawcę i na dole pojawiła się odpowiedź — połączenie jest aktywne.

Następnie warto sprawdzić najważniejszą funkcję, dla której używa się Codex — pracę z plikami. Umieść w katalogu mały plik z oczywistym błędem i poproś o jego znalezienie:

codex exec "Przeczytaj calc.py i powiedz jednym zdaniem, czy jest błąd."

Agent powinien samodzielnie wywołać narzędzie do odczytu, otworzyć plik i odpowiedzieć merytorycznie — ze wskazaniem linii. Jeśli to nastąpiło, pełny cykl agentowy (zapytanie → wywołanie narzędzia → wynik → odpowiedź) przez bramkę (gateway) jest skonfigurowany poprawnie.

Jeśli coś poszło nie tak, diagnozę zazwyczaj można odczytać bezpośrednio z komunikatu:

Co widziszCo to oznaczaCo zrobić
401 Unauthorized: Invalid API keyCodex nie znalazł klucza lub pobrał błędnySprawdź, czy zmienna z env_key została faktycznie wyeksportowana w bieżącej powłoce i czy jej nazwa zgadza się z konfiguracją
404 na /responsesW base_url brakuje sufiksuAdres musi kończyć się na /v1 — Codex sam dopisuje /responses
Model odpowiada, ale narzędzia nie są wywoływaneNie ustawiono wire_api, dialog przebiega według starego protokołuDodaj wire_api = \"responses\" do bloku dostawcy
Reconnecting… 1/5Codex sam ponawia zapytanieStandardowe zachowanie przy jednorazowym błędzie sieci; jeśli limity ponowień zostaną wyczerpane, sprawdź tekst błędu poniżej
Ostrzeżenie o bubblewrapW systemie brak pakietu izolacjiNie przeszkadza w pracy: Codex użyje wbudowanej kopii. Dla porządku zainstaluj bubblewrap za pomocą menedżera pakietów

Pierwsze zapytanie w sesji może potrwać kilka sekund: Codex wysyła duży prompt systemowy i opis wszystkich swoich narzędzi, a węzeł sieci musi przyjąć zadanie. Kolejne odpowiedzi przychodzą szybciej.

Jaki model wybrać

Wszystkie modele w sieci dostępne są w tej samej cenie, więc wybór dotyczy zachowania modelu, a nie budżetu. Poniżej znajduje się wynik testu tego samego zadania (odczyt pliku i znalezienie w nim błędu) wykonanego przez Codex na każdym z modeli.

ModelIdentyfikatorKontekstZachowanie w Codex
DeepSeek V4 Flashdeepseek-ai/DeepSeek-V4-Flash-0731380KOdpowiedź czysta i na temat, ze wskazaniem pliku i linii. Najdłuższy kontekst w sieci i limit odpowiedzi 32768 tokenów — zapas dla dużych repozytoriów
Kimi K2.6moonshotai/Kimi-K2.6200KNajbardziej zwięzła formuła z trzech, pewnie wywołuje narzędzia
MiniMax M2.7MiniMaxAI/MiniMax-M2.7200KRozwiązuje zadanie poprawnie, ale czasami wypowiada na głos tok rozumowania — w terminalu wygląda to bardzo obszernie

Domyślną rekomendacją jest DeepSeek V4 Flash: praca agentowa szybko napotyka ograniczenia objętości kontekstu, a 380K tokenów pozwala trzymać w pamięci wiele plików jednocześnie. Jeśli zależy Ci na maksymalnie krótkich odpowiedziach — wybierz Kimi K2.6. Model można zmienić jedną linią model w konfiguracji lub flagą -c model=… bez edycji pliku.

Aktualna lista modeli sieci jest zawsze dostępna pod adresem GET https://gate.joingonka.ai/v1/models.

Ile to kosztuje

Narzędzia agentowe zużywają tokeny inaczej niż czat: do każdej Twojej frazy Codex dodaje prompt systemowy i opis wszystkich narzędzi, a następnie prowadzi wieloetapowy dialog z modelem. W przykładowym teście proste zadanie „odczytaj plik i znajdź błąd” kosztowało około 18-20 tysięcy tokenów. To normalna cena za autonomię i właśnie dlatego cena za token ma kluczowe znaczenie.

Przez JoinGonka Gateway tokeny kosztują $0.0047 za milion na wejściu i $0.014 za milion na wyjściu — cena jest taka sama dla wszystkich modeli w sieci i jest pobierana na tej stronie z aktywnego źródła.

ScenariuszZużyciePrzez Gateway
Jednorazowe zadanie (odczyt pliku, znalezienie błędu)~20K tokenówułamek centa
Dzień aktywnej pracy3-7M tokenówokoło centa
Miesiąc aktywnego programowania~150M tokenówjednostki centów

Dla porównania — jak wyglądają płatne opcje u samego Codex oraz u konkurencji:

SposóbModel płatnościCo ogranicza
Subskrypcja ChatGPTstała kwota miesięcznielimity na liczbę zapytań i okna czasowe
Klucz OpenAI bezpośrednioza tokeny według cennika dostawcycena za milion tokenów rzędy wielkości wyższa
JoinGonka Gatewayza tokeny, saldozużycie widoczne w panelu, brak limitów na liczbę zapytań

Płatność następuje za faktyczne zużycie, bez miesięcznego abonamentu i bez limitów liczby zapytań: brak pięciogodzinnych okien, limitów „promptów” i mnożników w godzinach szczytu. Saldo zasilane jest kryptowalutą, stan konta i zużycie dzienne są widoczne w panelu użytkownika. Szczegółowa analiza ekonomiczna znajduje się w artykule o najtańszym API.

O czym pamiętać w pracy

Historię dialogu przechowuje sam Codex. Wysyła ją w całości z każdym zapytaniem i nie prosi serwera o zapamiętywanie czegokolwiek — my również nie przechowujemy korespondencji. Twój kod i prompt nie pozostają na bramce po udzieleniu odpowiedzi.

Wyszukiwanie w internecie działa. Codex ogłasza narzędzie wyszukiwania w każdym zapytaniu, a bramka je przyjmuje: wyszukiwanie odbywa się po naszej stronie, wyniki są wstrzykiwane do odpowiedzi modelu.

Narzędzia są własne, nie chmurowe. Codex wykonuje polecenia i czyta pliki lokalnie, na Twoim komputerze, więc dostęp do projektu nie zależy od dostawcy modelu.

Piaskownica (Sandbox). W systemie Linux Codex używa bubblewrap do izolacji uruchamianych poleceń. Jeśli nie ma go w systemie, Codex ostrzeże Cię i użyje wbudowanej kopii — nie wpływa to na działanie, ale pakiet wygodniej jest zainstalować za pomocą standardowego menedżera.

Jeśli potrzebujesz pracy z obrazami — zrzut ekranu interfejsu, schemat na zdjęciu — użyj do takich zadań narzędzia z modelem posiadającym funkcje wizyjne: w sieci Gonka modele są tekstowe. Dla kodu, poleceń i plików nie stanowi to ograniczenia.

Inne agenty terminalowe, jeśli Codex nie był odpowiedni: szybki start API pokazuje, jak w kilka minut podłączyć dowolne kompatybilne narzędzie.

Codex CLI to jedyny z masowych agentów, który obsługuje Responses API, dlatego przez długi czas był przywiązany do subskrypcji OpenAI. Zmiana dostawcy zajmuje pięć linii w config.toml: adres bramki, nazwa zmiennej z kluczem oraz wire_api = "responses". Następnie te same autonomiczne uruchomienia na Twoim kodzie rozlicza sieć Gonka według faktycznego zużycia tokenów, bez kwot i pięciogodzinnych okien. Uruchomienie na żywo potwierdziło pełny cykl agencyjny na wszystkich trzech modelach sieci; domyślnie warto wybrać DeepSeek V4 Flash — ma on najdłuższy kontekst.

Chcesz wiedzieć więcej?

Zapoznaj się z innymi sekcjami lub zacznij zarabiać GNK już teraz.

Uzyskaj klucz i darmowe tokeny →