Вайбкодинг2026-08-069 минРедакция Submarine School

Codex прокси: как настроить в приложении и CLI в 2026

Codex прокси: как настроить в приложении и CLI в 2026

Прокси нужен Codex ровно для одного: чтобы запросы к серверам OpenAI выходили в интернет через промежуточный узел. Настраивается он в двух разных местах. Десктопное приложение берёт прокси из настроек операционной системы, CLI из переменных окружения HTTPS_PROXY, HTTP_PROXY и NO_PROXY. В файле ~/.codex/config.toml сетевые параметры тоже есть, но отвечают они не за ваш прокси, а за встроенную сетевую песочницу. Ниже обе настройки по шагам, проверка соединения и что делать с ошибкой сертификата.

Прокси и VPN: почему это не одно и то же

VPN поднимает туннель на уровне всего устройства: через него уходит трафик любых программ, включая те, которые про VPN ничего не знают. Прокси работает иначе, это адрес, который программа должна прочитать и использовать сама. Не знает о нём, значит продолжит ходить напрямую, даже когда прокси исправно работает.

Отсюда типичная картина: браузер через прокси сайты открывает, а codex в терминале выдаёт ошибку соединения. Браузер прочитал адрес из системных настроек, а терминальная сессия нет, в ней переменные не заданы. Если вам ближе туннель на всё устройство, мы отдельно разбирали, как устроен доступ к Codex через VPN и откуда берётся ошибка страны. Здесь речь только про прокси.

Прокси для десктопного приложения Codex

Основной способ работы с Codex для большинства это единое десктопное приложение ChatGPT: внутри и чат, и агент. Своего окна с настройками прокси у него нет, адрес задаётся на уровне операционной системы, а приложение забирает его оттуда. Если приложение ещё не стоит, порядок действий мы описывали в разборе установки Codex на Windows и Mac.

  1. На Windows откройте «Параметры», раздел «Сеть и Интернет», пункт «Прокси-сервер», блок «Настройка прокси вручную».
  2. Включите переключатель, впишите адрес и порт вашего прокси.
  3. В поле исключений оставьте localhost;127.0.0.1, чтобы локальные сервисы не ходили через прокси.
  4. На macOS то же самое лежит в «Системных настройках»: «Сеть», активное подключение, кнопка «Подробнее», вкладка «Прокси», пункты «Веб-прокси (HTTP)» и «Защищённый веб-прокси (HTTPS)».
  5. Полностью закройте приложение Codex и запустите заново: настройки читаются при старте.

Отдельно про связку Windows и WSL2: если Codex запускается внутри WSL, системный прокси Windows он подхватывает не всегда, это известная открытая проблема в трекере проекта (issue 15447). В такой конфигурации переменные окружения задают прямо внутри WSL, как для обычного CLI.

Сеть настроена, а результат появляется не от настроек: на бесплатном вебинаре по вайбкодингу показываем, как собрать первый рабочий проект с ИИ.

Занять место

Переменные окружения для Codex CLI

Терминальная версия читает стандартные переменные окружения. Их три: HTTP_PROXY для незашифрованных запросов, HTTPS_PROXY для защищённых (он и работает почти всегда) и NO_PROXY со списком адресов, которые надо отдавать напрямую. Для прокси по протоколу SOCKS5 используется ALL_PROXY.

На Windows в PowerShell для текущего окна:

$env:HTTPS_PROXY = "http://127.0.0.1:8080"
$env:HTTP_PROXY  = "http://127.0.0.1:8080"
$env:NO_PROXY    = "localhost,127.0.0.1"
codex

Чтобы не вписывать заново каждый раз, сохраните переменные в профиль пользователя командой setx. Важная деталь: setx действует на новые окна терминала, в уже открытом значения не поменяются.

setx HTTPS_PROXY "http://127.0.0.1:8080"
setx HTTP_PROXY "http://127.0.0.1:8080"
setx NO_PROXY "localhost,127.0.0.1"

На macOS и Linux те же переменные добавляются в профиль оболочки: ~/.zshrc для zsh (по умолчанию в свежих macOS) или ~/.bashrc для bash.

export HTTPS_PROXY="http://127.0.0.1:8080"
export HTTP_PROXY="http://127.0.0.1:8080"
export NO_PROXY="localhost,127.0.0.1"

# применить без перезапуска терминала
source ~/.zshrc

Если прокси требует авторизацию, логин и пароль пишутся в самом адресе: http://user:password@host:port. Спецсимволы в пароле надо закодировать (@ превращается в %40, : в %3A), иначе адрес разберётся неправильно и соединение молча не поднимется.

Тем, у кого раньше прокси работал наполовину, стоит начать с обновления. В выпуске Codex CLI 0.146.0 от 29 июля 2026 года разработчики отметили, что настроенный прокси теперь учитывается при авторизации, скачивании плагинов, авторизации MCP, удалённом запуске, в вебсокетах и при редиректах (список изменений). Что ещё умеет терминальная версия, мы собрали в разборе команд и режимов Codex CLI.

Codex это только инструмент, ценность в том, что вы им соберёте. На бесплатном вебинаре по вайбкодингу разбираем путь от пустой папки до готового сайта или бота, участникам достаётся гайд в подарок.

Записаться на вебинар

Что задаётся в config.toml, а что нет

Здесь чаще всего происходит путаница. Сетевые параметры в ~/.codex/config.toml описывают не ваш внешний прокси: у Codex есть управляемая сетевая песочница со своим локальным прокси для процессов, которые запускает агент.

