LaunchKit · 2026
Back to Skills

podcast-to-substack

Publish podcast episodes from RSS + Notion to Substack with reliable Apple Podcasts embedding and image extraction.

0
511 downloads
by @danielfoch

Setup & Installation

openclaw skills install @danielfoch/podcast-to-substack

Or with the ClawHub CLI, for registry-managed skill folders outside a full OpenClaw workspace:

npx clawhub install podcast-to-substack

What This Skill Does

Automates publishing podcast episodes from RSS and Notion to Substack, with reliable Apple Podcasts embedding. Also generates LinkedIn companion posts from the same episode content.

Handles the specific embed fragility in Substack that causes podcast players to render as plain text instead of interactive cards.

When to use it

  • Publishing a new podcast episode to Substack after it drops
  • Pulling episode scripts and images out of Notion for a post draft
  • Fixing broken or text-only podcast embeds in Substack
  • Cross-posting episode summaries to LinkedIn without rewriting
  • Keeping a consistent publishing workflow across RSS, Notion, and Substack

Example Workflow

Here's how your AI assistant might use this skill in practice.

INPUT

User asks: publish episode 42 of the Realist podcast to Substack and generate a LinkedIn post

AGENT
  1. 1Fetch recent episodes from the RSS feed using fetch_rss.py
  2. 2Retrieve episode 42 script and images from Notion via recursive block traversal
  3. 3Build Substack draft content from the script text
  4. 4Publish to Substack using the embed playbook to ensure the Apple Podcasts player card renders correctly
  5. 5Run render_linkedin_post.py to generate formatted LinkedIn copy from the episode JSON
OUTPUT

Substack post published with working podcast embed, LinkedIn post copy ready to paste or queue

Requirements

Accounts, API keys, or tools you or your AI assistant may need to set up while using this skill.

NOTION_API_KEY environment variable or key stored at ~/.config/notion/api_keySubstack account with publish accessNotion database ID containing episode scripts