gitwtfhub

wtf is podpull?

xiaoleiy/podpull — explained in plain English

Analysis updated 2026-05-18

131PythonAudience · generalComplexity · 1/5LicenseSetup · easy

TL;DR

podpull is a command-line tool that downloads podcast episodes from Apple Podcasts, RSS, xiaoyuzhou, or Ximalaya, with an interactive picker and resumable downloads.

Mindmap

mindmap
  root((podpull))
    What it does
      Downloads podcast episodes
      Interactive picker
      Resumable downloads
    Tech stack
      Python
      CLI
    Sources
      Apple Podcasts
      RSS feeds
      xiaoyuzhou
      Ximalaya
    Use cases
      Batch downloads
      Scripting with JSON
      AI agent integration

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Download a specific podcast episode or a batch of episodes directly to your computer from the terminal.

REASON 2

Search for a podcast show and browse its episode list before choosing what to download.

REASON 3

Script bulk podcast downloads using JSON output and index or title-match selection.

REASON 4

Teach an AI coding agent like Claude Code or Cursor to fetch podcast episodes on request.

What's in the stack?

PythonCLI

How it stacks up

xiaoleiy/podpullfacok/comfyui-krea2-controlnetlllyasviel/toondecompose
Stars131132130
LanguagePythonPythonPython
Last pushed2023-08-31
MaintenanceDormant
Setup difficultyeasyhardhard
Complexity1/54/54/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 5min

Installs with pipx, pip, or Homebrew, no account or API key required for basic use.

MIT license: free to use, modify, and distribute, including commercially, with attribution.

Wtf does this do

podpull is a command-line tool, with an optional browser interface, for downloading podcast episodes straight to your computer. It works with shows from Apple Podcasts, plain RSS feeds, and the Chinese platforms xiaoyuzhou and Ximalaya. There is no app to install beyond the tool itself, no login, and no copy protection to work around, since podcast audio files are already public files linked from a feed. The way it works follows the same chain podcast apps use internally. Apple Podcasts itself does not host any audio, it only points to each show's RSS feed, and that feed lists a direct download link for every episode. podpull looks up a show by its Apple ID or URL, finds its RSS feed, and downloads the actual audio file from there, resuming automatically if a download is interrupted. It can also handle a pasted link to a single xiaoyuzhou episode, a single Apple Podcasts episode, or a Ximalaya album. You can search for shows, list their episodes, and download one or many at once through an interactive picker where you move with arrow keys and select with space. For scripting, episodes can instead be selected by index number or by matching part of the title, and the tool can output JSON instead of its normal interactive display. Downloaded filenames are cleaned up so they upload cleanly to cloud storage services, and when you grab multiple episodes from one show they are grouped into a folder named after that show. Installation is available through pipx, pip, or Homebrew on macOS and Linux, and through pip or pipx on Windows. The project also includes a command to teach AI coding agents like Claude Code, Codex, and Cursor how to use podpull, so you can simply ask the agent to grab an episode for you. It is released under the MIT license and works on macOS, Linux, and Windows.

Yoink these prompts

Prompt 1
Show me how to install podpull with pipx and download the latest episode of a podcast by its Apple Podcasts show ID.
Prompt 2
How do I use podpull's --json output to script downloading the 5 newest episodes of a show?
Prompt 3
Explain how podpull resolves an Apple Podcasts show URL down to a direct downloadable audio file.
Prompt 4
Set up podpull as a skill for my AI coding agent so I can ask it to grab podcast episodes.

Frequently asked questions

wtf is podpull?

podpull is a command-line tool that downloads podcast episodes from Apple Podcasts, RSS, xiaoyuzhou, or Ximalaya, with an interactive picker and resumable downloads.

What language is podpull written in?

Mainly Python. The stack also includes Python, CLI.

What license does podpull use?

MIT license: free to use, modify, and distribute, including commercially, with attribution.

How hard is podpull to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is podpull for?

Mainly general.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.