← Wszystkie wpisy

Instalacja i aktualizacja Codex CLI: Mac, Linux, Windows

Z przewodnika: Codex CLI Comprehensive Guide

Instalacja OpenAI Codex CLI to jedno polecenie na platformę – curl -fsSL https://chatgpt.com/codex/install.sh | sh na macOS i Linuksie, powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex" na Windows – z npm i Homebrew jako wspieranymi alternatywami, a aktualizacja to codex update, które rozpoznaje instalacje ze skryptu, npm i Homebrew i uruchamia upgrade właściwy dla danego kanału.1411 Część, którą większość stron pomija, zaczyna się po pierwszym poleceniu: którą z pięciu ścieżek instalacji wybrać, jak przypiąć wersję, gdy nowe wydanie coś psuje, dlaczego pakiet winget odstaje od npm o dni, a nawet tygodnie i co po odinstalowaniu zostaje w ~/.codex. Ta strona jest tym odniesieniem: jedna tabela na zadanie, aktualna na v0.163.0 (15 października 2026).9

Zaktualizowano 15 października 2026 dla v0.163.0. Od wrześniowej wersji tej strony zmieniły się cztery rzeczy. Indeks winget ruszył: po lecie, w którym wnioski z manifestami czekały tygodniami, dwanaście wniosków od 0.156.0 do 0.161.0 scalono w ciągu doby od otwarcia, ale wnioski dla 0.162.0 i 0.162.1 czekają od 8 i 9 października, więc 15 października winget był trzy wydania za npm, wobec czternastu (0.147.0 do 0.153.4) 6 września.310 Wydania dla Windows zawierają podpisany install.ps1 (jego sprawdzanie SHA-256 jest starsze; v0.162.0 naprawiło je w Windows PowerShell).18 Windows zyskał też trzecią implementację piaskownicy, Microsoft Execution Containers, z dwoma wrześniowymi trybami jako zapasowymi.8 A serwer w tle, który Codex uruchamia teraz domyślnie dla kwalifikujących się sesji interaktywnych, ma własny aktualizator, który przy starszych instalacjach ze skryptu może przestawić pakiet samego CLI.20 Każdy punkt odniesienia dotyczący instalacji, aktualizacji i przypinania poniżej odczytano ponownie 15 października; odczyt codex doctor pochodzi z 0.153.4.910

TL;DR

  • Samodzielny instalator to ścieżka, którą OpenAI stawia na pierwszym miejscu zarówno w README, jak i w dokumentacji CLI, a npm i Homebrew są przedstawiane jako alternatywy („you can also install” w dokumentacji CLI, „can also be installed via” w README): skrypt install.sh na macOS i Linuksie, skrypt install.ps1 na Windows. Pobiera skompilowany plik binarny, więc nie potrzebuje Node’a.111
  • npm i Homebrew to wspierane alternatywy. npm install -g @openai/codex przypina wersję zwykłą specyfikacją pakietu (@<version>); brew install --cask codex było w chwili pisania na tym samym 0.163.0 co npm; cask podbito trzynaście minut po wydaniu.1210
  • winget działa, z opóźnieniem od dni do tygodni. OpenAI publikuje pakiet OpenAI.Codex. Po lecie, w którym pull requesty z manifestami tygodniami leżały niescalone, dwanaście od 0.156.0 (22 września 2026) do 0.161.0 (7 października) scalono, każdy w ciągu doby od otwarcia; potem wnioski dla 0.162.0 i 0.162.1 utknęły, otwarte od 8 i 9 października. 15 października najnowszą instalowalną wersją była 0.161.0 wobec 0.163.0 w npm, czyli trzy stabilne wydania w tyle, a wniosek dla 0.163.0 również był otwarty.310
  • codex update obejmuje instalacje ze skryptu, npm i Homebrew (v0.128.0 i nowsze): wykorzystuje wykrywanie kanału instalacji, które TUI już ma, i uruchamia pasujący upgrade. Instalacja przez winget nie jest kanałem, który rozpoznaje; tę aktualizuj przez winget upgrade OpenAI.Codex. Ręczne odpowiedniki dla pozostałych to ponowne uruchomienie instalatora, npm install -g @openai/codex@latest albo brew upgrade --cask codex.411
  • Serwer w tle uruchamia aktualizator, a przy starszych instalacjach ze skryptu może przestawić Twoje CLI. Od v0.157.0 (25 września 2026 UTC) Codex domyślnie uruchamia zarządzany serwer w tle dla kwalifikujących się sesji interaktywnych. Gdy instalator wybrał kanał latest, ten serwer sprawdza aktualizacje pięć minut po starcie, a potem co godzinę, uruchamiając instalator; nowy daemon mieszka w ~/.codex/packages/app-server-daemon, ale daemon uruchomiony po raz pierwszy ze starszej instalacji ze skryptu dalej używa ~/.codex/packages/standalone/current, czyli własnego pakietu CLI. Przełącznikiem jest "updater": { "autoUpdateEnabled": false } w ~/.codex/app-server-daemon/settings.json, stosowany przez codex app-server daemon restart.2012
  • Przypinaj wersję przez --release <version> w install.sh, $env:CODEX_RELEASE przed linią install.ps1 albo @<version> w npm. Cask Homebrew śledzi jedną bieżącą wersję i nie umie przypinać.212
  • Odinstalowanie pakietu nie usuwa Twojego stanu, ale przy instalacji ze skryptu rm -rf ~/.codex usuwa także samo CLI, bo instalator trzyma wydania w ~/.codex/packages/standalone.12

Jak zainstalować Codex CLI?

Cztery ścieżki w kolejności, w jakiej przedstawia je własna dokumentacja OpenAI,111 plus winget na Windows, którego OpenAI nie dokumentuje:3

# Standalone installer, no Node required (macOS, Linux, WSL) -- the route OpenAI lists first
curl -fsSL https://chatgpt.com/codex/install.sh | sh

# Windows PowerShell
powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex"

# npm (needs Node.js 16+; pins with a plain @version spec)
npm install -g @openai/codex

# Homebrew (macOS, Linux)
brew install --cask codex

# winget (Windows; lags npm, see the platform section)
winget install OpenAI.Codex

Potem potwierdź, że instalacja się udała, i zaloguj się:

codex --version      # codex-cli 0.163.0
codex login          # ChatGPT account (recommended) or an API key

Przy pierwszej instalacji ze skryptu blok w profilu działa dopiero w nowych powłokach. Jeśli w terminalu, z którego instalowałeś, codex nie jest znajdowany, uruchom tam export PATH="$HOME/.local/bin:$PATH" albo otwórz nowy terminal; instalator wypisuje na koniec te same dwie linie („Current terminal” i „Future terminals”).12

Wolisz surowy plik binarny? Każde wydanie na GitHubie zawiera tarballe dla platform (codex-aarch64-apple-darwin.tar.gz, codex-x86_64-apple-darwin.tar.gz, codex-x86_64-unknown-linux-musl.tar.gz, codex-aarch64-unknown-linux-musl.tar.gz), a od v0.106.0 ten sam install.sh jest dołączany do każdego wydania jako zasób. Każde archiwum zawiera jeden wpis z nazwą platformy wpisaną w nazwę pliku, więc po rozpakowaniu zmień jego nazwę na codex.15 Wokół tych tarballi strona wydania się rozrosła: pliki .zst i macOS-owe .dmg obok każdego pliku binarnego; pakiety codex-package-<target>.tar.gz z plikiem binarnym, pomocnikiem codex-code-mode-host i ripgrepem, które pobierają instalator i cask Homebrew; pliki binarne codex-app-server i codex-responses-api-proxy; oraz wheele Pythona openai_codex_cli_bin, które są przypiętym środowiskiem uruchomieniowym dla Python SDK od OpenAI, a nie drogą do CLI przez pip.512

