Claude Code (VS Code)
Подключение Claude Code (CLI и расширение VS Code) к Hubris через эндпоинт /v1/messages — Fable, Sonnet, Opus, Haiku, reasoning effort, кэширование, статусная строка.
Claude Code — официальный агент Anthropic. Работает в терминале и как расширение VS Code, понимает контекст проекта, умеет редактировать файлы, исполнять команды, читать скриншоты, держит долгую сессию с кэшированием промптов. Поддерживает любой Anthropic-совместимый бэкенд через переменные окружения. Hubris подходит из коробки — и для CLI, и для VS Code.
Что вы получите
- Доступ ко всему семейству Claude (Fable 5, Sonnet 5, Opus 4.8, Haiku 4.5 и предыдущие поколения) с оплатой в рублях.
- Не только Claude: любая чат-модель каталога — GPT, Gemini, DeepSeek и другие.
- Нативное
prompt cachingдля длинных сессий — экономит до десятков рублей на каждом турне. - Чтение скриншотов и других изображений (vision).
- Использование инструментов (tool use) для редактирования файлов и запуска команд.
- Опциональная statusline в TUI с балансом, расходом сессии и текущей моделью.
Требования
- macOS / Linux / WSL / современный терминал на Windows — либо VS Code с расширением Claude Code.
- Аккаунт на hubris.pw и API-ключ формата
sk-gw-…(создать на /keys). - Положительный баланс — пополнить можно здесь.
Установка Claude Code
Подробная инструкция — в официальной документации. Варианты:
- VS Code: Extensions (
Ctrl+Shift+X) → «Claude Code» (издатель Anthropic) → Install. - CLI:
npm install -g @anthropic-ai/claude-codeАльтернатива — однострочный установщик:
curl -fsSL https://claude.ai/install.sh | bashУбедитесь, что Claude Code запускается: claude --version (для CLI) или иконка Claude в сайдбаре VS Code.
Подключение к Hubris
Рекомендуемый способ — блок env в файле ~/.claude/settings.json (Windows: C:\Users\<имя>\.claude\settings.json). Его подхватывают и CLI, и расширение VS Code, поэтому конфиг настраивается один раз:
{
"env": {
"ANTHROPIC_AUTH_TOKEN": "sk-gw-ВАШ_КЛЮЧ",
"ANTHROPIC_BASE_URL": "https://api.hubris.pw",
"ANTHROPIC_API_KEY": "",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "anthropic/claude-haiku-4.5",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "anthropic/claude-sonnet-5",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "anthropic/claude-opus-4.8",
"ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES": "effort,xhigh_effort,max_effort,thinking,adaptive_thinking,interleaved_thinking",
"ANTHROPIC_MODEL": "anthropic/claude-opus-4.8",
"ANTHROPIC_SMALL_FAST_MODEL": "anthropic/claude-haiku-4.5"
}
}Пояснения к неочевидным строкам:
ANTHROPIC_API_KEY: ""— предохранитель: если в системе уже лежит настоящий ключ Anthropic, пустая строка не даст Claude Code случайно отправить его на шлюз.ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES— возвращает ползунок reasoning effort, см. ниже.- Вход в аккаунт Anthropic не нужен — авторизация идёт по ключу
sk-gw-….
После сохранения файла перезапустите VS Code (или откройте новый терминал) и запустите агента из папки проекта. Первый же запрос уйдёт в Hubris вместо api.anthropic.com и спишется с вашего баланса в рублях — проверить можно на странице Использование.
Альтернатива для CLI — обычные переменные окружения в ~/.bashrc / ~/.zshrc (или профиле PowerShell):
export ANTHROPIC_BASE_URL="https://api.hubris.pw"
export ANTHROPIC_AUTH_TOKEN="sk-gw-..."Выбор модели
В рабочей сессии переключайте модель командой /model. Полный список — в каталоге.
Какие имена принимает Hubris:
- Канонические id с провайдером —
anthropic/claude-opus-4.8,anthropic/claude-sonnet-5,anthropic/claude-fable-5. Работают для всех моделей каталога — рекомендуем именно их. - Короткие Anthropic-имена —
claude-sonnet-4-5,claude-opus-4-7,claude-haiku-4-5(в том числе с датой или-latestна конце). Поддерживаются для поколений до Sonnet 4.6 / Opus 4.7 включительно.
Чтобы зафиксировать модель по умолчанию, задайте ANTHROPIC_MODEL в конфиге выше или передайте её при запуске CLI:
claude --model anthropic/claude-sonnet-5Какая модель когда подходит
| Модель | Когда брать |
|---|---|
anthropic/claude-haiku-4.5 | быстрые ответы, поиск по коду, простые правки, дёшево. |
anthropic/claude-sonnet-5 | основной рабочий вариант: качественные правки, рефакторинги, длинные сессии. |
anthropic/claude-opus-4.8 | сложные архитектурные задачи, миграции, разбор багов в больших кодовых базах. |
anthropic/claude-fable-5 | максимум качества для самых трудных задач; заметно дороже Opus. |
Reasoning effort: ползунок low/medium/high
Claude Code показывает выбор глубины рассуждения (low / medium / high) только для моделей, чьи имена он узнаёт. Канонические id вида anthropic/claude-opus-4.8 под встроенные шаблоны не подпадают, поэтому без дополнительной настройки ползунок пропадает — хотя сама модель effort полностью поддерживает.
Решение — объявить возможности модели явно через переменную ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES (уже включена в рекомендуемый конфиг выше). После перезапуска ползунок возвращается в /model и в VS Code. Аналогичная переменная с суффиксом _SUPPORTED_CAPABILITIES есть и у ANTHROPIC_DEFAULT_SONNET_MODEL.
Управлять уровнем можно и без ползунка:
- команда
/effort highпрямо в сессии; - поле
"effortLevel": "high"в~/.claude/settings.json(вне блокаenv) — сохраняет выбор между сессиями; - флаг CLI
claude --effort high.
Любые чат-модели каталога — GPT, Gemini, DeepSeek и другие
Claude Code через Hubris не ограничен моделями Anthropic. Эндпоинт /v1/messages принимает любую чат-модель каталога: формат Anthropic конвертируется на стороне агрегатора, ответ приходит в привычном Claude Code виде — со стримингом, tool use и токен-статистикой. Проверено вживую на openai/gpt-4o-mini, google/gemini-3.6-flash и deepseek/deepseek-chat.
Просто укажите канонический id модели из каталога в тех же переменных:
{
"env": {
"ANTHROPIC_AUTH_TOKEN": "sk-gw-ВАШ_КЛЮЧ",
"ANTHROPIC_BASE_URL": "https://api.hubris.pw",
"ANTHROPIC_API_KEY": "",
"ANTHROPIC_MODEL": "openai/gpt-4o-mini",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "google/gemini-3.6-flash",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek/deepseek-chat",
"ANTHROPIC_SMALL_FAST_MODEL": "anthropic/claude-haiku-4.5"
}
}Слоты переключателя /model (Haiku / Sonnet / Opus) — это просто «ярлыки»: какую модель подставить в каждый, решаете вы через ANTHROPIC_DEFAULT_*_MODEL. В сессии можно указать и произвольную модель напрямую: /model google/gemini-3.6-flash.
Вариант конфигурации: настройки расширения VS Code
Вместо ~/.claude/settings.json те же переменные можно задать прямо в настройках VS Code — поле claudeCode.environmentVariables (массив объектов {"name", "value"}). Важно: настройка применяется только из User Settings (Ctrl+Shift+P → «Preferences: Open User Settings (JSON)»), в workspace-файле проекта она игнорируется.
{
"claudeCode.environmentVariables": [
{ "name": "ANTHROPIC_BASE_URL", "value": "https://api.hubris.pw" },
{ "name": "ANTHROPIC_AUTH_TOKEN", "value": "sk-gw-ВАШ_КЛЮЧ" },
{ "name": "ANTHROPIC_API_KEY", "value": "" },
{ "name": "ANTHROPIC_MODEL", "value": "openai/gpt-4o-mini" }
]
}Не задавайте одну и ту же переменную и здесь, и в ~/.claude/settings.json — выберите одно место, чтобы конфигурация оставалась предсказуемой.
Ограничения
- Работают только чат-модели (
text-вывод). Image-, видео- и embedding-модели каталога через Claude Code недоступны. - Ползунок reasoning effort показывается только для Claude-моделей — у остальных глубина рассуждений управляется самой моделью.
- Экономия на кэшировании промптов — сильная сторона именно Claude-моделей; у других провайдеров кэш работает иначе или не работает вовсе.
- Claude Code — агент, обученный в первую очередь под Claude. С другими моделями он работает, но качество агентных сценариев (инструменты, длинные сессии) может отличаться.
Statusline с балансом
В нижней строке TUI Claude Code можно выводить текущий баланс Hubris, расход сессии и активную модель. Скрипт обновляется на каждом турне и не блокирует ответ модели.
Установка (Linux / macOS / WSL)
curl -fsSL https://hubris.pw/scripts/claude-statusline.sh \
-o ~/.claude/hubris-statusline.sh
chmod +x ~/.claude/hubris-statusline.shДобавьте в ~/.claude/settings.json:
{
"statusLine": {
"type": "command",
"command": "~/.claude/hubris-statusline.sh"
}
}Установка (Windows / кросс-платформа на Node.js)
Invoke-WebRequest -Uri https://hubris.pw/scripts/claude-statusline.mjs `
-OutFile $env:USERPROFILE\.claude\hubris-statusline.mjsВ ~/.claude/settings.json:
{
"statusLine": {
"type": "command",
"command": "node ~/.claude/hubris-statusline.mjs"
}
}Скрипт читает ANTHROPIC_AUTH_TOKEN из среды (тот же ключ, что использует CC) и обращается к /v1/usage за расходом и балансом. Запросы на статус — бесплатны (не списываются с баланса).
Пример вывода:
hubris │ Sonnet 5 │ session 0,42 ₽ · today 12,18 ₽ · balance 1 287 ₽Прочая конфигурация
| Переменная окружения | Что делает |
|---|---|
ANTHROPIC_BASE_URL | URL шлюза. Для Hubris — https://api.hubris.pw. |
ANTHROPIC_AUTH_TOKEN | API-ключ sk-gw-…. Используется как Authorization: Bearer. |
ANTHROPIC_MODEL | модель по умолчанию. |
ANTHROPIC_SMALL_FAST_MODEL | модель для лёгких подзадач (резюмирование, выбор имени). Оставляйте anthropic/claude-haiku-4.5. |
ANTHROPIC_DEFAULT_HAIKU_MODEL / ..._SONNET_MODEL / ..._OPUS_MODEL | какие модели подставляются в стандартные пункты переключателя /model. |
ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES | явное объявление возможностей модели (effort, thinking) — нужно при канонических id, см. раздел про reasoning effort. |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC | 1 — отключает фоновые запросы Claude Code к сервисам Anthropic (телеметрия, проверка обновлений). Необязательно. |
Дневные лимиты
Если на ключе включён дневной лимит трат (можно поставить на /keys), Hubris вернёт 429 rate_limit_error. Claude Code отобразит ошибку в TUI и предложит остановить сессию. Лимит обнуляется ежедневно в 00:00 UTC.
Кэширование промптов
Claude Code сам управляет cache_control для длинных системных промптов и расшаренного контекста. Hubris передаёт это поле в Anthropic без изменений и списывает по фактической стоимости с учётом cache hit (0,1× от обычной цены) или cache write (1,25×). Подробности — в API-референсе /v1/messages.
Часто задаваемые вопросы
Можно ли использовать через настоящий ключ Anthropic параллельно?
Да: переменные ANTHROPIC_* локальные. Достаточно открыть второй терминал без них — Claude Code пойдёт напрямую.
Где увидеть детальный расход? Все запросы появляются на странице Использование с разбивкой по моделям и времени. Через API — GET /v1/usage.
Поддерживается ли Privacy Mode для маскирования PII?
В первой версии — нет. Если нужно маскирование, делайте запросы через /v1/chat/completions с заголовком X-Hubris-Privacy-Mask. Поддержка на /v1/messages появится позже.
Что делать, если Hubris отвечает 404 not_found_error на модель?
Чаще всего это короткое имя новой модели (например claude-opus-4-8), которое шлюз пока не распознаёт. Используйте канонический id из каталога — anthropic/claude-opus-4.8 — или переключитесь командой /model.
Пропал ползунок low/medium/high у Opus — как вернуть?
Добавьте ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES в блок env (см. рекомендуемый конфиг) и перезапустите VS Code. Подробности — в разделе про reasoning effort.
Что дальше
- POST /v1/messages — полный API-референс по эндпоинту.
- Каталог моделей — активные Claude-модели и цены в рублях.
- Использование — детальный расход по запросам.
- Биллинг — пополнение баланса через СБП.
Обновлено: