1. Что понадобится
Cursor умеет ходить в чат и агент через собственный API-ключ OpenAI-совместимого провайдера. Вам нужны: платный тариф Cursor, API-ключ NormaHub из личного кабинета и точные model ID из каталога. Ключ заводите отдельный, с лимитом расходов: IDE генерирует много запросов, и без лимита легко удивиться счёту.
2. Настройка Models
Откройте Cursor Settings (Ctrl/Cmd + ,) → раздел Models. Включите OpenAI API Key и вставьте ключ NormaHub. Затем включите Override OpenAI Base URL и укажите адрес NormaHub. Названия полей зависят от версии Cursor, но суть одна: ключ + переопределение базового адреса.
OpenAI API Key: YOUR_API_KEY # ключ из кабинета NormaHub
Override Base URL: https://api.normahub.cc/v1 # обязательно с /v1 на конце
Add Model: MODEL_ID # точный ID из каталогаЧерез Add Model добавьте нужные model ID — например, сильную модель для рефакторинга и дешёвую для мелких правок. Переключение между ними в чате — это и есть практическая экономия: не гоняйте флагман ради опечаток.
3. Проверка Verify
Нажмите Verify рядом с настройками: Cursor запросит список моделей вашим ключом и покажет, что ключ работает. Если список пуст или ошибка — не идите дальше, чините подключение: дальше будут те же 401 с менее понятным текстом. Быстрая независимая проверка — curl к /v1/models с вашим Bearer-ключом.
После успешной проверки откройте новый чат, выберите добавленную модель в dropdown и отправьте тестовый вопрос по вашему проекту. Сверьте списание в истории личного кабинета: цена запроса зависит от модели и длины контекста, детали — в гайде по стоимости.
4. Нюансы и ограничения
Свой ключ покрывает чат и агента с выбранной моделью, но не всё в Cursor: Tab-дополнение и часть встроенных функций продолжают ходить через модели Cursor. Учитывайте это при оценке расходов — счёт NormaHub растёт только от запросов через ваш ключ. Политика Zero Data Retention Cursor на собственный ключ не распространяется: обработка регулируется политиками провайдера модели.
Контекст проекта Cursor собирает сам и он немаленький: длинные сессии с большим проектом стоят заметно. Держите под рукой гайд по ошибкам: 402 означает пустой баланс или исчерпанный лимит ключа, 429 — упёрлись в rate limit, и то и другое чинится в кабинете за минуту.
5. Если что-то пошло не так
«Invalid API Key» — ключ с опечаткой, отозван или вставлен не в то поле; Cursor агрессивно кэширует ключи, после замены перезапустите IDE. «Model not found» — ID набран не точно (регистр и дефисы важны) либо модель недоступна вашему ключу. Пустой чат без ошибки — проверьте, что выбрана именно добавленная модель, а не встроенная. Если сбоит уже настроенное подключение — сверьте в кабинете баланс, лимит ключа и доступность модели.