Instalator pobiera z infrastruktury wydań hostowanej przez OpenAI: chatgpt.com/codex/install.sh przekierowuje do releases.openai.com, zmiana, która weszła w v0.146.0, a GitHub Releases pozostaje hostem zapasowym.6 W sieci, która blokuje lub dławi hosta artefaktów OpenAI, ale przepuszcza GitHuba, pobierz skrypt z zasobu wydania i każ mu pobrać plik binarny również z GitHuba:112

curl -fsSL https://github.com/openai/codex/releases/latest/download/install.sh | CODEX_INSTALLER_USE_RELEASES_OPENAI_COM=false sh

Zmienna idzie po stronie sh potoku. Forma VAR=value curl ... | sh stosuje zmienną tylko do curl, więc skrypt nigdy jej nie widzi i po cichu zostaje przy domyślnym ustawieniu. W PowerShellu ustaw $env:CODEX_INSTALLER_USE_RELEASES_OPENAI_COM = 'false' przed uruchomieniem linii instalacyjnej.

Którą ścieżkę wybrać?

Jesteś na Użyj Dlaczego
macOS lub Linux skryptu instalacyjnego Ścieżka, którą dokumentacja OpenAI wymienia jako pierwszą; pobiera plik binarny, bez Node’a na maszynie11
Windows skryptu PowerShell Natywny PowerShell z piaskownicą Windows; WSL jest opcjonalny811
Dowolnej maszynie, na której przypinasz wersje w skryptach npm install -g @openai/codex@<version> Przypina jako specyfikację pakietu, więc wersja żyje w Twoim Dockerfile albo skrypcie provisioningu, a nie we fladze10
macOS lub Linux, gdzie Homebrew zarządza już wszystkim innym brew install --cask codex 15 października ta sama wersja co w npm (cask podbito trzynaście minut po wydaniu), bez zależności od Node’a, brew upgrade utrzymuje aktualność2
Windows, zarządzanym pakietami winget install OpenAI.Codex Jeśli opóźnienie względem npm jest do przyjęcia: 15 października trzy wydania3

Które platformy obsługuje Codex?

Platforma Status
macOS, Apple silicon i Intel Obsługiwane; pliki binarne dla obu1
Linux, x86_64 i arm64 Obsługiwane; pliki binarne dla obu1
Windows 11 Zalecana baza; MXC pojawiło się w 24H2 (kompilacja 26100.9278) i 25H2 (kompilacja 26200.9278) i jest wdrażane stopniowo, więc warto je przetestować sprawdzeniem jednym poleceniem8
Windows 10, wersja 1809 lub nowsza Wsparcie w miarę możliwości (wymagana obsługa konsoli ConPTY)8
Starszy Windows 10 Niezalecane: brak komponentów konsoli8
WSL2 Opcjonalnie; strona OpenAI o WSL uruchamia ten sam skrypt instalacyjny z powłoki WSL14

Na Windows Codex działa natywnie w PowerShellu z piaskownicą Windows, a od października 2026 istnieją trzy jej implementacje. Najnowsza to Microsoft Execution Containers (MXC), izolacja procesów, którą Microsoft wprowadził w Windows 11 24H2 i 25H2: aplikacja desktopowa preferuje ją dla kont konsumenckich, gdy urządzenie ją obsługuje, a CLI używa jej, gdy w [features] ustawiono prefer_mxc = true, ze starszymi trybami jako zapasowymi, albo gdy [windows] sandbox = "mxc" wybiera ją jawnie, i wtedy przy braku tej możliwości lub blokadzie przez zasady kończy się błędem, zamiast przejść na tryb zapasowy; od v0.162.0 test jednym poleceniem (codex -c windows.sandbox=mxc sandbox ..., oczekiwane wyjście MXC_OK) sprawdza ją bez zmiany zapisanego wyboru. Dwa wcześniejsze tryby są teraz starszymi trybami zapasowymi. elevated jest preferowany: używa dedykowanych użytkowników piaskownicy o obniżonych uprawnieniach, granic uprawnień systemu plików, reguł zapory i zmian lokalnych zasad, i wymaga konfiguracji zatwierdzonej przez administratora. unelevated uruchamia polecenia z ograniczonym tokenem Windows wyprowadzonym z Twojego użytkownika i granicami systemu plików opartymi na ACL, przy słabszej izolacji sieciowej.8 Tryb zapasowy wybierasz w config.toml:

[windows]
sandbox = "elevated"   # or "unelevated"; "mxc" selects the containers explicitly

Wytyczne OpenAI mówią, by domyślnie używać natywnej piaskownicy, a WSL wybierać, gdy potrzebujesz narzędzi natywnych dla Linuksa, gdy Twój przepływ pracy i tak żyje w WSL2 albo gdy żadna z natywnych implementacji piaskownicy Windows nie spełnia Twoich potrzeb.8 Jedna rzecz do rozróżnienia: konfiguracja Windows zakłada obecność winget na maszynie na potrzeby własnych kroków konfiguracyjnych; to coś innego niż instalowanie Codeksa przez winget. OpenAI publikuje ten pakiet – przepływ wydań ma zadanie winget, które otwiera pull request z manifestem w microsoft/winget-pkgs dla wydań stabilnych – a letni zastój indeksu się skończył, choć nie na dobre. Daty są tu w UTC. Wnioski dla 0.148.0 do 0.152.0, otwarte między 18 sierpnia a 1 września, scalono 11 września (0.151.0 30 września, a 0.149.1 1 października); wniosek dla 0.147.0 zamknięto bez scalenia, podobnie jak zgłoszenie 0.154.0 od członka społeczności, a przepływ OpenAI nie otworzył żadnego dla 0.152.1 ani dla 0.153.x do 0.155.x; od 0.156.0 (22 września) do 0.161.0 (7 października) dwanaście manifestów z rzędu scalono w ciągu doby od otwarcia; potem wnioski dla 0.162.0 i 0.162.1 utknęły, otwarte od 8 i 9 października. 15 października indeks zawierał 138 wersji, najnowszą 0.161.0, trzy stabilne wydania za npm, a wniosek dla 0.163.0 również był otwarty. Z CLI nic się nie zepsuło; pakiet odstaje o dni, a nawet tygodnie.38

Node.js jest wymagany tylko na ścieżce npm. Skrypty instalacyjne pobierają skompilowany plik binarny, a cask Homebrew nie deklaruje żadnych zależności.12

Jak zaktualizować Codex CLI?

CLI, którego używasz, nie aktualizuje się samo, chyba że ten sam pakiet obsługuje aktualizator serwera w tle (starsze instalacje ze skryptu, których serwer uruchomiono z packages/standalone, o czym niżej). TUI zauważa nowsze wydanie i proponuje polecenie dla Twojego kanału instalacji; uruchomienie należy do Ciebie, a wbudowane polecenie obejmuje instalacje ze skryptu, npm i Homebrew.4 Samo sprawdzanie przy starcie to klucz konfiguracji: check_for_update_on_startup = false w config.toml, który dokumentacja opisuje jako „Check for Codex updates on startup (set to false only when updates are centrally managed)”; floty zarządzające aktualizacjami centralnie ustawiają features.in_app_updates = false w requirements.toml.16

