aggregate.surf
docs/integrations/opencode

OpenCode

Быстрый терминальный AI-ассистент для кода с открытым исходным кодом.

Официальная документация

Предварительные требования

  • API-ключ AggreGate AI (начинается с sk-ag-…).
  • Base URL для API-запросов.: https://api.aggregate.surf/v1

Настройка

  1. Установите OpenCode

    Следуйте инструкции по установке на opencode.ai. Проверьте установку командой opencode --version.

  2. Настройте провайдера

    Отредактируйте ~/.config/opencode/opencode.json и добавьте AggreGate как пользовательского провайдера, совместимого с OpenAI.

  3. Запустите сессию

    Выполните opencode в директории вашего проекта. Клиент будет использовать модель, заданную по умолчанию.

Конфигурация

Через VPN или из-за границы? Переключитесь на Gateway.

Base URL
https://api.aggregate.surf/v1
json
{
  "provider": {
    "aggregate": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "AggreGate AI",
      "options": {
        "baseURL": "https://api.aggregate.surf/v1",
        "apiKey": "sk-ag-your-key"
      },
      "models": {
        "claude-opus-4.8": {
          "attachment": true,
          "modalities": { "input": ["text", "image"], "output": ["text"] }
        },
        "claude-sonnet-5": {
          "attachment": true,
          "modalities": { "input": ["text", "image"], "output": ["text"] }
        }
      }
    }
  }
}

Устранение неполадок

Возникает ошибка 401 Unauthorized
Ещё раз проверьте поле api key. Он должен начинаться с sk-ag- и принадлежать активному ключу.
Модель не найдена
Выполните запрос /v1/models к базовому URL, чтобы узнать, какие модели доступны в вашем тарифе.
Не получается приложить скриншот / картинку
OpenCode считает модель пользовательского провайдера текстовой, пока это не указано явно. Добавьте в описание модели в opencode.json поле "attachment": true и поле "modalities" с input ["text", "image"] и output ["text"] — как в примере выше — и перезапустите OpenCode. Изображения поддерживают модели Claude, GPT и Gemini.
Как посмотреть баланс и остаток пакета из терминала?
Выполните curl -s https://api.aggregate.surf/v1/me -H "Authorization: Bearer sk-ag-…" — в ответе баланс (balance.amount), остаток токенов по каждому активному пакету (token_packages[].tokens_available) и расход за текущий месяц (usage_current_month). Подробнее — в разделе API → /v1/me.
AggreGate Documentation