Ошибка входа в Codex Desktop

Пытался авторизоваться в Codex Desktop App несколько часов. 

Окно Codex Desktop
Окно Codex Desktop
Ошибка в окне браузера
Ошибка в окне браузера
Sign-in failed. Login server error: Token exchange failed: error sending request for url (https://auth.openai.com/oauth/token)

Sign-in could not be completed
Error code: token_exchange_failed
Details: Token exchange failed: error sending request for url (https://auth.openai.com/oauth/token)

Кратко опишу мой путь, просто хочется поделиться о наболевшем.

При попытке авторизоваться в Codex Desktop App через аккаунт ChatGPT / Google я постоянно получал ошибку обмена токена:

Token exchange failed: error sending request for url (https://auth.openai.com/oauth/token)

Искал решение проблемы в интернете, но код ошибки в поисковой строке ничем не помог (надеюсь, хоть теперь кто-то наткнётся на это решение), пришлось лезть в нейронки для поиска решения. Использовал NoteBookLM для поиска причин ошибки и общался с GPT в браузере для решения. 

Технарь из меня так себе, поэтому приходилось перекидываться скринами и командами между ассистентом и PowerShell.

Неверный путь

Сначала казалось, что проблема связана с callback-адресом localhost:1455, который используется при авторизации. Я проверил порт через PowerShell:

netstat -ano | findstr :1455

После запуска Codex порт действительно слушался, а процессом оказался codex, то есть локальный callback-сервер приложения работал корректно.

Также пробовал вручную вызвать callback через:

curl.exe -4 -v "http://localhost:1455/auth/callback?..."

Но этот путь оказался тупиковым: если использовать старую ссылку, возникает State mismatch, а если дойти до страницы ошибки, сессия авторизации в приложении уже завершается и ссылка становится неактуальной.

После этого стало понятно, что проблема не в Google-аккаунте и не в localhost:1455. Callback до приложения доходил, но само приложение Codex не могло выполнить следующий сетевой запрос к:

https://auth.openai.com/oauth/token

Решение

В итоге причина оказалась в системных настройках прокси Windows.

Я бы, честно говоря, ни в жизнь не полез бы туда проверять настройки, если бы буквально в этом же месяце не провозился несколько часов со входом в Microsoft Store на территории России.

При всём при этом, на работе у коллеги была та же проблема с Microsoft Store, наш сисадмин уверял, что мое предположение неверно, но в итоге все решилось как и в моем случае парой кликов (и парой часов битья головой о стену в неправильном месте).

  1. Открыть Панель управления.

  2. Перейти в Свойства браузера.

  3. Открыть вкладку Подключения.

  4. Нажать Настройка сети.

  5. В блоке Прокси-сервер снять галочку:

Использовать прокси-сервер для локальных подключений
  1. Нажать ОК.

  2. Перезапустить Codex и повторить авторизацию через ChatGPT / Google.

После отключения прокси авторизация прошла успешно.

Итог

В моём случае ошибка token_exchange_failed была вызвана не проблемой аккаунта, не Google-авторизацией и не callback-сервером Codex, а включённым системным прокси в настройках Windows.

Я честно не знаю, откуда там берётся эта галочка, я переустановил Windows буквально вчера, возможно, она стоит там по дефолту, а возможно это мы в СНГ создаём себе проблемы с KMS Auto. Но итог один — это создает проблему входа и надеюсь, кому-то поможет информация, о которую я набил шишки.