Slack으로 문서 받아보기
요약: Slack 에서 특정 키워드가 언급되거나 사용자가 요청하면, Seahorse 에이전트가 관련 문서를 찾아 Slack 메시지·파일 로 자동 전달합니다. 사내 온보딩·FAQ·지식 공유 용도로 유용.시작 전 필수 — Slack 측 권한 설정이 먼저
방식 A (주기 폴링) — 필요한 것- Slack App 생성 → api.slack.com/apps
- Bot Token Scopes:
chat:write·channels:read·channels:history(비공개 채널 시groups:read·groups:history, DM 시im:history·im:write) - Install to Workspace — 관리자 승인 필요
- Bot User OAuth Token (
xoxb-...) 발급 - 대상 채널에 Bot 초대 (
/invite @봇이름)
- Basic Information → App-Level Tokens 에서
connections:writeScope 로 App-Level Token (xapp-...) 발급 - Socket Mode 활성화
- Event Subscriptions 에서
app_mention등 이벤트 구독 - Signing Secret 복사 (Basic Information → App Credentials)
보안 주의
구성 개요
방식 A — 주기 폴링 (권장·간단)
방식 B — 실시간 Socket Mode (즉시성 필요 시)
시나리오 예시
- 온보딩: 신규 입사자가
@seahorse-bot 연차 사용 규정→ 인사 규정 문서 요약 + 링크 - 기술 Q&A: 개발자가
@bot Kafka 튜닝 가이드→ 내부 위키 문서 조회 + 스니펫 - 영업 지원: 영업 담당이
@bot Acme 고객 사례→ 제안서·성공사례 파일 전달
요구 사항
| 항목 | 방식 A (Scheduler) | 방식 B (Socket Mode) |
|---|---|---|
| Slack MCP 도구 | ✓ (Bot Token 으로 slack_read_channel·slack_send_message) | ✓ (Bot Token·App Token·Signing Secret) |
| Slack App 설정 | Bot 을 채널에 초대만 하면 됨 | Event Subscriptions + app_mention + Socket Mode ON |
| Storage / Table | 온보딩·FAQ 문서 업로드 + 에이전트 Tables 연결 | 동일 |
| 에이전트 | Slack MCP 도구 허용된 에이전트 | Slack Listener 설정 완료된 에이전트 |
| Scheduler | 필수 (폴링 간격 정의) | 불필요 (이벤트 기반) |
| Flow Studio | 필수 (읽기 → 필터 → 답변 → 상태 저장) | 불필요 |
| 응답 지연 | Scheduler 간격만큼 (예: 5 분) | 수 초 내 |
Bot 설정
Bot Scope 권장:app_mentions:read— 멘션 감지chat:write— 답변 전송files:write— 파일 업로드channels:history— 채널 메시지 읽기 (키워드 감지 시)
단계
Slack App 생성·설치
api.slack.com/apps → Event Subscriptions 활성화 →
app_mention 이벤트 구독 → Bot Token 발급.Slack MCP 템플릿 등록
Tool Management → Slack 템플릿:
SLACK_BOT_TOKEN=xoxb-...SLACK_TEAM_ID=T01234...
트리거 경로 설정 — 두 가지 방식
목적·난이도에 따라 아래 두 패턴 중 하나를 선택합니다. 주기 폴링 방식이 훨씬 쉽고 안정적 이며, 즉시성이 꼭 필요하면 Socket Mode 를 사용하세요.장점: 설정 간단, 에이전트 서버 재시작에 영향 없음, 비용 예측 쉬움(Scheduler 간격 × 채널당 호출)
단점: 간격만큼 응답 지연 (예: 5 분)
(A) 주기 폴링 — Scheduler + Flow (권장)
Scheduler 가 일정 간격마다 채널을 읽고, 새 메시지가 있으면 Flow 로 처리합니다. 웹훅 인프라·외부 포트 노출 없이 동작 합니다.(B) 실시간 이벤트 — Socket Mode (고급)
Slack App 이 Socket Mode 로 연결되어 있으면 멘션·슬래시 커맨드를 즉시 에이전트에 전달합니다. Agent 생성 → Slack 탭 에서 설정:- Slack Bot Token (
xoxb-...) - Slack App Token (
xapp-...) — Socket Mode 필수 - Slack Signing Secret
- Default LLM
app_mention 구독 + Socket Mode ON.장점: 사용자가 @bot ... 치면 수 초 내 응답
단점: Slack App 설정·토큰 관리 복잡, 에이전트 서버가 항상 살아 있어야 함, 트래픽 폭주 시 Rate Limit 걸릴 수 있음두 방식은 섞어 쓸 수도 있습니다. 예: 멘션은 Socket Mode 로 즉시 응답 + 매일 아침 주요 공지 요약은 Scheduler 로 푸시.
프롬프트 템플릿 (Slack 응답)
변형 · 응용
- Thread 안내 — 긴 답변은 요약 + “자세히 보기는 스레드에” 로 분리
- DM 직접 전달 — 민감 문서는 채널이 아닌 DM 으로만
- 권한별 답변 — 사용자 이메일 / 역할 확인 후 접근 가능한 Storage 만 검색
주의 사항
검색·답변 이력은 감사 목적으로 Slack 채널에 그대로 남지만, 더 상세한 호출 로그는 Events 감사 에서 확인할 수 있습니다.
관련 레시피
- Slack 알림 자동화 — 일방향 알림 (이 레시피는 양방향 Q&A)
- RAG + 웹 검색 통합 — 검색 정확도 향상
- 보고서 자동 발행 — 정기 푸시
- 레시피 목록