Как подключить ИИ-агента к Slack и Teams: разбор способов
ИИ-агент в рабочем мессенджере отвечает на вопросы по базе знаний, заводит задачи и дежурит в поддержке. Разбираем, как его подключить к Slack и Teams, чем отличаются платформы и где спрятаны подводные камни.

Запрос «поставить бота с ИИ в наш рабочий чат» за последний год превратился из экзотики в типовую задачу. Причина простая: у OpenAI, Anthropic и Google появились API, которые отдают ответы в реальном времени, а Slack и Microsoft Teams давно умеют принимать входящие сообщения от внешних приложений. Собрать связку «мессенджер плюс модель» теперь можно за вечер — но между демо на своём аккаунте и стабильным ботом для сотни коллег лежит несколько неочевидных шагов. Разберём оба пути и то, где они расходятся.
Что вообще значит «подключить агента»
Технически задача сводится к трём частям, и они одинаковы для Slack и Teams:
- Приложение в мессенджере — сущность, у которой есть права читать сообщения, писать в каналы и отвечать в тредах. Регистрируется в панели разработчика площадки.
- Слой доставки событий — способ, которым мессенджер сообщает вашему серверу «пришло сообщение». Это либо вебхук (Events API), либо постоянное соединение (Socket Mode у Slack).
- Логика агента — код, который берёт текст пользователя, при необходимости добавляет контекст из базы знаний (RAG¹), зовёт модель и возвращает ответ обратно в чат.
Модель — самая простая часть: это один HTTP-запрос к API. Основная возня — в правах, событиях и в том, чтобы бот не отвечал сам себе по кругу.
Slack: путь по шагам
Регистрация приложения
Приложение создаётся в консоли Slack API. Дальше выбираете модель прав — OAuth-скоупы. Минимальный набор для чат-бота: app_mentions:read (видеть упоминания), chat:write (писать ответы) и, если нужен доступ к сообщениям без упоминания, channels:history или im:history.
Как получать сообщения
Здесь у Slack два режима, и выбор между ними определяет всю дальнейшую инфраструктуру:
- Events API + вебхук. Slack шлёт POST-запросы на ваш публичный URL. Нужен сервер с HTTPS и подтверждением адреса. Подходит для продакшена, масштабируется.
- Socket Mode. Ваш процесс сам открывает WebSocket к Slack, публичный адрес не нужен. Идеально для прототипа и внутренних инструментов за корпоративным файрволом.
Начните с Socket Mode на этапе разработки — не придётся возиться с туннелями и сертификатами. На боевую нагрузку переезжайте на Events API.
Ответ пользователю
Бот получает событие, вытаскивает текст, шлёт его в модель и вызывает метод chat.postMessage с ответом в тот же тред. Обязательно проверяйте поле bot_id во входящем событии: если оно есть, сообщение отправил бот — игнорируйте, иначе агент зациклится на собственных ответах.
Главная ошибка новичка — не подпись запроса и не токен, а забытая проверка на собственные сообщения. Бот, отвечающий сам себе в бесконечном цикле, находится за минуты и по логам, и по счёту за API.
Microsoft Teams: другая логика
Teams устроен иначе. Здесь бот — часть более крупной сущности под названием приложение Teams, которое описывается манифестом (JSON-файл с иконками, разрешениями и точками входа). Само подключение к модели идентично, но обвязка тяжелее.
Что понадобится
- Регистрация бота в Azure (Azure Bot / Bot Framework) и получение App ID с секретом.
- Эндпоинт для приёма сообщений — Teams общается с ботом через Bot Framework, свой протокол поверх HTTPS.
- Манифест приложения, который загружается в Teams — вручную для теста или через админ-центр для всей организации.
Плюс Teams в том, что публикация внутри компании проходит через централизованный админ-центр: ИТ-отдел решает, кому доступен бот. Минус — порог входа выше, и для запуска вам почти наверняка понадобится подписка на Azure, а не только ключ от модели.
Slack против Teams: коротко о разнице
| Параметр | Slack | Microsoft Teams |
|---|---|---|
| Быстрый старт без публичного сервера | Есть (Socket Mode) | Нет, нужен эндпоинт |
| Инфраструктура | Свой сервер или облако | Обычно Azure + Bot Framework |
| Модель прав | OAuth-скоупы | Манифест + разрешения Azure AD |
| Публикация в организации | Через админа рабочего пространства | Через админ-центр Teams |
| Порог входа для разработчика | Ниже | Выше |
Обе площадки регулярно меняют панели разработчика и названия разделов, поэтому точные пункты меню сверяйте с актуальной документацией, а не с чужими скриншотами полугодовой давности.
Готовые фреймворки против своей сборки
Писать всё с нуля не обязательно. Есть слои, которые берут на себя приём событий и вызов модели:
- Slack Bolt — официальный SDK Slack (Python, JavaScript, Java). Скрывает подписи запросов и роутинг событий.
- Bot Framework SDK — база для ботов Teams от Microsoft.
- Оркестраторы агентов вроде LangChain или фреймворков конкретных вендоров — если агенту нужны инструменты, вызовы функций и память, а не просто «вопрос-ответ».
Отдельно стоит связка «no-code». Некоторые платформы автоматизации умеют соединять триггер из мессенджера с вызовом модели без единой строки кода. Это быстро для простого FAQ-бота, но упирается в потолок, как только нужна нетривиальная логика или доступ к внутренней базе.
Кому это пригодится, а кому нет
Пригодится, если:
- У вас есть база знаний (вики, документы, регламенты), и сотрудники задают по ней одни и те же вопросы — агент с RAG снимает нагрузку с саппорта и старших коллег.
- Нужен дежурный бот в канал поддержки: принять обращение, классифицировать, завести задачу в трекере.
- Хочется точечной автоматизации — например, по команде в чате собрать сводку из внешнего сервиса.
Скорее не стоит, если:
- В чат попадают персональные данные клиентов или коммерческая тайна, а вы шлёте их во внешний API без согласования с безопасностью и без разбора, где физически хранятся данные.
- Задача разовая — быстрее спросить у коллеги, чем месяц полировать бота.
- У вас нет владельца, который будет следить за счётом за API: неконтролируемый бот в шумном канале умеет выставлять неприятные суммы.
О чём подумать до запуска
- Стоимость. Каждый ответ — это токены, за которые платите по прайсу вендора модели. Тарифы меняются часто, актуальные смотрите на странице цен провайдера. Ставьте лимиты на аккаунт.
- Данные. Уточните в условиях провайдера, используются ли ваши запросы для обучения и как их отключить. Для корпоративных тарифов это обычно оговорено отдельно.
- Задержка. Пользователь не любит ждать. Отправляйте моментальную реакцию (например, статус «печатает» или эмодзи), пока модель думает.
- Ошибки модели. Агент может уверенно выдать неверный ответ. Для критичных тем добавляйте оговорку и ссылку на первоисточник, а не подавайте ответ как истину.
¹ RAG (retrieval-augmented generation) — подход, при котором перед запросом к модели система сначала находит релевантные фрагменты в вашей базе документов и подкладывает их в контекст. Так агент отвечает не из «общих знаний», а по вашим материалам.
Prompt-инженер: Идеальные запросы для Midjourney, ChatGPT и других моделей.
Спросить за 15 ₽Источники: Slack API — Building apps and Socket Mode, Microsoft Teams — Build bots documentation
Частые вопросы
Нужен ли публичный сервер, чтобы запустить бота?
Сколько стоит держать такого агента?
Что выбрать новичку — Slack или Teams?
Почему бот отвечает сам себе?
Безопасно ли отправлять рабочие данные в модель?
Материал носит информационный характер и подготовлен редакцией «Агентуры». Он не является офертой, рекламой или индивидуальной консультацией. Упомянутые продукты, компании и торговые знаки принадлежат их правообладателям. Перед принятием решений, влекущих юридические или финансовые последствия, обратитесь к профильному специалисту.