PurpleSchool — курсы программирования онлайн
  • Пути
    • Frontend React разработчик
    • Frontend Vue разработчик
    • Backend разработчик Node.js
    • Fullstack разработчик React / Node.js
    • Mobile разработчик React Native
    • Backend разработчик Golang
    • Devops инженер
    • Backend разработчик Python
  • AI для кодаНовое
  • О нас
    • Отзывы
    • Реферальная программа
    • О компании
    • Контакты
  • Иконка открытия меню
    • Сообщество
    • PurpleПлюс
    • AI Собеседование
    • AI тренажёр
    • Проекты
PurpleSchool — платформа бесплатных roadmap и курсов для разработчиков
ютуб иконка
Telegram иконка
VK иконка
VK иконка
Курсы
ГлавнаяКаталог курсовFrontendBackendFullstack
Практика
КарьераПроектыPurpleПлюс
Материалы
БлогБаза знаний
Документы
Договор офертаПолитика конфиденциальностиПроверка сертификатаМиграция курсовРеферальная программа
Реквизиты
ИП Ларичев Антон АндреевичИНН 773373765379contact@purpleschool.ru

PurpleSchool © 2020 -2026 Все права защищены

  • Курсы
    • FrontendИконка стрелки
    • AI разработкаИконка стрелки
    • BackendИконка стрелки
    • DevOpsИконка стрелки
    • MobileИконка стрелки
    • ТестированиеИконка стрелки
    • Soft-skillsИконка стрелки
    • ДизайнИконка стрелки
    Иконка слояПерейти в каталог курсов
  • Бесплатно
    • Курсы
    • JavaScript Основы разработкиPython Основы PythonCSS CSS FlexboxКарта развитияВопросы для собеседований
    • База знанийИконка стрелки
    • Новостные рассылкиИконка стрелки
  • PurpleSchool — курсы программирования онлайн
    • AI для кодаНовое
    • Сообщество
    • PurpleПлюс
    • AI Собеседование
    • AI тренажёр
    • Проекты
    Главная
    Сообщество
    OpenCode: пользовательские провайдеры недоступны — что делать

    OpenCode: пользовательские провайдеры недоступны — что делать

    Аватар автора OpenCode: пользовательские провайдеры недоступны — что делать

    Антон Ларичев

    Иконка календаря26 октября 2026
    AI-инструментыapiразработкаjuniorИконка уровня junior
    Картинка поста OpenCode: пользовательские провайдеры недоступны — что делать

    OpenCode: пользовательские провайдеры недоступны — что делать

    Ошибка «Пользовательские провайдеры недоступны на этом сервере» (в английском интерфейсе — «Custom providers are unavailable on this server») появляется в OpenCode Desktop и веб-интерфейсе OpenCode, когда вы сохраняете своего провайдера через «Настройки → Провайдеры → Пользовательский провайдер». Это ошибка самого OpenCode, а не вашего ключа, сервера или региона: в версиях 2.0.x форма сохранения не подключена к серверу и выдаёт эту ошибку при любых введённых данных. VPN и смена ключа не помогут. Решение — описать провайдера в файле opencode.json: так он работает и в Desktop, и в терминальной версии. Ниже — что именно сломано, готовые конфиги для Claude, GPT и Qwen и что делать, если модели не появились.

    Почему OpenCode пишет, что провайдеры недоступны

    В трекере OpenCode на GitHub есть серия обращений об этой ошибке на версиях от 2.0.12 до 2.0.25, на Windows, macOS и Linux, в приложении и в веб-интерфейсе. Авторы, разобравшие код собранного приложения, описывают одно и то же: обработчик сохранения формы — заглушка, которая сразу выбрасывает ошибку с этим текстом. Встроенный в приложение сервер при этом вообще не умеет принимать нового провайдера через интерфейс. Основное обращение открыто с 22 сентября 2026 года, 12 октября о той же ошибке сообщили уже на версии 2.0.25, а исправленная версия в обсуждениях не упоминается.

    Отсюда три практических вывода:

    • «Этот сервер» — не ваш провайдер. Речь о локальном сервере OpenCode, который приложение запускает в фоне. Адрес, ключ и модели, введённые в форму, на ошибку не влияют.
    • Это не блокировка региона. Ошибка одинаковая в любой стране, VPN её не убирает.
    • Ждать исправления не нужно. Провайдер, описанный в конфиге, работает уже сейчас — так же предлагает и бот проекта в ответах на эти обращения.

    В терминальной версии похожая история: команда /connect позволяет выбрать пункт Other и сохранить ключ, но сам провайдер всё равно нужно описать в конфиге — об этом прямо пишет документация OpenCode.

    Решение: провайдер в opencode.json

    OpenCode читает настройки из двух мест:

    • глобальный файл ~/.config/opencode/opencode.json — для всех проектов, на Windows %USERPROFILE%.config\opencode\opencode.json;
    • opencode.json в корне проекта — только для этого проекта.

    Для Desktop удобнее глобальный файл: приложение открывается на разных папках, и провайдер должен быть доступен везде.

    Шаг 1. Ключ в переменной окружения

    Ключ не вписывается в конфиг открытым текстом — OpenCode подставит его из переменной окружения. На macOS и Linux добавьте строку в ~/.zshrc или ~/.bashrc:

    export PURPLESCHOOL_API_KEY="ваш ключ"
    

    На Windows — в PowerShell:

    [Environment]::SetEnvironmentVariable("PURPLESCHOOL_API_KEY", "ваш ключ", "User")
    

    Ключ с оплатой в рублях выдаётся на странице AI для кода от PurpleSchool. Один ключ работает с моделями Claude, GPT и Qwen.

    Шаг 2. Провайдеры в конфиге

    Ниже — конфиг сразу с двумя провайдерами: для моделей Claude по протоколу Anthropic и для GPT и Qwen по протоколу OpenAI. Если файл уже есть, добавьте блоки внутрь существующего provider, не удаляя остальные настройки:

    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "purpleschool-anthropic": {
          "npm": "@ai-sdk/anthropic",
          "name": "PurpleSchool Anthropic Proxy",
          "options": {
            "baseURL": "https://app.purpleschool.ru/api-v2/public/ai-proxy/anthropic/v1",
            "apiKey": "{env:PURPLESCHOOL_API_KEY}"
          },
          "models": {
            "claude-sonnet-5-5": { "name": "Claude Sonnet 5.5" },
            "claude-opus-5-5": { "name": "Claude Opus 5.5" }
          }
        },
        "purpleschool": {
          "npm": "@ai-sdk/openai",
          "name": "PurpleSchool OpenAI Proxy",
          "options": {
            "baseURL": "https://app.purpleschool.ru/api-v2/public/ai-proxy/openai/v1",
            "apiKey": "{env:PURPLESCHOOL_API_KEY}"
          },
          "models": {
            "gpt-6-sol": { "name": "GPT 6 Sol" },
            "qwen3.8-max": { "name": "Qwen 3.8 Max" }
          }
        }
      }
    }
    

    Что здесь важно:

    • npm — пакет, через который OpenCode говорит с API: @ai-sdk/anthropic для Claude, @ai-sdk/openai для GPT и Qwen. Второй работает по протоколу Responses API, который принимает прокси PurpleSchool.
    • options.baseURL — адрес провайдера, обязательно с /v1 в конце.
    • options.apiKey — запись {env:PURPLESCHOOL_API_KEY} означает «взять значение из переменной окружения».
    • models — модели, которые появятся в списке. Ключ объекта — ID модели, name — подпись в интерфейсе. Полный список моделей — в инструкции на странице AI для кода.

    Нужен только один провайдер — оставьте один блок. Если подключаете своего провайдера, который принимает формат Chat Completions (/v1/chat/completions), документация OpenCode предлагает для него пакет @ai-sdk/openai-compatible.

    Шаг 3. Перезапустите OpenCode и выберите модель

    Полностью закройте Desktop и откройте снова: настройки провайдеров читает фоновый сервер, и он подхватывает их при старте. В терминальной версии просто запустите opencode заново.

    Модель выбирается в списке моделей — в Desktop через выбор модели в окне чата, в терминале командой:

    /models
    

    В списке появятся провайдеры «PurpleSchool Anthropic Proxy» и «PurpleSchool OpenAI Proxy» — это значения из поля name.

    Если модели не появились

    Конфиг не тот или с ошибкой. Проверьте путь к файлу и валидность JSON: одна лишняя запятая ломает весь файл, и OpenCode его не применит. Если конфиг лежит в нестандартном месте, путь можно задать переменной окружения OPENCODE_CONFIG.

    Desktop не видит переменную с ключом. Приложение, запущенное из меню или Dock, может не получить переменные из ~/.zshrc. Проверка: откройте терминал, убедитесь, что echo $PURPLESCHOOL_API_KEY печатает ключ, и запустите приложение из этого терминала. На Windows после сохранения переменной приложение нужно закрыть и открыть заново.

    Настроили в WSL, а запускаете Desktop в Windows. Это две разные системы с разными домашними папками. Конфиг и переменная нужны там, где запущено приложение.

    Модели своего провайдера не показываются в окне выбора Desktop. В обращениях к OpenCode встречается и такое. Если в окне не получается, а работать нужно сейчас, тот же конфиг и ключ работают в терминальной версии — она ставится рядом командой npm install -g opencode-ai и Desktop не мешает.

    Ошибка 401 или 404 при первом запросе. 401 — ключ не принят: проверьте переменную и сам ключ в кабинете. 404 — неправильный baseURL: проверьте /v1 в конце и что адрес соответствует пакету — Anthropic-адрес для @ai-sdk/anthropic, OpenAI-адрес для @ai-sdk/openai.

    Частые вопросы

    Исправят ли форму в новых версиях? В основной ветке разработки OpenCode у формы есть рабочая реализация, но она ограничена серверами старого поколения. Поэтому даже после обновления пункт может не заработать или пропасть из настроек. Конфиг — надёжный путь независимо от версии.

    Поможет ли переустановка или откат версии? Переустановка — нет: обращения есть на всех версиях от 2.0.12 до 2.0.25. В обсуждении один пользователь пишет, что откатился на более старую версию, но описать провайдера в конфиге проще и надёжнее.

    Где подробно про установку OpenCode Desktop? В статье OpenCode Desktop: установка и подключение Claude. Про терминальную версию — OpenCode в России: установка и настройка без VPN.

    Что выгоднее: свой ключ или OpenCode Zen? Сравнение с расчётом — в статье OpenCode Zen или свой API-ключ.

    Итог

    Ошибка «Пользовательские провайдеры недоступны на этом сервере» — баг формы в OpenCode 2.0.x, а не проблема ключа, провайдера или региона. Форму обходим: провайдер описывается в ~/.config/opencode/opencode.json, ключ лежит в переменной окружения, OpenCode перезапускается — и модели появляются в списке. Ключ к Claude, GPT и Qwen с оплатой в рублях — на странице AI для кода от PurpleSchool.

    Иконка глаза19

    Комментарии

    0

    Постройте личный план изучения Основы React, React Router и Redux Toolkit до уровня Middle — бесплатно!

    Основы React, React Router и Redux Toolkit — часть карты развития Frontend, Mobile

    • step100+ шагов развития
    • lessons30 бесплатных лекций
    • lessons300 бонусных рублей на счет

    Бесплатные лекции

    Лучшие курсы по теме

    изображение курса

    Zustand

    Антон Ларичев
    AI-тренажерыAI-тренажеры
    Практика в студииПрактика в студии
    Гарантия
    Бонусы
    иконка звёздочки рейтинга4.8
    3 999 ₽ 6 990 ₽
    Подробнее
    изображение курса

    Next.js - с нуля

    Антон Ларичев
    AI-тренажерыAI-тренажеры
    Практика в студииПрактика в студии
    Гарантия
    Бонусы
    иконка звёздочки рейтинга4.7
    3 999 ₽ 6 990 ₽
    Подробнее
    изображение курса

    Feature-Sliced Design

    Антон Ларичев
    AI-тренажерыAI-тренажеры
    Практика в студииПрактика в студии
    Гарантия
    Бонусы
    иконка звёздочки рейтинга4.6
    3 999 ₽ 6 990 ₽
    Подробнее

    Похожие статьи

    Картинка поста Qwen 3.8 Max для кода: как подключить из России
    Иконка аватараАнтон
    Иконка календаря24 октября 2026
    AI-инструментыapiразработкаjuniorИконка уровня junior

    Qwen 3.8 Max для кода: как подключить из России

    Qwen 3.8 Max — флагманская модель Alibaba с контекстом в 1 млн токенов и ответом до 131 тыс. токенов, которую Alibaba позиционирует прежде всего для программирования. Работать с ней из России проще всего в Qwen Code или OpenCode через ключ AI для кода от PurpleSchool: оплата в рублях, без VPN и без аккаунта Alibaba Cloud. Модель подключается по протоколу OpenAI Responses API — ниже готовые конфиги для обоих клиентов, характеристики модели и частые ошибки.

    Иконка чипа0
    Иконка глаза151
    Иконка комментариев0
    Картинка поста Codex не работает: частые ошибки и решения
    Иконка аватараАнтон
    Иконка календаря23 октября 2026
    AI-инструментыapiразработкаjuniorИконка уровня junior

    Codex не работает: частые ошибки и решения

    Чаще всего Codex не работает по одной из четырёх причин: команда `codex` не находится в системе, Codex пытается войти в аккаунт OpenAI, который из России недоступен, неправильно настроен провайдер в `~/.codex/config.toml` или песочница не даёт командам выйти в сеть. Ниже — ошибки по симптомам: что вы видите, почему это происходит и что исправить. В конце — как включить подробный лог, если ни один пункт не подошёл.

    Иконка чипа0
    Иконка глаза278
    Иконка комментариев0
    Картинка поста Сколько стоит Codex в 2026: подписка ChatGPT или API
    Иконка аватараАнтон
    Иконка календаря20 октября 2026
    AI-инструментыapiразработкаjuniorИконка уровня junior

    Сколько стоит Codex в 2026: подписка ChatGPT или API

    Отдельной подписки на Codex нет: он входит в тарифы ChatGPT. Бесплатный тариф и Go за $8 в месяц дают Codex для лёгких задач, полноценная работа начинается с Plus за $20, для плотной нагрузки есть Pro от $100. Второй вариант — платить по API: GPT-6 Sol стоит $2 за миллион входных токенов и $10 за миллион выходных. Из России не работает ни то, ни другое: оплата и доступ к OpenAI закрыты. Через AI для кода от PurpleSchool Codex работает без VPN и аккаунта OpenAI, с оплатой в рублях от 499 ₽ в месяц.

    Иконка чипа0
    Иконка глаза353
    Иконка комментариев0
    Иконка чипа0