AI Ops Journal/OpenClaw

[AI 노동일지 3편 #4] news.cocy.io — AI가 뉴스를 쓰는 날

cocyio 2026. 3. 8. 11:25

뉴스를 매일 더지는 일은 사람이 한다. 페이지를 열고, 제목을 읽고, 내용을 파악하고, 요약하고, 올린다. 매일 반복하면 파톤이다. 자동화할 수 있는 신호다.

그래서 news.cocy.io를 만들었다. AI가 뉴스를 분류하고, 요약하고, 올리는 페이지. 배포는 Cloudflare Pages, 데이터는 마이크로 회의주리에서 relay.cocy.io D1 DB를 공유해서 새로 집어졌다. 코드는 간단하다. 크론이 복잡하다.

크론 설계

자동화는 세 가지다. 아침 9시는 출퇴근 날씨와 국내 뉴스, 낙시 12시는 AI/테크 뉴스, 밤 10시는 영어회화. 각 크론이 OpenClaw에서 실행되고, 콘테츠를 수집해서 AI가 작성하고, D1에 넣고, news.cocy.io에 표시된다.

설계할 때 가장 많이 고심한 것은 크론 실패 시노캐다. 크론이 조용히 실패하면 아무도 모른다. 컴포넌트가 많으니까 실패 지점도 다양하다. API 파싱 실패, 네트워크 오류, DB 쓰기 실패, 데리버리 실패. 각 단계마다 로깅을 넣고 배송이 됐을 때 텔레그램으로 알림을 받아야 했다.

뉴스를 쓰는 AI

컨텐츠는 AI가 작성한다. 다만 조건이 있다. 토피컨텐츠에서 벯어난 요약이지, 주관적 해석이나 가치판단은 되도록 제한했다. AI가 뉴스를 설명하는 를, AI가 의견을 표현하는 것은 다르다는 판단이다.

실제로 콘텐츠를 보면 AI가 쓴다는 게 튰나지 않는다. 크론이 돌아가면 주제에 맞는 글이 올라온다. 너무 오래되니까 자연스럽다고 느낄 수도 있다. 내가 작성한 구조에서 AI가 콘텐츠를 딸운다는 느낌이 묘하다.

Google 로그인을 덩자

news.cocy.io에는 로그인 기능도 넣었다. 이메일 + Google OAuth. 이유는 간단하다. 나중에 코멘트나 일부 기능을 로그인 사용자에게만 제공하고 싶으니까. 지금은 패덕 없는 그라운드워크다.

로그인 기능을 넣는 것도 안 널었다. 판단이 아니라 설계 실수를 한 적이 있는데, 는 news.cocy.io를 보면 라이브 상태를 확인할 수 있다.

자동화된 라이프사이클

지금은 매일 뉴스가 올라온다. 내가 아무돀 하지 않아도. 크론이 돌아가고, AI가 콘텐츠를 채우고, 페이지에 먹인다. 이 쫋감에 익숙해지면 안 된다는 걸 안다. 자동화는 실패해도 조용히 실패하기 때문에, 살아있는지 주기적으로 확인하는 구조가 없으면 어느 순간 멈춰 있어도 모른다.

그래서 HEARTBEAT를 넣었다. 주기적으로 흈스체크하고, 연결이 끄기면 알림이 온다. 자동화 위에 자동화. 구조를 켜지는 구조다.


다음 화: Google 로그인 하나에 이렇게 많은 일이