360 Secure SkillHub
360 安全技能中心

HN Podcast Transcriber

核心功能:从Hacker News早报或自定义RSS源抓取音频,用Whisper转录为可搜索Markdown,自动追踪已处理内容避免重复。典型场景:搭建转录流水线、归档播客为检索文本、批量转录、定时更新。通过命令行配置参数,输出结构化Markdown转录文件与归档目录,支持GPU加速提升效率。

terrycarter1985
terrycarter1985
热度 30.65
最近更新 2026-05-11 17:47:44
分类:自动化依赖:代码执行 / 读写文件 / 联网浏览搜索应用场景:自动化脚本 / 数据处理 / 文件转换 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add hn-podcast-transcriber
Metadata
name
hn-podcast-transcriber
description
Automatically fetch, transcribe, and archive Hacker News podcast episodes (Hacker News Morning Brief). Use when the user wants to set up a podcast transcription pipeline, archive HN podcast episodes as searchable text, transcribe podcast audio to markdown, or schedule periodic HN podcast ingestion. Also use for any podcast RSS feed transcription workflow.

HN Podcast Transcriber

Fetch new episodes from the Hacker News Morning Brief podcast RSS feed, transcribe with Whisper, and archive as searchable markdown.

Prerequisites

  • whisper CLI installed (pip install openai-whisper)
  • ffmpeg on PATH (required by whisper; download from https://ffmpeg.org)
  • python3 with standard library (no extra deps for the fetch script)
  • Disk space for audio files (~5-10 MB per episode)

Quick Start

Run the main script to fetch and transcribe all new episodes:

bash scripts/fetch_and_transcribe.sh --archive ~/hn-podcast-archive

First run processes all episodes. Subsequent runs only process new ones (tracked via state.json).

Options

Flag Default Description
--feed URL HN Morning Brief RSS Podcast RSS feed URL
--archive DIR ./hn-podcast-archive Archive root directory
--model MODEL turbo Whisper model (tiny/base/small/medium/large/turbo)
--limit N 0 (all) Max new episodes to process per run

Custom Feeds

Point at any podcast RSS feed:

bash scripts/fetch_and_transcribe.sh --feed "https://example.com/podcast/feed.xml" --archive ./my-podcast-archive

Scheduling

Set up an OpenClaw cron job for daily checks:

  1. Create an isolated cron job that runs the script
  2. Or add a heartbeat check in HEARTBEAT.md

Archive Structure

See references/archive-layout.md for directory layout and state.json schema.

Workflow Summary

  1. Download RSS feed → parse <item> entries
  2. Skip already-processed episodes (state.json lookup)
  3. Download audio (mp3/m4a) to episode directory
  4. Run whisper to produce .txt transcript
  5. Generate cleaned transcript.md with title + date header
  6. Update state.json with processed episode ID

Notes

  • Whisper models cache to ~/.cache/whisper after first download
  • Use --model tiny for speed, --model large for best accuracy
  • Average episode (~6 min) takes ~1-2 min with turbo model on CPU
  • For GPU acceleration, install ffmpeg with CUDA support