본문으로 건너뛰기

© 2026 Molayo

HN요약2026. 05. 08. 01:44

Show HN: I built AI agents with CrewAI to automate my entire Gmail workflow

요약

CrewAI를 활용하여 개발된 AI 에이전트 기반의 지능형 시스템으로, 사용자의 전체 Gmail 워크플로우를 자동화합니다. 이 시스템은 이메일을 우선순위에 따라 분류하고(HIGH/MEDIUM/LOW), 스마트하게 라벨링하며, 중요한 메일에는 초안 응답을 생성하고 Slack으로 알림을 전송하는 등 다양한 기능을 수행합니다. IMAP 프로토콜을 통해 Gmail에 안전하게 연결하여 지능적인 이메일 관리 및 정리 작업을 자동화함으로써 사용자의 생산성을 극대화합니다.

핵심 포인트

  • CrewAI를 사용하여 복잡한 AI 에이전트 워크플로우를 구축하고 이를 실제 업무(Gmail)에 적용했습니다.
  • 자동화 기능은 단순 분류를 넘어, 우선순위 할당, 스마트 라벨링, 초안 응답 생성, Slack 알림 전송 등 다단계의 지능적 처리를 포함합니다.
  • 시스템은 IMAP 프로토콜을 사용하여 Gmail과 안전하게 연결하며, 이는 이메일 접근성과 보안성을 동시에 유지하는 핵심 기술입니다.
  • 설정 과정에서 Google 앱 비밀번호 및 Slack Webhook URL 생성 방법을 상세히 안내하여 실질적인 구현 가이드를 제공합니다.

Gmail Automation with CrewAI 📧✨



Gmail Automation with CrewAI 는 AI 에이전트를 사용하여 Gmail 인박스를 자동으로 분류하고, 정리하며, 응답하고, 정돈하는 지능형 이메일 관리 시스템입니다.

✨ 기능

  • 🔔 우선순위 할당: 내용과 발신자에 따라 엄격한 분류 규칙을 적용하여 우선순위를 할당합니다 (HIGH, MEDIUM, LOW)
  • 🏷️ 스마트 조직화: 카테고리 및 우선순위에 따라 Gmail 라벨과 별표를 적용합니다
  • 💬 자동 응답: 중요한 이메일에 대한 초안 응답을 생성합니다
  • 📱 Slack 알림: 높은 우선순위의 이메일을 위한 창의적인 알림을 전송합니다
  • 🧹 지능형 정리: 연령 및 카테고리에 따라 낮은 우선순위의 이메일을 안전하게 삭제합니다
  • 🎬 YouTube 콘텐츠 보호: YouTube 관련 이메일에 대한 특수 처리
  • 🗑️ 휴지통 관리: 저장 공간을 확보하기 위해 자동으로 휴지통을 비웁니다
  • 🧵 스레드 인식: 이메일 스레드를 인식하고 적절하게 처리합니다

🚀 설치

# 레포지토리를 클론합니다
git clone https://github.com/tonykipkemboi/crewai-gmail-automation.git
cd crewai-gmail-automation
...

⚙️ 설정

  1. 루트 디렉터리에 다음 변수를 포함하는 .env 파일을 생성합니다:
# OpenAI (추천)
MODEL=openai/gpt-4o-mini
...```

<details>
<summary><b>🔑 Gmail 앱 비밀번호 생성 방법</b></summary>

1. [myaccount.google.com](https://myaccount.google.com/) 에서 Google 계정 설정으로 이동합니다
2. 왼쪽 내비게이션 패널에서 **Security** 를 선택합니다
3. "Signing in to Google" 하단에서 **2-Step Verification** 을 찾아 선택합니다 (이미 활성화되어 있지 않은 경우 활성화합니다)
4. 아래로 스크롤하여 **App passwords** 를 찾습니다
5. "Select app" 드롭다운에서 **Mail** 을 선택합니다
6. "Select device" 드롭다운에서 **Other (Custom name)** 을 선택합니다
7. 이름을 `Gmail CrewAI` 로 입력합니다
8. **Generate** 를 클릭합니다
9. 표시되는 16 자 비밀번호를 복사합니다 (공백은 자동으로 제거됩니다)
10. `.env` 파일에 `APP_PASSWORD` 값으로 이 비밀번호를 붙여넣습니다
11. **Done** 을 클릭합니다

**참고**: Google 계정에 2-Step Verification 가 활성화되어 있어야만 앱 비밀번호를 생성할 수 있습니다.
</details>

<details>
<summary><b>🔗 Slack Webhook URL 생성 방법</b></summary>

1. [api.slack.com/apps](https://api.slack.com/apps) 로 이동합니다
2. **Create New App** 을 클릭합니다
3. **From scratch** 을 선택합니다
4. 앱 이름을 `Gmail Notifications` 으로 입력합니다
5. 워크스페이스를 선택하고 **Create App** 을 클릭합니다
6. 왼쪽 사이드바에서 **Incoming Webhooks** 를 찾아 클릭합니다
7. **Activate Incoming Webhooks** 스위치를 토글합니다
8. **Add New Webhook to Workspace** 를 클릭합니다
9. 알림을 받을 채널을 선택합니다
10. **Allow** 를 클릭합니다
11. `https://hooks.slack.com/services/` 로 시작하는 URL 을 찾습니다
12. `.env` 파일에 `SLACK_WEBHOOK_URL` 값으로 이 URL 을 붙여넣습니다

