Skip to Content
Руководство для пользователейВозможностиКаналыПлагины

Пользовательские плагины каналов

Вы можете расширить систему каналов с помощью пользовательских адаптеров платформ, упакованных в виде расширений. Это позволяет подключить Qwen Code к любой платформе для обмена сообщениями, вебхуку или пользовательскому транспорту.

Как это работает

Плагины каналов загружаются при запуске из активных расширений. При выполнении команды qwen channel start:

  1. Сканирует все включенные расширения на наличие записей channels в их qwen-extension.json
  2. Динамически импортирует точку входа каждого канала
  3. Регистрирует тип канала, чтобы на него можно было ссылаться в settings.json
  4. Создает экземпляры каналов с помощью фабричной функции плагина

Ваш пользовательский канал автоматически получает полный общий пайплайн: фильтрацию отправителей, групповые политики, маршрутизацию сессий, слэш-команды, восстановление после сбоев и мост для агента. Автономный qwen channel start в настоящее время предоставляет AcpBridge; код адаптера плагина должен зависеть от контракта ChannelAgentBridge, предназначенного для адаптеров. Существующим плагинам на TypeScript с явным параметром моста AcpBridge следует заменить эту аннотацию на ChannelAgentBridge; на плагины на JavaScript это не влияет во время выполнения.

Установка пользовательского канала

Установите расширение, предоставляющее плагин канала:

# Из локального пути (для разработки или приватных плагинов) qwen extensions install /path/to/my-channel-extension # Или подключите его для разработки (изменения применяются мгновенно) qwen extensions link /path/to/my-channel-extension

Настройка пользовательского канала

Добавьте запись канала в ~/.qwen/settings.json, используя пользовательский тип, предоставленный расширением:

{ "channels": { "my-bot": { "type": "my-platform", "apiKey": "$MY_PLATFORM_API_KEY", "senderPolicy": "open", "cwd": "/path/to/project" } } }

Значение type должно совпадать с типом канала, зарегистрированным установленным расширением. Проверьте документацию расширения, чтобы узнать, какие специфичные для плагина поля обязательны (например, apiKey, webhookUrl).

Все стандартные параметры каналов работают и с пользовательскими каналами:

ПараметрОписание
senderPolicyallowlist, pairing или open
allowedUsersСтатический список разрешенных ID отправителей
sessionScopeuser, thread или single
cwdРабочая директория для агента
instructionsДобавляются в начало первого сообщения каждой сессии
modelПереопределение модели для канала
groupPolicydisabled, allowlist или open
groupsНастройки для каждой группы

Подробнее о каждом параметре см. в разделе Обзор.

Запуск канала

# Запуск всех каналов, включая пользовательские qwen channel start # Запуск только вашего пользовательского канала qwen channel start my-bot

Что доступно из коробки

Пользовательские каналы автоматически поддерживают всё, что есть во встроенных каналах:

  • Политики отправителей — контроль доступа allowlist, pairing и open
  • Групповые политики — настройки для каждой группы с опциональной фильтрацией по @упоминаниям
  • Маршрутизация сессий — сессии для каждого пользователя, каждой ветки или одна общая сессия
  • Сопряжение в ЛС — полный процесс сопряжения по коду для неизвестных пользователей
  • Слэш-команды/help, /clear, /status работают из коробки
  • Пользовательские инструкции — добавляются в начало первого сообщения в каждой сессии
  • Восстановление после сбоев — автоматический перезапуск с сохранением сессии
  • Посессионная сериализация — сообщения ставятся в очередь для предотвращения состояний гонки

Создание собственного плагина канала

Хотите создать плагин канала для новой платформы? Обратитесь к Руководству разработчика плагинов каналов, где описаны интерфейс ChannelPlugin, формат Envelope и точки расширения.

Last updated on