
Channels SDK: любой AI-агент в Slack и MS Teams
CopilotKit выпустила открытый Channels SDK — подключите любой AG-UI агент к Slack, Microsoft Teams и другим платформам без переписывания логики.
Агент туда, где уже работают люди
CopilotKit представила Channels SDK — открытую библиотеку, которая позволяет запустить любой AG-UI агент в Slack, Microsoft Teams и других чат-платформах из единой кодовой базы. Ключевая идея — не переписывать агента под каждую платформу, а просто дать ему место для работы с людьми. SDK опубликован под лицензией MIT и имеет задокументированный runtime-контракт.
Что такое AG-UI и зачем он нужен
AG-UI (Agent-User Interaction Protocol) — открытый, легковесный, событийно-ориентированный протокол, который стандартизирует взаимодействие AI-агентов с пользовательскими интерфейсами. Он стандартизирует передачу состояния агента, UI-намерений и действий пользователя между моделью и фронтендом — чтобы разработчики могли быстро выпускать надёжные агентные фичи без сложной ручной «проводки».
Как работает Channels SDK
Channels SDK подключает AG-UI-совместимого агента к коммуникационным платформам, которые команда уже использует: агент понимает контекст разговора, стримит ответы, вызывает инструменты, работает с файлами, рендерит интерактивный UI и приостанавливается для подтверждения человеком.
Сообщение описывается один раз, а адаптер самостоятельно преобразует его в нативный формат каждой платформы: Block Kit в Slack и Adaptive Cards в Teams — а не просто текстовый blob через webhook.
sequenceDiagram
participant U as Пользователь (Slack/Teams)
participant I as CopilotKit Intelligence
participant C as Channels Process
participant A as Агент (AG-UI)
U->>I: Сообщение в канале
I->>C: Доставка события платформы
C->>A: Запуск агента через AG-UI
A-->>C: Ответ + вызов инструментов
C-->>I: Результат рендеринга
I-->>U: Нативный UI (Block Kit / Adaptive Cards)
Разделение ответственности
Архитектура SDK построена на чётком разграничении: разработчик контролирует агента и бизнес-логику, платформенной инфраструктурой занимается CopilotKit Intelligence.
Такое разделение позволяет держать платформенные credentials подальше от процесса агента, не перенося при этом агента, инструменты и бизнес-логику в CopilotKit.
| Что контролирует разработчик | Что управляет CopilotKit Intelligence |
|---|---|
| Агент, модель и бизнес-логика | Credentials Slack и MS Teams |
| Долгоживущий Channels-процесс | Входящий трафик платформы и доставка |
| Состояние приложения, деплой, логи | Регистрация runtime, health-checks, реконнекты |
| API-ключи и секреты (.env) | Платформенный ingress и управление сессиями |
Поддерживаемые платформы и фреймворки
Сейчас Channels доступен для Slack и Microsoft Teams в режиме раннего доступа; Discord и Google Chat заявлены как следующие платформы.
Можно использовать встроенного агента CopilotKit или подключить LangGraph, CrewAI, Mastra, Pydantic AI, Google ADK и другие AG-UI-совместимые агенты.
Пакет также экспортирует прямые адаптеры для самостоятельного использования — Slack, Teams, Discord, Telegram и WhatsApp.
Быстрый старт: установка и запуск
Для запуска через coding-агент:
npx copilotkit@latest channels setup
Для ручной установки:
npm install @copilotkit/channels @copilotkit/runtime
npm install --save-dev tsx typescript @types/node
npm pkg set type=module
Минимальный пример listener-процесса на TypeScript:
// channel.ts
import { createServer } from "node:http";
import { createChannel } from "@copilotkit/channels";
import {
BuiltInAgent,
CopilotKitIntelligence,
CopilotRuntime,
} from "@copilotkit/runtime/v2";
import { createCopilotNodeListener } from "@copilotkit/runtime/v2/node";
function makeAgent(threadId: string) {
const agent = new BuiltInAgent({ model: "openai:gpt-5.4-mini" });
agent.threadId = threadId;
return agent;
}
const channel = createChannel({
name: process.env.CHANNEL_CODE!,
identifyUser: "platform",
agent: makeAgent,
});
channel.onMessage(async ({ thread, message }) => {
await thread.runAgent({ prompt: message.text });
});
Переменные окружения для запуска:
# .env
OPENAI_API_KEY=<openai-api-key>
INTELLIGENCE_API_KEY=<project-api-key>
CHANNEL_CODE=<channel-code-from-intelligence>
PORT=3000
Запуск:
node --env-file=.env --import tsx channel.ts
Контекст: почему это важно для отрасли
Агент должен быть там, где уже работают люди — а не требовать от них переключаться в новый интерфейс.
Проблема «последней мили» для enterprise AI-агентов заключалась именно в интеграции с мессенджерами: каждая платформа требовала отдельной разработки, управления credentials и поддержки нативного UI. Production self-hosting сохраняет конфигурацию Channels, credentials провайдера, состояние доставки и операции платформы внутри сети организации — обеспечивая полный контроль над data residency и безопасностью.
По мере того как AI-агенты эволюционируют от простых чат-ботов к полноценным движкам рабочих процессов, задача стандартизации взаимодействия агента и пользователя остаётся одной из ключевых нерешённых проблем. Channels SDK вместе с протоколом AG-UI делает серьёзный шаг к её решению: один агент, одна кодовая база — и нативное присутствие в любом корпоративном мессенджере.
Для команд, которые уже строят агентную автоматизацию на LangGraph, CrewAI или собственных фреймворках, Channels SDK снимает главный барьер — платформенную фрагментацию — и открывает путь к production-деплою агентов туда, где сотрудники проводят большую часть рабочего дня.