**Slack 앱 커스터마이징 (선택 사항)**:
1. 왼쪽 사이드바에서 **Basic Information** 로 이동합니다
2. 아래로 스크롤하여 **Display Information** 를 찾습니다
3. 앱 아이콘과 설명을 추가합니다
4. **Save Changes** 를 클릭합니다

**참고**: Slack 워크스페이스에 앱 설치 권한이 있어야 합니다.
</details>

## 📧 작동 방법

이 응용 프로그램은 Gmail 계정에 안전하게 연결하고 이메일을 관리하기 위해 IMAP (Internet Message Access Protocol) 을 사용합니다. 이것이 어떻게 작동하는지 설명드리겠습니다:

<details>
<summary><b>🔄 IMAP 연결 프로세스</b></summary>

1. **보안 연결**: 애플리케이션은 Gmail의 IMAP 서버 (`imap.gmail.com`) 에 안전한 SSL 연결을 설정합니다.

2. **인증**: 이메일 주소와 앱 비밀번호 (일반 Google 비밀번호가 아님) 를 사용하여 인증합니다.

3. **메일박스 접근**: 인증 후 인박스와 다른 메일박스에 접근하여 다음 작업을 수행할 수 있습니다:
   - 읽지 않은 메일 읽기
   - 레이블 적용
   - 메일 폐기함으로 이동
   - 초안 응답 저장

4. **안전한 연결 종료**: 각 작업 후 연결을 적절히 닫아 보안을 유지합니다.

IMAP 는 이메일이 Google 의 서버에 남아있는 동안 애플리케이션이 이메일과 함께 작동할 수 있게 하며, POP3 는 해당 이메일을 장치로 다운로드하기 때문입니다. 이는 모든 메일을 Gmail 인터페이스를 통해 여전히 접근할 수 있음을 의미합니다.

**보안 참고**: 자격 증명은 `.env` 파일에서 로컬에만 저장되며 외부 서비스와 공유되지 않습니다.</details>

## 🔍 사용 방법

다음과 같이 애플리케이션을 실행합니다:

```bash
crewai run

메시지 창에 처리할 메일 수를 입력하라는 프롬프트가 표시됩니다 (기본값은 5 개입니다).

애플리케이션은 다음을 수행합니다:

  1. 📥 읽지 않은 메일을 가져옵니다
  2. 🔎 유형과 우선순위에 따라 분류합니다
  3. ⭐ 적절한 레이블과 별표를 적용합니다
  4. ✏️ 중요한 메일에 대한 초안 응답을 생성합니다
  5. 🔔 중요 항목에 대해 Slack 알림을 전송합니다
  6. 🗑️ 연령에 따라 저우선 순위 이메일을 정리합니다
  7. 🧹 폐기함을 비워 저장 공간을 확보합니다

🌟 특수 기능

  • 📅 스마트 삭제 규칙:

    • 2 일 이상 된 프로모션은 자동으로 삭제됩니다

    • Shutterfly 메일은 연령과 무관하게 항상 삭제됩니다

    • 영수증과 중요한 문서는 삭제 대신 보관됩니다

  • 🎬 YouTube 보호: 모든 YouTube 관련 메일은 보존되고 READ_ONLY 로 표시됩니다 (YouTube 에서 직접 응답합니다)

  • ✍️ 스마트 응답 생성: 응답은 이메일 컨텍스트에 맞춤화되며 올바른 형식을 포함합니다

  • 💡 창의적인 Slack 알림: 중요한 메일에 대한 재미 있고 주목을 끄는 알림

  • 🧵 스레드 처리: 대화 컨텍스트를 유지하면서 메일 스레드를 적절히 추적하고 관리합니다

👥 기여

기여를 환영합니다! Pull Request 를 제출할 수 있습니다.

📄 라이선스

이 프로젝트는 MIT 라이선스를 따릅니다. 자세한 내용은 LICENSE 파일을 참조하세요.

📚 참고 자료

AI 자동 생성 콘텐츠

본 콘텐츠는 HN Claude Code Search의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0