NEXTALKAI, tomorrow, and us.
Coding

Cursor로 업무용 Slack 봇 만들어 팀 생산성 높이기

Tools usedCursor

Cursor는 AI가 코드를 짜 주는 에디터입니다. 프로그래밍 경험이 많지 않아도 프롬프트로 지시하면 Slack 봇 코드를 만들어 주고, 팀에서 반복되는 업무를 자동으로 처리하는 봇을 직접 만들 수 있습니다. 일정 알림, 회의록 요약, 간단한 데이터 조회 같은 기능을 봇으로 만들어 팀 생산성을 높일 수 있습니다.

만들 수 있는 것

  • 매일 아침 팀 일정을 채널에 자동으로 올려 주는 알림 봇
  • 채팅에 특정 키워드가 나오면 관련 자료 링크를 바로 답하는 FAQ 봇
  • 구글 시트나 데이터베이스에서 매출, 재고 같은 정보를 명령어로 조회해 주는 봇
  • 회의록이나 긴 스레드를 요약해 주는 정리 봇

필요한 스킬/도구

  • Cursor (무료 플랜 있음, 많이 쓰면 유료): AI로 Slack 봇 코드 작성
  • Slack 워크스페이스 관리자 권한: 봇 앱 만들고 설치하기
  • Node.js 설치: 봇 코드를 실행할 환경 (공식 사이트에서 무료 다운로드)
  • 기본 프롬프트 작성 능력: Cursor에 원하는 기능을 명확하게 설명
  • 터미널 기초 사용법: 명령어로 프로그램 실행하고 확인
  • 서버 또는 호스팅 서비스: 봇을 24시간 돌릴 환경 (로컬 테스트는 무료, 배포는 Heroku, AWS 등 다양)

만드는 순서

  1. Slack 워크스페이스에서 새 앱을 만들고 Bot Token Scopes에 필요한 권한(채팅 읽기, 쓰기 등)을 추가한 뒤, 봇 토큰을 복사합니다.
  2. Cursor를 열고 새 프로젝트 폴더를 만든 다음, Composer(Cmd+I 또는 Ctrl+I)에 "Node.js로 Slack 봇 만들어 줘. @slack/bolt 패키지 사용. 환경 변수로 토큰 관리"처럼 프롬프트를 입력해 기본 구조를 생성합니다.
  3. 봇에 넣고 싶은 기능(예: "매일 오전 9시에 #general 채널에 '오늘 일정' 메시지 보내기", "!날씨 명령어 입력하면 날씨 정보 답하기")을 Cursor에 하나씩 요청해 코드를 추가합니다.
  4. 터미널에서 npm install로 패키지를 설치하고, 환경 변수 파일(.env)에 Slack 봇 토큰을 넣은 뒤 node app.js로 봇을 실행해 Slack에서 제대로 작동하는지 테스트합니다.
  5. 로컬 테스트가 끝나면 Heroku, AWS, 또는 다른 서버에 코드를 올리고 24시간 실행되도록 배포합니다. Cursor에 "Heroku에 배포하는 방법 알려 줘" 같은 프롬프트를 입력하면 배포 스크립트도 만들어 줍니다.

바로 쓰는 프롬프트

2번 단계에서:

Node.js로 Slack 봇 만들어 줘. @slack/bolt 라이브러리 사용하고, 환경 변수로 SLACK_BOT_TOKEN과 SLACK_SIGNING_SECRET을 관리해. 
기본 기능으로 "안녕" 메시지를 받으면 "안녕하세요!" 라고 답하는 이벤트 리스너 추가해 줘.

3번 단계에서:

이 Slack 봇에 기능 추가해 줘. 
사용자가 "!일정" 명령어를 입력하면 "오늘의 일정: [구글 캘린더 링크]"라고 답하도록 슬래시 커맨드 만들어 줘. 
에러가 나면 "일정을 불러올 수 없습니다" 메시지 보내도록 예외 처리도 넣어 줘.

팁

  • 처음 만들 때는 "안녕" 메시지에 답하는 간단한 기능부터 시작해서, 작동을 확인한 뒤 점점 기능을 추가하는 게 안전합니다.
  • 봇 토큰과 Signing Secret은 코드에 직접 넣지 말고 .env 파일에 따로 저장하고, .gitignore에 .env를 추가해 GitHub에 올라가지 않게 합니다.
  • Cursor에게 "에러 처리 코드 추가해 줘"라고 요청하면 봇이 멈추지 않고 안정적으로 돌아갑니다.

여러분은 팀에서 어떤 Slack 봇을 만들어 쓰고 싶으신가요?

A how-to guide put together by the operator. Menus and plans change, so please check the link below too.

Upvote 0

Comments 0