Install
openclaw skills install hn-podcast-transcribeDownload, transcribe, and archive Hacker News podcast episodes (e.g. "Hacker News Recap" by Wondercraft). Use when: (1) user wants to transcribe HN podcast episodes, (2) user asks to archive HN podcast content, (3) user wants searchable text from HN audio podcasts, (4) user mentions "HN podcast" + "transcribe" or "archive". Supports incremental processing — only new episodes are downloaded/transcribed on each run. Works with any podcast RSS feed, not just HN.
openclaw skills install hn-podcast-transcribeAutomatically download, transcribe, and archive Hacker News podcast episodes into a searchable local archive.
Hacker News Recap by Wondercraft.ai — daily AI-generated recap of top HN posts.
https://rss.buzzsprout.com/2170103.rssOverride with HN_PODCAST_RSS env var for any podcast RSS feed.
python3 scripts/fetch_episodes.py [--rss URL] [--archive DIR] [--limit N] [--no-download]
./hn-podcast-archive/--no-download: save metadata only, skip audio downloadDownload strategies (tried in order):
Cloudflare note: Some hosts (e.g. Buzzsprout) block automated downloads. If direct download fails:
--no-download to create the directory structureaudio.mp3 in the episode directorypython3 scripts/transcribe_episodes.py [--archive DIR] [--model MODEL] [--format FORMAT]
txt, srt, vtt, or json (default: txt)turbo (fast, good accuracy)python3 scripts/build_index.py [--archive DIR]
archive_index.json with all episodes, dates, titles, and transcript pathspython3 scripts/search_archive.py [--archive DIR] "search query"
python3 scripts/pipeline.py [--rss URL] [--archive DIR] [--model MODEL] [--limit N]
Runs fetch → transcribe → index in sequence.
Set up periodic processing with OpenClaw cron:
# Daily at 6am — process new HN Recap episodes
cron add --name "hn-podcast-digest" --schedule "0 6 * * *" --payload '{"kind":"agentTurn","message":"Run the HN podcast transcription pipeline: python3 scripts/pipeline.py --limit 3"}'
hn-podcast-archive/
├── archive_index.json
├── 2026-05-10_hardware-attestation-as-monopoly-enabler/
│ ├── episode.json
│ ├── audio.mp3
│ └── transcript.txt
├── 2026-05-09_a-recent-experience-with-chatgpt-5-5-pro/
│ ├── episode.json
│ ├── audio.mp3
│ └── transcript.txt
└── ...
| Env Var | Default | Description |
|---|---|---|
HN_PODCAST_RSS | Buzzsprout HN Recap feed | Podcast RSS feed URL |
HN_ARCHIVE_DIR | ./hn-podcast-archive | Archive directory |
WHISPER_MODEL | turbo | Whisper model name |
WHISPER_FORMAT | txt | Transcript output format |
openai-whisper (pip install openai-whisper)requests (pip install requests)static-ffmpeg (pip install static-ffmpeg) — auto-provides ffmpegyt-dlp (optional, for fallback downloads)~/.cache/whisper on first use