codex --version                      # what you run now
npm view @openai/codex version       # newest published

codex update                         # built-in, v0.128.0+; detects your install channel

codex update pojawiło się w v0.128.0 30 kwietnia 2026; pull request, który je dodał, wykorzystał wykrywanie kanału instalacji i mechanizm uruchamiania aktualizacji, których TUI już używało do podpowiedzi o aktualizacjach. Mapa kanałów obejmuje npm (plus warianty bun, pnpm i Vite+), Homebrew oraz samodzielny instalator na Uniksie i Windows; instalacji przez winget w niej nie ma, więc Codex zainstalowany przez winget aktualizuje się wyłącznie przez winget upgrade OpenAI.Codex. Przy ponownym odczycie 15 października mapa ma jeden nowy wpis, akcję daemona, która zastępuje lokalny serwer w tle po przywróceniu terminala, a jej polecenia dla samodzielnego instalatora uruchamiają teraz instalator z CODEX_NON_INTERACTIVE=1; winget nadal jest nieobecny.4 Ręczne odpowiedniki, jeśli je wolisz albo skryptujesz obraz maszyny:

curl -fsSL https://chatgpt.com/codex/install.sh | sh   # standalone: re-run the installer
npm install -g @openai/codex@latest                    # npm
brew upgrade --cask codex                              # Homebrew
winget upgrade OpenAI.Codex                            # winget (to whatever winget has)
irm https://chatgpt.com/codex/install.ps1 | iex           # standalone on Windows: re-run the installer

Wydania spływają szybką linią stabilną – 0.160.0 do 0.163.0, sześć stabilnych wydań, wyszły między 1 a 15 października 2026 – więc odstęp między „tym, co mam” a „najnowszym” to często tydzień, nie kwartał.9

Serwer w tle aktualizuje się sam

Serwer w tle to jedyna rzecz, która pobiera nowe pliki binarne według harmonogramu. Od v0.157.0 (25 września 2026 UTC) Codex domyślnie uruchamia zarządzany serwer w tle dla kwalifikujących się sesji interaktywnych, a gdy instalator wybrał stabilny kanał latest, ten serwer uruchamia odłączoną pętlę aktualizatora: sprawdza ona aktualizacje pięć minut po starcie, a potem co godzinę, za każdym razem uruchamiając instalator, a działający serwer restartuje się na nowym pliku binarnym. Daemon zainstalowany na 0.163.0 mieszka we własnym pakiecie, ~/.codex/packages/app-server-daemon (tryb CODEX_INSTALL_DAEMON_ONLY=1 instalatora, który zostawia w spokoju polecenie CLI użytkownika i konfigurację jego powłoki), ale daemon uruchomiony po raz pierwszy ze starszej instalacji ze skryptu dalej używa ~/.codex/packages/standalone/current, a jego zaplanowane aktualizacje przestawiają ten pakiet, czyli CLI, które wpisujesz (przy instalacjach starszych niż znacznik kanału w instalatorze dopiero po następnej instalacji latest, którą wykonuje codex update; do tego czasu daemon działa bez aktualizacji). Przypięte wydanie zostaje przypięte: instalator zapisuje znacznik auto-update-version tylko przy instalacji latest i usuwa go przy jawnie wskazanym wydaniu, a jego własny komentarz formułuje regułę: „Scheduled updates still require the selected release to follow the latest channel.” Przełącznikiem dla użytkownika jest "updater": { "autoUpdateEnabled": false } w ~/.codex/app-server-daemon/settings.json, obok którego stoi updateIntervalMinutes; codex app-server daemon restart stosuje stan włączenia, a zmieniony interwał zaczyna obowiązywać przy następnym oczekiwaniu; codex app-server daemon stop zatrzymuje serwer (najpierw łagodne żądanie zakończenia, potem wymuszone po upływie okresu karencji; pętla aktualizatora to osobny proces z własnym plikiem pid, więc potem sprawdź, czy nie działa dalej), /daemon w TUI go restartuje (v0.163.0), a te aktualizacje respektują politykę sieciową aplikacji (v0.163.0). Jawne codex app-server daemon update wybiera najnowsze stabilne wydanie nawet przy wyłączonych aktualizacjach automatycznych i, gdy instalator i wydanie będą to obsługiwać, przenosi starszy daemon do jego własnego katalogu głównego pakietu; przywraca też przypięty pakiet do produkcyjnej puli aktualizacji (samo ustawienie aktualizacji automatycznych zostaje zachowane) i restartuje działający serwer, co może przerwać aktywną lub zakolejkowaną pracę; zatrzymany serwer pozostaje zatrzymany. Własne README daemona określa go jako eksperymentalny.2012

Jak zainstalować konkretną wersję?

npm i skrypt instalacyjny przypinają po wersji; Homebrew nie:212

npm install -g @openai/[email protected]                                          # npm: exact version
curl -fsSL https://chatgpt.com/codex/install.sh | sh -s -- --release 0.162.1  # script: --release flag
curl -fsSL https://chatgpt.com/codex/install.sh | CODEX_RELEASE=0.162.1 sh    # script: env var, on the sh side
winget install OpenAI.Codex --version 0.161.0                                 # winget: only what it has
codex --version                                                               # verify the rollback took

Uważaj na położenie w formie ze zmienną środowiskową: CODEX_RELEASE=0.162.1 musi stać przed sh, po potoku. Napisane przed curl dotyczy tylko curl, a skrypt instaluje latest, podczas gdy Ty sądzisz, że przypiąłeś wersję.12 Na Windows skrypt PowerShell deklaruje $Release = $env:CODEX_RELEASE jako swój jedyny parametr i wraca do latest, gdy jest pusty, więc przypięciem jest ta zmienna, ustawiona w tej samej sesji:17

$env:CODEX_RELEASE = '0.162.1'; irm https://chatgpt.com/codex/install.ps1 | iex

Potem ją wyczyść (Remove-Item Env:CODEX_RELEASE): zmienna pozostaje ustawiona do końca tej sesji, a późniejsze uruchomienie instalatora w niej, łącznie z tym, które uruchamia codex update, dziedziczy przypięcie.17

npm ma też dist-tag alpha dla linii przedpremierowej (0.163.0-alpha.11 15 października, opublikowane 14 października UTC, prawie dwa dni przed stabilnym 0.163.0); npm install -g @openai/codex@alpha za nim podąża, a od v0.161.0 opublikowanie starszej wersji alpha lub hotfixa nie cofa już tego tagu.1021

Przypinanie to właściwy ruch, gdy wydanie coś Ci psuje: zgłoś issue, przypnij ostatnią dobrą wersję, idź dalej. Po każdym przypięciu sprawdź codex --version, bo druga instalacja gdzie indziej na PATH po cichu dalej serwuje własny plik binarny. Skrypt instalacyjny sprawdza dokładnie to: gdy znajdzie na Twoim PATH codex zarządzany przez Homebrew, npm albo bun, ostrzega „Multiple managed Codex installs can be ambiguous because PATH order decides which one runs” i proponuje, że uruchomi za Ciebie pasujące odinstalowanie; przypadek Homebrew rozpoznaje po prefiksach macOS /opt/homebrew i /usr/local, i to tylko na macOS, więc codex z Linuxbrew nie zostanie wykryty.12 codex doctor raportuje ten sam stan po fakcie pod Environment.7

