Reasonix через RouterAI: coding-агент на DeepSeek V4.1 Flash, GLM 5.3 и Claude
Reasonix
Reasonix — открытый coding-агент для терминала с десктопным приложением и интеграцией с редакторами. Исходники лежат в репозитории esengine/DeepSeek-Reasonix, лицензия MIT, текущая версия CLI — 2.57.0. Устроен он как один Go-бинарник: движок, терминальный интерфейс, настольное приложение и ACP-сервер для редакторов работают поверх одной и той же локальной сессии.
Агент читает и правит файлы, запускает команды, ведёт план задачи, поддерживает скиллы, MCP-серверы и контрольные точки для отката изменений. Отдельно он считает расход: после каждого запроса показывает, сколько токенов ушло, сколько из них попало в кеш и во сколько это обошлось.
Reasonix ставит DeepSeek пресетом по умолчанию, но провайдеры задаются в конфиге: глобальный ~/.reasonix/config.toml, проектный reasonix.toml в корне репозитория. Любой OpenAI-совместимый сервис — это одна запись в конфиге, поэтому RouterAI подключается без правки кода. В одном агенте получаете DeepSeek, GLM и Claude из каталога моделей, работу из России без VPN и оплату в рублях.
Требования
- macOS, Linux или Windows (PowerShell, Git Bash или Windows Terminal)
- Node.js не нужен:
npm i -g reasonixставит готовый бинарник под вашу платформу - API-ключ из личного кабинета
- Go 1.26+ — только если собираете из исходников
Установка
CLI и TUI:
npm i -g reasonix
reasonix --version
На macOS тот же бинарник ставится через Homebrew:
brew install esengine/reasonix/reasonix
Готовые архивы под darwin|linux|windows × amd64|arm64 и SHA256SUMS лежат на странице релизов.
Настольное приложение Reasonix Studio скачивается с официальной страницы: .dmg для macOS, .exe или portable .zip для Windows, .deb, .rpm и .AppImage для Linux. Внутри тот же движок и тот же домашний каталог ~/.reasonix, отдельная установка npm для него не требуется.
Расширение для VS Code ставится после CLI — оно запускает локальный reasonix acp и не содержит собственного бинарника:
- VS Code — из Visual Studio Marketplace
- VSCodium и Eclipse Theia — из Open VSX
Подключение к RouterAI
С версии 1.8.1 у Reasonix один домашний каталог: ~/.reasonix на macOS и Linux, %APPDATA%\reasonix на Windows. Переопределяется переменной REASONIX_HOME. Внутри:
-
config.toml— глобальный конфиг (CLI и Studio читают его оба); -
.env— ключи провайдеров; -
skills/,commands/и остальные пользовательские данные.
Проектный конфиг называется reasonix.toml и кладётся в корень проекта. Приоритет такой: флаги командной строки, затем ./reasonix.toml, затем глобальный config.toml, затем встроенные значения.
Мастер настройки
Быстрый путь — reasonix setup. Это пошаговый менеджер провайдеров: он показывает список подключений, умеет добавлять OpenAI- и Anthropic-совместимые сервисы, править адреса и списки моделей, проверять ключ и обновлять список моделей.

Внутри интерактивной сессии тот же мастер открывается командой /setup, /auth — её псевдоним.
Запись в конфиге
Провайдер RouterAI описывается блоком [[providers]]. Ключи в конфиге не хранятся — вместо значения указывается имя переменной в api_key_env, а сама переменная живёт в <Reasonix home>/.env:
ROUTERAI_API_KEY=sk-xxxxxxxxxxxxxxxx
Глобальный ~/.reasonix/config.toml:
config_version = 12
default_model = "routerai/deepseek/deepseek-v4.1-flash"
[[providers]]
name = "routerai"
kind = "openai"
base_url = "https://routerai.ru/api/v1"
models = ["deepseek/deepseek-v4.1-flash", "deepseek/deepseek-v4-pro", "z-ai/glm-5.3"]
default = "deepseek/deepseek-v4.1-flash"
api_key_env = "ROUTERAI_API_KEY"
Поля простые: name — идентификатор подключения, он же префикс в ссылке на модель; kind = "openai" — протокол OpenAI-совместимого чата; base_url — адрес API RouterAI с обязательным /v1; models — список id из каталога; default — модель, которую берёт сессия, если не указана другая; api_key_env — имя переменной с ключом.

