Claude에게 전용 라디오 방송국을 만들어줬다 — 멈추지 않고 방송 중이다 (괜찮음)
I Gave Claude Its Own Radio Station — It Won't Stop Broadcasting (It's Fine)
핵심 요약
Claude를 활용해 24시간 실시간으로 대본과 방송을 생성하는 AI 라디오 방송국 'WRIT-FM' 구축기.
- AI 라디오 방송국 — Claude가 5명의 개성 있는 호스트 대본을 실시간으로 생성함.
- 결정론적 스케줄링 — 방송 순서와 음악 재생은 AI가 아닌 시간 기반 로직으로 제어됨.
- Claude Code 활용 — 전체 코드베이스를 Claude Code와 페어 프로그래밍으로 개발함.
- 기술 스택 — Python, ffmpeg, Icecast, Kokoro TTS 등을 조합해 Mac Mini에서 구동함.
Claude가 전체 창의적 엔진 역할을 하는 24/7 AI 라디오 방송국 WRIT-FM을 만들었다. 데모가 아니라, 실시간으로 모든 콘텐츠를 생성하며 계속 돌아가고 있다.
Claude가 하는 일 (전부 다):
Claude CLI (claude -p)가 방송에서 나오는 모든 단어를 작성한다. 방송국에는 5명의 개성 있는 AI 호스트가 있다 — The Liminal Operator(심야 철학), Dr. Resonance(음악사), Nyx(야간 사색), Signal(뉴스 분석), Ember(소울/펑크) — 각자 고유한 목소리, 성격, 그리고 절대 하지 않을 말(anti-patterns)을 가지고 있다. Claude는 풍부한 페르소나 프롬프트와 쇼 컨텍스트를 전달받아 심층 분석, 가상 인터뷰, 패널 토론, 이야기, 청취자 사연, 음악 에세이 등을 위한 1,500~3,000단어 분량의 대본을 생성한다. Kokoro TTS가 음성을 렌더링한다. Claude는 실제 청취자 메시지를 처리하고 개인화된 방송 응답도 생성한다.
주간 스케줄에 따라 8개의 서로 다른 쇼가 진행되며, Claude가 이 모든 것을 작성한다. 호스트별로 톤, 주제, 말투를 조정한다. 뉴스 쇼는 실제 RSS 헤드라인을 가져오며, Claude는 이를 단순히 보도하는 대신 심야 방송의 시각으로 해석한다.
AI 없이 자동화된 부분 (휴리스틱):
스케줄(어떤 쇼가 언제 방송될지)은 순수하게 시간대별 조회 방식이다. 스트리머는 토크 세그먼트와 AI 생성 음악 범퍼를 번갈아 가며 재생하고, 미리 생성된 풀에서 선택하며, 재생 기록을 통해 반복을 피하고, 실패 시 자동 재시작한다. 데몬 스크립트가 인벤토리 수준을 모니터링하고 쇼 분량이 부족해지면 새로운 생성을 트리거한다. AI가 언제 무엇을 재생할지 결정하지 않는다 — 그건 전부 결정론적이다.
Claude Code가 구축에 도움을 준 방법:
전체 코드베이스는 Claude Code로 개발되었다. writ CLI, 스트리밍 파이프라인, 다중 호스트 페르소나 시스템, 콘텐츠 생성기, 스케줄 파서까지 — 모두 Claude Code와 페어 프로그래밍했다.
기술 스택: Python, ffmpeg, Icecast, 대본용 Claude CLI, 음성용 Kokoro TTS, AI 음악 범퍼용 ACE-Step. Mac Mini에서 구동된다.