Jak odinstalować Codex CLI?

Najpierw zatrzymaj serwer w tle, póki codex jest jeszcze na Twoim PATH, a potem usuń Codeksa tą ścieżką, którą instalowałeś:

codex app-server daemon stop     # first; skip if no server runs
npm uninstall -g @openai/codex
brew uninstall --cask codex
winget uninstall OpenAI.Codex

Instalacja ze skryptu nie ma menedżera pakietów, którego można by zapytać. Instalator umieszcza w ~/.local/bin dowiązanie symboliczne codex (nadpisywane przez CODEX_INSTALL_DIR), które wskazuje na plik binarny wewnątrz ~/.codex/packages/standalone/current (current/bin/codex w bieżących wydaniach); current samo jest dowiązaniem do ~/.codex/packages/standalone/releases/, gdzie leży każde pobrane wydanie. Na macOS instalator dodaje obok pierwszego drugie dowiązanie, codex-code-mode-host.12 Od v0.157.0 może też istnieć serwer w tle: jego pakiet w ~/.codex/packages/app-server-daemon (albo, dla serwera uruchomionego po raz pierwszy ze starszej instalacji, sam pakiet standalone) i jego stan w ~/.codex/app-server-daemon/ (settings.json, daemon.pid i daemon-updater.pid, albo app-server.pid i app-server-updater.pid dla serwera działającego z pakietu standalone, oraz daemon.lock).20 Najpierw go zatrzymaj, a potem usuń to wszystko:

