Turn YouTube videos and web articles into podcast episodes you can glance at, with pictures as chapter artwork, in your own private podcast feed. Videos keep their audio; articles are read aloud, like a read-it-later service you listen to. Video episodes are based on Alex Chan’s glancecast (original tool).
This is a Claude Code skill that runs on your Mac. You give Claude a link; it runs a few small scripts and tells you when the episode is in your feed.
yt-dlp downloads the video, ffmpeg takes the audio
and a frame every few seconds (or one per slide), and Claude writes show notes from the
transcript.Claude Code only. It won’t work as a Chat skill on claude.ai: it needs
YouTube access from your own network (YouTube blocks most cloud servers), your secret store,
ffmpeg and local speech generation. Chapter images show up in podcast apps that display
chapter artwork, such as Overcast and Pocket Casts; elsewhere you just get the audio.
You need Claude Code and Homebrew. Then:
brew install ffmpeg uv deno
uv runs the scripts and installs their Python dependencies automatically.
deno is needed by yt-dlp for YouTube. The first article you make downloads
the Kokoro voice model (about 350 MB). Articles with maths are rendered with Google Chrome, if it’s installed. If you keep secrets in 1Password, also
brew install 1password-cli and turn on Settings → Developer → Integrate with 1Password
CLI in the 1Password app.
Download it into your personal skills folder:
R2 stores the episodes and the feed. It doesn’t charge for downloads, and the free tier covers 10 GB, which is roughly 200 hour-long episodes.
glanceable-podcast.https://pub-…r2.dev.
Listing is off, so nobody can browse the bucket; files are only reachable by their exact (random) paths.Keep the two R2 keys in a secret store on your Mac. Either way, they never end up in a file, your shell history, or a chat with Claude.
Run each command in Terminal. It asks for the value.
security add-generic-password -s glanceable-podcast -a r2_access_key_id -w
security add-generic-password -s glanceable-podcast -a r2_secret_access_key -w
To replace a key later, add -U before -s. You can see the entries
in the Keychain Access app by searching for glanceable-podcast.
r2_access_key_id and
r2_secret_access_key, and paste in the Access Key ID and Secret Access Key.The scripts read these fields with the op CLI, so 1Password asks you to
approve access with Touch ID. Step 5 adds a third field, feed_token, to the same item.
Fill this in to build the setup command. None of these values are secret, and they stay in your browser.
This saves the settings to ~/.config/glanceable-podcast/config.json, creates a random
secret token for the feed’s address (saved in your secret store) and publishes an empty feed. Re-run it any
time to change the title or artwork. Then check everything is in place:
Copy the feed URL to your clipboard. It isn’t printed, so it doesn’t end up in your terminal scrollback.
Then paste it into your podcast app. In Overcast: + → Add URL. In Apple Podcasts on the Mac: File → Follow a Show by URL.
The URL is the only thing protecting the feed, so treat it like a password. If it leaks, ask Claude to rotate my glanceable podcast feed; the old URL stops working and you re-subscribe with the new one.
In Claude Code, just ask:
Make this a glanceable podcast episode: https://www.youtube.com/watch?v=…
Add this talk to my glanceable podcast feed, one picture per slide, and skip the sponsor bits: …
Read this later as a podcast: https://example.substack.com/p/…
What’s in my glanceable podcast feed? Remove the one about …
For a video, Claude chooses frames every few seconds, or one per slide change for talks, writes show notes and chapter timestamps from the transcript, and publishes. An hour-long video takes a couple of minutes and makes a file of about 30–50 MB.
For an article, Claude checks the extracted text, adds pronunciations for names, makes captions read
naturally, and writes show notes. A 20-minute article takes about 2 minutes to speak and makes a file of
about 12 MB. For paywalled posts, save the page from your browser while signed in and give Claude
the .html file.
The scripts work on their own too. Add --help to any of them for its options:
itunes:block so directories don’t list it.