OpenCode
OpenCode через NormaHub
Отдельный provider в конфигурации OpenCode, секрет в environment и модель из текущего каталога — GPT и Claude без VPN и зарубежной карты.
Для кого: разработчики и команды, использующие coding agents
Создать API keyБыстрый старт
От ключа до первого ответа
- 01
Создайте отдельный ключ для агента.
- 02
Добавьте provider и переменную окружения.
- 03
Выберите модель и отправьте короткий запрос.
Рабочий шаблон
Скопируйте основу и замените модель
Используйте только идентификатор из актуального каталога. Ключ храните в переменной окружения.
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"normahub": {
"npm": "@ai-sdk/openai-compatible",
"options": {
"baseURL": "https://api.normahub.cc/v1",
"apiKey": "{env:NORMAHUB_API_KEY}"
},
"models": { "MODEL_ID": { "name": "NormaHub model" } }
}
}
}Детали решения
Как это устроено
Почему агенту нужен отдельный ключ
Coding-агент генерирует десятки запросов за сессию: чтение файлов, планирование, правки, проверки. Общий ключ без лимита превращает забытую сессию в открытый счёт. Отдельный ключ со spend limit изолирует бюджет агента от остального продукта, а история запросов показывает, какая задача сколько стоила.
Как выбрать модель под задачу агента
Рутина (мелкие правки, объяснения) — младшие дешёвые модели; архитектура и сложные рефакторинги — флагманы. Model ID берите из актуального каталога и проверяйте capabilities: контекст, tools и streaming у моделей различаются. Переключение — одна строка в конфиге, без переписывания workflow.
Агент в команде
Каждому разработчику — свой ключ с лимитом: видно, кто и сколько потратил, отзыв одного ключа не останавливает остальных. Общие договорённости (маленькие сессии вместо бесконечных диалогов, дешёвая модель по умолчанию) снижают счёт сильнее любых оптимизаций кода.
Стоимость сессии и как её считать
Сессия агента — это десятки вызовов: чтение файлов, план, правки, проверки. Каждый вызов стоит input (контекст проекта целиком) плюс output по тарифу модели. Поэтому длинные сессии на флагмане — самая дорогая конфигурация из возможных. Рецепт: короткие сессии, младшая модель по умолчанию, флагман точечно, max_tokens под контролем, сверка с историей usage после первых дней.
Оплата и контроль расходов
Запросы оплачиваются с предварительно пополненного баланса по актуальным ставкам выбранной модели. Минимум и комиссия показываются перед оплатой в кабинете; лимит расходов задаётся для API-ключа.
Ограничения доступности
Возможности зависят от модели и внешнего маршрута. При недоступности provider запрос может завершиться ошибкой; проверяйте каталог, статус и документацию перед production.
Частые вопросы
Где хранить API-ключ для OpenCode?
В переменной окружения процесса ({env:NORMAHUB_API_KEY}), а не в конфиге текстом. Конфиг можно коммитить, секрет — никогда.
Какая модель лучше для кодинга?
Зависит от задачи и бюджета: флагманы — для архитектуры, младшие — для рутины. Актуальные ID и цены — в каталоге моделей.
Агент упёрся в 402. Что это?
Кончились деньги владельца ключа или spend limit самого ключа. Проверьте оба в личном кабинете — это разные сущности.
Работает ли это из России без VPN?
Да. OpenCode обращается к api.normahub.cc напрямую, оплата — с рублёвого баланса.
Чем solution отличается от гайда OpenCode?
Эта страница — обзор решения для выбора: архитектура, стоимость, команда. Пошаговая настройка конфига — в гайде OpenCode.
Можно ли использовать разные модели в одном проекте?
Да. Опишите несколько provider или моделей в конфиге и переключайтесь между задачами: рутина — младшей модели, архитектура — флагману.