Интеграция OpenCode с пользовательскими моделями CodingPlanX
Используйте OpenCode, ИИ-ассистент для программирования в терминале с открытым исходным кодом, в паре с API CodingPlanX для создания идеального опыта разработки в командной строке.
🌟 О проекте
OpenCode — это на 100% открытый ИИ-ассистент для программирования в терминале. По дизайну он похож на Claude Code, но предлагает невероятную гибкость и возможности настройки. Он не привязан к какому-либо конкретному поставщику ИИ-услуг, поддерживает плавное переключение между несколькими моделями, имеет встроенную интеграцию LSP (Language Server Protocol) и может похвастаться удобным для гиков TUI (текстовым пользовательским интерфейсом).

1. Основные функции OpenCode
OpenCode — это ИИ-агент для программирования с открытым исходным кодом, разработанный командой SST специально для гиков и активных пользователей терминала:
- 🔓 100% открытый исходный код: Выпущен под лицензией MIT, код полностью прозрачен.
- 🧠 Поддержка нескольких моделей: Позволяет настраивать и плавно переключаться между Claude, OpenAI, Google Gemini и другими.
- ⚡ Встроенная поддержка LSP: Встроенный Language Server Protocol обеспечивает молниеносный и точный интеллектуальный анализ кода и навигацию.
- 🖥️ Упор на TUI: Создан ветеранами Neovim для пользователей терминала, полностью управляется с клавиатуры.
- 🌐 Архитектура Клиент/Сервер: Поддерживает удаленное управление; запустите сервер локально и управляйте им удаленно с телефона или другого ПК.
- 🔄 Два встроенных агента: По умолчанию включает
build(полный доступ на чтение/запись для основной разработки) иplan(только чтение для анализа и планирования).
2. oh-my-opencode (Рекомендуемое улучшение)
oh-my-opencode — это ультимативный плагин-улучшение для OpenCode, известный в сообществе как "OpenCode на стероидах". Он предоставляет профессиональный опыт программирования с ИИ "из коробки".

