Загрузка...

Вайб-кодинг в OpenClaude: настройка терминального агента через RouterAI

OpenClaude

OpenClaude — терминальный coding-агент с открытым исходным кодом (репозиторий Twigpine/openclaude, npm-пакет @twigpine/openclaude). Он читает и правит файлы, запускает команды, подключает MCP-серверы и работает с любым OpenAI-совместимым API, а также с Gemini, GitHub Models, Codex OAuth и Ollama. Провайдеров настраивают внутри агента командой /provider, профили сохраняются между запусками.

OpenClaude — независимый проект и не связан с Claude Code и с агентом OpenClaw. RouterAI подключается как OpenAI-совместимый провайдер: в одном агенте доступны Claude, GPT, DeepSeek и GLM из каталога моделей, работа из России без VPN и оплата в рублях.

Требования

  • macOS, Linux или Windows (PowerShell или WSL)
  • Node.js 24.22.1 или новее (в README рекомендован Node 26)
  • API-ключ из личного кабинета
  • ripgrep (rg) в системе — без него агент сообщит ripgrep not found

Установка

npm install -g @twigpine/openclaude@latest
openclaude --version

Команда openclaude --version выводит версию, на момент написания — 0.34.0 (OpenClaude).

Если раньше стоял старый пакет @gitlawb/openclaude, он больше не обновляется: проект переехал в scope @twigpine. Оба пакета дают одну и ту же команду openclaude, поэтому npm не станет ставить один поверх другого. Сначала удалите старый:

npm uninstall -g @gitlawb/openclaude
npm install -g @twigpine/openclaude@latest

Настройки и сессии в ~/.openclaude и ~/.openclaude.json не затрагиваются. Не используйте --force: при последующем удалении старого пакета пропадёт команда openclaude.

Для Arch Linux есть AUR-пакет (paru -S openclaude).

Подключение к RouterAI

OpenClaude не подхватывает .env из проекта автоматически. Поэтому проще всего один раз запустить агент с файлом переменных, а затем сохранить постоянный профиль через /provider.

  1. Создайте файл .env (не добавляйте его в git):
CLAUDE_CODE_USE_OPENAI=1
OPENAI_BASE_URL=https://routerai.ru/api/v1
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxx
OPENAI_MODEL=anthropic/claude-sonnet-5.5
  1. Запустите агент в папке проекта:
cd /path/to/your/project
openclaude --provider-env-file .env

На первом запуске OpenClaude предложит выбрать тему оформления, а затем спросит, доверяете ли вы папке (Yes, I trust this folder).

Первый запуск OpenClaude: экран выбора темы оформления

Профиль через /provider

Команда /provider открывает Provider manager с пунктами Add provider, Set active provider, Edit provider и Delete provider. Профиль сохраняется в файле .openclaude-profile.json в каталоге ~/.openclaude.

Provider manager: пустой список профилей и меню Add provider, Set active provider, Edit provider, Delete provider

  1. Введите /provider и выберите Add provider.
  2. В списке пресетов (Choose provider preset) выберите последний пункт — Custom (OpenAI-compatible), «Any OpenAI-compatible provider». Он идёт под номером 47 в конце списка.
  3. Мастер Create provider profile состоит из 8 шагов. На шаге 1 (Provider name) введите RouterAI.
  4. Шаг 2, Base URL: https://routerai.ru/api/v1.
  5. Шаг 3, Default model: anthropic/claude-sonnet-5.5. Через ; или , можно перечислить несколько моделей, первая станет моделью по умолчанию.
  6. Шаг 4, API mode: оставьте Automatic или выберите Chat Completions.
  7. Шаги 5 и 6 (Auth header и Auth header value) пропустите — они нужны только для провайдеров с нестандартным заголовком ключа.
  8. Шаг 7, API key: вставьте ключ из личного кабинета, при вводе он скрыт звёздочками.
  9. Шаг 8, Custom headers: оставьте пустым и нажмите Enter.

Если вы запустили агент с --provider-env-file, мастер подставит значения из переменных окружения в поля Base URL, модели и ключа — проверьте их и нажимайте Enter.

Список пресетов провайдера: выбран последний пункт Custom (OpenAI-compatible)

Шаг 2 из 8 мастера Create provider profile: поле Base URL со значением https://routerai.ru/api/v1

Шаг 3 из 8: поле Default model со значением anthropic/claude-sonnet-5.5

Шаг 7 из 8: поле API key, ключ скрыт звёздочками, виден только конец заглушки

После последнего шага Provider manager сообщает Added provider: RouterAI (now active) и показывает строку профиля: тип, Base URL, модель, режим chat/completions и пометку key set (active).

Provider manager после добавления: профиль RouterAI активен, Base URL https://routerai.ru/api/v1, модель anthropic/claude-sonnet-5.5

