샘호트만
샘호트만
⚔️ 베테랑 파트너
🔬 임팩트 찐친

n8n으로 사업아이디어 리포트 받기 + 메신저봇 자동화 -> 좀비 스레드에 막혀 있어요!

이 글은 AI로 작성된 글입니다.

"실패 사례 공유" 형태로 작성되어 있습니다.


소개

해외 사업 아이디어 뉴스레터 "Idea Browser"를 매일 자동으로 크롤링하고, AI 요약 보고서를 만들어 카카오톡 오픈채팅방에 자동 발송하는 시스템을 구축하려 했습니다. n8n으로 크롤링부터 AI 보고서 생성, 요약까지는 1시간 반 만에 완성했지만, 메신저봇 폴링 방식에서 좀비 스레드 문제에 부딪혀 최종 발송에 실패했습니다.

이렇게 매일 밤 22시 쯤 사업 아이디어를 요약해서 줍니다.

아이디어 브라우저 뉴스레터는 24시간만 무료로 읽을 수 있기 때문에 이걸 방지하고자 매일 크롤링하여 구글시트에 한글로 된 보고서와 요약문을 만들고 이를 매일 저장 아카이브하고자 합니다. 그리고 이걸 만들어서 제 오카방에 매일 뿌리는 것이 목표였습니다.

진행 방법

전체 아키텍처

대충 이렇게 만들었습니다.

기계의 다양한 부분을 보여주는 다이어그램
[메일 수신] → [n8n 전처리] → [사이트 크롤링] → [AI 보고서 생성] → [시트 적재] → [메신저봇 발송]

n8n 파이프라인 (성공 구간)

  1. 메일에서 Idea Browser 뉴스레터 읽습니다.

  2. 메일 본문에서 "Read more" 버튼 URL 추출 (코드 에디터 활용)

  3. 해당 사이트 접속 후 CSS 셀렉터로 요소 크롤링

    • 제목, 디스크립션, 점수, 실행 계획, 마켓 분석 등

      안에 들어가는 요소는 클로드가 다 찾아줍니다.
  4. 언어모델 API로 스타트업 컨설턴트 페르소나 기반 보고서 생성합니다. 프롬프트는 대략 다음과 같습니다. 보고서 예시는 다음과 같습니다.

    # Role
    You are an elite **Startup Consultant and Business Insight Curator** (like a partner at Y Combinator).
     You have a knack for spotting diamond-in-the-rough business ideas and explaining them in a way that makes people excited to take action.
    
    # Task
    Analyze the provided [INPUT JSON DATA]. Transform this raw data into a highly engaging, structured, and actionable **"Business Insight Report"** in **Korean**.
    
    # Tone & Style
    - **Engaging & Persuasive:** Write as if you are pitching a hidden gem to a close friend. Use an enthusiastic yet professional tone.
    - **Action-Oriented:** Focus on "How to execute" and "Why this makes money."
    - **Scannable:** Use emojis, bold text, bullet points, and clear headers.
    - **Currency:** Convert USD prices to KRW (approximate rate: $1 = 1,400 KRW) and display both (e.g., "$500 (약 70만 원)").
    
    # Output Structure (Strictly follow this Korean Markdown template)
    
    ## 🚀 [아이디어의 핵심을 찌르는 매력적인 제목]
    
    ### ⚡ 3초 요약 (Elevator Pitch)
    - Summarize the `description` in one powerful Korean sentence.
    - Clearly highlight the **Pain Point** and the **Solution**.
    
    ### 📘 설명 (Description)
    아래 규칙에 따라 인풋 데이터의 description(영문)을 한국어로 자연스럽게 번역하여 작성하라.
    번역 방식: 직역 30% + 의역 70% 비율로 자연스러운 비즈니스 한국어로 조정한다.
    독자 수준: AI·자동화 용어는 그대로, 특정 도메인에 대해서는 맥락은 약간 풀어서 설명하는 중급~전문가 톤을 유지한다.
    문체: 과하게 문학적이거나 캐주얼하지 않게 사업 보고서 스타일로 매끄럽게 구성한다.
    문장은 한국어 리듬에 맞게 적절히 분할하되, 원문의 의도와 정보 구조는 보존한다.
    
    ### 📊 점수로 보는 잠재력 
    Create a visual text. using the scores from the JSON. Add a brief 1-sentence comment for each in Korean.
    **시장 기회({opportunity_score})** : {Brief Comment}
    **문제 심각성({problem_score})** : {Brief Comment}
    **실현 가능성({feasibility_score})** : {Brief Comment}
    **타이밍({why_now_score})** : {Brief Comment}
    
    ### 💸 지금 돈이 되는 이유 (Why Now & Market Gap)
    - Synthesize `why_now`, `market_gap`, and `proof_signals`.
    - Explain clearly why the market is ready for this specific solution in Korean.
    - Highlight the specific target audience (Niche).
    
    ### 🗺️ 수익화 및 실행 로드맵 (The Blueprint)
    **1. 상품 구성 (The Offer)**
    Break down the `offer` section into these three steps:
    - 🧲 **미끼 상품 (Lead Magnet - Free):** {Description in Korean}
    - 🚪 **초기 진입 상품 (Frontend - Low Ticket):** {Price in KRW/USD & Description}
    - 💎 **핵심 상품 (Core Offer - High Ticket/Subscription):** {Price in KRW/USD & Description}
    
    **2. 실행 가이드 (Execution)**
    - Based on the `execution_plan`, provide a step-by-step guide on what to do first.
    
    ### 🗣️ 큐레이터의 한마디
    - Provide a concluding summary.
    - Give a final motivating remark to encourage the reader to start this business.
    
  5. Google Sheets에 적재합니다. 이렇게 이쁘게 적재됩니다. 추후에 이 db는 따로 재활용할 가치가 뛰어나다고 생각합니다.

