OpenCodex: NordRouter в Codex CLI
OpenCodex — сторонний локальный прокси для Codex и Claude Code. Он принимает запросы Codex в формате Responses API и переводит их в OpenAI-compatible /chat/completions, поэтому для Codex это надёжнее прямого подключения к NordRouter через /responses.
Когда это нужно
Используйте OpenCodex, если хотите запускать обычный Codex CLI с моделями NordRouter. Для OpenCode, Cline, Roo Code и других клиентов такой прокси не нужен: они подключаются к NordRouter напрямую.
OpenCodex не является продуктом NordRouter или OpenAI. Исходный код и релизы: lidge-jun/opencodex.
Установка
Нужен Node.js 18 или новее. Установите OpenCodex глобально:
Инструкция проверена с версией 2.7.31:
npm install -g @bitkyc08/opencodex@2.7.31Создайте файл конфигурации:
- Windows:
%USERPROFILE%\.opencodex\config.json; - macOS/Linux:
~/.opencodex/config.json.
{
"port": 10100,
"defaultProvider": "nordrouter",
"providers": {
"nordrouter": {
"adapter": "openai-chat",
"baseUrl": "https://nordrouter.com/v1",
"authMode": "key",
"apiKey": "${NORDROUTER_API_KEY}",
"defaultModel": "anthropic/claude-sonnet-4.6"
}
}
}Не вставляйте ключ в инструкцию или скриншот
В примере ключ читается из NORDROUTER_API_KEY, а не хранится в JSON. OpenCodex работает локально, но всё равно получает доступ к вашему API-ключу и может изменять конфигурацию Codex. Устанавливайте его только из указанного репозитория и npm-пакета.
Задайте API-ключ
PowerShell, только для текущего окна:
$env:NORDROUTER_API_KEY = "sk-nr-ВАШ-КЛЮЧ"macOS/Linux, только для текущего терминала:
export NORDROUTER_API_KEY="sk-nr-ВАШ-КЛЮЧ"Если OpenCodex запускается как фоновая служба, переменная должна быть доступна именно этой службе, а не только текущему терминалу.
Запуск
ocx startocx start работает в текущем терминале и при запуске сам синхронизирует модели. Оставьте его запущенным, а Codex откройте во втором терминале:
Панель OpenCodex доступна локально на http://localhost:10100. По умолчанию прокси слушает только 127.0.0.1; не меняйте адрес на 0.0.0.0, если вам не нужен доступ с других устройств.
codex -m "nordrouter/anthropic-claude-sonnet-4.6"У моделей NordRouter исходный ID содержит /. В списке Codex OpenCodex заменяет внутренний / на -, поэтому модель anthropic/claude-sonnet-4.6 отображается как nordrouter/anthropic-claude-sonnet-4.6. В запрос к NordRouter автоматически уходит исходный ID.
Проверка и обновление моделей
OpenCodex получает список моделей из защищённого эндпоинта NordRouter /v1/models. После изменения каталога выполните:
ocx syncЕсли модели не появились:
- проверьте, что переменная
NORDROUTER_API_KEYзадана в том же окружении; - проверьте Base URL — он должен заканчиваться ровно на
/v1; - выполните
ocx doctor, затемocx sync; - сначала проверьте ключ обычным запросом из быстрого старта.
Поддержка инструментов, изображений и уровней reasoning зависит от выбранной модели. OpenCodex переводит протокол, но не добавляет модели возможности, которых у неё нет.
Как полностью удалить OpenCodex
ocx uninstall
npm uninstall -g @bitkyc08/opencodexПо документации проекта, ocx uninstall останавливает локальный прокси, удаляет службу и shim, восстанавливает исходную конфигурацию Codex и удаляет каталог ~/.opencodex.