OpenCode из России: настройка API и проверка подключения

Как подключить API к OpenCode через opencode.json, выбрать модель и проверить инструменты. Диагностика ошибок 401, 403, 404 и 429.

Терминал с кодом и логотипом OpenCode на тёмном фоне

Чтобы подключить Ofox к OpenCode, задайте провайдера, адрес API, ключ и точный ID модели в совместимом формате конфигурации. Затем проверьте не только ответ модели, но и работу инструментов. Наличие API не гарантирует доступ для каждого аккаунта и региона.

Конфигурационная схема сверена с документацией 20 сентября 2026 года. Платные запросы и сквозной запуск агента не выполнялись. Прежние обещания оплаты российскими картами, определённой задержки и подключения без VPN убраны: подтверждений для них нет.

Сначала проверьте версию OpenCode

Установите клиент по официальной инструкции для своей ОС. Затем выполните:

opencode --version

Ниже используется схема из документации конфигурации /docs/: provider, npm, options и models. Если установленная основная версия использует другую схему, откройте документацию именно этой версии. Не смешивайте этот пример с документацией v2.

Настройте один провайдер и одну модель

Сохраните копию существующей конфигурации. Для пользовательских настроек документация указывает ~/.config/opencode/opencode.json; проект может иметь собственный opencode.json. Файлы поддерживают JSON или JSONC. Если файл уже существует, объедините нужные поля, сохранив остальные настройки.

Шаблон для модели с Chat Completions:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "ofox": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Ofox",
      "options": {
        "baseURL": "https://api.ofox.io/v1",
        "apiKey": "{env:OFOX_API_KEY}"
      },
      "models": {
        "MODEL_ID_FROM_CATALOG": {
          "name": "My selected model"
        }
      }
    }
  },
  "model": "ofox/MODEL_ID_FROM_CATALOG"
}

MODEL_ID_FROM_CATALOG — заполнитель. Замените его в обоих местах на точный ID выбранной модели из списка моделей Ofox. Префикс ofox/ в поле model — ID провайдера OpenCode; он остаётся перед полным ID модели. Не считайте любой пункт каталога проверенной комбинацией для агента.

Задайте OFOX_API_KEY в окружении запуска через свой менеджер секретов. В файл не нужно вставлять сам ключ; не выводите его в терминал для проверки. Без переменной подстановка будет пустой. Если вместо окружения используете /connect, ID сохранённого провайдера должен совпадать с конфигурацией; не смешивайте несколько источников ключа без необходимости.

Согласно документации провайдеров, пакет @ai-sdk/openai-compatible используется для Chat Completions. Для модели, которой нужен Responses, документация указывает @ai-sdk/openai. Проверьте также поддержку нужного протокола на стороне API. Один адрес и похожий JSON не доказывают совместимость инструментов.

Проверьте подключение на небольшой задаче

Откройте отдельную рабочую копию проекта командой opencode. В интерфейсе выберите провайдера и модель через /models.

  1. Попросите кратко ответить на простой вопрос без изменения файлов.
  2. Разрешите прочитать один небольшой файл и объяснить его назначение. Убедитесь, что инструмент действительно отработал и ответ завершился.
  3. Попросите одно ограниченное изменение, проверьте diff и запустите существующий тест. Успешное чтение не доказывает правильность редактирования.
  4. Сопоставьте результат с журналом запроса и учётом использования у провайдера. Не переходите сразу к большой задаче при незавершённых ответах или повторных попытках.

Это план проверки, а не отчёт о выполненном тесте. Сохраните предыдущую рабочую конфигурацию для отката.

Ошибки: что проверять первым

СимптомПервый шаг
401Проверьте наличие ключа в окружении запуска, его актуальность и соответствие провайдеру. Сам ключ не публикуйте.
403Прочитайте сообщение сервера: права аккаунта, политика доступа или выбранная модель. Замена конфигурационного файла не гарантирует снятие ограничения.
404Сверьте Base URL, путь запроса и точный ID модели. Это не всегда ошибка только в названии модели.
429Проверьте текст ошибки и ограничения аккаунта; различайте частоту запросов, квоту и баланс. Не запускайте бесконечные повторы.
Модель отсутствует в спискеСверьте ID провайдера и запись в models, затем проверьте, какой файл конфигурации загружен.
Текст работает, инструменты — нетПроверьте протокол, пакет провайдера и продолжение после результата инструмента.

Код HTTP помогает выбрать направление проверки; окончательная причина определяется ответом и журналом запроса. Сохраните время, версию клиента и обезличенный текст ошибки, не ключи.

Как выбрать следующий шаг

Для сравнения способов подключения используйте обзор агрегаторов API. Если нужен другой клиент, смотрите настройку Codex или DeepSeek Harness. Особенности Astra разобраны в отдельной инструкции по конфигурации.

Стоимость, способы оплаты и региональный доступ проверяйте отдельно до начала работы. Здесь нет обещания фиксированной экономии, оплаты картами РФ или доступности без VPN. Конфигурация клиента не заменяет условия обслуживания провайдера.

Часто задаваемые вопросы

Какой файл конфигурации использует OpenCode?
В приведённой схеме используются opencode.json или opencode.jsonc. Пример рассчитан на формат provider с полем npm из документации /docs/; не переносите его без проверки в другую основную версию.
Достаточно ли получить текстовый ответ?
Нет. Для работы с кодом отдельно проверьте чтение файла, вызов инструмента, возврат результата и завершение ответа. Доступность модели в списке этого не подтверждает.
Можно ли гарантировать подключение из России без VPN?
Нет. Доступ зависит от сети, аккаунта, выбранного провайдера и его правил. Эта инструкция не подтверждает доступность во всех регионах или способы оплаты.