Google Docs의 프로젝트 계획 스크린샷

메신저봇 연동 (실패 구간)

시트에 적재된 데이터를 1분 간격으로 폴링하여 카톡방에 발송하는 구조였습니다.

[n8n 웹훅 URL] ← [메신저봇 1분 폴링] → [카톡방 발송]

문제 상황:

  • 10시 10분에 밀리초 단위로 16개 스레드가 동시 생성됨

  • 동일 메시지가 6-7번 중복 발송합니다. 다음과 같이 이렇게 같은 메시지 여러번 동시간대에 들어오면 어지럽습니다.

    텍스트가 있는 페이지의 스크린샷
한국어로 된 문자 메시지의 스크린샷
  • "모든 스레드 인터럽트 요청" 버튼을 눌러도 좀비처럼 살아남음

  • 앱 완전 종료 후 재시작해도 동일 현상

시도한 해결 방법

좀비 스레드 방지를 위한 스레드 넘버링 로직:

  1. 스레드 시작 시 임의의 키값 생성

  2. 텍스트 파일에 현재 스레드 ID 저장

  3. 새 스레드 시작 전 기존 ID 확인 후 이전 스레드 종료

이 방식으로 좀비 스레드 문제는 진단했지만, 최종 해결에는 실패했습니다.

결과와 배운 점

배운 점

  1. n8n의 크롤링 + AI 연동은 빠르게 구축 가능 (1.5시간)

  2. 메신저봇 폴링 방식은 스레드 관리가 핵심

  3. 로깅 설정 없이는 디버깅 불가능

  4. 코드를 직접 이해하지 못하면 AI가 짜준 코드도 수정이 어려움

시행착오

  • 메신저봇 로그 파일이 빈 화면으로 표시됨 → 로깅 설정이 안 되어 있었음

  • Claude 4.5 sonnet, codex 5.1 high 등을 사용해봤지만 이 문제 해결에는 체감 차이 없음

앞으로의 계획

폴링 방식 대신 POST 방식으로 아키텍처 변경 예정:

[n8n에서 콘텐츠 생성] → [HTTP POST] → [미니PC FastAPI 서버 또는 자체 카카오 api 활용] → [메신저봇 발송]

별도 서버를 두면 폴링으로 인한 스레드 관리 문제를 회피하고자 합니다. 메신저봇은 너무 어렵습니다!!

성공하면 따로 다른 글로 공유하겠습니다.

2
2개의 답글

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요