블로그 자동 발행 시스템
분야별 블로그 6개에 매일 글을 쓰고 검수·발행·색인까지 자동으로 돌리는 n8n + Claude 파이프라인

분야별 블로그 6개(금융·건강·테크·생활·반려·육아)에 사람 손 없이 매일 글을 쓰고, 검수하고, 발행하는 시스템입니다. n8n으로 흐름을 짜고, 글쓰기·검수·편집은 모두 Claude CLI가 맡습니다. 2026년 2월에 시작해 지금도 운영하면서 고치고 있습니다. 커밋은 330건입니다.
블로그 주소와 서버 정보, 수익 관련 수치는 싣지 않았습니다.
문제
AI로 글을 많이 찍어내는 것은 쉽습니다. 어려운 것은 그 글이 틀리지 않고, 읽히고, 검색에 걸리게 하는 일입니다. 처음 버전은 그럴듯하지만 근거 없는 숫자를 섞었습니다. 사람이 쓴 것 같지 않은 번역투도 남았고, 발행해도 색인이 잘 안 됐습니다. 그래서 생성보다 생성 앞뒤의 검증 단계를 늘리는 쪽으로 키웠습니다.
만든 것
1. 콘텐츠 파이프라인 (n8n 40노드)

- 주제 탐색 → 팩트 리서치 → 본문 생성 → 품질 리뷰 → 편집장 리뷰 → 카드 이미지 → 워드프레스 발행 → 색인 요청 순서입니다.
- 팩트 리서치 단계에서는 논문·임상·공시 같은 식별자를 반드시 붙이게 합니다. 이 결과를 "데이터 인벤토리"로 묶고, 본문은 인벤토리에 있는 숫자만 쓰도록 했습니다. 환각을 줄이려는 장치입니다.
- 품질 리뷰는 종합 80점과 사실 점수(factScore) 80점을 둘 다 넘어야 통과입니다. 떨어지면 리뷰 피드백과 "확인되지 않은 주장" 목록을 다음 프롬프트에 넣어 최대 두 번 다시 씁니다.
- 편집장 단계는 블로그마다 다른 페르소나로 번역투를 고치고 문장 리듬을 맞춥니다. 편집 결과가 원문의 70%보다 짧아지면 받아들이지 않습니다.
- 이미지는 생성형 모델을 쓰지 않습니다. HTML 카드를 헤드리스 크롬으로 렌더해서 글 한 편에 3장을 만듭니다. 이미지 비용은 0입니다.
2. 하루 운영 시간표

발행 외의 일도 정해진 시간에 돌아갑니다.
- 발행은 하루 세 번입니다. 18시 칸은 요일마다 블로그가 바뀝니다.
- 새벽에는 SEO 코치가 12개 영역을 점검합니다: 색인, 메타, 스키마, Core Web Vitals, 사이트맵 등. 안전한 항목은 직접 고칩니다.
- 낮에는 발행 가드가 오늘 나간 글의 이미지를 검사하고, 빠진 것이 있으면 한 번 스스로 복구합니다.
3. 텔레그램 발행 봇 (n8n 23노드)

휴대폰으로 주제를 보내면 봇이 블로그를 고르게 합니다. 그다음 초안을 만들고 점수·글자 수·소제목·발췌를 미리 보여 줍니다. 승인하면 발행하고, 수정을 요청하면 다시 씁니다.
4. 운영 에이전트와 자율 엔지니어
- 운영 에이전트: 매일 아침 어제 지표를 보고 실험이 성공했는지 판정합니다. 그 결과로 오늘 발행할 블로그에 우선 주제를 넣습니다. 조회가 낮은 블로그는 글 수를 늘리지 않고 글 형식을 바꿉니다.
- 자율 엔지니어: 목표 지표와의 차이를 보고 코드 변경을 하루 한 건 직접 적용합니다.
- 적용 전에 약 1,600개 파일의 스냅샷을 떠 둡니다.
- 적용 후 문법 검사·셀프 테스트·사이트 헬스 체크가 실패하면 즉시 원래대로 돌립니다.
- 14일 뒤 지표가 떨어졌으면 자동으로 되돌립니다. 세 번 연속 되돌림이 나오면 스스로 멈춥니다.
- 설정·정책 같은 보호 파일은 건드릴 수 없습니다.
결과물
![]() | ![]() |

블로그마다 매거진 이름, 색, 편집장 페르소나가 다릅니다. 테마는 하나를 공유하고, 도메인에 따라 색과 그라데이션만 바뀝니다. 금융 블로그에는 계산기 도구를, 건강 블로그에는 성분 사전을, 테크 블로그에는 해외 뉴스 와이어를 따로 붙였습니다.

글은 휴대폰에서 읽는 것을 기준으로 다듬었습니다: 본문 17px, 줄 간격 1.9, 표 가로 스크롤, 결론을 먼저 말하는 도입부.
기술적으로 신경 쓴 점
- 사고가 나면 규칙으로 남기기: 그 자리에서 고치고 끝내지 않고, 그 사고를 막는 검사를 하나 더 추가했습니다.
- 지난 세대 모델의 가격을 신제품 가격으로 적은 글이 나갔습니다 → 이후 주제 지시에 현행 모델 목록을 같이 넣습니다.
- 정규식이 실패해서 6개 사이트 본문이 5분 동안 비었습니다 → 이후 치환이 실패하면 원문을 그대로 내보냅니다.
- 같은 경보가 매일 반복됐습니다 → 같은 경보는 7일에 한 번만 보냅니다.
- 숫자 검증 게이트: 섹션 요약 카드의 숫자가 그 섹션 원문에 있어야만 카드를 만듭니다. 월/연 같은 기간 단위도 원문과 맞는지 확인합니다.
- 멱등 운영 스크립트: 표지 소급, WebP 변환, 색인 제출 스크립트는 몇 번을 다시 돌려도 결과가 같습니다. 바꾼 것은 되돌릴 수 있게 메타데이터를 남깁니다.
- 테스트 60여 개: 워크플로 구조, 설정 검증, 템플릿 변수, 보안 항목을 검사합니다.
돌아보며
글 한 편을 쓰는 프롬프트보다, 그 글이 틀렸을 때 걸러 내고 실패했을 때 되돌리는 장치에 시간이 훨씬 많이 들었습니다. 자동화의 실제 일은 그 안전장치를 만드는 것이었습니다.

