μš”μ•½: 유튜브 뢄석, 팟캐슀트 μ œμž‘, μ›Ήμ†Œμ„€ λ°œν–‰μ„ μœ„ν•œ OpenClaw 3μ’… μŠ€ν‚¬μ„ μ΄ˆλ³΄μžλ„ λ³΅λΆ™μœΌλ‘œ μ„€μΉ˜/μ‹€ν–‰ν•  수 있게 μ •λ¦¬ν•œ 운영 κ°€μ΄λ“œ.

flowchart LR
A[ν™˜κ²½λ³€μˆ˜ 1회 μ„€μ •] --> B[유튜브 뢄석]
A --> C[팟캐슀트 μžμ‚° 생성]
A --> D[μ›Ήμ†Œμ„€ λ°œν–‰]
B --> E[μ½˜ν…μΈ  아이디어]
C --> E
D --> E

1) μ–΄λ–€ μŠ€ν‚¬μΈκ°€?

1-1) YouTube (뢄석/기획)

  • λͺ©μ : μ˜μƒ μš”μ•½, 핡심 μΈμ‚¬μ΄νŠΈ μΆ”μΆœ, 후속 μ½˜ν…μΈ  기획
  • μ‹€ν–‰ 방식: OpenClaw μ„œλΈŒμ—μ΄μ „νŠΈ 호좜
  • μΆ”μ²œ 상황:
    • μ˜μƒ λΉ λ₯Έ μš”μ•½μ΄ ν•„μš”ν•  λ•Œ
    • 유튜브 주제 κΈ°νšμ•ˆμ΄ ν•„μš”ν•  λ•Œ

1-2) AI Podcast Pipeline

  • λͺ©μ : νŠΈλ Œλ“œ λ…ΈνŠΈ 기반 λŒ€λ³Έ/썸넀일/μžλ§‰ μ˜μƒ/메타데이터 νŒ¨ν‚€μ§€ 생성
  • μ‹€ν–‰ 방식: ai-podcast-pipeline μŠ€ν‚¬ 슀크립트 μ‹€ν–‰
  • μΆ”μ²œ 상황:
    • μ£Όκ°„ λΈŒλ¦¬ν•‘μ„ 팟캐슀트/μ˜μƒμœΌλ‘œ λ³€ν™˜ν•  λ•Œ
    • 반볡 μ œμž‘ 곡정을 μžλ™ν™”ν•˜κ³  싢을 λ•Œ

1-3) WebNovel Serial Pipeline

  • λͺ©μ : μ›Ήμ†Œμ„€ μ΄ˆμ•ˆ β†’ κ²€μˆ˜ β†’ Quartz λ°œν–‰ νŒŒμ΄ν”„λΌμΈ
  • μ‹€ν–‰ 방식: webnovel-serial-pipeline 슀크립트 μ‹€ν–‰
  • μΆ”μ²œ 상황:
    • μ—°μž¬λ¬Ό 파일λͺ…/링크/인덱슀 κ·œμΉ™μ„ μžλ™ν™”ν•  λ•Œ
    • κ²€μˆ˜ ν›„ μ•ˆμ „ν•˜κ²Œ λ°œν–‰ν•˜κ³  싢을 λ•Œ

2) 1회 μ„€μΉ˜ (볡뢙)

set -euo pipefail
 
# ν•„μˆ˜ 도ꡬ 확인
command -v openclaw >/dev/null || { echo "❌ openclaw μ—†μŒ"; exit 1; }
command -v clawhub >/dev/null || { echo "❌ clawhub μ—†μŒ"; exit 1; }
command -v mcporter >/dev/null || { echo "❌ mcporter μ—†μŒ"; exit 1; }
 
# μŠ€ν‚¬ μ„€μΉ˜
clawhub install ai-podcast-pipeline
clawhub install webnovel-serial-pipeline
 
# 곡톡 경둜 μ„€μ •
cat >> ~/.bashrc <<'EOF'
export WORKSPACE="${WORKSPACE:-$HOME/.openclaw/workspace}"
export VAULT_ROOT="${VAULT_ROOT:-$HOME/Documents/n8n/data/shared/syn}"
export QUARTZ_ROOT="${QUARTZ_ROOT:-$VAULT_ROOT/8.quartz}"
export PODCAST_FONTS_DIR="${PODCAST_FONTS_DIR:-$WORKSPACE/archive/fonts}"
export WEBNOVEL_QUARTZ_ROOT="${WEBNOVEL_QUARTZ_ROOT:-$QUARTZ_ROOT}"
EOF
 
