Перейти к основному содержимому

OpenCode с OpenCheese

/ Документация API

← Быстрый старт с APIОткрыть как Markdown

OpenCode подключается к OpenCheese как OpenAI-совместимый провайдер по адресу https://api.opencheese.dev/v1. OpenCode 1.x и 2.x читают одну и ту же конфигурацию.

С автосинхронизацией OpenCode сам загружает свои настройки OpenCheese: модели, которые вы включаете или отключаете на странице Цены, а также новые модели появляются в нём без копирования файлов.

  1. Войдите в аккаунт, откройте страницу Настройка, перейдите на вкладку OpenCode и найдите шаги автосинхронизации.
  2. Выберите API-ключ, который будет использовать OpenCode, введите пароль этого ключа и создайте персональную ссылку.
  3. Один раз выполните в терминале команду, которую показывает страница:
bash
opencode auth login https://opencheese.dev/c/YOUR_PERSONAL_LINK

С этого момента OpenCode хранит ключ и загружает свою конфигурацию с OpenCheese. Для входа запускается небольшая команда на Node.js, поэтому в PATH должен быть Node.js 18 или новее (так и есть, если вы установили OpenCode через npm).

  • Обновления: OpenCode 2 получает изменения в течение 10 минут или сразу по команде opencode reload (её лучше выполнять, когда OpenCode ничем не занят). OpenCode 1 получает их при запуске и запускается, только если OpenCheese доступен.
  • Ваши собственные настройки: держите небольшой opencode.json только с тем, что нужно вам самим, например с разделом mcp. Не перечисляйте в нём модели: указанные там модели остаются видимыми даже после того, как вы их отключите. Удалите или сократите opencode.json, который скопировали раньше.
  • Ссылка — это пароль: любой, у кого она есть, может пользоваться ключом. Она показывается один раз. Отозвать её можно в разделе Ваши персональные ссылки; OpenCode, который уже выполнил вход, сохраняет ключ, поэтому, чтобы остановить его, отключите или удалите API-ключ. После смены пароля ключа снова выполните команду входа.

Или скопируйте сгенерированный файл

Войдите в аккаунт, откройте страницу Настройка, перейдите на вкладку OpenCode, выберите API-ключ и подтвердите пароль, затем объедините сгенерированный файл со своей пользовательской конфигурацией:

Система Файл
macOS и Linux ~/.config/opencode/opencode.json
Windows %USERPROFILE%\.config\opencode\opencode.json

В сгенерированном файле перечислены все текстовые модели, доступные вашему ключу, с отображаемым названием, лимитами контекста и вывода, стоимостью за токен (OpenCode показывает стоимость каждого сообщения), вариантами рассуждений и подходящим пакетом AI SDK для каждой модели. Используйте его вместо файла, написанного вручную, и копируйте заново после изменения тарифа или списка моделей.

Ручная настройка с одной моделью

json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "opencheese": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "OpenCheese",
      "options": {
        "baseURL": "https://api.opencheese.dev/v1",
        "apiKey": "{env:OPENCHEESE_API_KEY}"
      },
      "models": {
        "MODEL_ID": { "name": "Model name", "variants": {} }
      }
    }
  },
  "model": "opencheese/MODEL_ID"
}
  • baseURL должен заканчиваться на /v1.
  • {env:OPENCHEESE_API_KEY} берёт ключ из переменной окружения; в сгенерированном файле записан сам ключ.
  • Оставляйте "variants": {} у каждой модели, добавленной вручную. Без этого OpenCode 2.x предлагает собственные варианты рассуждений low, medium и high, которые модель может не поддерживать.
  • ID моделей возьмите из ответа GET /v1/models с вашим ключом (см. Модели).

OpenCode 2

Рекомендуемая версия — OpenCode 2. Шаг 2 на вкладке OpenCode переключает между OpenCode 2 (по умолчанию) и OpenCode 1 — устаревшей версией, которая поддерживается до 1 ноября; обе версии читают одни и те же настройки. Если вы переходите с OpenCode 1: OpenCode 2 — это другой пакет, и при первом запуске он переносит историю сессий, поэтому сначала сделайте её резервную копию. На вкладке показаны точные команды, в том числе для возврата на OpenCode 1.

Расход и стоимость

Каждый запрос отображается в панели на странице Транзакции с расходом токенов и стоимостью; запросы одного разговора объединены в одну сессию.

Решение проблем

  • «Invalid or disabled OpenCheese API key»: проверьте ключ на странице API-ключи и убедитесь, что переменная OPENCHEESE_API_KEY задана там, где запускается OpenCode. С автосинхронизацией снова выполните команду входа.
  • Модели нет в списке: набор моделей зависит от вашего тарифа и ограничений ключа. С автосинхронизацией перезапустите OpenCode 1 или выполните opencode reload в OpenCode 2; если вы копировали файл, скопируйте его заново.
  • Отключённая модель всё ещё видна: модель, указанная в вашем локальном opencode.json, остаётся видимой; удалите её оттуда.
  • «Not included in your current plan»: выберите другую модель или оставьте включённым переключатель Использовать модели за баланс на странице Обзор, чтобы оплачивать её с баланса.
В сыре есть дырки. В вашей инфраструктуре их быть не должно.