Claude Code
Claude Code работает через Anthropic Messages: ответ, вызов инструментов и создание файла — проверено на живом шлюзе (Claude Code 2.1.293).
Быстро — одной командой
Заголовок раздела «Быстро — одной командой»Нужен ZubrCode (curl -fsSL https://zubriq.by/install.sh | sh
или irm https://zubriq.by/install.ps1 | iex на Windows). Дальше:
zubrcode connect claudeКоманда откроет вход на zubriq.by (можно подтвердить на другом устройстве),
выпустит Claude Code отдельный ключ — в списке «Где выполнен вход» он виден как
claude-code@<имя машины>, — покажет, что поменяется в
~/.claude/settings.json, и после «y» запишет. Свои настройки в файле
остаются; прежняя версия сохраняется рядом как settings.json.zubrcode-bak-….
--key sk-…— взять готовый ключ без входа в браузере;--yes— без вопроса (для скриптов);zubrcode connect claude --undo— вернуть файл как было.
Записывает ровно то, что в разделе «Настройка» ниже, — его можно сделать и руками.
Настройка
Заголовок раздела «Настройка»// ~/.claude/settings.json (Windows: %USERPROFILE%\.claude\settings.json){ "env": { "ANTHROPIC_BASE_URL": "https://api.zubriq.by", "ANTHROPIC_AUTH_TOKEN": "sk-…", "ANTHROPIC_MODEL": "zubr-coder[1m]", "ANTHROPIC_DEFAULT_SONNET_MODEL": "zubr-flash[1m]", "ANTHROPIC_DEFAULT_OPUS_MODEL": "zubr-coder[1m]", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "zubr", "CLAUDE_CODE_MAX_CONTEXT_TOKENS": "262144", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1" }}ANTHROPIC_BASE_URL— без/v1: Claude Code сам добавляет/v1/messages.ANTHROPIC_MODEL— основная модель;ANTHROPIC_DEFAULT_HAIKU_MODEL— модель для фоновых мелких задач. Без неё Claude Code просит модель Anthropic, которой у ключа может не быть.ANTHROPIC_DEFAULT_SONNET_MODELиANTHROPIC_DEFAULT_OPUS_MODEL— модели служебных подзадач: Claude Code сам просит Sonnet/Opus, и без этих переменных такие запросы уходят на модели Anthropic, которых у ключа может не быть, — шлюз отвечает403 key_model_access_denied.[1m]в конце имени модели — окно 1M: Claude Code понимает, что это 1M-модель, а суффикс отрезает перед запросом — на шлюз уходит чистыйzubr-coder/zubr-flash.zubr— 256k, его окно задаётCLAUDE_CODE_MAX_CONTEXT_TOKENS(на модели с[1m]эта переменная не влияет).
Слоты Claude Code — по уровням семейства Zubr:
| Слот Claude Code | Модель ZuBrIQ | Окно |
|---|---|---|
Haiku (ANTHROPIC_DEFAULT_HAIKU_MODEL) |
zubr — Zubr Local |
256k |
Sonnet (ANTHROPIC_DEFAULT_SONNET_MODEL) |
zubr-flash — Zubr Flash |
1M |
Opus (ANTHROPIC_DEFAULT_OPUS_MODEL) |
zubr-coder — Zubr Pro |
1M |
Zubr Max отдельным именем по API недоступен (см. API), поэтому Opus — тоже zubr-coder.
Переменные окружения
Заголовок раздела «Переменные окружения»То же самое — переменными, без файла настроек:
export ANTHROPIC_BASE_URL=https://api.zubriq.byexport ANTHROPIC_AUTH_TOKEN=sk-…export ANTHROPIC_MODEL=zubr-coder[1m]export ANTHROPIC_DEFAULT_HAIKU_MODEL=zubrexport ANTHROPIC_DEFAULT_SONNET_MODEL=zubr-flash[1m]export ANTHROPIC_DEFAULT_OPUS_MODEL=zubr-coder[1m]export CLAUDE_CODE_MAX_CONTEXT_TOKENS=262144claude# Windows (PowerShell)$env:ANTHROPIC_BASE_URL = "https://api.zubriq.by"$env:ANTHROPIC_AUTH_TOKEN = "sk-…"$env:ANTHROPIC_MODEL = "zubr-coder[1m]"$env:ANTHROPIC_DEFAULT_HAIKU_MODEL = "zubr"$env:ANTHROPIC_DEFAULT_SONNET_MODEL = "zubr-flash[1m]"$env:ANTHROPIC_DEFAULT_OPUS_MODEL = "zubr-coder[1m]"$env:CLAUDE_CODE_MAX_CONTEXT_TOKENS = "262144"claudeПроверка
Заголовок раздела «Проверка»claude -p "Ответь одним словом: ок"Если просит войти в аккаунт Anthropic
Заголовок раздела «Если просит войти в аккаунт Anthropic»Заведите отдельный каталог настроек и уберите из окружения ANTHROPIC_API_KEY
и CLAUDE_CODE_OAUTH_TOKEN:
export CLAUDE_CONFIG_DIR="$HOME/.claude-zubriq"unset ANTHROPIC_API_KEYunset CLAUDE_CODE_OAUTH_TOKENПроблемы
Заголовок раздела «Проблемы»[claude-code:unrecognized_model] {"model":"zubr-coder[1m]",…}— безвредно: Claude Code не знает имя модели ZuBrIQ, работа идёт. Суффикс[1m]перед запросом отрезается, на шлюз уходит чистыйzubr-coder.- Сообщение про оплату классификатора авто-режима («your requests go through
api.zubriq.by, which isn’t compatible with this update. Nothing breaks…») —
безвредно, авто-режим работает. Но оно печатается в stdout, поэтому
claude -p … --output-format jsonвыдаёт не чистый JSON — в скриптах берите последнюю строку вывода.
Ошибки шлюза — на странице Сторонние агенты.