Eve получает новые хуки событий Slack и инструменты управления сессиями
Как сообщает Vercel Blog, фреймворк Eve получил обновление для интеграции со Slack, добавив возможность поддерживать диалог в тредах без повторных упоминаний, управлять сессиями и обрабатывать любые события приложений.

Платформа Eve расширила функциональность для разработчиков, создающих агентов под коммуникационную среду Slack. Новые инструменты позволяют чат-ботам поддерживать непрерывный диалог в рамках одной ветки сообщений без необходимости постоянного упоминания бота пользователями. После появления активной сессии в треде агент получает возможность отвечать самостоятельно, опираясь на контекст беседы.
Хуки сообщений и маршрутизация контекста
Для обработки входящего трафика в Eve добавлен специальный хук сообщений, который работает в связке с двумя вспомогательными методами маршрутизации. Метод ctx.isBotMentioned проверяет наличие явного упоминания бота, а ctx.isSubscribed определяет принадлежность сообщения к треду, где уже открыта активная сессия Eve. Помимо этого, вспомогательный метод ctx.thread.listParticipants возвращает уникальные идентификаторы людей-пользователей Slack в хронологическом порядке их появления в обсуждении.
Для корректной маршрутизации в публичных каналах требуется соответствующий тип триггера и область видимости бота. Для работы в приватных каналах дополнительно необходимы разрешения на чтение истории сообщений и групп через соответствующие параметры интеграции в Slack.
Как работают отмена и сброс сессий?
Встроенные хуки сообщений также предоставляют два метода для управления жизненным циклом сессии внутри конкретного треда. Метод ctx.cancel останавливает генерацию текущего ответа, сохраняя саму сессию активной. Вызов этого метода перед возвратом auth позволяет заменить устаревший ввод и перенаправить агента на обработку самого свежего сообщения от пользователя.
Если требуется начать беседу заново, метод ctx.reset полностью завершает текущую сессию, привязанную к треду. Следующее входящее сообщение в таком случае создаст новую сессию со свежей историей, состоянием и изолированной изолированной средой выполнения. Подобная логика сброса занимает минимальное количество строк кода в диспетчере событий onMessage.
Обработка сырых событий и экосистема Slack
Помимо работы с текстовыми сообщениями, в Eve появился отдельный хук событий для приема сырых данных из инфраструктуры Slack. Инструмент поддерживает обработку таких событий, как добавление реакций, присоединение новых участников к команде или создание новых каналов связи.
Внутри этого хука разработчики могут вызывать метод ctx.receive для запуска агентского хода. Метод допускается вызывать несколько раз для распределения одного события по нескольким целевым направлениям. К примеру, событие появления нового участника в команде может автоматически запускать процедуру онбординга во всех назначенных каналах приветствия.
Перспективы использования и документация
Новые возможности автоматизации адресованы разработчикам интеллектуальных агентов и чат-ботов на платформе Vercel. Обновление снижает нагрузку на пользователей при общении с ботами и позволяет гибко настраивать реакцию систем на любые изменения в рабочей среде Slack.
Для начала работы с обновленным функционалом разработчики могут обратиться к официальной документации по каналам Slack в Eve или воспользоваться консольной командой добавления канала через интерфейс управления агентами.