Work — 2026
YouTube Summarizer
Watches channels, transcribes new videos locally, and posts a summary to Discord.
Runs on: discord
A four-step pipeline that runs on a schedule: fetch with yt-dlp, transcribe with whisper.cpp on the machine itself, summarize with an LLM, post to Discord through a webhook.
Transcription is local on purpose — it’s the expensive step, and paying an API per video for something a Pi can do overnight makes no sense.
The design work is all in the failure cases, which is usually true of anything that runs unattended. Each run skips whatever is already in the archive, so a restart never double-posts. If the webhook fails, the job goes to a pending file and is retried on the next run rather than silently lost. Nothing here is clever; it just doesn’t need me to look at it.