Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Zoen-DEV/repurpose-youtube-video/llms.txt

Use this file to discover all available pages before exploring further.

Repurpose YouTube Video is a Claude Code skill that transforms any YouTube URL into platform-optimized LinkedIn and Instagram posts — complete with AI-generated visuals — all within a single conversation. Instead of manually watching videos, extracting key insights, writing copy for multiple platforms, and then logging into a publishing tool, you trigger one command and Claude handles the entire pipeline, stopping only to ask for your approval before anything goes live.

Why this skill?

No API key for extraction. Video metadata and transcripts are pulled using yt-dlp and youtube-transcript-api, two open-source libraries that require no paid account or API key. This keeps costs low and removes the most common setup blocker. Humanized copy. The skill applies a post-writing humanization pass that strips out the vocabulary patterns and structural tells typical of AI-generated text — em-dashes, inflated buzzwords, stacked emojis, generic hooks — before you ever see the draft. The result reads like copy written by a person, not a language model. Mandatory approval before publishing. Every run ends with a single consolidated approval block showing the full post text, visual URLs, and scheduled timing for each platform. Nothing is published until you explicitly type . This is hardcoded behavior, not a configurable option. Bilingual support. The skill detects whether the source video is in Spanish or English and writes the posts in that language automatically. You can override this with the idioma: parameter.
The approval step is the only publishing gate. The skill will never call the Blotato publish endpoint without an explicit from you, regardless of what you said in earlier steps of the conversation.

Architecture overview

The skill is orchestrated entirely by Claude Code. There are no external LLM calls — Claude writes the posts directly using the extracted video content. Three Python helper scripts handle the tasks that require libraries or API calls:
  • blotato_client.py — The core helper. It reads credentials from .env, extracts YouTube video metadata and transcripts via yt-dlp and youtube-transcript-api, uploads media to Blotato using presigned URLs, and publishes or schedules posts via the Blotato REST API. All HTTP calls use Python’s stdlib urllib with no external HTTP library required.
  • freepik_client.py — Calls the Freepik Mystic text-to-image API to generate platform-appropriate visuals. Claude crafts the image prompts from the video content; this script handles the API communication and polling until the image is ready.
  • image_overlay.py — Uses Pillow to render text overlays on top of the generated images. LinkedIn posts get a hook overlay at the bottom of a 4:5 image; Instagram single posts get a title overlay; Instagram carousels get three slides with fixed roles (Hook, Info, Credits). If Pillow is not installed or the overlay fails, the skill falls back to the clean Mystic image.
Claude orchestrates these scripts by running Python code blocks in the conversation, passing data between steps and handling errors gracefully at each stage.

Supported platforms

The skill currently publishes to LinkedIn and Instagram. You can target either platform individually using the solo: parameter if you only need one. Twitter/X, Threads, and TikTok are on the backlog. The underlying Blotato API supports them, but the post formatting logic and trigger syntax for those platforms are not yet implemented in this skill.

Get started

Installation

Clone the skill, install dependencies, and configure your Blotato credentials.

Quickstart

Run your first YouTube-to-social post in under 10 minutes.

Build docs developers (and LLMs) love