소개
“카카오톡 대화를 모니터링하고 AI가 요약해준다면?”
이 생각은 회사나 스터디, 프로젝트 채팅방에서 중요한 내용이 흘러가는 걸 여러 번 경험한 뒤 들었던 의문이었습니다. 특히 일주일 전 어떤 결정이 내려졌는지, 누가 뭘 맡기로 했는지, 어떤 이슈가 나왔는지 다시 확인하려면 스크롤을 몇백 줄 넘겨야 했거든요.
그래서 ‘대화를 자동으로 저 장하고, GPT가 주요 이슈를 뽑아주는 시스템’을 만들어보기로 했습니다. 예상보다 빠르게, 완성했어요. 생각보다 흥미로운 여정이 숨어 있었습니다.
진행 과정
출발: 단순한 로그 수집에서 시작
처음에는 단순히 카카오톡 메시지를 수집해 저장하는 수준이었습니다. Android 기반의 메신저봇R으로 채팅방 메시지를 후킹해서, FastAPI 서버로 전송하고 SQLite에 저장하는 구조였죠.
시스템 구조는 이렇게 단순했습니다:
카카오톡 → 메신저봇R → FastAPI 서버 → SQLite DB
이후엔 GPT로 분석 요청을 보내면 요약 결과를 리턴해주는 방식이었죠.
하지만 AI 분석 부분을 구현하면서 저는 흥미 로운 선택의 갈림길에 섰습니다.
Claude Code vs GitHub Codex: AI 코딩 보조 도구의 맞대결
이 프로젝트에서 가장 흥미로운 실험은 두 가지 AI 코딩 도구를 나란히 사용한 것이었습니다. 바로 Anthropic의 Claude Code와 GitHub Copilot (Codex 기반)입니다.
Claude Code의 장점
디렉토리 구조, 환경 변수,
.gitignore등 초기 설계에 강했습니다.민감 정보 분리를 기본값처럼 안내해줬고, 문서 디렉토리 구성까지 추천해줬어요.
특히 Claude는 AI 분석 프롬프트를 설계할 때 강점을 보였는데요:
PROMPT = """
당신은 카카오톡 대화 분석 전문가입니다.
다음 대화에서 가장 중요한 이슈 3-5개를 추출하세요.
분석 기준:
1. 구체적인 계획이나 결정사항
2. 문제 발생 및 해결 과정
3. 중요한 정보 공유
4. 약속이나 일정 관련
형식:
- [날짜] 이슈 제목: 간단한 설명 (참여자)
"""
Codex의 반격
반면 GitHub Copilot은 구체적인 구현 단계에서 빛을 발했습니다.
예를 들어, 1시간 캐싱 로직을 구현할 때 거의 자동으로 완성된 코드를 제시했어요.
cache_key = f"ai_topics_{room_id}_{days}_{since_minutes}"
if cache_key in ai_analysis_cache:
return cached_result
또한 디버깅 시에도, 중복 메시지 문제의 원인을 빠르게 짚어냈습니다.
기존에는
room_hash + timestamp로 log_id를 만들었는데,Copilot이
content를 포함시키는 방식으로 개선을 제안했습니다:
log_id = hashlib.sha1(f"{room_hash}_{author_hash}_{content}_{timestamp}".encode()).hexdigest()
이렇게 Claude는 ‘설계’, Codex는 ‘구현’에 강점을 보여줬고, 저는 이 둘을 번갈아 쓰며 프로젝트를 완성해갔습니다. 말 그대로 AI 간의 협업, 혹은 경쟁 속에서 개발을 이어간 셈이죠.
결과와 배운 점
정량적 성과
메시지 수집: 총 1,234개 (5개 채팅방)
GPT 분석 평균 시간: 8.8초
중복 메시지 저장 문제 해결율: 100%
API 호출 횟수 90% 절감 (캐시 로직 덕분)
서버 안정성: uptime 99.9% (DigitalOcean 기반)
정성적 성과
🔍 과거 대화 복기 시간이 10분 → 3초로 단축
🤖 중요한 결정사항을 AI가 알아서 정리해줘서 빠르게 대응 가능
👥 누가 얼마나 참여했는지, 시간대별 활동 패턴까지 분석 가능
실전 활용 사례
실제로 “지난주 구글캘린더봇 이슈 뭐였지?” 하고 물었을 때,
이전에는 일일이 대화 기록을 찾아야 했지만
이제는
!주요이슈 1 7명령어 한 줄이면 요약 결과가 나옵니다:
🤖 AI 주요 이슈 분석 (최근 7일)
━━━━━━━━━━━━━━━━━━━━━━
1. [11-24] 구글캘린더봇 v2.11 배포
- 반복 일정 감지 기능 추가
- 삭제 확인 대화 테스트 완료
(참여자: 양재민, Claude)
느낀 점
Claude와 Codex는 같이 써야한다.
처음엔 “읽으면 알겠지” 싶었지만, 막상 구현해보니 매 순간 배움이 있었습니다.
💡 “이해는 빠르게 사라지고, 경험은 천천히 쌓인다.”
다음 단계 계획
특정방에 스케줄링 + 보고서 메시지 전송.
참고 자료
19기 카톡봇 스터디장 현우님 자료
FastAPI 문서, 메신저봇 가이드
✅ 카카오톡도 결국 텍스트 데이터입니다. 그걸 모으고 요약하면 다양하게 활용가능한 인사이트가 나옵니다.