Назад към всички

podcast-to-substack

// Publish podcast episodes from RSS + Notion to Substack with reliable Apple Podcasts embedding and image extraction, then generate LinkedIn-ready companion posts. Use when asked to run or improve podcast-to-substack workflows, fix Notion image fetch failures, prevent Substack embed-as-text issues, or

$ git log --oneline --stat
stars:1,933
forks:367
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namepodcast-to-substack
descriptionPublish podcast episodes from RSS + Notion to Substack with reliable Apple Podcasts embedding and image extraction, then generate LinkedIn-ready companion posts. Use when asked to run or improve podcast-to-substack workflows, fix Notion image fetch failures, prevent Substack embed-as-text issues, or cross-post episode summaries to LinkedIn.

Podcast Substack + LinkedIn

Run this workflow when handling Realist podcast episode publishing.

Inputs

  • RSS feed URL
  • Notion data source/database ID with episode scripts
  • Notion API key (NOTION_API_KEY or ~/.config/notion/api_key)
  • Substack publish access

Workflow

  1. Fetch recent episodes:
python3 scripts/fetch_rss.py "$RSS_URL" 3
  1. Fetch episode script + images from Notion (recursive block traversal, image downloads included):
python3 scripts/fetch_notion_episode.py "EPISODE_NUMBER"
  1. Build Substack draft content from script text.
  2. Publish with stable embed behavior using the playbook in references/substack-embed-playbook.md.
  3. Generate LinkedIn post copy from the same content:
python3 scripts/render_linkedin_post.py --json-file episode.json
  1. Post or queue the LinkedIn copy.

Non-negotiable rules

  • Do not use iframe code or markdown links for podcast embeds in Substack.
  • Prefer duplicating the existing Substack draft template that already has a working embed block.
  • If creating a fresh post, use /embed and confirm the player card renders before publishing.
  • Use top-level Apple Podcasts show URL for reliable fallback.

References

  • Substack embed behavior: references/substack-embed-playbook.md
  • LinkedIn formatting: references/linkedin-playbook.md