Проектный вариант — тот же блок в ./reasonix.toml. Отличие в одном: Reasonix запускает код из проектного конфига, поэтому такой файл нужно сначала одобрить.
reasonix trust --yes --allow-providers
Без этого предупреждения ignored: it runs only after you approve it остаются, и провайдер из проекта не применяется. После любой правки провайдера — адреса, ключа или модели — подтверждение запрашивается заново.
Ключи читаются только из <Reasonix home>/.env. Переменная окружения в шелле, export в ~/.zshrc, проектный .env и связка ключей ОС провайдерными источниками не считаются — если ключ не виден, проверьте именно этот файл.
Выбор модели
Id проверены по каталогу RouterAI; актуальные цены смотрите там же — они меняются.
| Модель | Для чего |
|---|---|
deepseek/deepseek-v4.1-flash |
Основная рабочая модель: правки, тесты, разбор кода; контекст 1M токенов |
deepseek/deepseek-v4-pro |
Сложные многошаговые задачи, где важно качество рассуждения |
z-ai/glm-5.3 |
Альтернатива DeepSeek: длинный контекст, другой стиль правок |
anthropic/claude-sonnet-5.5 |
Сложный рефакторинг и архитектурные решения |
anthropic/claude-haiku-5.5 |
Быстрые мелкие запросы и вспомогательные подзадачи |
Сменить модель в сессии — команда /model, переключить провайдера — /provider. Обе открывают поиск по настроенным подключениям. Однократный запуск с другой моделью:
reasonix --model routerai/anthropic/claude-sonnet-5.5
Ссылка на модель состоит из имени провайдера и id из каталога. Две модели можно совмещать: исполнитель в default_model и планировщик в [agent].planner_model работают в отдельных сессиях и не мешают друг другу.
Проверка подключения
Самый быстрый способ — одноразовый запуск без интерфейса:
cd ~/projects/invoices
reasonix run "Прогони npm test и покажи результат"
Команда выполнит запрос, покажет вызовы инструментов и вернёт ответ в терминал. Если ключ не найден, Reasonix сообщит об этом прямо: no stored key for ROUTERAI_API_KEY.
Интерактивная сессия запускается командой reasonix без аргументов. Задача формулируется обычным текстом, правки агент показывает диффом, команды просит подтвердить.

Для проверки без подтверждений на каждый шаг есть режимы разрешений: --permission-mode acceptEdits применяет правки файлов автоматически, --permission-mode bypassPermissions (он же --yolo) снимает запросы совсем, оставляя песочницу и правила запретов.

Решение проблем
no stored key for DEEPSEEK_API_KEY
Reasonix взял пресет DeepSeek вместо вашего провайдера: в default_model осталась модель без префикса или проектный конфиг не одобрен. Проверьте, что в default_model стоит routerai/<id модели>, а провайдер виден в reasonix setup.
ignored: it runs only after you approve it
Проектный reasonix.toml не подтверждён. Выполните reasonix trust --yes --allow-providers в каталоге проекта. Отдельного подтверждения мало: без флага --allow-providers провайдер, которому передаётся ключ, остаётся неодобренным.
bash sandbox requested but unavailable on this host
Для запуска команд Reasonix использует bubblewrap. В контейнерах и на хостах без поддержки пространств имён он отказывается выполнять шелл «без изоляции». Варианты: поставить bubblewrap, либо отключить песочницу для bash в [sandbox] bash = "off" — осознанно, понимая, что команды пойдут без изоляции.
edit_file blocked by permission policy
Неинтерактивный запуск (reasonix run) некому подтверждать правки. Запускайте с --permission-mode acceptEdits или опишите разрешения в [permissions]:
[permissions]
mode = "allow"
allow = ["Bash(npm test:*)", "Bash(node --test:*)"]
Правило сравнивается с началом команды, поэтому cd /work && npm test под шаблон Bash(npm test:*) не подходит — нужен отдельный шаблон на cd либо запуск из нужного каталога.
401 или 404 от провайдера
401 — ключ не тот или не попал в .env. 404 — почти всегда адрес: для OpenAI-совместимого протокола нужен https://routerai.ru/api/v1, с /v1. Если сервис отвечает 402, закончились средства на балансе — пополните его в разделе Биллинг.
Что дальше
- Каталог моделей — цены и контекст всех доступных моделей
-
ACP (Agent Client Protocol) — как редакторы общаются с агентом; Reasonix поднимает ACP-сервер командой
reasonix acp - Codewhale через RouterAI и Hermes Agent — другие терминальные агенты с любым Base URL
- Документация Reasonix — все подкоманды и слэш-команды