codex app-server daemon stop                                 # the background server; its updater is a separate process
pgrep -fl "app-server" || true                               # what is still running
grep -H . ~/.codex/app-server-daemon/*.pid 2>/dev/null       # the recorded pids, by file

Serwer działa jako codex app-server --listen unix://, z --remote-control przed --listen, gdy zdalne sterowanie jest włączone (argument nasłuchu to sam schemat; w wierszu poleceń nie pojawia się żadna ścieżka gniazda), a jego aktualizator jako codex app-server daemon pid-update-loop; pliki pid w ~/.codex/app-server-daemon/ rozstrzygają, który proces należy do serwera w tle: daemon.pid i daemon-updater.pid dla dedykowanego daemona, app-server.pid i app-server-updater.pid dla serwera działającego z pakietu standalone. stop kończy serwer, ale nie aktualizator, który dalej budzi się co interwał aż do ponownego uruchomienia systemu, więc jeśli proces o zapisanym tam pid nadal żyje, zakończ go teraz przez kill <pid>; każdy inny proces codex app-server należy do czegoś innego, co uruchamiasz. Potem usuń resztę:1220

rm -f ~/.local/bin/codex ~/.local/bin/codex-code-mode-host   # the second link exists on macOS installs only
rm -rf ~/.codex/packages/standalone ~/.codex/packages/app-server-daemon   # the CLI's package and the server's
rm -rf ~/.codex/app-server-daemon                            # the server's settings, pid files and lock

Jeśli ~/.local/bin nie było na Twoim PATH w chwili instalacji albo instalator znalazł konkurencyjną instalację Homebrew, npm lub bun i przepisał wpis, skrypt dopisał też oznaczony blok do profilu Twojej powłoki: od # >>> Codex installer >>> do # <<< Codex installer <<< w ~/.zprofile (zsh na macOS), ~/.bash_profile (bash na macOS), ~/.zshrc (zsh na Linuksie), ~/.bashrc (bash na Linuksie) lub ~/.profile (każda inna powłoka). Usuń te trzy linie, żeby skończyć.12

Na Windows install.ps1 zachowuje ten sam układ pod %USERPROFILE%\.codex\packages\standalone (albo %CODEX_HOME%\packages\standalone, jeśli ustawiłeś tę zmienną): pobrane wydania w releases\, junction current wskazujący na aktywne. Udostępnia codex.exe przez %LOCALAPPDATA%\Programs\OpenAI\Codex\bin (nadpisywane przez CODEX_INSTALL_DIR), który sam jest junction do current\bin, a zamiast bloku w profilu wpisuje tę ścieżkę bin do Twojego użytkownikowego PATH dla przyszłych sesji PowerShella. Serwer w tle trzyma tam te same dwa foldery, packages\app-server-daemon i app-server-daemon.1720 Zatrzymaj go, usuń katalog standalone i oba foldery serwera, potem wiszący już junction bin, a na koniec wyjmij wpis ze zmiennej użytkownika Path w Zmiennych środowiskowych:17

codex app-server daemon stop                                                  # the background server; its updater is a separate process
Get-Process codex* -ErrorAction SilentlyContinue                              # what is still running
Get-ChildItem "$env:USERPROFILE\.codex\app-server-daemon\*.pid" -ErrorAction SilentlyContinue | ForEach-Object { "$($_.Name): $(Get-Content $_)" }   # the recorded pids, by file

Tu decydują te same pliki pid: jeśli proces, którego pid zapisano w %USERPROFILE%\.codex\app-server-daemon\daemon.pid lub daemon-updater.pid (albo w app-server.pid i app-server-updater.pid dla serwera na pakiecie standalone), nadal żyje, zakończ go teraz przez Stop-Process -Id <pid>; każdy inny proces Codeksa to coś innego, co uruchamiasz. Potem usuń resztę:20

Remove-Item -Recurse -Force "$env:USERPROFILE\.codex\packages\standalone"   # releases plus the current junction
Remove-Item -Recurse -Force "$env:USERPROFILE\.codex\packages\app-server-daemon", "$env:USERPROFILE\.codex\app-server-daemon" -ErrorAction SilentlyContinue   # the server's package and state
cmd /c rmdir "$env:LOCALAPPDATA\Programs\OpenAI\Codex\bin"                  # the bin junction; rmdir removes the link, not a target

codex sandbox uninstall (v0.162.0) to osobne sprzątanie po starszej piaskownicy Windows: z uprawnieniami administratora usuwa ogólnosystemowe konta piaskownicy i reguły sieciowe, zostawia w spokoju katalog domowy Codeksa i katalogi piaskownicy, a na innych platformach jest odrzucane.19

Na każdej ścieżce najpierw zatrzymaj serwer w tle, jeśli działa (codex app-server daemon stop), i poszukaj ~/.codex/packages/app-server-daemon: README daemona mówi, że bootstrap kopiuje wywołujący pakiet do tego folderu, gdy nie istnieje żaden pakiet daemona, i że sam plik wykonywalny nie może go dostarczyć, a tego, czy automatyczny start przy instalacji z Homebrew lub npm go tworzy, tu nie testowano; jeśli folder istnieje, usuń go wraz z ~/.codex/app-server-daemon po odinstalowaniu przez menedżer pakietów.20 Powyższe odinstalowania przez menedżery pakietów nie dotykają ~/.codex/. --zap Homebrew w praktyce też nie: jedyna sekcja zap w casku to rmdir: "~/.codex", a Homebrew stosuje rmdir: tylko do katalogów, które są już puste.2 Ten katalog trzyma config.toml, Twoje zapisane poświadczenia i każdą sesję, dlatego ponowna instalacja podejmuje logowanie i historię tam, gdzie je zostawiłeś. Usuń go tylko wtedy, gdy naprawdę chcesz czystej karty, i wiedz, co to znaczy przy instalacji ze skryptu:

rm -rf ~/.codex   # discards config.toml, credentials, all sessions -- AND the CLI itself on a script install

Czysta reinstalacja z zachowaniem stanu to w npm jedna linia: npm uninstall -g @openai/codex && npm install -g @openai/codex@latest. Na ścieżce skryptowej ponowne uruchomienie instalatora dodaje nowe wydanie w ~/.codex/packages/standalone/releases, przestawia na nie current, zostawia starsze wydania na miejscu, dopóki ich nie usuniesz, i zostawia Twoją konfigurację w spokoju.12

Cały cykl życia w jednej tabeli

Zadanie install.sh (macOS, Linux) install.ps1 (Windows) npm Homebrew winget
Instalacja curl -fsSL https://chatgpt.com/codex/install.sh \| sh powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 \| iex" npm install -g @openai/codex brew install --cask codex winget install OpenAI.Codex
Aktualizacja codex update albo ponowne uruchomienie skryptu codex update albo ponowne uruchomienie skryptu codex update albo npm install -g @openai/codex@latest codex update albo brew upgrade --cask codex winget upgrade OpenAI.Codex (codex update nie rozpoznaje tej ścieżki)
Przypięcie sh -s -- --release 0.162.1 $env:CODEX_RELEASE = '0.162.1' przed linią instalacyjną npm install -g @openai/[email protected] nieobsługiwane winget install OpenAI.Codex --version 0.161.0
Odinstalowanie codex app-server daemon stop, potem usuń dowiązania w ~/.local/bin, ~/.codex/packages/standalone, ~/.codex/packages/app-server-daemon i ~/.codex/app-server-daemon codex app-server daemon stop, potem usuń %USERPROFILE%\.codex\packages\standalone, foldery serwera packages\app-server-daemon i app-server-daemon, junction %LOCALAPPDATA%\Programs\OpenAI\Codex\bin i wpis w użytkownikowym PATH codex app-server daemon stop, jeśli działa serwer, potem npm uninstall -g @openai/codex, a potem foldery daemona, jeśli istnieją to samo zatrzymanie, potem brew uninstall --cask codex (--zap nie czyści niepustego ~/.codex), a potem foldery daemona, jeśli istnieją to samo zatrzymanie, potem winget uninstall OpenAI.Codex, a potem foldery daemona, jeśli istnieją
Sprawdzenie codex --version, codex doctor tak samo tak samo tak samo tak samo

Co sprawdza codex doctor?

codex doctor to polecenie do uruchomienia przed zgłoszeniem błędu albo debugowaniem instalacji, która „wczoraj działała”. Na 0.153.4 zbiera siedem sekcji w jednym raporcie – Notes, Environment (spójność środowiska uruchomieniowego i instalacji), Configuration (stan wczytania config.toml, uwierzytelnianie, MCP, polityka piaskownicy), Desktop App (dodana w v0.149.0), Updates, Connectivity i Background Server – z --summary dla zwięzłego widoku, --json dla zredagowanej formy do odczytu maszynowego, --all do rozwinięcia uciętych list i --no-color do logów; codex doctor --help na 0.153.4 wymienia też --ascii; v0.162.0 dodało do raportu skonfigurowany tryb TUI.7131522 Większość zgłoszeń „Codex jest zepsuty” sprowadza się do czegoś, co wymienia na pierwszym ekranie: nieaktualny tryb uwierzytelniania, config.toml, którego nie udało się sparsować, albo druga instalacja przesłaniająca tę na Twoim PATH. Pełne omówienie sekcja po sekcji jest w przewodniku.

Co zmienia się po instalacji

Pierwszą rzeczą, o którą potyka się świeża instalacja, nie jest plik binarny. Od v0.149.0 CLI odmawia startu przy approval_policy = "untrusted", więc config.toml skopiowany ze starszej maszyny potrzebuje jednej poprawki.13 Przechodzisz z Claude Code? Wpis o migracji zestawia obie konfiguracje obok siebie, a wpis o hookach opisuje, co Codex uruchamia wokół modelu. Przewodnik po Codex CLI to pełne odniesienie: tryby piaskownicy i zatwierdzania, AGENTS.md, MCP, skills i zadania w chmurze. A jeśli używasz obu narzędzi, strona instalacji Claude Code jest bliźniaczką tej strony.

Często zadawane pytania

Jak zaktualizować Codex CLI do najnowszej wersji?

Uruchom codex update (v0.128.0 i nowsze); wykrywa, czy instalowałeś przez skrypt, npm czy Homebrew, i uruchamia upgrade właściwy dla tego kanału. Ręczne odpowiedniki to ponowne uruchomienie skryptu instalacyjnego, npm install -g @openai/codex@latest albo brew upgrade --cask codex. Instalacja przez winget nie jest kanałem, który codex update rozpoznaje; do niej użyj winget upgrade OpenAI.Codex.

Czy Codex CLI aktualizuje się automatycznie?

CLI nie, z jednym wyjątkiem. TUI sprawdza, czy jest nowsze wydanie, i proponuje polecenie aktualizacji pasujące do Twojego kanału instalacji, a codex update (v0.128.0 i nowsze) je uruchamia. Wyjątkiem jest serwer w tle, który Codex uruchamia domyślnie od v0.157.0: na kanale latest sprawdza aktualizacje pięć minut po starcie, a potem co godzinę, a serwer uruchomiony po raz pierwszy ze starszej instalacji ze skryptu aktualizuje ~/.codex/packages/standalone, czyli własny pakiet CLI, gdy tylko instalacja latest zapisze kanał. Aby to wyłączyć, ustaw "updater": { "autoUpdateEnabled": false } w ~/.codex/app-server-daemon/settings.json i uruchom codex app-server daemon restart.

Jak odinstalować Codex CLI?

Najpierw zatrzymaj serwer w tle, jeśli działa (codex app-server daemon stop), potem użyj ścieżki, którą instalowałeś: npm uninstall -g @openai/codex, brew uninstall --cask codex albo winget uninstall OpenAI.Codex, i poszukaj ~/.codex/packages/app-server-daemon oraz ~/.codex/app-server-daemon, które odinstalowanie przez menedżer pakietów zostawia. Przy instalacji ze skryptu to samo zatrzymanie, a potem usuń dowiązanie ~/.local/bin/codex (i ~/.local/bin/codex-code-mode-host na macOS), katalog ~/.codex/packages/standalone oraz należące do serwera ~/.codex/packages/app-server-daemon i ~/.codex/app-server-daemon. Na Windows instalacja ze skryptu to %USERPROFILE%\.codex\packages\standalone (plus foldery serwera packages\app-server-daemon i app-server-daemon), junction %LOCALAPPDATA%\Programs\OpenAI\Codex\bin i wpis w Twoim użytkownikowym PATH; usuń je wszystkie. Twoja konfiguracja, poświadczenia i sesje zostają w ~/.codex/, dopóki sam nie usuniesz reszty tego katalogu.

Jak zainstalować Codex CLI na Windows?

Uruchom powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex". CLI działa natywnie w PowerShellu z piaskownicą Windows (Microsoft Execution Containers, gdy ustawisz prefer_mxc = true, a urządzenie je obsługuje; w przeciwnym razie skonfigurowany starszy tryb, a gdy żaden nie jest ustawiony, elevated; jawny wybór [windows] sandbox = "mxc" używa MXC albo kończy się błędem, bez trybu zapasowego); WSL2 to opcja, gdy potrzebujesz narzędzi linuksowych albo żadna implementacja piaskownicy nie pasuje, a nie wymóg. Windows 11 to zalecana baza. winget install OpenAI.Codex też działa, ale odstaje od linii stabilnej.

Czy do instalacji Codeksa potrzebuję Node.js?

Tylko na ścieżce npm, a pakiet wymaga Node’a 16 lub nowszego. Skrypt instalacyjny, skrypt PowerShell i cask Homebrew dostarczają skompilowany plik binarny codex, więc maszyna bez Node’a może uruchamiać Codeksa.

Jak sprawdzić, którą wersję Codeksa mam?

codex --version ją wypisuje (na przykład codex-cli 0.163.0). npm view @openai/codex version pokazuje najnowszą opublikowaną wersję, a codex doctor raportuje ścieżkę instalacji i to, czy inna kopia na Twoim PATH ją przesłania.



  1. OpenAI, README openai/codex – sekcja instalacji zaczyna się od curl -fsSL https://chatgpt.com/codex/install.sh | sh dla macOS i Linuksa oraz jednolinijkowca PowerShell install.ps1 dla Windows, potem mówi, że CLI „can also be installed via” npm (npm install -g @openai/codex) i Homebrew (brew install --cask codex); dokumentuje curl -fsSL https://chatgpt.com/codex/install.sh | CODEX_INSTALLER_USE_RELEASES_OPENAI_COM=false sh i formę PowerShell $env:CODEX_INSTALLER_USE_RELEASES_OPENAI_COM='false', wprowadzone zdaniem “To force GitHub Releases, set CODEX_INSTALLER_USE_RELEASES_OPENAI_COM to false (0 and no are also accepted)”; nazwa pakietu @openai/codex; pliki binarne dla macOS (Apple silicon, x86_64) i Linuksa (x86_64, arm64) na GitHub Releases. Zweryfikowano 2026-09-06 i ponownie 2026-10-15, gdy sekcja instalacji była niezmieniona poza zdaniem cytowanym w przypisie 6. ↩↩↩↩↩↩↩↩↩

  2. Homebrew, cask codex – token caska codex, jedna bieżąca wersja (0.163.0 na 2026-10-15, podbita commitem codex 0.163.0 w Homebrew/homebrew-cask o 21:44:02 UTC, trzynaście minut po wydaniu na GitHubie o 21:30:38 UTC), artefakt binarny bin/codex z generowanymi z niego uzupełnieniami powłoki, puste depends_on, obsługiwane platformy obejmujące x86_64_linux i arm64_linux obok wydań macOS oraz adres pobierania codex-package-aarch64-apple-darwin.tar.gz w wydaniu na GitHubie. Zweryfikowano przez API formulae i listę commitów homebrew-cask 2026-10-15 (0.153.4 na 2026-09-06). Sekcja zap caska to zap rmdir: "~/.codex", a Cask Cookbook definiuje rmdir: jako ścieżki katalogów do usunięcia, jeśli są puste. ↩↩↩↩↩↩

  3. Microsoft, manifesty winget-pkgs dla OpenAI.Codex – 138 opublikowanych wersji, najnowsza 0.161.0, na 2026-10-15 (119 i 0.146.1 na 2026-09-06); brak manifestu dla 0.147.0, 0.152.1 oraz 0.153.x do 0.155.x. Pakiet publikuje OpenAI: .github/workflows/rust-release.yml w openai/codex ma zadanie winget, które wysyła manifest za pomocą komac (jego komentarz: „Adapted from the WinGet Releaser version previously used by this job”; odczytano ponownie 2026-10-15). Pull requesty według wyszukiwania w repozytorium z 2026-10-15, daty w UTC, od oai-fork-bot, o ile nie zaznaczono inaczej: 0.147.0 (#413497) zamknięty bez scalenia; 0.148.0 (#420225) do 0.152.0 (#427090), otwarte od 18 sierpnia do 1 września, scalone 11 września z wyjątkiem 0.151.0 (#426091) 30 września i 0.149.1 (#423060) 1 października; 0.154.0 (#435129, otwarty przez członka społeczności, z3oya) zamknięty bez scalenia; 0.156.0 (#439266) do 0.161.0 (#448267), dwanaście wniosków otwartych od 22 września do 7 października, każdy scalony w dniu otwarcia lub następnego dnia; 0.162.0 (#449062), 0.162.1 (#449772) i 0.163.0 (#453561) otwarte na 2026-10-15. README i dokumentacja CLI OpenAI nie wspominają o winget. ↩↩↩↩↩

  4. OpenAI, informacje o wydaniu Codex CLI v0.128.0, 30 kwietnia 2026 – “Added codex update, configurable TUI keymaps, plan-mode nudges, action-required terminal titles, and active-turn /statusline and /title edits.” Pull request tego polecenia, openai/codex #19933 (scalony 28 kwietnia 2026), stwierdza: “Reused the existing install-channel detection and update command runner that the TUI already uses for update prompts.” Mapa kanałów to codex-rs/tui/src/update_action.rs: npm i jego rodzeństwo bun, pnpm i Vite+, Homebrew oraz samodzielny instalator (Unix i Windows); bez wariantu winget (odczytano 2026-09-06). Odczytano ponownie 2026-10-15: enum zyskał Daemon(DaemonUpdateSource) („Replace the local daemon after restoring the terminal”), a polecenia samodzielnego instalatora to curl -fsSL https://chatgpt.com/codex/install.sh | CODEX_NON_INTERACTIVE=1 sh i $env:CODEX_NON_INTERACTIVE=1; irm https://chatgpt.com/codex/install.ps1 | iex; nadal bez wariantu winget. ↩↩↩↩

  5. OpenAI, informacje o wydaniu Codex CLI v0.106.0, 26 lutego 2026 – “Added a direct install script for macOS and Linux and publish it as a GitHub release asset, using the existing platform payload (including codex and rg)”; od tej pory install.sh jest dołączany do każdego wydania. Wydanie rust-v0.163.0 (zasoby wylistowane przez API wydań GitHuba, 2026-10-15) zawiera install.sh i install.ps1, tarballe codex-<target>.tar.gz dla poszczególnych platform, pliki .zst i macOS-owe .dmg, pakiety codex-package-<target>.tar.gz z codex-package_SHA256SUMS, pliki binarne codex-app-server-* i codex-responses-api-proxy-*, tarballe codex-npm-*.tgz oraz sześć plików openai_codex_cli_bin-0.163.0-*.whl; PyPI opisuje openai-codex-cli-bin jako „Pinned Codex CLI runtime for the Python SDK”. Tarball macOS arm64 pobrany 2026-10-15 zawiera jeden wpis, codex-aarch64-apple-darwin. ↩↩

  6. OpenAI, informacje o wydaniu Codex CLI v0.146.0, 29 lipca 2026 – „Publish release artifacts, channel metadata, and installer aliases through OpenAI-hosted release infrastructure, with GitHub fallback.” https://chatgpt.com/codex/install.sh odpowiada 302 do https://releases.openai.com/codex/install.sh (sprawdzono 2026-09-06 i 2026-10-15); README stwierdzało to 2026-10-15: „The standalone installers download from https://releases.openai.com/codex by default and fall back to GitHub Releases if a metadata or asset download is unavailable.” ↩

  7. OpenAI, feat(cli): add codex doctor diagnostics, openai/codex PR #22336, scalony 13 maja 2026 – sekcje raportu (Notes, Environment, Configuration, Updates, Connectivity, Background Server) oraz jego flagi --summary, --json, --all i --no-color. ↩↩

  8. OpenAI, Codex na Windows: piaskownica Windows – w odczycie z 2026-10-15: Microsoft Execution Containers, „which Microsoft is rolling out to Windows 11 devices. Microsoft introduced MXC process isolation in Windows 11 24H2 (build 26100.9278) and 25H2 (build 26200.9278)”; „The desktop app automatically prefers MXC for consumer accounts when the device supports it” oraz prefer_mxc = true w [features] dla CLI; allow_mxc = false w [windows] w requirements.toml ją blokuje; test jednym poleceniem udokumentowany dla „Codex CLI 0.162.0 and later” z oczekiwanym wyjściem MXC_OK; starsze tryby zapasowe [windows] sandbox = "elevated" („the preferred legacy fallback”) i "unelevated" („a legacy fallback” z „weaker network isolation than elevated”); „Use MXC when the device and policy support it. Otherwise, prefer elevated, with unelevated as a secondary fallback”; „Use the native Windows sandbox by default. Choose WSL when you need Linux-native tooling, your workflow already lives in WSL2, or the available native Windows implementations don’t meet your needs”; Windows 11 zalecany, „Recent, fully updated Windows 10” oznaczony jako „Best effort”, przy czym „Windows 10 version 1809 or newer is required” dla obsługi konsoli, starszy Windows 10 niezalecany; winget oczekiwany na potrzeby konfiguracji. Po raz pierwszy zweryfikowano 2026-09-06, gdy strona opisywała tylko dwa starsze tryby. ↩↩↩↩↩↩↩↩

  9. OpenAI, wydania openai/codex – rust-v0.163.0 opublikowane 15 października 2026 o 21:30 UTC jako najnowsze wydanie, po rust-v0.160.0 (1 października), rust-v0.160.1 (5 października), rust-v0.161.0 (7 października), rust-v0.162.0 (8 października) i rust-v0.162.1 (9 października); rust-v0.153.4 było najnowsze 4 września 2026 (według odczytu z 6 września; lista z 15 października sięga wstecz do 1 października). Daty z API wydań GitHuba. ↩↩↩

  10. npm, @openai/codex – latest = 0.163.0 (opublikowane 2026-10-15 o 21:37 UTC), alpha = 0.163.0-alpha.11 (opublikowane 2026-10-14 o 03:38 UTC) i engines: { node: ">=16" } w 0.163.0, według dokumentu rejestru z 2026-10-15; latest było 0.153.4 na 2026-09-06, a mapa time w dokumencie wymienia czternaście stabilnych wersji po 0.146.1 aż do 0.153.4 (0.147.0, 0.148.0, 0.149.0, 0.149.1, 0.150.0, 0.150.1, 0.151.0, 0.152.0, 0.152.1, 0.153.0 do 0.153.4). ↩↩↩↩↩↩

  11. OpenAI, dokumentacja Codex CLI – instalacja zaczyna się od samodzielnego instalatora (curl -fsSL https://chatgpt.com/codex/install.sh | sh na macOS i Linuksie, zakładka instalatora Windows), przedstawia Homebrew i npm jako alternatywy, a jako aktualizację instalacji samodzielnych podaje ponowne uruchomienie instalatora. Zweryfikowano 2026-09-06 i ponownie 2026-10-15, gdy zakładkami instalacji były macOS/Linux, Windows, npm i Homebrew. ↩↩↩↩↩↩

  12. OpenAI, skrypt instalacyjny install.sh w wersji serwowanej 2026-09-06 i odczytanej ponownie 2026-10-15 – Usage: install.sh [--release VERSION]; zmienne środowiskowe CODEX_RELEASE („Version to install; overridden by –release”), CODEX_INSTALL_DIR (domyślnie ~/.local/bin), CODEX_HOME (domyślnie ~/.codex) i CODEX_INSTALLER_USE_RELEASES_OPENAI_COM („Set to 0, false, or no to use GitHub Releases”); wydania przechowywane w ~/.codex/packages/standalone/releases za dowiązaniem current, z dowiązaniem codex (i codex-code-mode-host na macOS) w katalogu bin; blok PATH # >>> Codex installer >>> / # <<< Codex installer <<< dopisywany do ~/.zprofile, ~/.bash_profile, ~/.zshrc, ~/.bashrc lub ~/.profile, gdy katalog bin nie jest już na PATH albo wykryto konkurencyjną instalację zarządzaną (add_to_path kończy wcześniej przy dopasowaniu PATH tylko wtedy, gdy nie znaleziono konfliktu); oraz sprawdzenie konfliktu instalacji, które ostrzega „Multiple managed Codex installs can be ambiguous because PATH order decides which one runs” i proponuje brew uninstall --cask codex, npm uninstall -g @openai/codex lub bun remove -g @openai/codex. Kopia z 2026-10-15 dodaje do tekstu użycia CODEX_NON_INTERACTIVE („Set to 1, true, or yes to skip prompts”); tryb tylko dla daemona (CODEX_INSTALL_DAEMON_ONLY=1, katalog główny ~/.codex/packages/app-server-daemon, zapis aktualizatora app-server-daemon/daemon-updater.pid, plik znacznika auto-update-version, zapisywany przy instalacji latest i usuwany przy jawnie wskazanym wydaniu na końcu skryptu) z komentarzem „An explicit daemon update may leave a local or pinned release. Scheduled updates still require the selected release to follow the latest channel.” przy warunku, który kończy działanie, gdy wybrane wydanie nie jest tym zapisanym; oraz preferencję dla zasobu codex-package-<target>.tar.gz weryfikowanego względem codex-package_SHA256SUMS, z tarballem npm dla platformy jako starszym układem. Pliki bin/codex, bin/codex-code-mode-host i codex-path/rg z pakietu dostają prawo wykonywania, a dowiązanie codex-code-mode-host powstaje tylko na macOS; aktualizator działa jako podpolecenie app-server daemon pid-update-loop (sprawdzenie własności w skrypcie w linii 1266 wywołuje je z --check-package-ownership). ↩↩↩↩↩↩↩↩↩↩↩↩↩↩

  13. OpenAI, informacje o wydaniu Codex CLI v0.149.0, 20 sierpnia 2026 – zawiera #39630, “Retire the untrusted approval policy”, oraz “codex doctor now diagnoses endpoint protection, network/proxy failures, desktop app state, and update connectivity.” ↩↩

  14. OpenAI, Codex na Windows: WSL, zweryfikowano ponownie 2026-10-15 – „Use Codex CLI with WSL”: wsl --install, otwarcie powłoki WSL, potem curl -fsSL https://chatgpt.com/codex/install.sh | sh i codex; strona radzi też trzymać repozytoria w katalogu domowym Linuksa zamiast w montowanych z Windows ścieżkach /mnt/c/, dla szybszego I/O. ↩

  15. Odtworzenie przez autora na Codex CLI 0.153.4 (instalacja npm), 2026-09-06: codex doctor --summary --no-color wypisuje sekcje Notes, Environment, Configuration, Desktop App, Updates, Connectivity i Background Server w tej kolejności; codex doctor --help wymienia --ascii. ↩

  16. OpenAI, dokumentacja konfiguracji Codeksa – check_for_update_on_startup (boolean): „Check for Codex updates on startup (set to false only when updates are centrally managed)”; features.in_app_updates (boolean): „Set to false in requirements.toml to disable in-app updates. Updates remain enabled by default when this requirement is omitted.” Zweryfikowano 2026-09-06 i 2026-10-15. ↩

  17. OpenAI, skrypt instalacyjny install.ps1 w wersji serwowanej 2026-09-06 i odczytanej ponownie 2026-10-15 – blok parametrów param([string]$Release = $env:CODEX_RELEASE) z latest jako wartością zapasową; $codexHome = CODEX_HOME lub %USERPROFILE%\.codex; packages\standalone z releases\, junction current i install.lock; widoczny katalog bin %LOCALAPPDATA%\Programs\OpenAI\Codex\bin (lub CODEX_INSTALL_DIR) tworzony jako junction do current\bin; użytkownikowy Path zapisywany przez [Environment]::SetEnvironmentVariable("Path", ..., "User") („PATH updated for future PowerShell sessions.”). Kopia z 2026-10-15 oblicza SHA-256 archiwum przez .NET (SHA256CryptoServiceProvider) i porównuje je z codex-package_SHA256SUMS z wydania, a przy niezgodności rzuca „Downloaded Codex archive checksum did not match expected digest”. ↩↩↩↩

  18. OpenAI, informacje o wydaniu Codex CLI v0.162.0, 8 października 2026 – „Publish a signed PowerShell installer with Windows releases. (#51158)” i „Fix archive checksum verification when installing through Windows PowerShell with PowerShell 7 module paths present. (#51257)”. PR #51158, scalony 5 października 2026: „sign scripts/install/install.ps1 with Azure Trusted Signing in the x64 release job” i „publish the signed artifact as install.ps1 instead of copying the unsigned source”. PR #51257, scalony 6 października: „compute SHA-256 directly with .NET APIs after resolving the archive path”. ↩

  19. OpenAI, Add a CLI command to uninstall the legacy Windows sandbox, openai/codex PR #50437, scalony 2 października 2026 i wymieniony w informacjach o wydaniu v0.162.0; opis pull requesta: „Add codex sandbox uninstall to remove machine-wide legacy Windows sandbox accounts and network rules with administrator privileges. Run cleanup without loading configuration, preserving Codex home, sandbox directories, and filesystem permissions. Reject the command on other platforms.” ↩

  20. OpenAI, codex-rs/app-server-daemon/README.md w tagu rust-v0.163.0 – „codex-app-server-daemon is experimental and its lifecycle contract may change”; osiem poleceń (codex app-server daemon start, restart, update, enable-remote-control, disable-remote-control, stop, version, bootstrap --remote-control); „Eligible managed daemons check for updates after five minutes, then hourly by default. Edit CODEX_HOME/app-server-daemon/settings.json to change this” z przykładem "updater": { "autoUpdateEnabled": false, "updateIntervalMinutes": 120 }; „It launches a detached updater loop when automatic updates are enabled, the installer selected the stable latest channel, and the managed binary supports the updater command”; „New daemons use CODEX_HOME/packages/app-server-daemon/current/bin/codex” i „Daemon-only installer updates leave the user’s CLI command and shell setup alone”; „Previously launched legacy daemons retain CODEX_HOME/packages/standalone/current, including its flat binary layout when present. Starts and scheduled updates keep using that location”; tabela sytuacji („the selected release stays pinned”, gdy instalator wybrał jawnie wskazane wydanie; „the running server restarts with the new binary before the updater replaces itself”); pliki stanu w CODEX_HOME/app-server-daemon/ tak, jak wymienia je README (settings.json, app-server.pid, app-server-updater.pid, daemon.lock; daemon.pid i daemon-updater.pid dedykowanego daemona pochodzą z kodu źródłowego, poniżej); „stop sends a graceful termination request first, then force-terminates the process after the configured grace window if it is still alive”; „installs made before the installer recorded channel selections need one new latest installation to opt into automatic updates; until then the daemon continues to serve app-server without updating the selected release”; „daemon update selects the latest stable release, even with automatic updates disabled. It also returns pinned or local managed packages to production update eligibility”, „A running daemon restarts, so active or queued work may be interrupted” i „Legacy installations migrate to the dedicated root once the published installer and release support migration”; „bootstrap can use any complete CLI package. If no daemon package is installed, it copies the invoking package into CODEX_HOME/packages/app-server-daemon” i „A bare executable cannot supply a new installation”. Nazwy plików pid pochodzą z kodu źródłowego w tym samym tagu, codex-rs/app-server-daemon/src/lib.rs: LEGACY_PID_FILE_NAME = "app-server.pid", LEGACY_UPDATE_PID_FILE_NAME = "app-server-updater.pid", DAEMON_PID_FILE_NAME = "daemon.pid", DAEMON_UPDATE_PID_FILE_NAME = "daemon-updater.pid" (linie 54 do 57), przy czym starsza para jest wybierana tylko wtedy, gdy zarządzany plik binarny leży w packages/standalone (linie 334 do 337 i 376 do 379), stop zatrzymuje działający backend (linia 615), a aktualizator zatrzymuje ensure_managed_updater przy starcie, restarcie lub zmianie zdalnego sterowania (linie 893 do 930) oraz na dwóch innych ścieżkach cyklu życia (linie 474 do 477 i 829 do 832), nigdy stop, do tego zdanie README „the updater loop is not reboot-persistent” (linia 145); wiersze poleceń z src/backend/pid.rs (linie 385 do 401: app-server --listen unix:// dla serwera, app-server --remote-control --listen unix:// przy włączonym zdalnym sterowaniu, app-server daemon pid-update-loop dla aktualizatora). Ponadto OpenAI, informacje o wydaniu Codex CLI v0.157.0, opublikowane 25 września 2026 o 02:31 UTC – „Enabled automatic background-server startup for eligible interactive sessions, with recovery choices when server settings are incompatible. (#47179, #47318)”; v0.162.0 – „#50499 Include installer stderr in daemon update failures”, którego pull request zaczyna się od „Daemon updates discard installer stderr”; v0.163.0, 15 października – „Restart a managed background server from /daemon. Codex warns about work the restart could interrupt, then reconnects automatically. (#53173)” i „#52223 Enforce application network policy for daemon updates”. Tryb daemona w instalatorze i jego zabezpieczenie aktualizacji opisuje przypis 12. ↩↩↩↩↩↩↩↩

  21. OpenAI, informacje o wydaniu Codex CLI v0.161.0, 7 października 2026 – „Publishing an older alpha or hotfix no longer moves npm alpha tags backward. (#49704)”. ↩

  22. OpenAI, informacje o wydaniu Codex CLI v0.162.0 – „#50200 Report the configured TUI mode in codex doctor”. ↩

Powiązane artykuły

Instalacja i aktualizacja Claude Code CLI: Mac, Linux, Windows

Wszystkie sposoby instalacji, aktualizacji, przypięcia wersji i odinstalowania Claude Code CLI -- instalator natywny, Ho…

6 min czytania

Codex wycofał politykę zatwierdzania untrusted: co zmienić

Codex CLI 0.149 wycofał politykę untrusted i odmawia z nią startu. Treść błędu, kto musi edytować, poprawki w config, pr…

12 min czytania

Foundation Models z poziomu Pythona: narzędzie fm CLI

macOS 27 daje narzędzie wiersza poleceń fm i SDK Foundation Models dla Pythona: skryptuj lokalny model Apple i buduj pot…

10 min czytania