Интеграция≈ 6 мин чтения

OpenCode + NeuroAPI: провайдер openai-compatible

Настройка OpenCode через кастомного провайдера: opencode.json с @ai-sdk/openai-compatible, адрес NeuroAPI и точные ID моделей из каталога.

Короткий ответ

Краткий ответ

OpenCode и NeuroAPI: провайдер @ai-sdk/openai-compatible в opencode.json — baseURL, apiKey, ID моделей из /price, лимиты контекста и разбор ошибок.

98

моделей в каталоге

Публичный каталог /price на 18.10.2026; ID сверяйте через GET /v1/models.

/v1

базовый адрес

https://neuroapi.host/v1 — значение options.baseURL в конфигурации.

3

тарифа доступа

Пилот, Смарт и Оптимальный выбираются при создании API-ключа.

/docs

документация

Ключ, форматы API и ошибки — neuroapi.host/docs (проверено 19.10.2026).

Пакет AI SDK

Для OpenAI-совместимого /v1/chat/completions документация OpenCode указывает @ai-sdk/openai-compatible.

Поле baseURL

Кастомный адрес задаётся в options.baseURL — это документированный способ направить провайдера на свой endpoint.

ID из /models

Каждый ключ в models должен совпадать с id из GET /v1/models — иначе модель не появится в списке.

limit.context

Поля limit.context и limit.output помогают OpenCode понимать доступный контекст модели.

Как подключить OpenCode к NeuroAPI за 4 шага

  1. 1

    Создайте ключ и выпишите ID моделей

    В кабинете NeuroAPI создайте API-ключ и выберите тариф. В /price или GET /v1/models скопируйте точные ID моделей, которые хотите подключить.

  2. 2

    Создайте opencode.json

    В каталоге проекта создайте файл opencode.json и добавьте секцию provider с уникальным ID провайдера, например neuroapi.

  3. 3

    Опишите провайдера и модели

    Укажите npm: @ai-sdk/openai-compatible, name, options.baseURL https://neuroapi.host/v1 и options.apiKey. В models перечислите ID моделей и при необходимости limit.context и limit.output.

  4. 4

    Запустите и проверьте

    Запустите OpenCode, убедитесь, что модели видны, и отправьте короткую задачу. При ошибках проверьте совпадение ID провайдера, модели и правильный npm-пакет.

Шаги и их текст совпадают с HowTo-разметкой. Поля провайдера сверены с документацией OpenCode 19.10.2026; синтаксис подстановки переменных окружения зависит от версии.

Подготовка: ключ, модели и установка

OpenCode — терминальный AI-агент, который подключается к провайдерам через AI SDK. Для NeuroAPI используется OpenAI-совместимый сценарий: тот же протокол, что и у OpenAI SDK, но с другим baseURL и ключом. Сначала создайте ключ NeuroAPI в кабинете и выберите тариф; затем выпишите точные ID моделей из /price или GET /v1/models.

Установите OpenCode по официальной инструкции и убедитесь, что команда opencode доступна в терминале. Дальше понадобится файл конфигурации opencode.json в каталоге проекта: в нём описывается провайдер, адрес API и список моделей.

  • Ключ NeuroAPI — отдельный под OpenCode.
  • ID моделей — точные, из /price или GET /v1/models.
  • Конфигурация — в opencode.json проекта.
  • Проверьте версию OpenCode: набор полей может отличаться.

opencode.json: провайдер, baseURL и ключ

В документации OpenCode кастомный провайдер описывается в секции provider. Для OpenAI-совместимого API указывается npm: @ai-sdk/openai-compatible, произвольный уникальный ID провайдера, отображаемое имя name и объект options с baseURL и apiKey. Для NeuroAPI baseURL равен https://neuroapi.host/v1.

Ключ лучше не хранить в файле репозитория. В конфигурации OpenCode можно сослаться на переменную окружения — точный синтаксис подстановки зависит от версии, поэтому сверьте его с документацией и не коммитьте сам ключ. Если ключ задаётся вручную, добавьте локальный файл конфигурации в исключения git.

  • provider: уникальный ID, например neuroapi.
  • npm: @ai-sdk/openai-compatible.
  • options.baseURL: https://neuroapi.host/v1.
  • options.apiKey: ключ или ссылка на переменную окружения.
  • options.headers — при необходимости дополнительные заголовки.

Список моделей и лимиты контекста

Модели описываются в объекте models как отображение ID модели на её настройки. Документация OpenCode подчёркивает: каждый ID должен совпадать с тем, что возвращает GET /v1/models. Если ID отличается хотя бы регистром или суффиксом версии, модель не появится в выборе или запрос вернёт 404.

