Changelog
Записи о breaking changes API, новых моделях, обновлениях платформы Hubris.
Записи о значимых изменениях платформы, документации и SDK. Полная история коммитов — внутренняя.
2026-05-28 — OAuth 2.0 + PKCE для сторонних приложений (Phase A)
Сторонние приложения могут подключаться к Hubris через стандартный OAuth flow с тремя scopes (chat:write, models:read, balance:read) и опциональным дневным лимитом на токен. Claude Desktop, Claude.ai, Cursor и другие MCP-клиенты теперь подключаются нативно через «Add custom connector» UI — без mcp-remote шима. Подробности и Python-пример: /docs/integrations/oauth.
2026-05-26 — MCP-сервер для Claude Desktop / Claude Code / Cline (Beta)
Подключите Hubris к AI-агенту по протоколу Model Context Protocol: URL https://api.hubris.pw/mcp, тот же Bearer-ключ sk-gw-.... Агент получает каталог моделей, баланс и запросы к LLM (chat/complete — полный паритет с /v1/chat/completions) через одно подключение. Биллинг — как обычно. Фича в Beta — поведение и набор инструментов могут поменяться.
2026-05-25 — Чат в личном кабинете (Beta)
В ЛК появился раздел Чат — браузерный интерфейс к любой из 300+ моделей каталога. Альтернатива внешним чат-клиентам, когда нужно «быстро спросить» без curl и API-ключей.
- История хранится только в этом браузере. Чаты живут в localStorage — сервер Hubris их не видит и не может восстановить. В журнале запросов остаются только метаданные (модель, токены, стоимость), как и для API-вызовов. При очистке данных браузера или смене устройства чаты пропадут — для бэкапа есть «Скачать всё» и импорт из JSON в настройках чата.
- Одна модель на чат. Выбирается при создании, в шапке отображается название и провайдер. Чтобы попробовать другую модель — создаётся новый чат.
- Edit и regen, без веток. Любое сообщение пользователя можно отредактировать — хвост чата перепрогоняется заново (с подтверждением, если удаляется ≥2 сообщений). Под последним ответом ассистента — кнопка «Перегенерировать».
- Лимиты. До 50 сообщений в одном чате (мягкое предупреждение с 40), до 30 чатов в сайдбаре. При достижении — баннер «Создайте новый чат» с кнопкой «Скачать этот». Защита от тормозов DOM и переплаты за input-replay (каждый новый запрос отправляет всю историю в модель).
- Кликабельные источники для Perplexity Sonar. Маркеры
[1],[2]в ответах web-search моделей превращаются в маленькие фиолетовые pill-ссылки на оригинальные источники. Под ответом — полный список URL с hostname и путём. - Поддержка LaTeX-формул. Inline
\(...\)и блочные\[...\]рендерятся через KaTeX — нужно для reasoning-моделей (Sonar Reasoning, Sonar Deep Research), которые форматируют числа и формулы в математической нотации. - Stop с честным биллингом. Кнопка «Остановить» во время стрима абортит чтение, но сервер дочитывает апстрим до конца и списывает полную стоимость (соответствие SPEC §10). В подсказке у кнопки — явное «не отменяет списание».
- Списание как обычно, без прогноза. Каждое сообщение оплачивается из основного баланса так же, как
/v1/*запрос. При нулевом балансе — баннер «Пополнить», следующее сообщение не отправляется до пополнения. - Privacy-онбординг. При первом открытии — диалог с явным объяснением, что чаты не покидают браузер. Один клик «Понятно» — больше не показывается.
- Полный экран на десктопе. Раздел занимает всю ширину/высоту окна — без узкой колонки и шапки дашборда. Колонка сообщений ограничена 760px для комфортного чтения.
Доступ — пункт «Чат» в сайдбаре ЛК (бейдж Beta).
2026-05-25 — Активированы Perplexity Sonar и другие web-search модели
5 моделей семейства Perplexity Sonar (sonar, sonar-pro, sonar-pro-search, sonar-reasoning-pro, sonar-deep-research) теперь активны в каталоге и доступны через /v1/* и встроенный чат. Раньше были деактивированы — пока не было уверенности, что биллинг корректно покрывает web-search surcharge.
- Биллинг через
usage.costот провайдера. Стоимость каждого запроса (включая web-search per-request surcharge $0.005) приходит готовой от апстрима и попадает вusage_logs.cost_kopecksровно так же, как для обычных моделей. Никаких отдельных формул на нашей стороне. - Sentinel-warning в логах. Если апстрим вдруг вернёт
usage.cost=0приweb_search_requests > 0— пишем warn-лог, чтобы поймать проблему до того, как её заметят пользователи. - В чате
/chat— кликабельные[N]. Sonar возвращает массивcitations[]URL'ов; чат превращает маркеры в тексте в маленькие фиолетовые pill-ссылки и показывает полный список под ответом.
2026-05-24 — Все ошибки /v1/* и /api/internal/* теперь на русском
error.message во всех публичных эндпоинтах переведены на формальный русский язык:
Недостаточно средств на балансе.Модель не найдена: <id>Неверный API-ключ/API-ключ не переданКурс ЦБ РФ временно недоступенСервис провайдера временно недоступен(раньше —Upstream returned an error)Превышено время ожидания апстрима/Превышен дневной лимит расхода для этого API-ключа- и другие.
error.code (insufficient_balance, model_not_found, upstream_error, daily_limit_exceeded, и т.д.) остаётся стабильным машинно-читаемым контрактом — английский. Если ваш код матчит ошибки по code — изменений не требуется. Если по message — обновите матч на русский (либо мигрируйте на code).
В песочнице на странице модели также убрали захардкоженные русские подсказки на фронте — теперь рендерится ровно то, что отдал бэкенд. При ошибке «недостаточно средств» рядом с сообщением появляется ссылка «Пополнить баланс» → /billing.
2026-05-23 — usage.cost теперь в копейках
В ответах всех /v1/* эндпоинтов (/messages, /chat/completions, /responses, /embeddings) поле usage.cost теперь содержит итоговую цену запроса в копейках (integer) — ту же сумму, что списывается с баланса и попадает в /v1/usage. Раньше там приходил raw cost в долларах. Применяется и к потоковому режиму — копейки попадают в финальный message_delta / chat.completion.chunk / response.completed.
2026-05-23 — Поддержка Claude Code: эндпоинт /v1/messages
- Новый эндпоинт
POST /v1/messages— совместимый с Anthropic Messages API. Через него работают Claude Code, официальные SDK Anthropic для Python и TypeScript, любые сторонние клиенты, ожидающие Anthropic-формат. - Аутентификация: и Bearer, и
x-api-key. Поддержаны оба заголовка одновременно — Claude Code используетANTHROPIC_AUTH_TOKENчерезAuthorization: Bearer, а Anthropic-SDK по умолчанию шлётx-api-key. Hubris принимает обе формы для любого/v1/*эндпоинта. - Маппинг имён моделей. Принимаются и Anthropic-стиль (
claude-sonnet-4-5,claude-3-5-sonnet-20241022,claude-haiku-4-5-latest), и каноничные Hubris-имена (anthropic/claude-sonnet-4.6). В ответе полеmodelвосстанавливается в то имя, что прислал клиент — для согласованности логов. - Полный набор Anthropic-фич: vision, tool use, prompt caching, extended thinking. Все content-блоки (
text,image,tool_use,tool_result,document,thinking) и параметры (cache_control,tool_choice,thinking,stop_sequences) проходят без изменений. Биллинг учитываетusage.cost, который провайдер возвращает с поправкой на cache hit / cache write. - Anthropic-нативный SSE-стриминг. События
message_start/content_block_*/message_delta/message_stopприходят в нативном формате. На разрыве соединения Hubris дочитывает апстрим до конца и списывает стоимость, без бесплатных токенов. - Anthropic-формат ошибок. Вместо OpenAI-стиля
{error:{...}}возвращаем{type:"error",error:{type,message}}с корректнымerror.type(invalid_request_error,authentication_error,rate_limit_error,api_error,not_found_error,billing_error,timeout_error). SDK Anthropic не падают. - Statusline-скрипт для Claude Code. Bash (
https://hubris.pw/scripts/claude-statusline.sh) и кросс-платформенный Node-вариант (https://hubris.pw/scripts/claude-statusline.mjs) — выводит активную модель и расход за сегодня в нижней строке TUI. Подробности — в гиде по Claude Code. - Документация. Гид «Подключение Claude Code» — установка, конфигурация, выбор моделей, statusline, FAQ. API-референс POST /v1/messages — параметры, форматы, примеры.
- Ограничение MVP. Privacy Mode (маскирование PII) на
/v1/messagesпока не работает — фича сложнее в реализации для Anthropic-формата content-блоков. Если нужна маскировка, используйте/v1/chat/completionsс заголовкомX-Hubris-Privacy-Mask. Поддержка появится отдельно.
2026-05-23 — Каталог моделей: +23 модели генерации изображений
- Подключены image-модели из расширенного каталога: Flux 2 (pro/max/flex/klein-4b), Recraft v3/v4/v4.1 (11 вариантов: pro, vector, utility), Sourceful Riverflow v2 (pro, fast, preview-серии), xAI Grok Imagine, ByteDance Seedream 4.5, gemini-2.5-flash-image-preview. Полный список — в каталоге с фильтром «Output: image».
- Корректное отображение цены за изображение в каталоге. Раньше unit-priced модели показывали «0 ₽ за 1М токенов» (UX-баг). Теперь — «X ₽ за изображение» / «X ₽ за мегапиксель» в зависимости от тарификации модели. То же поле
pricing.per_unit[]доступно черезGET /v1/modelsдля разработчиков. - Документация: расширение Генерации изображений. Появилась справка по
image_configпараметрам конкретных провайдеров: Recraftstyle/text_layout/rgb_colors, Sourcefulfont_inputs/super_resolution_references. Раздел «Какую модель когда выбирать».
2026-05-22 — Песочница умеет генерировать картинки и уважает Privacy Mode
- Image-gen в песочнице. На страницах моделей
google/gemini-2.5-flash-image,openai/gpt-image-*,google/gemini-3.1-flash-image-previewи других моделей с картиночным выходом песочница теперь возвращает сгенерированное изображение прямо в чат-пузырь. Стоимость и токены считаются как для обычной генерации — без скрытых наценок. - Превью и сохранение. Клик по сгенерированной картинке открывает полноразмерный лайтбокс. Кнопка «Сохранить» скачивает PNG (или WEBP/JPEG — расширение берётся из data URL) с именем
hubris-<timestamp>.<ext>. ESC или клик мимо — закрытие. Файл существует только у вас: на серверах Hubris ничего не сохраняется, в логах остаются только метаданные биллинга. - Песочница для image-only моделей. Модели, которые отдают только картинку без текста (Flux / SDXL-семейство), теперь тоже доступны в песочнице.
- Privacy Mode теперь работает и в песочнице. Раньше включённая в
/securityмаска применялась только к запросам через API-ключ — а отправки прямо со страницы модели уходили без маски. Теперь оба пути идентичны: ФИО, телефоны, email, ИНН, паспорта и т.д. скрываются до отправки модели, а в ответе восстанавливаются обратно. На stream-ответах работает та же построчная подмена, что и в/v1/chat/completions.
2026-05-22 — Server-tools, новая секция «Интеграции», доки фич
- API: новый namespace
hubris:*для server-tools. Вtools[]запроса/v1/chat/completionsи/v1/responsesпоявилась поддержка{ "type": "hubris:web_search" }— это канонический способ включить встроенный веб-поиск. Гид: Поиск в интернете. Старые namespace-варианты продолжают работать ради обратной совместимости. - Новая секция документации «Интеграции» (9 страниц). Подключение Hubris к популярным AI-инструментам: Cline, Roo Code, Kilo Code, OpenCode, Qwen Code CLI, Hermes Agent, OpenClaw, Dify, n8n. У каждого инструмента — точные шаги настройки base URL и API-ключа, советы по выбору модели и решение типовых проблем.
- Новые гиды в разделе «Возможности»:
- Вызов инструментов (tool calling) — жизненный цикл tool-сессии,
tool_choice, параллельные вызовы, стриминг, SDK-примеры. - Структурированный вывод —
json_objectиjson_schemaстрогий режим, Pydantic / Zod helper'ы, обработка refusal'ов. - Поиск в интернете — встроенный server-side инструмент, аннотации источников, стриминг.
- Изображения на вход (Vision) — multimodal-ввод через
image_urlcontent-parts, URL и base64, параметрdetail, биллинг. - Выбор модели программно — фильтрация каталога через
GET /v1/models, обработка404 model_not_found, версионированные slug'и. - Стриминг ответов — когда включать
stream: true, парсинг в Python / Node / Vercel AI SDK / голом fetch, UX-паттерны (типографический эффект, прогресс на reasoning-моделях, отмена). - Мониторинг расходов —
GET /v1/usageдля cron-отчётов, бюджет-алёртов в коде агента, разбивки по проектам,BigIntдля копеечной точности. - Обработка ошибок — стратегия retry по кодам (что ретраить, что нет),
tenacityпример на Python, factory на TS, маппинг внутренних кодов в user-facing сообщения.
- Вызов инструментов (tool calling) — жизненный цикл tool-сессии,
- Боковое меню документации согласовано с дашбордом. Шрифт, отступы и компоновка строк сайдбара
/docsтеперь матчат сайдбар личного кабинета (13.5px/6×10/ иконки15px). До этого fumadocs-дефолты раздували сайдбар, и переходы между ЛК и доками выглядели визуально несогласованно.
2026-05-12 — Документация под общим хедером, AI-friendly выгрузка
- Документация теперь под общей навигацией сайта. В шапке
/docsпоявилось основное меню Hubris (Главная, Модели, Использование, API-ключи, Биллинг). Для авторизованных — текущий баланс и меню пользователя. Из ЛК больше не нужно открывать документацию «в отрыве». - Русский интерфейс fumadocs.
«На этой странице»,«Следующая»,«Предыдущая»,«Редактировать на GitHub», плейсхолдер поиска — теперь по-русски. - AI-friendly выгрузка документации.
- Любую страницу
/docs/<slug>можно открыть как plain-markdown: добавьте.mdили.mdxк URL (напримерhttps://hubris.pw/docs/quickstart.md). - В шапке каждой страницы — кнопки «Скопировать как Markdown» и «Открыть в…» (ChatGPT / Claude / .md-версия).
https://hubris.pw/llms.txt— индекс всей документации в формате llmstxt.org, для AI-агентов.https://hubris.pw/llms-full.txt— полный дамп всех страниц одним файлом, удобно скармливать в context-окно модели.
- Любую страницу
2026-05 — Запуск публичной документации
Опубликованы первые версии разделов:
- С чего начать: Quickstart, Аутентификация, Миграция с OpenAI.
- Базовые концепции: Модели, Цены, Биллинг, Ошибки, Rate limits, Конфиденциальность.
- API Reference:
/v1/models,/v1/chat/completions,/v1/responses(BETA), Streaming. - Возможности: Reasoning-токены, кеширование промптов.
- Фреймворки: OpenAI SDK Python/Node, Vercel AI SDK, LangChain Python/JS.
API сам по себе — без изменений с релизной версии 1.0. Все стабильные эндпоинты под /v1/* остаются совместимыми.
Подписка на обновления
Пока что — следите за этой страницей. RSS / email-рассылка в работе.
Для критических изменений (breaking change в API, отзыв модели из каталога) — будем дополнительно слать на email вашего аккаунта.
Если нужно, чтобы конкретная модель не пропала
Если вы строите интеграцию вокруг конкретной модели и боитесь, что её уберут — напишите на support@hubris.pw, мы согласуем, как минимум, заранее предупредим о выводе.
Обновлено: