Kredyty, limity użycia i optymalizacja kosztów Codeksa
ENZarządzanie kosztami Codeksa polega na tym, by limity planu, kredyty i wydatki na API wystarczyły na dłużej, dzięki kontroli czterech dźwigni: modelu i poziomu rozumowania (effort) w każdym zadaniu, kontekstu wysyłanego w każdej turze, liczby agentów działających bez nadzoru oraz ścieżki rozliczeń. /status, /usage, codex exec --json i OpenTelemetry pokazują, dokąd idzie zużycie.
Ta strona jest dla programisty lub tech leada, który odpowiada za Codeksa w zespole. Jest środa, tygodniowy limit prawie się skończył i nikt nie umie powiedzieć, czy winne było jedno długie zadanie w chmurze, nocna automatyzacja, czy to, że wszyscy uruchamiają GPT-6 Astra z wysokim poziomem rozumowania do rutynowych poprawek. Polecenia i klucze konfiguracji sprawdziliśmy 26 września 2026 r. na Codex CLI 0.157.1; fakty o modelach, planach i poziomach prędkości pochodzą ze stron OpenAI o modelach, cenniku i prędkości oraz z katalogu 0.162.1, odczytanych 12 października 2026 r. Politykę wydatków obejmującą wszystkich dostawców opisuje strona zarządzanie kosztami AI.
Co zyskasz, zarządzając kosztami Codeksa
Dział zatytułowany „Co zyskasz, zarządzając kosztami Codeksa”- Sposób, by widzieć zużycie dla sesji (
/status,/usage), dla przebiegu headless (codex exec --json) i dla zespołu (OpenTelemetry) - Politykę modelu i poziomu rozumowania zapisaną w profilach
config.toml, która kieruje rutynową pracę poza najdroższe ustawienie - Ustawienia kontekstu, dzięki którym tura nie wysyła ponownie instrukcji i wyników narzędzi, których nikt nie potrzebuje
- Wzorzec ograniczania przebiegów
codex execbez nadzoru, które nie mają flagi limitu wydatków - Test, który dowodzi, że tańsza konfiguracja nie obniżyła jakości: koszt zaakceptowanej zmiany, a nie sam koszt
Dokąd idzie zużycie Codeksa?
Dział zatytułowany „Dokąd idzie zużycie Codeksa?”Sposób logowania decyduje o tym, gdzie mierzy się zużycie i gdzie możesz je ograniczyć. Najpierw znajdź swój wiersz:
| Jak działa Codex | Gdzie widzisz zużycie | Co je ogranicza |
|---|---|---|
| Logowanie przez ChatGPT (tabela planów poniżej wymienia, co obejmuje każdy plan) | /status i /usage w CLI; baner limitu | Limity planu w oknach pięciogodzinnych i tygodniowych; potem kredyty lub reset limitu, jeśli twój plan je oferuje |
| Logowanie kluczem API OpenAI | Rozliczenia twojego konta API OpenAI | Płatność za tokeny według stawek API; ustaw alerty budżetowe na tym koncie |
| Codex z dostawcą Amazon Bedrock | Rachunek AWS | Mechanizmy budżetowe AWS |
Niezależnie od ścieżki zużycie napędzają te same cztery dźwignie:
- Model i poziom rozumowania. GPT-6.1 Sol jest domyślnym modelem wbudowanym od CLI 0.159.1 i działa z poziomem rozumowania
low, dopóki go nie podniesiesz. Własne opisy Codeksa przedstawiają GPT-6.1 Sol jako „Latest workhorse model for coding and everyday work”, GPT-6 Sol jako „Previous generation workhorse model”, a GPT-6 Luna jako „Fast and affordable model for easier tasks”. Tryb Fast dla GPT-6.1 Sol i dla Astry ma opis „2x speed, increased usage”. W GPT-6 Sol i GPT-6 Luna tryb Fast jest domyślnym poziomem usługi, a Codex opisuje go tylko jako „1.5x speed”; opis „increased usage” dotyczy trybu Fast w GPT-6.1 Sol i Astrze. Tryby Fast i Ultrafast mnożą też koszt tury: cennik OpenAI podaje Fast jako 2,5x zużycia wliczonego w plan albo 2x kredytów, a Ultrafast jako 8x zużycia wliczonego w plan albo 6x kredytów. - Kontekst w każdej turze. Każda tura wysyła ponownie łańcuch plików
AGENTS.md(doproject_doc_max_bytes, domyślnie 32 KiB), dotychczasową rozmowę i wyniki narzędzi, które w niej zostały. Okno kontekstu modelu w Codeksie ma domyślnie 272 tys. tokenów. - Agenci, na których nie patrzysz. Subagenci, automatyzacje i zadania w chmurze wykonują własne tury. Próby best-of-N w chmurze (
codex cloud exec --env <ENV_ID> --attempts N "<zadanie>") wykonują zadanie N razy. - Przebiegi bez nadzoru.
codex execw wersjach 0.157.1–0.162.1 nie ma flagi limitu wydatków (sprawdzone przezcodex exec --help26 września i 12 października 2026 r.), więc pętla w CI działa, dopóki nie skończy albo dopóki zadanie nie zostanie przerwane.
Który plan obejmuje Codeksa?
Dział zatytułowany „Który plan obejmuje Codeksa?”Cennik Codeksa od OpenAI (odczyt 2026-10-12) wymienia poniższe plany i stwierdza, że „ChatGPT Work and Codex share usage”. Ceny planów i porównanie cen narzędzi są w analizie kosztów, a ceny modeli za token na stronie modeli. Ta strona ich nie powtarza, bo zmieniają się częściej niż rady poniżej.
| Plan | Co strona cennika mówi o Codeksie |
|---|---|
| Free | „GPT-6 Luna at Standard speed in the desktop app, subject to rollout” |
| Go | To samo co w Free |
| Plus | Codex w przeglądarce, w CLI, w IDE i na iOS; integracje chmurowe; GPT-6.1 Sol i GPT-6 Luna; kredyty |
| Pro | „Pro plans currently have no five-hour limit”; Ultrafast jest w planie za 500 USD |
| Business | Dla co najmniej 2 użytkowników; szacunki zużycia dla standardowych miejsc Business są takie jak w Plus; tokeny dostępu do automatyzacji to funkcja Business i Enterprise |
| Enterprise i Edu | Przy elastycznych cenach „no fixed rate limits”; bez nich „the same per-seat usage limits as Plus for most features” |
| Klucz API OpenAI | Tylko CLI, SDK i IDE: „No cloud-based features” |
Dla miejsc Plus i standardowego Business strona szacuje lokalne wiadomości na pięć godzin: 5–45 dla GPT-6 Astra, 15–160 dla GPT-6.1 Sol, 15–150 dla GPT-6 Sol i 350–3000 dla GPT-6 Luna. OpenAI zastrzega, że to „are not fixed message limits” i że mogą obowiązywać także limity tygodniowe. Ten rozrzut tłumaczy, dlaczego polityka modelu poniżej ma znaczenie: ten sam limit starcza na znacznie mniej wiadomości Astry niż Luny.
Skonfiguruj widoczność kosztów Codeksa, a potem limity
Dział zatytułowany „Skonfiguruj widoczność kosztów Codeksa, a potem limity”-
Zapisz wersję CLI na każdej maszynie. Uruchom
codex --version./usagewymaga wersji 0.156.0 lub nowszej, a GPT-6 Sol i GPT-6 Luna wersji 0.155.0 lub nowszej. Osoby na różnych wersjach mogą nie pracować na tym samym modelu domyślnym (GPT-6 Astra stał się domyślny w 0.153.4, a GPT-6.1 Sol zastąpił go w 0.159.1), więc ich zużycia nie da się porównać, dopóki wersje się nie zgadzają. Wyrównaj wersje poleceniemcodex update. -
Odczytaj jedną sesję. W sesji
/statuspokazuje konfigurację sesji i zużycie tokenów, a w uprawnionych przestrzeniach roboczych (workspace) także szacowane kredyty lub koszt wątku (od 0.148.0)./usagepokazuje zużycie konta i proponuje reset limitu, jeśli jest dostępny (od 0.156.0). Według notatek do wydania 0.153.0 użytkownicy Plus i Team (w notatkach do wydania plan Business nazywa się jeszcze Team) dostają też wcześniejsze ostrzeżenie, gdy zostaje mniej niż połowa limitu. -
Mierz każdy przebieg headless. Zapisz strumień zdarzeń JSONL i zsumuj liczniki tokenów ze wszystkich zdarzeń
turn.completed:Okno terminala # Terminal or CI step. Prints tokens for one codex exec run.codex exec --json --ephemeral --sandbox workspace-write "Fix the failing test in tests/billing/" > events.jsonljq -s '[.[] | select(.type=="turn.completed") | .usage]| {input: (map(.input_tokens // 0) | add),cached: (map(.cached_input_tokens // 0) | add),output: (map(.output_tokens // 0) | add)}' events.jsonlNiski udział
cachedw długim przebiegu oznacza, że kontekst zmienia się w każdej turze i nic nie jest używane ponownie. Zwykle to znak, że zadanie było za szerokie.Profile uprawnień (
-c default_permissions=":workspace", beta) to preferowany przez OpenAI następca--sandbox; nie łącz obu mechanizmów. -
Eksportuj OpenTelemetry, by widzieć cały zespół. Codex czyta tabelę
[otel]zconfig.tomli emituje metrykicodex.turn.token_usage.*(wejście, cache, wyjście, suma) orazcodex.turn.cost_microusd, które we własnym backendzie podzielisz według osoby, modelu i poziomu rozumowania. W 0.157.1metrics_exporterma domyślnie wartośćstatsig, czyli wewnętrzne miejsce docelowe Codeksa, więc ustaw go jawnie. Pełną konfigurację i dashboard znajdziesz na stronie obserwowalność agentów. -
Wybierz limit dla swojego wiersza. W planie ChatGPT sufitem jest limit planu; ustal, kto może kupować kredyty lub używać resetu, i zapisz to. Przy kluczu API ustaw alerty budżetowe na koncie i daj każdemu potokowi CI osobny klucz, żeby wydatki jednego zadania były widoczne osobno. Przy Bedrocku użyj budżetów AWS. Ograniczenia dla całego zespołu (
requirements.toml, dozwolone serwery MCP, zarządzana konfiguracja) opisuje strona nadzór nad Codeksem w firmie.
Ustal politykę modelu i poziomu rozumowania w Codeksie
Dział zatytułowany „Ustal politykę modelu i poziomu rozumowania w Codeksie”Zasada, której ten serwis trzyma się wszędzie: zacznij od modelu domyślnego, dostrój poziom rozumowania, zanim zmienisz model, i zmieniaj model tylko wtedy, gdy twoje własne ewaluacje to uzasadniają. W Codeksie oznacza to GPT-6.1 Sol z domyślnym poziomem rozumowania low do pracy interaktywnej, wyższy poziom tylko w zadaniach, które go wymagają, GPT-6 Astra wybierany ręcznie do najtrudniejszej pracy oraz GPT-6 Luna do rutynowych zadań, gdy przejdą twoje testy.
| Zadanie | Model | Poziom rozumowania | Dlaczego |
|---|---|---|---|
| Codzienne edycje, testy, przeglądy, trudna praca agentowa w wielu plikach | GPT-6.1 Sol (domyślny) | low, podnoszony dla zadania przez /model | Najpierw dostrój poziom rozumowania na modelu domyślnym, dopiero potem zmień model; Codex opisuje go jako „Latest workhorse model for coding and everyday work” |
| Najtrudniejsza praca, wybierana ręcznie | GPT-6 Astra | low (jego domyślny), podnoszony dla zadania | OpenAI: „Choose Astra when a task needs the strongest capability across steps and tools”. Podpowiedź katalogu dla GPT-6.1 Sol to „near-Astra performance at a lower cost” w złożonej pracy (0.162.1) |
| Zmiany nazw, docstringi, poprawki lintera, triage | GPT-6 Luna | medium (jego domyślny) | Komunikat Codeksa o limicie poleca Lunę, gdy limit się kończy |
| GPT-5.6 Sol, Terra lub Luna w starych konfiguracjach | Przejdź na GPT-6 Sol lub GPT-6 Luna | — | Codex opisuje modele GPT-5.6 jako „Older” i proponuje migrację |
gpt-5.5 w starych konfiguracjach | Przejdź przed 2026-10-14 na aktualny model; podpowiedź migracji w katalogu 0.162.1 kieruje GPT-5.5 do GPT-6 Sol | — | GPT-5.5 znika z ChatGPT, ChatGPT Work i Codeksa 2026-10-14, we wszystkich planach (strona OpenAI o modelach, sprawdzona 2026-10-12); API OpenAI nie jest tym objęte |
Zapisz politykę w plikach, a nie na stronie wiki. codex --profile <nazwa> (lub -p) nakłada $CODEX_HOME/<nazwa>.config.toml na bazową konfigurację:
# ~/.codex/config.toml — interactive defaultmodel = "gpt-6.1-sol"model_reasoning_effort = "low"# ~/.codex/routine.config.toml — used with: codex -p routinemodel = "gpt-6-luna"model_reasoning_effort = "medium"Dla jednego przebiegu nadpisz model w wierszu poleceń: codex exec -m gpt-6-astra "Add tests for src/billing/invoice.ts". W sesji /model zmienia model i poziom rozumowania, a /fast przełącza tryb Fast w GPT-6.1 Sol, GPT-6 Astra, GPT-6 Sol i GPT-6 Luna (strona OpenAI o prędkości, odczyt 2026-10-12). /fast to polecenie dynamiczne: nie ma go na statycznej liście poleceń ukośnikowych w 0.162.1 (slash_command.rs w rust-v0.162.1, sprawdzone 2026-10-12), a Codex pokazuje je tylko wtedy, gdy bieżący model ma tryb Fast. OpenAI pisze: „If the current model doesn’t have a Fast tier, Codex won’t show /fast”, więc gdy go brakuje, przełącz się na model, który ten tryb ma. GPT-6 Sol i GPT-6 Luna działają w trybie Fast domyślnie (katalog 0.162.1 ustawia dla nich domyślny poziom usługi priority, który opisuje jako „1.5x speed”), a w GPT-6.1 Sol i Astrze katalog opisuje tryb Fast jako „2x speed, increased usage”. Fast zużywa wliczony limit w tempie 2,5x względem Standard, a kredyty w tempie 2x (strona cennika Codeksa OpenAI, odczyt 2026-10-12), więc wyłączaj go w pracy, na którą nikt nie czeka. Aby Fast był włączony między sesjami, ustaw w config.toml service_tier = "fast" i włącz fast_mode w [features], jak opisuje strona o prędkości (fast_mode jest stabilny i włączony w 0.162.1; przykłady w schemacie konfiguracji 0.162.1 to default, priority i flex, a fast schemat nazywa starszym identyfikatorem, który nadal działa).
Ultrafast to osobny poziom prędkości dla GPT-6 Astra i GPT-6.1 Sol (strona OpenAI o prędkości, odczyt 2026-10-12); OpenAI pisze, że Astra Ultrafast „generates tokens up to 8x faster than GPT-6 Astra in Standard mode in Codex”. W Codeksie wymaga planu Pro za 500 USD miesięcznie albo kwalifikującego się planu Enterprise lub Edu, a OpenAI zastrzega: „Other self-serve plans don’t have access… even with purchased credits”; w Enterprise jest domyślnie wyłączony. Ultrafast dla GPT-6.1 Sol trafił do Codeksa 2026-10-08, a dla Astry w tygodniu od 2026-09-28. Wbudowany katalog 0.162.1 zawiera tylko poziom Fast, więc ta strona nie podaje polecenia dla Ultrafast: zanim na nim zaczniesz polegać, sprawdź na stronie OpenAI o prędkości, jak udostępnia go twój klient.
Skróć kontekst, który Codex wysyła w każdej turze
Dział zatytułowany „Skróć kontekst, który Codex wysyła w każdej turze”Za kontekst płacisz w każdej turze, więc linia w AGENTS.md kosztuje więcej niż ta sama linia w prompcie.
-
Podziel
AGENTS.mdwedług zakresu. Codex łączy plikiAGENTS.mdod korzenia repozytorium do katalogu roboczego i przerywa po osiągnięciuproject_doc_max_bytes. W korzeniu trzymaj to, co obowiązuje wszędzie, zasady pakietu w pakiecie, a długie procedury przenieś do skilli (skills), które ładują się tylko wtedy, gdy są potrzebne. Metodę opisuje optymalizacja AGENTS.md. -
Wyłącz nieużywane serwery MCP i zawęź te, które zostają. Wyłączony serwer się nie uruchamia, a
enabled_toolsudostępnia tylko wskazane narzędzia. Duże wyniki narzędzi zostają w rozmowie, więctool_output_token_limitogranicza, ile z każdego wyniku zostaje w kontekście:# ~/.codex/config.toml (keys accepted by `codex exec --strict-config`, 0.157.1)tool_output_token_limit = 8000[mcp_servers.sentry]command = "npx"args = ["-y", "@sentry/mcp-server"]enabled = false # re-enable while debugging production[mcp_servers.linear]url = "https://mcp.linear.app/mcp"enabled_tools = ["READ_TOOL_1", "READ_TOOL_2"]codex mcp listpokazuje każdy serwer jakoenabledalbodisabled. ZastąpREAD_TOOL_1iREAD_TOOL_2nazwami narzędzi, które podaje sam serwer; nazwy różnią się między serwerami i zmieniają między wydaniami. Więcej technik opisuje strona ograniczanie kosztu tokenów MCP. -
Zaczynaj nową sesję dla każdego zadania. Wątek, który niesie wczorajszą pracę, wysyła ją ponownie w każdej turze. Użyj
/compact, gdy musisz kontynuować długi wątek, a nowej sesji, gdy zmienia się zadanie. -
Zawężaj zadanie, nie tylko model. „Zrefaktoryzuj uwierzytelnianie” oznacza czytanie całej usługi; „zmień
src/middleware/auth.ts, by przyjmował JWT, zachowaj interfejs, uruchomtests/auth/” oznacza trzy pliki.
Ogranicz przebiegi Codeksa bez nadzoru
Dział zatytułowany „Ogranicz przebiegi Codeksa bez nadzoru”Automatyzacje, zadania w chmurze i zadania CI nie mają człowieka, który pilnuje liczby tur. Ponieważ codex exec w 0.157.1 nie ma limitu wydatków, ogranicz go z zewnątrz:
# CI step. OPENAI_API_KEY comes from the CI secret store, never from the file.timeout 20m codex exec --json --ephemeral --sandbox workspace-write \ -m gpt-6-sol "Fix the failing unit tests in tests/billing/. Change nothing outside src/billing/ and tests/billing/." \ > events.jsonl# Uncached input + output: the part that grows when context churns; cached input is billed too, at a discount.UNCACHED=$(jq -s '[.[] | select(.type=="turn.completed") | .usage | ((.input_tokens // 0) - (.cached_input_tokens // 0) + (.output_tokens // 0))] | add // 0' events.jsonl)if [ "$UNCACHED" -gt 2000000 ]; then echo "Uncached input + output tokens $UNCACHED over this job's budget"; exit 1; fiPróg oznacza zadanie jako nieudane dopiero po fakcie, ale to wystarczy, żeby zadanie, które wymknęło się spod kontroli, nie powtarzało się co noc. Wyznacz go z mediany ostatnich 20 przebiegów, a nie na oko. Twardym zatrzymaniem jest limit czasu samego zadania (na przykład timeout-minutes w GitHub Actions). Wzorce headless opisuje strona Codex w trybie nieinteraktywnym.
Pozostałe ścieżki bez nadzoru:
- Automatyzacje. Uruchamiaj raporty codziennie, nie co godzinę, chyba że ktoś czyta je co godzinę. Zawężaj prompt do „plików zmienionych w ciągu ostatnich 24 godzin”, a nie do „całego kodu”. Zobacz automatyzacje Codeksa.
- Zadania w chmurze. Używaj
--attemptswiększego niż 1 tylko wtedy, gdy naprawdę porównasz próby; inaczej płacisz za pracę, którą wyrzucasz. Zobacz środowiska chmurowe. - Długie zadania
/goal.[goals] max_goal_token_budgetustala budżet tokenów dla celu, a od 0.151.0 wliczają się do niego tokeny zużyte przez zagnieżdżonych subagentów. Ustaw go przed zadaniem, które ma trwać godzinami.
Jak udowodnić, że oszczędności nie obniżyły jakości?
Dział zatytułowany „Jak udowodnić, że oszczędności nie obniżyły jakości?”Tańsze przebiegi, które generują więcej poprawek, kosztują więcej. Mierz koszt zaakceptowanej zmiany: tokeny lub kredyty zużyte przez zadanie podzielone przez zmiany, które trafiły do gałęzi głównej i nie zostały wycofane. Metodę, łącznie z licencjami i czasem review, opisuje strona ekonomia oprogramowania budowanego przez agentów.
Zmianę routingu udowadniaj bramkami, które już masz, a nie czytaniem każdego diffa:
- Wybierz 10 zadań, które Codex wykonał w zeszłym miesiącu i które zostały czysto scalone razem z testami.
- Uruchom każde ponownie na tańszym ustawieniu (na przykład
codex exec -p routine --sandbox workspace-write) w świeżym worktree. - Policz, ile przechodzi te same bramki: testy, sprawdzenie typów, linter i
codex reviewwzględem gałęzi bazowej. - Przyjmij tańsze ustawienie dla danego typu zadań tylko wtedy, gdy przechodzi co najmniej tyle samo bramek co oryginał. Tabelę routingu zatwierdza tech lead; programista może podnieść poziom rozumowania dla pojedynczego zadania bez pytania.
Powtórz porównanie, gdy pojawi się nowy model; cały proces opisuje plan oceny nowego modelu.
Kiedy kontrola kosztów Codeksa zawodzi
Dział zatytułowany „Kiedy kontrola kosztów Codeksa zawodzi”| Objaw | Prawdopodobna przyczyna | Co zrobić |
|---|---|---|
| Tygodniowy limit znika do środy | Szerokie zadania eksploracyjne, wysoki poziom rozumowania w każdym zadaniu albo włączony tryb Fast (zużywa wliczony limit w tempie 2,5x względem Standard; strona cennika OpenAI, odczyt 2026-10-12) | Sprawdź /status w najcięższych wątkach, podziel zadania, ustawiaj poziom rozumowania dla zadania i wyłącz tryb Fast przez /fast w pracy w tle (Codex pokazuje /fast tylko wtedy, gdy bieżący model ma tryb Fast) |
| Jedna osoba zużywa limit szybciej niż reszta | Starsze CLI z innym modelem domyślnym albo rozbudowana prywatna konfiguracja MCP | Porównaj codex --version i codex mcp list z konfiguracją kolegi |
| Liczba tokenów zadania CI podwaja się z dnia na dzień | Zmiana promptu poszerzyła zakres albo niestabilny test wpędza agenta w pętlę | Porównaj prompty, przeczytaj elementy command_execution w events.jsonl i zostaw próg tokenów na miejscu |
| OpenTelemetry nie pokazuje kosztów Codeksa | metrics_exporter został na wartości domyślnej | Ustaw eksporter jawnie i sprawdź, czy codex.turn.cost_microusd dociera z jednego przebiegu, zanim zbudujesz panele. Przebiegi headless codex exec mogą nie emitować metryk OTel (openai/codex#12913, niepotwierdzone w 0.157.1): źródłem prawdy dla CI zostaje suma tokenów z JSONL z kroku 3 |
| Zużycie wygląda na niskie, a faktura jest wysoka | Przebiegi na kluczu API lub Bedrocku są rozliczane poza widokiem planu ChatGPT | Spisz wszystkie klucze i dostawców w użyciu; daj każdemu potokowi CI własny klucz |
| Zadania kierowane do Luny wracają z review | Ten typ zadań wymaga więcej rozumowania, niż daje Luna | Przenieś ten typ zadań z powrotem na GPT-6 Sol i powtórz porównanie na 10 zadaniach |
Następne kroki
Dział zatytułowany „Następne kroki”- Codex w produkcji: pozostałe sygnały operacyjne i miejsce tej strony wśród nich
- Obserwowalność agentów: konfiguracja OpenTelemetry stojąca za widokiem zespołu
- Zarządzanie kosztami AI: budżety i przypisywanie kosztów dla Codeksa, Claude Code i Cursora
- Optymalizacja kosztów kontekstu: techniki skracania kontekstu wspólne dla wszystkich narzędzi
- Kontrola kosztów Claude Code: to samo zadanie w Claude Code, łącznie z limitem
--max-budget-usd