Для кастомного провайдера OpenCode не получает сведения о контексте из внешнего каталога, поэтому полезно указать limit.context и limit.output вручную — по данным карточки модели в /price. Это помогает агенту корректнее планировать длину контекста и не отправлять заведомо слишком большой запрос.

  • Ключ в models — точный ID модели.
  • limit.context — максимальный входной контекст.
  • limit.output — максимальный объём ответа.
  • Значения берите из карточки модели, не из памяти.

Проверка и типовые ошибки

После сохранения конфигурации запустите OpenCode и проверьте, что провайдер и модели видны в списке. Отправьте короткую задачу — это проверит ключ, baseURL и выбранный ID. Если провайдер виден, но моделей нет, проверьте формат models и совпадение ID с ответом GET /v1/models.

Ошибка 401 означает неверный ключ, 404 — опечатку в ID модели или адресе, 429 — превышение лимитов. Документация OpenCode отдельно советует убедиться, что ID провайдера в конфигурации совпадает с тем, который использовался при добавлении ключа, и что выбран правильный npm-пакет для OpenAI-совместимого API.

Полезно держать конфигурацию провайдера в репозитории и проверять её при обновлении OpenCode: набор полей и синтаксис подстановки переменных могут меняться. Если после обновления модели пропали из списка, начните с проверки options.baseURL и списка models — это самые частые причины.

  • Проверьте совпадение ID провайдера в конфигурации и при добавлении ключа.
  • Для /v1/chat/completions используйте @ai-sdk/openai-compatible.
  • 401 — ключ, 404 — ID модели и baseURL, 429 — лимиты.
  • Начинайте с короткой задачи до больших агентных сессий.

Стоимость и выбор тарифа

OpenCode — агент: он читает файлы и делает несколько шагов, поэтому контекст растёт быстро. Ограничивайте задачу конкретным модулем, а длинные сессии начинайте с небольшого репозитория. Баланс NeuroAPI предоплаченный, списание идёт по фактическому использованию, а история расхода доступна в кабинете.

Тариф выбирается при создании ключа. Пилот экономичнее, но допускает перебои; Оптимальный работает через официальные каналы; Смарт делает одну попытку Пилота и при безопасной ошибке переходит к цепочке Оптимального. Для работы в команде удобно завести отдельные ключи под разные проекты или разработчиков.

  • Агентные сессии расходуют больше коротких вопросов.
  • Ограничивайте контекст и число файлов.
  • Отдельные ключи под проекты — прозрачный расход.
  • Тариф — на уровне ключа, а не аккаунта.

Секреты и командная работа

Конфигурацию провайдера удобно держать в репозитории проекта, а ключ — в переменной окружения или локальном файле, исключённом из git. Если ключ всё же попал в opencode.json, отзовите его в кабинете и выпустите новый: переписывание истории git не гарантирует, что секрет не остался в копиях.

В команде стоит договориться о едином наборе моделей: разные разработчики могут подключать разные ключи, но список ID лучше зафиксировать, чтобы задачи выполнялись на сопоставимых моделях. Отдельные ключи по проектам упрощают и расход, и разбор инцидентов, а baseURL при этом остаётся общим. Проверяйте конфигурацию на чистом клоне репозитория перед onboarding нового разработчика: так сразу видно, какие поля обязательны, а где ключ подставляется из окружения.

  • Ключ — в переменной окружения или локальном файле.
  • Попавший в git ключ отзывайте, а не только удаляйте.
  • Единый список ID моделей для команды.
  • Отдельные ключи по проектам — прозрачный расход.
  • Сверяйте поля конфигурации после обновлений OpenCode.

opencode.json: провайдер NeuroAPI

json
{
  "provider": {
    "neuroapi": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "NeuroAPI",
      "options": {
        "baseURL": "https://neuroapi.host/v1",
        "apiKey": "<ключ_или_подстановка_переменной>"
      },
      "models": {
        "<MODEL_ID_ИЗ_PRICE>": {
          "name": "<MODEL_ID_ИЗ_PRICE>",
          "limit": { "context": 32000, "output": 4096 }
        }
      }
    }
  }
}

Проверка списка моделей ключом

bash
curl -s https://neuroapi.host/v1/models \
  -H "Authorization: Bearer $NEUROAPI_API_KEY" \
  | head -c 1200

Подключите OpenCode к рублёвому API

Ключ NeuroAPI, OpenAI-совместимый baseURL и каталог моделей с ценами в рублях. Начните с одного провайдера в opencode.json и расширяйте список моделей по мере задач.

Состояние каталога проверено 18.10.2026; поля конфигурации — по документации OpenCode на 19.10.2026.