Несколько профилей

Профилей может быть сколько угодно: например, один с anthropic/claude-sonnet-5.5 для сложных задач, другой с deepseek/deepseek-v4.1-flash для массовых правок. Переключение между ними — пункт Set active provider в /provider. Список моделей профиля можно задать сразу на шаге 3 через ; или ,.

Выбор модели

Идентификаторы проверены по каталогу RouterAI на момент написания; цены и актуальный список смотрите в каталоге. Для агента важна сильная поддержка вызова инструментов (tool calling): OpenClaude сам советует брать модели с хорошим function calling.

Модель Для чего
anthropic/claude-sonnet-5.5 Основная модель для кода: фичи, отладка, рефакторинг среднего размера
anthropic/claude-opus-5.5 Сложные рефакторинги и архитектурные изменения
anthropic/claude-haiku-5.5 Быстрые мелкие запросы и вспомогательные задачи
openai/gpt-6.1-terra Альтернатива Claude от OpenAI для тех же задач
deepseek/deepseek-v4.1-flash Дешёвые массовые правки и переименования
z-ai/glm-5.3 Альтернативная модель для кода и рефакторинга

Проверка подключения

Быстрая проверка без интерактивного интерфейса: флаг -p (--print) выполняет один запрос, печатает ответ и завершает работу.

openclaude -p --provider-env-file .env "Ответь одним словом: OK"

Для проверки в работе запустите openclaude в папке демо-проекта с тестами и попросите: «Запусти npm test и коротко скажи, что проверяют тесты». OpenClaude покажет вызов инструмента Bash и спросит разрешение: Yes, Yes, and don't ask again for: npm test:* или No. После ответа в строке статуса видны модель, использованный контекст (ctx) и оценка стоимости.

Сессия OpenClaude: запуск npm test, все тесты прошли, в строке статуса модель anthropic/claude-sonnet-5.5

Сессии, MCP и поиск

Сессии хранятся на диске, поэтому работу можно продолжить:

openclaude --continue
openclaude --resume <session-id>
openclaude --resume <session-id> --fork-session

--continue возвращает последний диалог в текущей папке, --resume — диалог по ID, а --fork-session ответвляет историю в новую сессию (рабочая копия файлов при этом не копируется). Внутри агента команда /sessions показывает диалоги проекта.

MCP-серверы подключаются командой openclaude mcp add (например, openclaude mcp add --transport http <имя> <url>); диагностика — openclaude mcp doctor. Для веб-поиска команда /search выбирает бэкенд: по умолчанию это Exa с бесплатным уровнем без ключа, /search status показывает активный, /search test выполняет пробный запрос.

Безопасность

  • Агент отправляет провайдеру (в нашем случае RouterAI) ваши запросы, содержимое прочитанных файлов и вывод выполненных команд — это нужно моделям для работы. Не запускайте его в папках с секретами, которые не должны попадать в модель.
  • Перед каждым вызовом инструмента (Bash, правка файла) агент спрашивает разрешение. Не включайте --dangerously-skip-permissions вне изолированной среды.
  • Профиль в .openclaude-profile.json содержит ключ. Не копируйте его в репозиторий.
  • Веб-поиск и WebFetch обращаются к сторонним сервисам (Exa и другим), а глубокий поиск по истории в /resume отправляет фрагменты диалогов модели-провайдеру, см. README.

Решение проблем

Требуется другая версия Node.js

OpenClaude требует Node.js 24.22.1 или новее. Проверьте node --version; на более старых версиях установка и запуск не пройдут.

ripgrep not found

Установите ripgrep системно (sudo apt install ripgrep, brew install ripgrep) и убедитесь, что rg --version работает в том же терминале, где запускается openclaude.

401 Unauthorized

Ключ не передан или неверный. Проверьте поле API key в /provider (Edit provider) или OPENAI_API_KEY в .env, и что ключ скопирован из личного кабинета полностью.

404 Not Found или «модель не найдена»

Base URL должен быть https://routerai.ru/api/v1 — с /v1. Идентификатор модели проверьте по каталогу: он пишется целиком, с префиксом производителя, например anthropic/claude-sonnet-5.5.

402 Payment Required

Недостаточно средств на балансе — пополните его в разделе Биллинг.

Обновление зависло (update-lock)

Глобальное обновление использует файл .update.lock в ~/.openclaude (или в каталоге из OPENCLAUDE_CONFIG_DIR). Старый файл автоматически не удаляется. Если обновление было прервано, сначала убедитесь, что все процессы OpenClaude и менеджера пакетов остановлены, затем удалите только .update.lock и повторите openclaude update. Не удаляйте его, пока обновление идёт.

Что дальше