pile·
AI / ML·vercel-blogVercel Blog·

eve에서 Slack 이벤트 훅과 세션 제어 기능 추가

Vercel의 AI 에이전트 프레임워크 eve가 Slack 채널에서 새로운 이벤트 훅과 세션 제어 기능을 제공한다. onMessage/onEvent 훅을 통해 Slack 이벤트를 유연하게 핸들링하고, 진행 중인 응답을 취소하거나 대화 세션을 초기화하는 기능도 추가됐다.

핵심 포인트
  • onMessage 훅에 ctx.isBotMentioned()와 ctx.isSubscribed() 헬퍼가 추가돼 멘션 없이도 스레드에서 계속 대화할 수 있다.
  • ctx.cancel()은 현재 턴을 중단하면서 세션을 유지하고, ctx.reset()은 세션 전체를 종료해 다음 메시지부터 새 대화를 시작한다.
  • onEvent 훅으로 Slack Events API의 모든 이벤트(reaction_added, team_join, channel_created 등)를 핸들링할 수 있다.
  • ctx.thread.listParticipants()로 스레드에 참여한 유저 목록을 가져올 수 있으며, 공개/비공개 채널에 따라 필요한 Slack 봇 scope가 다르다.
  • ctx.receive()를 여러 번 호출해 하나의 이벤트를 여러 채널 타깃으로 팬아웃할 수 있다.
상세 정리
  • 배경: 기존 Slack 채널에서는 매번 멘션이 필요했고, 진행 중인 응답을 중단하거나 대화를 완전히 새로 시작하는 기능이 없었다.
  • onMessage 훅: 들어오는 Slack 메시지를 수신하며, ctx.isBotMentioned()와 ctx.isSubscribed()로 라우팅 조건을 설정한다.
  • 스레드 참여자 확인: ctx.thread.listParticipants()가 first-appearance 순서로 유니크한 인간 유저 ID를 반환한다. 공개 채널은 message.channels 트리거와 channels:history scope가 필요하다.
  • ctx.cancel(): 현재 실행 중인 턴을 멈추고 세션은 유지 — 새 메시지를 대체 입력으로 큐에 추가해 최신 메시지에 바로 응답하게 한다.
  • ctx.reset(): 세션을 완전히 종료 — 다음 메시지부터 히스토리·상태·샌드박스가 초기화된 새 세션이 시작된다. '!new' 명령어로 신규 대화를 시작하는 예시를 TypeScript 코드로 제시한다.
  • onEvent 훅: Slack Events API의 임의 이벤트를 수신한다. team_join 이벤트를 받아 여러 온보딩 채널에 동시 메시지를 보내는 패턴을 TypeScript 코드로 제시한다.
  • 팬아웃 패턴: ctx.receive()를 Promise.all로 묶어 하나의 이벤트에서 여러 타깃에 동시 에이전트 턴을 시작하는 방법을 보여준다.
왜 읽나Vercel eve 에이전트 프레임워크로 Slack 봇/AI 에이전트를 구축하는 개발자에게 이벤트 기반 제어 패턴의 실전 코드 레퍼런스.
vercel-blog
Vercel Blog 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. AI / ML·pinterest-engPinterest Engineering·

    사용자 유스케이스 클러스터(UIC)로 Pinterest 홈피드 장기 체류율 끌어올리기

    Pinterest는 클릭·저장 같은 단기 참여 지표 최적화가 장기 사용자 유지와 다름을 인식하고, 사용자 관심사의 생애주기를 추적하는 "User Interest Clusters(UIC)" 표현을 도입했다. 이를 통해 홈피드 파이프라인 전 단계(검색·스코어링·랭킹·다양화)를 유스케이스 인식형으로 재편해 장기 주간 활성 사용자(WAU) 성장을 이끌었다.

    #personalization#recommendation-system#hierarchical-clustering+2
  2. AI / ML·AWS KoreaAWS Korea Tech·

    1시간 대화로 만드는 Amazon Connect Customer AI Agent [AICC Builder 시리즈 #1]

    Amazon Connect Customer AI Agent를 1시간 내에 구축할 수 있게 해주는 오픈소스 샘플 앱 AICC Builder를 다룬다. 요구사항 인터뷰를 통해 Lambda 함수, OpenAPI 명세, AI 프롬프트, Contact Flow JSON, CDK 인프라 코드, FAQ/지식베이스 총 6가지 배포 에셋을 자동 생성한다. 코드 한 줄 없이 전화받는 PoC까지 완성하는 것이 핵심 목표다.

    #mcp#voice-ai#bedrock+2