Настройка провайдеров: Claude, OpenAI, Gemini и стратегия многомодельности
Что вы сможете делать после изучения
- Настраивать различных ИИ-провайдеров: Anthropic Claude, OpenAI, Google Gemini, GitHub Copilot и других
- Понимать механизм приоритизации и автоматического переключения моделей, позволяющий системе выбирать наилучшую доступную модель
- Назначать наиболее подходящие модели для различных ИИ-агентов и типов задач
- Настраивать сторонние сервисы: Z.ai Coding Plan и OpenCode Zen
- Использовать команду doctor для диагностики конфигурации моделей
Ваше текущее затруднение
Вы установили oh-my-opencode, но не совсем понимаете:
- Как добавить несколько ИИ-провайдеров (Claude, OpenAI, Gemini и др.)
- Почему иногда агенты используют не те модели, которые вы ожидаете
- Как настроить разные модели для разных задач (например, дешёвые для исследований, мощные для программирования)
- Как система автоматически переключается на резервные модели, когда основной провайдер недоступен
- Как конфигурации в
opencode.jsonиoh-my-opencode.jsonработают совместно
Когда использовать эти знания
- Первичная настройка: только что установили oh-my-opencode и нужно добавить или настроить ИИ-провайдеров
- Добавление новой подписки: купили новую подписку на ИИ-сервис (например, Gemini Pro) и хотите интегрировать её
- Оптимизация затрат: хотите, чтобы определённые агенты использовали более дешёвые или быстрые модели
- Устранение неполадок: обнаружили, что агент не использует ожидаемую модель, и нужно диагностировать проблему
- Многомодельная оркестрация: хотите в полной мере использовать преимущества разных моделей для создания интеллектуального рабочего процесса разработки
🎒 Подготовка к началу
Предварительная проверка
Это руководство предполагает, что вы уже:
- ✅ Завершили установку и первичную настройку
- ✅ Установили OpenCode (версия >= 1.0.150)
- ✅ Понимаете базовый формат конфигурационных файлов JSON/JSONC
Основная концепция
oh-my-opencode использует систему многомодельной оркестрации, которая выбирает наиболее подходящую модель для различных ИИ-агентов и типов задач на основе ваших подписок и конфигурации.
Зачем нужна многомодельность?
Разные модели имеют разные сильные стороны:
- Claude Opus 4.5: отлично справляется со сложными рассуждениями и архитектурным проектированием (дорого, но качественно)
- GPT-5.2: превосходен в отладке кода и стратегическом консультировании
- Gemini 3 Pro: идеален для фронтенда и UI/UX задач (сильные визуальные возможности)
- GPT-5 Nano: быстрый и бесплатный, подходит для поиска кода и простого исследования
- GLM-4.7: оптимальное соотношение цены и качества для исследований и поиска документации
Интеллект oh-my-opencode заключается в том, что каждая задача использует наиболее подходящую модель, а не все задачи используют одну и ту же модель.
Расположение конфигурационных файлов
oh-my-opencode поддерживает два уровня конфигурации:
| Расположение | Путь | Приоритет | Сценарий использования |
|---|---|---|---|
| Проектная конфигурация | .opencode/oh-my-opencode.json | Низкий | Специфичные для проекта настройки (фиксируются в репозитории) |
| Пользовательская конфигурация | ~/.config/opencode/oh-my-opencode.json | Высокий | Глобальные настройки (общие для всех проектов) |
Правило слияния конфигураций: пользовательская конфигурация переопределяет проектную.
Рекомендуемая структура конфигурационного файла:
{
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json",
// Включить автодополнение JSON Schema
"agents": {
// Переопределения моделей агентов
},
"categories": {
// Переопределения моделей категорий
}
}Автодополнение Schema
В редакторах вроде VS Code, после добавления поля $schema, вы получите полное автодополнение и проверку типов при вводе конфигурации.
Методы настройки провайдеров
oh-my-opencode поддерживает 6 основных провайдеров. Методы настройки различаются в зависимости от провайдера.
Anthropic Claude (рекомендуется)
Сценарий использования: главный оркестратор Sisyphus и большинство основных агентов
Шаги настройки:
Запустите аутентификацию OpenCode:
bashopencode auth loginВыберите провайдера:
Provider: выберитеAnthropicLogin method: выберитеClaude Pro/Max
Завершите процесс OAuth:
- Система автоматически откроет браузер
- Войдите в свой аккаунт Claude
- Дождитесь завершения аутентификации
Подтвердите успех:
bashopencode models | grep anthropicВы должны увидеть:
anthropic/claude-opus-4-5anthropic/claude-sonnet-4-5anthropic/claude-haiku-4-5
Сопоставление моделей (конфигурация Sisyphus по умолчанию):
| Агент | Модель по умолчанию | Назначение |
|---|---|---|
| Sisyphus | anthropic/claude-opus-4-5 | Главный оркестратор, сложные рассуждения |
| Prometheus | anthropic/claude-opus-4-5 | Планирование проекта |
| Metis | anthropic/claude-sonnet-4-5 | Предварительный анализ |
| Momus | anthropic/claude-opus-4-5 | Рецензирование планов |
OpenAI (ChatGPT Plus)
Сценарий использования: агент Oracle (архитектурный обзор, отладка)
Шаги настройки:
Запустите аутентификацию OpenCode:
bashopencode auth loginВыберите провайдера:
Provider: выберитеOpenAILogin method: выберите OAuth или API Key
Завершите процесс аутентификации (в зависимости от выбранного метода)
Подтвердите успех:
bashopencode models | grep openai
Сопоставление моделей (конфигурация Oracle по умолчанию):
| Агент | Модель по умолчанию | Назначение |
|---|---|---|
| Oracle | openai/gpt-5.2 | Архитектурный обзор, отладка |
Пример ручного переопределения:
{
"agents": {
"oracle": {
"model": "openai/gpt-5.2", // Использование GPT для стратегических рассуждений
"temperature": 0.1
}
}
}Google Gemini (рекомендуется)
Сценарий использования: Multimodal Looker (анализ медиа), Frontend UI/UX задачи
Настоятельно рекомендуется
Для аутентификации Gemini настоятельно рекомендуется установить плагин opencode-antigravity-auth. Он предоставляет:
- Балансировку нагрузки между несколькими аккаунтами (до 10 аккаунтов)
- Поддержку системы Variant (варианты
low/high) - Двойную систему квот (Antigravity + Gemini CLI)
Шаги настройки:
Добавьте плагин аутентификации Antigravity:
Отредактируйте
~/.config/opencode/opencode.json:json{ "plugin": [ "oh-my-opencode", "opencode-antigravity-auth@latest" ] }Настройте модели Gemini (важно):
Плагин Antigravity использует другие имена моделей. Нужно скопировать полную конфигурацию моделей в
opencode.json, осторожно объединяя, чтобы не нарушить существующие настройки.Доступные модели (квота Antigravity):
google/antigravity-gemini-3-pro— варианты:low,highgoogle/antigravity-gemini-3-flash— варианты:minimal,low,medium,highgoogle/antigravity-claude-sonnet-4-5— без вариантовgoogle/antigravity-claude-sonnet-4-5-thinking— варианты:low,maxgoogle/antigravity-claude-opus-4-5-thinking— варианты:low,max
Доступные модели (квота Gemini CLI):
google/gemini-2.5-flash,google/gemini-2.5-pro,google/gemini-3-flash-preview,google/gemini-3-pro-preview
Переопределите модель агента (в
oh-my-opencode.json):jsonc{ "agents": { "multimodal-looker": { "model": "google/antigravity-gemini-3-flash" } } }Запустите аутентификацию:
bashopencode auth loginВыберите провайдера:
Provider: выберитеGoogleLogin method: выберитеOAuth with Google (Antigravity)
Завершите процесс аутентификации:
- Система автоматически откроет браузер
- Выполните вход в Google
- Опционально: добавьте дополнительные аккаунты Google для балансировки нагрузки
Сопоставление моделей (конфигурация по умолчанию):
| Агент | Модель по умолчанию | Назначение |
|---|---|---|
| Multimodal Looker | google/antigravity-gemini-3-flash | Анализ PDF, изображений |
GitHub Copilot (резервный провайдер)
Сценарий использования: резервный вариант, когда нативные провайдеры недоступны
Резервный провайдер
GitHub Copilot действует как прокси-провайдер, маршрутизируя запросы к базовой модели, к которой у вас есть подписка.
Шаги настройки:
Запустите аутентификацию OpenCode:
bashopencode auth loginВыберите провайдера:
Provider: выберитеGitHubLogin method: выберитеAuthenticate via OAuth
Завершите процесс OAuth GitHub
Подтвердите успех:
bashopencode models | grep github-copilot
Сопоставление моделей (когда GitHub Copilot — лучший доступный провайдер):
| Агент | Модель | Назначение |
|---|---|---|
| Sisyphus | github-copilot/claude-opus-4.5 | Главный оркестратор |
| Oracle | github-copilot/gpt-5.2 | Архитектурный обзор |
| Explore | opencode/gpt-5-nano | Быстрое исследование |
| Librarian | zai-coding-plan/glm-4.7 (если Z.ai доступен) | Поиск документации |
Z.ai Coding Plan (опционально)
Сценарий использования: агент Librarian (многорепозиторное исследование, поиск документации)
Особенности:
- Предоставляет модель GLM-4.7
- Высокое соотношение цена/качество
- Когда включён, агент Librarian всегда использует
zai-coding-plan/glm-4.7, независимо от других доступных провайдеров
Шаги настройки:
Используйте интерактивный установщик:
bunx oh-my-opencode install
# Когда спросит: "Do you have a Z.ai Coding Plan subscription?" → выберите "Yes"Сопоставление моделей (когда Z.ai — единственный доступный провайдер):
| Агент | Модель | Назначение |
|---|---|---|
| Sisyphus | zai-coding-plan/glm-4.7 | Главный оркестратор |
| Oracle | zai-coding-plan/glm-4.7 | Архитектурный обзор |
| Explore | zai-coding-plan/glm-4.7-flash | Быстрое исследование |
| Librarian | zai-coding-plan/glm-4.7 | Поиск документации |
OpenCode Zen (опционально)
Сценарий использования: предоставляет модели с префиксом opencode/ (Claude Opus 4.5, GPT-5.2, GPT-5 Nano, Big Pickle)
Шаги настройки:
bunx oh-my-opencode install
# Когда спросит: "Do you have access to OpenCode Zen (opencode/ models)?" → выберите "Yes"Сопоставление моделей (когда OpenCode Zen — лучший доступный провайдер):
| Агент | Модель | Назначение |
|---|---|---|
| Sisyphus | opencode/claude-opus-4-5 | Главный оркестратор |
| Oracle | opencode/gpt-5.2 | Архитектурный обзор |
| Explore | opencode/gpt-5-nano | Быстрое исследование |
| Librarian | opencode/big-pickle | Поиск документации |
Система разрешения моделей (3 шага приоритета)
oh-my-opencode использует механизм из 3 шагов для определения модели, которую должен использовать каждый агент и категория. Этот механизм гарантирует, что система всегда найдёт доступную модель.
Шаг 1: Переопределение пользователя
Если пользователь явно указал модель в oh-my-opencode.json, используется эта модель.
Пример:
{
"agents": {
"oracle": {
"model": "openai/gpt-5.2" // Явно указано пользователем
}
}
}В этом случае:
- ✅ Напрямую используется
openai/gpt-5.2 - ❌ Пропускается шаг понижения провайдера
Шаг 2: Понижение провайдера
Если пользователь не указал модель явно, система попробует цепочку провайдеров в порядке приоритета, пока не найдёт доступную модель.
Цепочка приоритетов провайдеров для Sisyphus:
anthropic → github-copilot → opencode → antigravity → googleПроцесс разрешения:
- Пробуем
anthropic/claude-opus-4-5- Доступна? → Возвращаем эту модель
- Недоступна? → Продолжаем
- Пробуем
github-copilot/claude-opus-4-5- Доступна? → Возвращаем эту модель
- Недоступна? → Продолжаем
- Пробуем
opencode/claude-opus-4-5- ...
- Пробуем
google/antigravity-claude-opus-4-5-thinking(если настроено)- ...
- Возвращаем модель по умолчанию системы
Цепочки приоритетов провайдеров для всех агентов:
| Агент | Модель (без префикса) | Цепочка приоритетов провайдеров |
|---|---|---|
| Sisyphus | claude-opus-4-5 | anthropic → github-copilot → opencode → antigravity → google |
| Oracle | gpt-5.2 | openai → anthropic → google → github-copilot → opencode |
| Librarian | big-pickle | opencode → github-copilot → anthropic |
| Explore | gpt-5-nano | anthropic → opencode |
| Multimodal Looker | gemini-3-flash | google → openai → zai-coding-plan → anthropic → opencode |
| Prometheus | claude-opus-4-5 | anthropic → github-copilot → opencode → antigravity → google |
| Metis | claude-sonnet-4-5 | anthropic → github-copilot → opencode → antigravity → google |
| Momus | claude-opus-4-5 | anthropic → github-copilot → opencode → antigravity → google |
| Atlas | claude-sonnet-4-5 | anthropic → github-copilot → opencode → antigravity → google |
Цепочки приоритетов провайдеров для Category (категорий):
| Категория | Модель (без префикса) | Цепочка приоритетов провайдеров |
|---|---|---|
| ultrabrain | gpt-5.2-codex | openai → anthropic → google → github-copilot → opencode |
| artistry | gemini-3-pro | google → openai → anthropic → github-copilot → opencode |
| quick | claude-haiku-4-5 | anthropic → github-copilot → opencode → antigravity → google |
| writing | gemini-3-flash | google → openai → anthropic → github-copilot → opencode |
Шаг 3: Системное значение по умолчанию
Если все провайдеры недоступны, используется модель OpenCode по умолчанию (читается из opencode.json).
Глобальный порядок приоритетов:
Переопределение пользователя > Понижение провайдера > Системное значение по умолчаниюПошаговое руководство: настройка нескольких провайдеров
Шаг 1: Спланируйте ваши подписки
Перед началом настройки составьте список ваших подписок:
- [ ] Anthropic Claude (Pro/Max)
- [ ] OpenAI ChatGPT Plus
- [ ] Google Gemini
- [ ] GitHub Copilot
- [ ] Z.ai Coding Plan
- [ ] OpenCode ZenШаг 2: Используйте интерактивный установщик (рекомендуется)
oh-my-opencode предоставляет интерактивный установщик, который автоматически обрабатывает большую часть конфигурации:
bunx oh-my-opencode installУстановщик спросит:
Do you have a Claude Pro/Max Subscription?
yes, max20→--claude=max20yes, regular→--claude=yesno→--claude=no
Do you have an OpenAI/ChatGPT Plus Subscription?
yes→--openai=yesno→--openai=no
Will you integrate Gemini models?
yes→--gemini=yesno→--gemini=no
Do you have a GitHub Copilot Subscription?
yes→--copilot=yesno→--copilot=no
Do you have access to OpenCode Zen (opencode/ models)?
yes→--opencode-zen=yesno→--opencode-zen=no
Do you have a Z.ai Coding Plan subscription?
yes→--zai-coding-plan=yesno→--zai-coding-plan=no
Нон-интерактивный режим (подходит для скриптовой установки):
bunx oh-my-opencode install --no-tui \
--claude=max20 \
--openai=yes \
--gemini=yes \
--copilot=noШаг 3: Аутентифицируйте каждого провайдера
После завершения работы установщика выполните аутентификацию для каждого провайдера:
# Аутентификация Anthropic
opencode auth login
# Provider: Anthropic
# Login method: Claude Pro/Max
# Завершите процесс OAuth
# Аутентификация OpenAI
opencode auth login
# Provider: OpenAI
# Завершите процесс OAuth
# Аутентификация Google Gemini (требуется предварительная установка плагина antigravity)
opencode auth login
# Provider: Google
# Login method: OAuth with Google (Antigravity)
# Завершите процесс OAuth
# Аутентификация GitHub Copilot
opencode auth login
# Provider: GitHub
# Login method: Authenticate via OAuth
# Завершите GitHub OAuthШаг 4: Проверьте конфигурацию
# Проверьте версию OpenCode
opencode --version
# Должно быть >= 1.0.150
# Просмотрите все доступные модели
opencode models
# Запустите диагностику doctor
bunx oh-my-opencode doctor --verboseПример вывода doctor:
✅ OpenCode version: 1.0.150
✅ Plugin loaded: oh-my-opencode
📊 Model Resolution:
┌─────────────────────────────────────────────────────┐
│ Agent │ Requirement │ Resolved │
├─────────────────────────────────────────────────────┤
│ Sisyphus │ anthropic/claude-opus-4-5 │ anthropic/claude-opus-4-5 │
│ Oracle │ openai/gpt-5.2 │ openai/gpt-5.2 │
│ Librarian │ opencode/big-pickle │ opencode/big-pickle │
│ Explore │ anthropic/gpt-5-nano │ anthropic/gpt-5-nano │
│ Multimodal Looker│ google/gemini-3-flash │ google/gemini-3-flash │
└─────────────────────────────────────────────────────┘
✅ All models resolved successfullyШаг 5: Настройка пользовательских моделей агентов (опционально)
Если вы хотите назначить конкретную модель для определённого агента:
{
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json",
"agents": {
// Oracle использует GPT для архитектурного обзора
"oracle": {
"model": "openai/gpt-5.2",
"temperature": 0.1
},
// Librarian использует более дешёвую модель для исследований
"librarian": {
"model": "opencode/gpt-5-nano",
"temperature": 0.1
},
// Multimodal Looker использует Antigravity Gemini
"multimodal-looker": {
"model": "google/antigravity-gemini-3-flash",
"variant": "high"
}
}
}Шаг 6: Настройка пользовательских моделей Category (опционально)
Назначьте модели для различных типов задач:
{
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json",
"categories": {
// Быстрые задачи используют дешёвую модель
"quick": {
"model": "opencode/gpt-5-nano",
"temperature": 0.1
},
// Frontend задачи используют Gemini
"visual-engineering": {
"model": "google/gemini-3-pro",
"temperature": 0.7,
"prompt_append": "Use shadcn/ui components and Tailwind CSS."
},
// Задачи высокоуровневого интеллекта используют GPT Codex
"ultrabrain": {
"model": "openai/gpt-5.2-codex",
"temperature": 0.1
}
}
}Использование Category:
// Используйте delegate_task в диалоге
delegate_task(category="visual", prompt="Create a responsive dashboard component")
delegate_task(category="quick", skills=["git-master"], prompt="Commit these changes")Контрольный список ✅
- [ ]
opencode --versionпоказывает версию >= 1.0.150 - [ ]
opencode modelsперечисляет модели всех настроенных провайдеров - [ ]
bunx oh-my-opencode doctor --verboseпоказывает, что все модели агентов правильно разрешены - [ ] В
opencode.jsonвидно, что"oh-my-opencode"находится в массивеplugin - [ ] Попробуйте использовать агента (например, Sisyphus), чтобы убедиться, что модель работает нормально
Ловушки
❌ Ловушка 1: Забыта аутентификация провайдера
Симптом: Провайдер настроен, но разрешение модели не удаётся.
Причина: Установщик настроил модели, но аутентификация не была завершена.
Решение:
opencode auth login
# Выберите соответствующего провайдера и завершите аутентификацию❌ Ловушка 2: Неправильное имя модели Antigravity
Симптом: Gemini настроен, но агент его не использует.
Причина: Плагин Antigravity использует другие имена моделей (google/antigravity-gemini-3-pro вместо google/gemini-3-pro).
Решение:
{
"agents": {
"multimodal-looker": {
"model": "google/antigravity-gemini-3-flash" // Правильно
// model: "google/gemini-3-flash" // ❌ Неправильно
}
}
}❌ Ловушка 3: Неправильное расположение конфигурационного файла
Симптом: Конфигурация изменена, но система её не применяет.
Причина: Изменён неправильный конфигурационный файл (пользовательский vs проектный).
Решение:
# Пользовательская конфигурация (глобальная, высокий приоритет)
~/.config/opencode/oh-my-opencode.json
# Проектная конфигурация (локальная, низкий приоритет)
.opencode/oh-my-opencode.json
# Проверьте, какой файл используется
bunx oh-my-opencode doctor --verbose❌ Ловушка 4: Прерывание цепочки приоритетов провайдеров
Симптом: Определённый агент всегда использует неправильную модель.
Причина: Переопределение пользователя (Шаг 1) полностью пропускает понижение провайдера (Шаг 2).
Решение: Если вы хотите использовать автоматическое понижение, не жёстко задавайте модель в oh-my-opencode.json, а позвольте системе автоматически выбрать на основе цепочки приоритетов.
Пример:
{
"agents": {
"oracle": {
// ❌ Жёсткое задание: всегда использовать GPT, даже если Anthropic доступен
"model": "openai/gpt-5.2"
}
}
}Если хотите использовать понижение, удалите поле model и позвольте системе автоматически выбрать:
{
"agents": {
"oracle": {
// ✅ Автоматически: anthropic → google → github-copilot → opencode
"temperature": 0.1
}
}
}❌ Ловушка 5: Z.ai всегда занимает Librarian
Симптом: Даже при настройке других провайдеров Librarian всё равно использует GLM-4.7.
Причина: Когда Z.ai включён, Librarian жёстко запрограммирован использовать zai-coding-plan/glm-4.7.
Решение: Если вам не нужно такое поведение, отключите Z.ai:
bunx oh-my-opencode install --no-tui --zai-coding-plan=noИли переопределите вручную:
{
"agents": {
"librarian": {
"model": "opencode/big-pickle" // Переопределение жёсткого задания Z.ai
}
}
}Резюме урока
- oh-my-opencode поддерживает 6 основных провайдеров: Anthropic, OpenAI, Google, GitHub Copilot, Z.ai, OpenCode Zen
- Используйте интерактивный установщик
bunx oh-my-opencode installдля быстрой настройки нескольких провайдеров - Система разрешения моделей динамически выбирает модели через 3 шага приоритета (переопределение пользователя → понижение провайдера → системное значение по умолчанию)
- Каждый агент и Category имеют свою цепочку приоритетов провайдеров, гарантируя, что всегда будет найдена доступная модель
- Используйте команду
doctor --verboseдля диагностики конфигурации разрешения моделей - При настройке пользовательских моделей для агентов и Category будьте осторожны, чтобы не нарушить механизм автоматического понижения
Анонс следующего урока
В следующем уроке мы изучим многомодельную стратегию: автоматическое понижение и приоритеты.
Вы узнаете:
- Полный рабочий процесс системы разрешения моделей
- Как разработать оптимальную комбинацию моделей для разных задач
- Стратегии параллельного управления в фоновых задачах
- Как диагностировать проблемы разрешения моделей
Приложение: Справка по исходному коду
Нажмите, чтобы развернуть информацию о расположении исходного кода
Обновлено: 2026-01-26
| Функция | Путь к файлу | Номера строк |
|---|---|---|
| Определение схемы конфигурации | src/config/schema.ts | 1-378 |
| Руководство по установке (настройка провайдеров) | docs/guide/installation.md | 1-299 |
| Справочник по конфигурации (разрешение моделей) | docs/configurations.md | 391-512 |
| Схема конфигурации переопределения агента | src/config/schema.ts:AgentOverrideConfigSchema | 98-119 |
| Схема конфигурации Category | src/config/schema.ts:CategoryConfigSchema | 154-172 |
| Документация по цепочкам приоритетов провайдеров | docs/configurations.md | 445-473 |
Ключевые константы:
- Нет: цепочки приоритетов провайдеров жёстко закодированы в документации по конфигурации, не являются константами кода
Ключевые функции:
- Нет: логика разрешения моделей обрабатывается ядром OpenCode, oh-my-opencode предоставляет конфигурацию и определения приоритетов