Skip to content
Marketing
Skill

/repurpose

Content Repurposing Engine. Transforms any content (YouTube videos, blog posts, podcasts, local files, pasted text) into platform-optimized outputs for Twitter/X, Threads, LinkedIn, Instagram, TikTok, Pinterest, Snapchat, Facebook, YouTube Community, Skool, Discord, Reddit,

BOOST
From plugin
claude-repurpose
16121 skills6 agents1 hook
Install
$ npx -y skills add AgriciDaniel/claude-repurpose --skill repurpose --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/repurpose

Context preview

The summary Claude sees to decide when to auto-load this skill.

Content Repurposing Engine. Transforms any content (YouTube videos, blog posts, podcasts, local files, pasted text) into platform-optimized outputs for Twitter/X, Threads, LinkedIn, Instagram, TikTok, Pinterest, Snapchat, Facebook, YouTube Community, Skool, Discord, Reddit,

SKILL.md

repurpose.SKILL.md
name: repurpose
description: >
  Content Repurposing Engine. Transforms any content (YouTube videos, blog posts,
  podcasts, local files, pasted text) into platform-optimized outputs for
  Twitter/X, Threads, LinkedIn, Instagram, TikTok, Pinterest, Snapchat, Facebook,
  YouTube Community, Skool, Discord, Reddit, Quora, Medium, WhatsApp Channels,
  Telegram, and email newsletters. Atomizes content into reusable pieces, adapts
  brand voice per platform, generates polls, image prompts (via /banana),
  publishing calendars, and SEO metadata. Triggers on: "repurpose", "content
  repurpose", "turn into social media", "cross-platform", "content atomization",
  "repurpose blog", "repurpose video", "turn this into posts", "threads",
  "pinterest", "snapchat", "discord", "medium", "whatsapp", "telegram".
user-invokable: true
argument-hint: "[url-or-file] [--platforms X,Y] [--voice casual|professional|witty] [--brief] [--images]"
license: MIT
metadata:
  author: AgriciDaniel
  version: "1.0.0"
  category: content

Content Repurposing Engine

Transform any content into platform-optimized outputs across 17+ channels.

Quick Reference

| Command | Description | |---------|-------------| | `/repurpose <url-or-file>` | Full repurpose pipeline (all platforms) | | `/repurpose <input> --platforms twitter,linkedin` | Repurpose to specific platforms only | | `/repurpose <input> --voice casual` | Override brand voice (casual/professional/witty) | | `/repurpose <input> --brief` | Quick mode: 1 post per platform, no calendar | | `/repurpose <input> --images` | Generate image prompts (or /banana images if available) | | `/repurpose analyze <input>` | Atomize content only, no platform outputs | | `/repurpose calendar <input>` | Generate 7-day publishing calendar only |

Step 1: Input Detection

Detect the input type and extract raw content accordingly.

**Detection patterns (check in order):**

| Pattern | Type | Extraction Method | |---------|------|-------------------| | `youtube\.com/watch\|youtu\.be/\|youtube\.com/shorts` | YouTube video | Run `scripts/extract_transcript.py <url>` | | `https?://` (any other URL) | Blog/article | Run `scripts/extract_article.py <url>` | | Path ending in `.mp3`, `.wav`, `.m4a`, `.ogg`, `.flac` | Audio file | Run `scripts/transcribe_audio.py <path>` | | Path ending in `.md`, `.txt`, `.pdf` | Local file | Read file directly with the Read tool | | No URL or file path detected | Pasted text | Use the inline text as-is |

**Extraction rules:**

  • For YouTube: extract transcript, video title, channel name, description, and duration
  • For blog URLs: extract title, author, publication date, body text, and any embedded media descriptions
  • For audio: transcribe to text, note duration and any speaker labels
  • For local files: read full contents; for PDF use the Read tool with page ranges if large
  • For pasted text: use verbatim; ask the user for a title/topic if not obvious

If extraction fails, report the error clearly and ask the user to paste the content directly.

Step 2: Content Atomization

Break the extracted content into 5-15 reusable "atoms." Each atom is a self-contained content unit.

**Atom types:**

| Type | Description | Example | |------|-------------|---------| | `stat` | A specific number, percentage, or data point | "73% of marketers repurpose content" | | `quote` | A quotable sentence or phrase | "Distribution is the new creation." | | `insight` | A non-obvious takeaway or lesson | "Repurposing beats fresh creation 3:1 on ROI" | | `question` | A thought-provoking question from the content | "What if you never had to write from scratch again?" | | `contrarian` | A bold or counterintuitive claim | "Posting less actually grows your audience faster" | | `howto` | An actionable step or mini-tutorial | "Step 1: Record a 10-min video. Step 2: Extract 8 clips." | | `analogy` | A comparison that makes the concept click | "Repurposing is composting: old material feeds new growth" | | `casestudy` | A real example, result, or before/after | "Gary Vee turns one keynote into 35M+ views across platforms" | | `prediction` | A forward-looking claim or trend | "By 2027, 90% of content will be AI-assisted remixes" | | `tldr` | The single-sentence summary of the entire piece | Always extract exactly one |

**Atomization rules:** 1. Extract between 5 and 15 atoms (aim for 8-12 for most content) 2. Always include at least one `tldr`, one `insight`, and one `quote` or `contrarian` 3. Label each atom with its type 4. Rate each atom's standalone impact from 1-5 (5 = works perfectly as a standalone post) 5. Identify the main argument, target audience, and primary topic 6. Preserve the original author's voice in quoted atoms 7. For longer content (>2000 words), aim for 12-15 atoms; for shorter, 5-8

**Atomization output format:**

## Content Atoms

**Main Argument:** [one sentence]
**Target Audience:** [who benefits from this content]
**Primary Topic:** [category/niche]

| # | Type | Atom | Impact |
|---|------|------|--------|
| 1 | tldr | ... | 5 |
| 2 | insight | ... | 4 |
| ... | ... | ... | ... |

Step 3: Voice Detection and Adaptation

**Default behavior:** Detect the brand voice from the source content. Analyze formality, humor level, directness, emotion, and jargon to infer the author's natural voice.

**Override flags:**

  • `--voice casual` — friendlier, more emoji, conversational, contractions
  • `--voice professional` — formal, data-driven, authoritative, measured
  • `--voice witty` — personality-forward, clever wordplay, punchy, unexpected angles

**Core rule:** The brand voice stays consistent across all platforms. Only the TONE adapts per platform. Load `references/voice-adaptation.md` for the full platform-tone matrix.

Step 4: Orchestration — Spawn 6 Parallel Agents

After atomization, spawn 6 subagents in parallel. Each agent receives:

  • The full list of content atoms (with types and impact ratings)
  • The main argument, target audience, and primary t
Read more
Ships withclaude-repurpose

Content Repurposing Engine for Claude Code -- Turn 1 piece of content into 10+ platform-optimized posts in seconds.

Get the whole plugin

Other skills on claude-repurpose.