Skip to content

Интеграция Codex CLI

Подключите Codex CLI — официальный open-source агент OpenAI для терминала — к AITUNNEL и работайте с gpt-5.3-codex и другими моделями без VPN, без аккаунта OpenAI и без зарубежных карт.

Codex CLI — это лёгкий локальный кодинг-агент от OpenAI, который запускается в терминале. Он поддерживает кастомных провайдеров через ~/.codex/config.toml, поэтому через AITUNNEL можно использовать единый API-ключ, оплачивать в рублях и при этом получать всю мощь Codex (в том числе модели семейства gpt-5-codex).

Рекомендуемые модели

Codex CLI оптимизирован под Codex-семейство моделей. Лучше всего работают gpt-5.3-codex, gpt-5.2-codex, gpt-5.1-codex-max — они специально обучены под агентные задачи программирования. Через AITUNNEL также доступны gpt-5.2-pro, claude-sonnet-4-5 и другие — см. список моделей.

Быстрый старт

Шаг 1: Установка Codex CLI

Требования

Для установки через npm нужен Node.js 18 или новее.

bash
npm install -g @openai/codex
bash
brew install --cask codex

Проверьте установку:

bash
codex --version

Подробнее про варианты установки (включая бинарники с GitHub Releases) — в официальной документации.

Шаг 2: Получение API ключа AITUNNEL

  1. Зарегистрируйтесь или войдите на aitunnel.ru
  2. Перейдите в раздел Ключи
  3. Создайте новый API ключ
  4. Скопируйте его — он начинается с sk-aitunnel-

Шаг 3: Настройка ~/.codex/config.toml

Codex читает конфигурацию из ~/.codex/config.toml. Создайте этот файл (или отредактируйте существующий) и добавьте AITUNNEL как кастомного провайдера:

toml
model_provider = "aitunnel"
model = "gpt-5.3-codex"
model_reasoning_effort = "high"

[model_providers.aitunnel]
name = "AITUNNEL"
base_url = "https://api.aitunnel.ru/v1"
env_key = "AITUNNEL_API_KEY"
wire_api = "chat"

Что тут происходит:

ПолеОписание
model_providerID кастомного провайдера. Должен совпадать с ключом в [model_providers.<id>] (мы используем aitunnel).
modelМодель по умолчанию. Точные ID — на странице моделей AITUNNEL.
model_reasoning_effortУровень рассуждений для Codex-моделей: "low", "medium", "high", "xhigh".
base_urlБазовый URL AITUNNEL: https://api.aitunnel.ru/v1/v1, без слеша в конце).
env_keyИмя переменной окружения с API-ключом.
wire_apiПротокол: "chat" для /v1/chat/completions (рекомендуется для совместимости) или "responses" для /v1/responses.

Когда выбирать wire_api = "responses"

Codex-модели (gpt-5.3-codex, gpt-5.2-codex и т.д.) изначально рассчитаны на Responses API. AITUNNEL поддерживает оба протокола, поэтому если вам нужна нативная работа с инструментами и блоками рассуждений Codex — поменяйте wire_api на "responses". Для большинства сценариев "chat" работает корректно и даёт такой же результат.

Шаг 4: Установка API ключа в окружении

Codex читает ключ из переменной окружения, указанной в env_key (в нашем примере — AITUNNEL_API_KEY). Добавьте экспорт в профиль оболочки:

bash
# Добавьте в ~/.zshrc, ~/.bashrc или ~/.config/fish/config.fish
export AITUNNEL_API_KEY="sk-aitunnel-xxx"

После этого перезагрузите оболочку (source ~/.zshrc / exec $SHELL) или откройте новый терминал, чтобы переменная подхватилась.

Не коммитьте ключи

Никогда не коммитьте API-ключ в систему контроля версий. Храните его только в окружении или менеджере секретов.

Шаг 5: Запуск сессии

Перейдите в директорию проекта и запустите Codex:

bash
cd /path/to/your/project
codex

Все запросы теперь идут через AITUNNEL. Проверьте панель активности — запросы должны появляться в реальном времени.

Справочник конфигурации

Основные настройки

ПараметрОписаниеПример
model_providerПровайдер для запросов к моделям"aitunnel"
modelID модели на AITUNNEL"gpt-5.3-codex"
model_reasoning_effortУровень рассуждений Codex"low", "medium", "high", "xhigh"
show_raw_agent_reasoningПоказывать токены рассуждений в UItrue или false
personalityСтиль общения агента"friendly", "pragmatic", "none"
approval_policyКогда спрашивать подтверждение"on-request", "untrusted", "never"
sandbox_modeУровень доступа песочницы"workspace-write", "read-only", "danger-full-access"

Блок провайдера AITUNNEL

toml
[model_providers.aitunnel]
name = "AITUNNEL"
base_url = "https://api.aitunnel.ru/v1"
env_key = "AITUNNEL_API_KEY"
wire_api = "chat"
request_max_retries = 4
stream_max_retries = 5
stream_idle_timeout_ms = 300000
  • base_url — endpoint AITUNNEL: https://api.aitunnel.ru/v1
  • env_key — имя переменной окружения с ключом
  • wire_api"chat" или "responses"
  • request_max_retries / stream_max_retries — количество ретраев при ошибках
  • stream_idle_timeout_ms — таймаут простоя стрима (в миллисекундах)

Профили для нескольких моделей

Codex поддерживает профили — удобно держать несколько преднастроек и переключаться между ними флагом --profile:

toml
model_provider = "aitunnel"
model = "gpt-5.3-codex"

[model_providers.aitunnel]
name = "AITUNNEL"
base_url = "https://api.aitunnel.ru/v1"
env_key = "AITUNNEL_API_KEY"
wire_api = "chat"