В документации по разрешениям эти параметры описаны так: proxy_url это адрес слушателя, который подставляется процессам как HTTP_PROXY и HTTPS_PROXY; enable_socks5 и socks_url делают то же для ALL_PROXY; allow_upstream_proxy разрешает песочнице уважать ваши внешние настройки HTTP(S)_PROXY и ALL_PROXY при исходящих запросах (документация Codex). Если Codex работает с сетевой песочницей и ваш прокси игнорируется, нужен именно этот флаг:

[permissions.workspace.network]
allow_upstream_proxy = true

А отдельной строки вида http_proxy = "http://...", которой можно было бы задать адрес прокси прямо в конфиге, в Codex нет. Такую возможность просило сообщество, и на момент публикации предложение в трекере остаётся открытым (issue 6060). Передать адрес самому Codex можно только переменными окружения.

По теме: Аналоги Claude Code 2026: чем заменить и что доступно из России

Корпоративный прокси и ошибка сертификата

В корпоративной сети прокси обычно не просто пересылает трафик, а расшифровывает его и подписывает своим корневым сертификатом. Программа видит подпись, которой нет в списке доверенных, и отказывается работать. Проявляется это сообщениями self-signed certificate in certificate chain, SELF_SIGNED_CERT_IN_CHAIN или unable to verify the first certificate.

Лечится это не отключением проверок, а добавлением корпоративного корневого сертификата. В документации по авторизации сказано: при корпоративном TLS-прокси или собственном корневом центре сертификации нужно указать в CODEX_CA_CERTIFICATE путь к PEM-файлу до входа в аккаунт, а если переменная не задана, Codex использует SSL_CERT_FILE. Настройки применяются к логину, обычным HTTPS-запросам и защищённым вебсокетам (документация Codex).

export CODEX_CA_CERTIFICATE=/path/to/corporate-root-ca.pem
codex login

На Windows то же сохраняется навсегда: setx CODEX_CA_CERTIFICATE "C:\certs\root-ca.pem". Сам PEM-файл выдаёт системный администратор. А вот выставлять NODE_TLS_REJECT_UNAUTHORIZED=0 не стоит: ошибка исчезнет вместе с проверкой подлинности всех соединений, включая те, где вы вводите пароли.

Прежде чем править конфиги, проверьте прокси обычным curl в том же окне терминала, где запускаете Codex. В половине случаев дело не в настройках Codex, а в том, что переменная не доехала до этой сессии.

Как проверить, что трафик идёт через прокси

  1. Убедитесь, что переменные видны в текущей сессии: в PowerShell $env:HTTPS_PROXY, в cmd echo %HTTPS_PROXY%, в macOS и Linux printenv | grep -i proxy.
  2. Проверьте прокси в обход Codex: curl -x http://127.0.0.1:8080 -I https://api.openai.com/v1/models. Ответ с кодом 401 это успех, соединение прошло и не хватает только ключа. Таймаут означает, что проблема в прокси.
  3. Запустите codex login: авторизация задействует и HTTPS-запросы, и вебсокеты, поэтому вскрывает недонастроенный прокси быстрее всего.

По теме: ИИ для вайбкодинга в 2026: какой выбрать под сайт, бота и код

Частые ошибки подключения

  • Переменные заданы в одном окне терминала, а Codex запускается в другом. После setx нужно открыть новое окно.
  • Адрес написан без схемы: 127.0.0.1:8080 вместо http://127.0.0.1:8080, и строка не разбирается как адрес прокси.
  • Пароль со спецсимволами не закодирован, и всё после @ читается как другой хост.
  • Пустой NO_PROXY: локальные MCP-серверы и сервисы на localhost уходят в прокси и не отвечают.
  • Прокси не пропускает вебсокеты. Чат работает, а авторизация нет: нужен прокси с поддержкой CONNECT и WSS.
  • Настройки верные, но версия старая. Другие типовые сбои разобраны в статье про ошибки Codex и способы их исправить.

Частые вопросы

Можно ли задать прокси прямо в config.toml одной строкой?

Нет, отдельного поля с адресом прокси в конфиге не предусмотрено, запрос на такую возможность в трекере пока открыт. Адрес передаётся только переменными окружения, а в ~/.codex/config.toml настраивается поведение встроенной сетевой песочницы.

Нужен ли прокси, если уже работает VPN?

Обычно нет, достаточно чего-то одного. Включённые вместе они конкурируют за один трафик, и запросы начинают отваливаться по таймауту. Если VPN уже поднят, переменные HTTP_PROXY и HTTPS_PROXY лучше убрать совсем.

Поддерживается ли SOCKS5?

Да, адрес вида socks5://127.0.0.1:1080 задаётся в переменной ALL_PROXY. Для сетевой песочницы Codex есть свои параметры enable_socks5 и socks_url, они описаны в документации по разрешениям.

Почему приложение работает, а CLI выдаёт ошибку?

Они берут настройки из разных мест: приложение из системных параметров, CLI из переменных окружения своей сессии. Задайте переменные в том терминале, из которого запускаете codex, и проверьте их командой printenv или echo.

Настроенный доступ это только вход в инструмент. На бесплатном вебинаре по вайбкодингу показываем, что собрать дальше: первый сайт, телеграм-бот или небольшой сервис, без опыта программирования.

Записаться на вебинар
Разборы, кейсы и фишки вайбкодинга каждую неделю в телеграм-канале «Яков вайбкодит».
Первый проект с ИИ: живой разбор, бесплатно Занять место