Основные функции улучшения:
- Асинхронные субагенты: Возможности параллельной обработки задач, аналогичные Claude Code, что значительно повышает эффективность сложных задач.
- Подготовленные конфиги агентов: Предварительно настроено множество ролей профессиональных агентов (например, Архитектор, Библиотекарь, Исследователь).
- Расширенные инструменты AST: Поддерживает умный рефакторинг, глубокий анализ кода, поиск символов и другие продвинутые функции.
- Режим Ultrawork: Просто добавьте
ultraworkв ваш запрос, чтобы автоматически активировать ультимативный режим параллельной обработки.
Обзор встроенных ролей агентов:
| Имя агента | Рекомендуемая модель | Основное назначение |
|---|---|---|
| 👑 Sisyphus | Claude Opus 4.6 | Главный агент оркестровки, отвечает за глобальное планирование и делегирование фоновых параллельных задач |
| 🔮 Oracle | GPT 5.2 | Проектирование архитектуры, глубокое код-ревью, анализ технической стратегии |
| 📚 Librarian | Claude Sonnet 4.6 | Анализ нескольких репозиториев, поиск в официальной документации, поиск примеров реализации в open-source |
| 🗺️ Explore | Grok Code / Haiku | Быстрое сканирование кода, исследование репозитория и поиск по шаблонам |
| 🎨 Frontend | Gemini 3 Pro | Специалист по фронтенду, превосходно создает красивый и интуитивный UI/UX |
🚀 Установка и настройка
Шаг 1: Установка основной программы OpenCode
OpenCode обновляется очень быстро, поэтому рекомендуется использовать официальный скрипт для установки последней версии (Официальная документация):
# Быстрая установка с помощью curl (Рекомендуется)
curl -fsSL https://opencode.ai/install | bash
# Или используйте пакетные менеджеры Node.js
npm install -g opencode # bun / pnpm / yarn также работают
# Пользователи macOS также могут использовать Homebrew
brew install opencode
Шаг 2: Установка oh-my-opencode (Настоятельно рекомендуется)
oh-my-opencode предоставляет готовые шаблоны профессиональных конфигураций, избавляя вас от утомительной ручной настройки:
bunx oh-my-opencode install
💡 Совет: В процессе установки запустится интерактивный мастер, который спросит, какие ИИ-подписки у вас есть (например, Claude, ChatGPT). Пожалуйста, отметьте нужные варианты в соответствии с вашей ситуацией.
Шаг 3: Настройка конечных точек API и моделей CodingPlanX
Это самый важный шаг! Пожалуйста, используйте текстовый редактор, чтобы создать или изменить конфигурационный файл: ~/.config/opencode/opencode.json.
🎯 О выборе моделей: В приведенном ниже шаблоне конфигурации используются модели серии Claude и серии GPT Codex, предоставляемые CodingPlanX. Они показывают лучшие результаты в различных авторитетных бенчмарках по программированию и являются золотым дуэтом для разработчиков.
Полностью скопируйте следующий JSON-контент и перезапишите ваш opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"anthropic": {
"options": {
"baseURL": "https://api.codingplanx.ai/v1"
}
},
"openai": {
"options": {
"baseURL": "https://api.codingplanx.ai"
}
}
},
"model": "anthropic/claude-opus-4-5-20251101",
"small_model": "anthropic/claude-haiku-4-5-20251001",
"default_agent": "build",
"permission": {
"read": "allow", "list": "allow", "glob": "allow", "grep": "allow",
"codesearch": "allow", "lsp": "allow",
"edit": "ask", "bash": "ask", "webfetch": "ask", "websearch": "ask",
"external_directory": "deny", "doom_loop": "ask"
},
"agent": {
"plan": {
"mode": "primary",
"description": "Планирование/Разбивка/Техническое задание (Только чтение для предотвращения случайных изменений кода)",
"model": "anthropic/claude-opus-4-5-20251101",
"temperature": 0.1,
"prompt": "Вы - старший технический руководитель. Цель: разбить требования на выполнимые шаги (включая критерии приемки/риски/откаты). По умолчанию только чтение; не изменяйте файлы и не запускайте команды. Если выполнение действительно необходимо, объясните почему и предложите переключиться на build/codex.",
"permission": { "edit": "deny", "bash": "deny", "webfetch": "deny", "websearch": "deny", "doom_loop": "deny" }
},
"build": {
"mode": "primary",
"description": "Основная разработка (Сквозная реализация/отладка/исправление тестов) - Claude Opus 4.6",
"model": "anthropic/claude-opus-4-5-20251101",
"temperature": 0.2,
"prompt": "Вы - главный агент-разработчик ПО. Приоритеты: минимально жизнеспособные изменения, читаемость, тестируемость. Кратко объясните свой план перед внесением изменений. После изменения вы должны предоставить: ключевые моменты diff, как проверить локально (команды) и возможные пограничные случаи.",
"permission": { "edit": "allow", "bash": "allow", "webfetch": "ask", "websearch": "ask", "doom_loop": "ask" }
},
"codex": {
"mode": "primary",
"description": "Рефакторинг/Миграция/Крупные изменения (Codex) - GPT-5.2",
"model": "openai/gpt-5.2-2025-12-11",
"temperature": 0.2,
"prompt": "Вы - инженерный агент в стиле Codex, превосходно справляющийся с масштабным рефакторингом, миграциями, код-ревью и сложным взаимодействием с инструментами. Приоритет - сохранение работоспособности проекта: пошаговые коммиты, проверяемые на каждом этапе. При неуверенности сначала добавляйте защиты и тесты.",
"permission": { "edit": "allow", "bash": "allow", "webfetch": "ask", "websearch": "ask", "doom_loop": "ask" }
},
"review": {
"mode": "subagent",
"description": "Код-ревью/Второй мозг (Только чтение) - GPT-5.1-Codex-Max",
"model": "openai/gpt-5.1-codex-max",
"temperature": 0.1,
"prompt": "Вы - строгий ревьюер кода. Вывод: 1) Ключевые риски (ошибки/безопасность/параллелизм/пограничные случаи) 2) Предложения по поддерживаемости 3) Предложения по минимальным изменениям (псевдо-diff подойдет) 4) Необходимые точки тестирования. По умолчанию только чтение; не изменяйте файлы и не запускайте команды.",
"permission": { "edit": "deny", "bash": "deny", "webfetch": "deny", "websearch": "deny", "doom_loop": "deny" }
},
"explore": {
"mode": "subagent",
"description": "Быстрое сканирование кода/Поиск файлов/Обобщение контекста (Только чтение) - Claude Haiku 4.5",
"model": "anthropic/claude-haiku-4-5-20251001",
"temperature": 0.1,
"prompt": "Вы - субагент для быстрого исследования: используйте минимальное количество шагов для поиска нужных файлов/функций/цепочек вызовов, предоставляя четкие пути и сводки. По умолчанию только чтение; не изменяйте файлы и не запускайте команды.",
"permission": { "edit": "deny", "bash": "deny" }
},
"general": {
"mode": "subagent",
"description": "Общие исследования/Документация/Сравнение решений (Средняя стоимость) - Claude Sonnet 4.6",
"model": "anthropic/claude-sonnet-4-5-20250929",
"temperature": 0.2,
"prompt": "Вы - субагент для общего анализа: сосредоточены на объяснении, взвешивании вариантов, написании документации и сравнении решений. По умолчанию только чтение; по возможности избегайте изменения кода.",
"permission": { "edit": "deny", "bash": "deny" }
},
"think": {
"mode": "subagent",
"description": "Помощь в размышлениях/Вывод пограничных случаев (Только чтение) - GPT-5.2",
"model": "openai/gpt-5.2-2025-12-11",
"temperature": 0.2,
"prompt": "Вы - субагент для рассуждений и вывода пограничных случаев: предоставьте структурированный анализ и предложения относительно дизайна, путей исключений, параллелизма/согласованности и узких мест производительности. По умолчанию только чтение.",
"permission": { "edit": "deny", "bash": "deny" }
}
}
}
</details>
Шаг 4: Настройка API-ключей
Поскольку мы настроили двух провайдеров (Anthropic и OpenAI), вам нужно привязать API-ключи, полученные от CodingPlanX, внутри OpenCode.
- Введите
opencodeв терминале, чтобы запустить программу. - В диалоге введите команду
/connect. - Настройка Claude:
- Выберите Anthropic -> Выберите Manually enter API Key (Ввести API-ключ вручную).
- Вставьте ваш API-ключ CodingPlanX и нажмите Enter для сохранения.
- Настройка OpenAI:
- Введите
/connectеще раз. - Выберите OpenAI -> Выберите Manually enter API Key.
- Вставьте ваш API-ключ CodingPlanX и нажмите Enter для сохранения.
- Введите
- Введите
/exitдля выхода, затем перезапуститеopencode, чтобы настройки вступили в силу.
🔐 Примечание: Ваши API-ключи безопасно сохраняются локально в файле
~/.local/share/opencode/auth.json.
💡 Продвинутые советы по использованию
После завершения настройки введите opencode в терминале, чтобы начать общение:
> Привет, пожалуйста, прочитай package.json в текущей директории и расскажи об этом проекте.
1. ⚡ Ultrawork (Ультимативный параллельный режим)
Если вы установили oh-my-opencode, просто добавьте ultrawork (или сокращенно ulw) в ваш запрос, и OpenCode вызовет главного агента, чтобы разбить задачу на части и отправить ее фоновым субагентам для параллельной обработки:
> ultrawork Помоги мне провести рефакторинг модуля аутентификации в директории src/auth и добавить юнит-тесты.
2. 🎯 Синтаксис @ для целевого вызова агентов
Вы можете использовать символ @, чтобы точно отправлять определенные задачи профессиональным агентам, которых мы настроили в JSON:
> @review Помоги мне проверить недавно закоммиченную логику в login.ts на наличие уязвимостей безопасности.
> @explore Найди все конечные точки API в проекте, которые вызывают getUserInfo.
> @general Помоги мне сравнить, что лучше использовать: React Context или Redux для текущего проекта.
3. 🔄 Клавиша Tab для быстрого переключения режимов
Нажмите клавишу Tab в поле ввода для быстрого переключения между основными агентами:
- build: Основной режим с полными правами на чтение/запись файлов и выполнение команд в терминале.
- plan: Безопасный режим с правами только на чтение, используется для первоначального разбиения требований, анализа архитектуры и технического планирования, чтобы ИИ случайно не изменил код.
🛠️ FAQ и устранение неполадок
В1: Ошибка подключения к API или тайм-аут?
- Проверьте, правильный ли
baseURLуказан вopencode.json. - Проверьте терминал на наличие конфликтов с прокси (обычно использование прямого IP обходит проблемы с системным прокси).
В2: Ошибка "Model not found" (Модель не найдена) или модель недоступна?
- Убедитесь, что ID модели в конфигурационном файле (например,
claude-opus-4-5-20251101) точно соответствует списку моделей, официально предоставленному CodingPlanX. Не допускайте опечаток.
В3: Плагин oh-my-opencode выдает ошибку?
- Плагин находится в стадии активной разработки. Если вы столкнулись с ошибкой, попробуйте обновить:
bunx oh-my-opencode update. - По дополнительным вопросам настройки обращайтесь к Официальной документации oh-my-opencode.