[profiles.codex-fast]
model_provider = "aitunnel"
model = "gpt-5.1-codex-mini"
model_reasoning_effort = "low"

[profiles.codex-max]
model_provider = "aitunnel"
model = "gpt-5.1-codex-max"
model_reasoning_effort = "high"

[profiles.claude]
model_provider = "aitunnel"
model = "claude-sonnet-4-5"

Запуск с конкретным профилем:

bash
codex --profile codex-max

Доверие проектам

Codex применяет .codex/config.toml из проекта только если проект помечен как доверенный. Управлять можно через секцию [projects] в глобальном конфиге:

toml
[projects."/Users/me/work/trusted-project"]
trust_level = "trusted"

[projects."/Users/me/sandbox/untrusted-project"]
trust_level = "untrusted"
  • trusted — Codex применяет проектные .codex/config.toml, хуки и правила
  • untrusted — проектные слои игнорируются, остаются только пользовательские настройки

Подробнее — в Codex Security.

Конфиг на уровне проекта

Если разным проектам нужны разные модели, создайте .codex/config.toml в корне проекта (только для доверенных проектов!):

toml
model = "claude-sonnet-4-5"
model_reasoning_effort = "high"

Codex смержит проектный конфиг с пользовательским — основной блок [model_providers.aitunnel] остаётся в ~/.codex/config.toml, а в проекте достаточно переопределить только нужные поля.

Зачем подключать Codex CLI через AITUNNEL?

Без VPN и без аккаунта OpenAI

Codex CLI «из коробки» требует логина в ChatGPT или OpenAI API-ключ — оба варианта недоступны из России. Через AITUNNEL вы используете один ключ sk-aitunnel-xxx, оплачиваете рублями в личном кабинете и не зависите от блокировок.

Failover между провайдерами

AITUNNEL маршрутизирует запросы через несколько провайдеров. Если один из upstream'ов недоступен или упёрся в rate limit — запрос автоматически уходит к другому. Сессия Codex не прерывается.

Прозрачное использование

Все запросы Codex видны в Панели активности AITUNNEL — токены, стоимость, время ответа. Удобно отслеживать расходы и оптимизировать модели под задачи.

Гибкий выбор моделей

Через AITUNNEL доступны не только Codex-модели, но и Claude, Gemini, DeepSeek, Qwen и другие. Достаточно поменять model в config.toml или переключить профиль — переустанавливать Codex не нужно.

Файл правил AGENTS.md

Codex автоматически читает AGENTS.md (а также CODEX.md, CLAUDE.md) в корне проекта как дополнительные системные инструкции. Используйте этот файл, чтобы задать стиль кода, ограничения и контекст:

markdown
# Проект: интернет-магазин на Next.js

## Стек
- Next.js 15 (App Router), TypeScript 5.5+
- PostgreSQL + Prisma, тесты на Vitest

## Правила
- Серверные компоненты по умолчанию, `"use client"` только когда нужна интерактивность
- Любая SQL-логика — через Prisma, без сырых запросов
- Покрывать тестами всё, что лежит в `src/lib/`
- Не использовать `any` — типы выводить из Zod-схем

## Запрещено
- Коммитить `.env*` и любые секреты
- Менять схему БД без миграций

Полезные команды

В интерактивной сессии:

  • /help — список команд
  • /model — переключить модель
  • /personality — сменить стиль общения
  • /status — текущая модель и провайдер
  • /compact — сжать историю диалога

В терминале:

  • codex --help — все CLI-флаги
  • codex --profile <name> — запуск с профилем
  • codex -c model="claude-sonnet-4-5" — одноразовое переопределение настройки
  • codex --search — включить web-поиск (live-режим) для текущей сессии

Устранение неполадок

Ошибки авторизации (401 / 403)

  • Убедитесь, что переменная окружения установлена: echo $AITUNNEL_API_KEY должна показать ключ, начинающийся с sk-aitunnel-
  • Перезапустите терминал после правки ~/.zshrc / ~/.bashrc, чтобы переменная подхватилась
  • Проверьте, что ключ действителен в личном кабинете и баланс положительный
  • base_url должен быть https://api.aitunnel.ru/v1 (без / в конце)

«Model not found» / 404

  • Проверьте точный ID модели на странице моделей AITUNNEL. У OpenAI-моделей не нужен префикс openai/ — пишите просто gpt-5.3-codex, а не openai/gpt-5.3-codex
  • У некоторых моделей префикс есть (например, moonshotai/kimi-k2, qwen/qwen3-coder) — копируйте ID точно как на странице моделей

Codex пытается логиниться через ChatGPT

Если при запуске codex открывается окно входа в ChatGPT, значит не подхватился кастомный провайдер. Проверьте:

  • ~/.codex/config.toml существует и содержит model_provider = "aitunnel" на верхнем уровне
  • Имя в [model_providers.aitunnel] совпадает со значением model_provider
  • Файл валиден как TOML (нет лишних кавычек, отступов)

Ошибки использования инструментов

Codex активно использует tool calling для чтения файлов и выполнения команд. Убедитесь, что выбранная модель поддерживает вызов инструментов. Все Codex-модели, Claude и GPT поддерживают его из коробки.

Ошибки длины контекста

Если переключаете задачи на более компактные модели — следите за окном контекста. Codex-модели держат до 400k токенов. Команда /compact сжимает историю диалога, чтобы освободить место.

Странности с рассуждениями

Если ответы Codex выглядят «обрезанными» или агент не пытается думать перед ответом, проверьте model_reasoning_effort. Для сложных задач ставьте "high" или "xhigh". Для простых правок достаточно "low".

Приватность

AITUNNEL не логирует ваши промпты с исходным кодом. Подробнее — в политике конфиденциальности.

Дополнительные ресурсы

AITUNNEL