# ν˜„μž¬ μ…Έ μ¦‰μ‹œ 반영
export WORKSPACE="${WORKSPACE:-$HOME/.openclaw/workspace}"
export VAULT_ROOT="${VAULT_ROOT:-$HOME/Documents/n8n/data/shared/syn}"
export QUARTZ_ROOT="${QUARTZ_ROOT:-$VAULT_ROOT/8.quartz}"
export PODCAST_FONTS_DIR="${PODCAST_FONTS_DIR:-$WORKSPACE/archive/fonts}"
export WEBNOVEL_QUARTZ_ROOT="${WEBNOVEL_QUARTZ_ROOT:-$QUARTZ_ROOT}"
 
echo "βœ… μ„€μΉ˜/ν™˜κ²½μ„€μ • μ™„λ£Œ"

3) λ°”λ‘œ μ“°λŠ” μ‚¬μš©λ²• (볡뢙)

3-1) 유튜브 μ˜μƒ 뢄석

openclaw agent --agent youtube-analyzer --message "이 μ˜μƒ λΆ„μ„ν•΄μ€˜: https://youtu.be/VIDEO_ID"

3-2) 유튜브 μ˜μƒ 기획

openclaw agent --agent youtube-planner --message "주제: AI μžλ™ν™” - 10λΆ„ μ˜μƒ κΈ°νšμ•ˆ"

3-3) 팟캐슀트 μžμ‚° 생성

cd "$WORKSPACE/skills/ai-podcast-pipeline"
python3 scripts/build_podcast_assets.py --source "$QUARTZ_ROOT/Trend/πŸ“°AI News/QuickView-2602-2μ£Ό.md"

3-4) μ›Ήμ†Œμ„€ λ°œν–‰

cd "$WORKSPACE/skills/webnovel-serial-pipeline"
python3 scripts/publish_episode.py \
  --draft-file "/path/to/draft.md" \
  --quartz-root "$WEBNOVEL_QUARTZ_ROOT" \
  --series-dir "$WEBNOVEL_QUARTZ_ROOT/Drama/μ•Όκ°„μ‘°" \
  --series "μ•Όκ°„μ‘°" \
  --episode 2 \
  --slug "뢈-κΊΌμ§€λ©΄-κ°€μ§€-λ§ˆμ„Έμš”"

4) NotebookLM 연동(선택)

μš©λ„

  • 유튜브 링크λ₯Ό NotebookLM에 λ„£κ³  μš”μ•½/질의/μ˜€λ””μ˜€ 생성 μžλ™ν™”

μ˜ˆμ‹œ

mcporter call notebooklm.notebook_create title="YT-Research"
mcporter call notebooklm.source_add notebook_id="NOTEBOOK_ID" source_type="url" url="https://youtu.be/VIDEO_ID" wait=true
mcporter call notebooklm.notebook_query notebook_id="NOTEBOOK_ID" query="핡심 λ‚΄μš© 10쀄 μš”μ•½"

같이 읽기

참고 링크:

5) 운영 κ°€μ΄λ“œλΌμΈ (배포용 ν‘œμ€€)

  • μ ˆλŒ€κ²½λ‘œ(/home/...) 직접 μ•ˆλ‚΄ κΈˆμ§€
  • WORKSPACE/VAULT_ROOT/QUARTZ_ROOT env 기반으둜만 λ¬Έμ„œ μž‘μ„±
  • β€œμ„€μΉ˜ 1회 + μ‹€ν–‰ 볡뢙” ν˜•νƒœλ‘œ κ°€μ΄λ“œ κ³ μ •
  • μ‹€νŒ¨ μ‹œ μ—λŸ¬λ©”μ‹œμ§€μ™€ ν•¨κ»˜ 체크 포인트 제곡:
    1. 경둜 env
    2. API ν‚€ env
    3. μ˜μ‘΄μ„±(ffmpeg/python)

6) 자주 λ‚˜λŠ” 였λ₯˜

  • notebooklm 인증 만료 β†’ nlm login λ˜λŠ” nlm login --manual
  • ffmpeg not found β†’ ffmpeg μ„€μΉ˜ ν•„μš”
  • 파일 경둜 μ—λŸ¬ β†’ echo $WORKSPACE, echo $QUARTZ_ROOT둜 κ°’ 확인

7) 곡유용 ν•œ 쀄 μ†Œκ°œ

  • YouTube: β€œμ˜μƒ μš”μ•½/μΈμ‚¬μ΄νŠΈ/κΈ°νšμ„ μžλ™ν™”ν•˜λŠ” 뢄석 μŠ€ν‚¬β€
  • Podcast: β€œνŠΈλ Œλ“œ λ…ΈνŠΈλ₯Ό 팟캐슀트/μ˜μƒ μžμ‚°μœΌλ‘œ λ³€ν™˜ν•˜λŠ” μ œμž‘ μŠ€ν‚¬β€
  • WebNovel: β€œμ΄ˆμ•ˆ κ²€μˆ˜λΆ€ν„° Quartz λ°œν–‰κΉŒμ§€ ν‘œμ€€ν™”ν•˜λŠ” μ—°μž¬ μŠ€ν‚¬β€