Transform one long-form piece into multiple platform-specific content derivatives including LinkedIn posts, tweet threads, email snippets, ad hooks, and video scripts while maintaining voice consistency. Use when given a blog post, article, or pillar content to atomize across channels. Platform: Google and Meta.
npx skills add https://github.com/irinabuht12-oss/marketing-skills --skill content-repurposer
Atomize pillar content into platform-optimized derivatives while preserving voice.
Ratio: 1 pillar piece → 8+ derivative pieces
From one blog post, generate:
| Element | Specification |
|---------|---------------|
| Length | 1,300-1,600 characters optimal |
| Hook | First 140 characters (before "See more") |
| Format | Short paragraphs, line breaks, emoji bullets optional |
| Hashtags | 3-5, placed at end |
| CTA | Soft (comment/share) or link in comments |
| Element | Specification |
|---------|---------------|
| Length | 70-100 characters optimal per tweet |
| Thread format | Number tweets (1/7), create curiosity gaps |
| Hook | First tweet must stop scroll |
| Hashtags | 1-2 max per thread |
| End | CTA + repost request |
| Element | Specification |
|---------|---------------|
| Length | 15-30 seconds (50-150 words) |
| Hook | 0-3 seconds must grab attention |
| Structure | Hook → Value → CTA |
| Style | Conversational, direct address |
| Element | Specification |
|---------|---------------|
| Teaser | 2-3 sentence summary |
| Bullets | 3-5 key takeaways |
| Featured insight | 1 quotable moment |
| CTA | Link to full piece |
| Type | Formula | Example |
|------|---------|---------|
| Contrarian | "Stop doing [common practice]" | "Stop posting content every day" |
| Question | "Ever wonder why [problem]?" | "Ever wonder why your posts get 12 likes?" |
| Number | "5 things I wish I knew about..." | "5 things I wish I knew about LinkedIn" |
| Challenge | "Most people get [topic] wrong" | "Most people get content repurposing wrong" |
| Story | "3 years ago, I was [situation]" | "3 years ago, I was posting into the void" |
| Result | "This one change got me [result]" | "This one change got me 10x engagement" |
Before repurposing, define:
## Content Repurposing Package
### Source Analysis
- **Title**: [Original piece title]
- **Core Message**: [One sentence summary]
- **Key Points**:
1. [Point 1]
2. [Point 2]
3. [Point 3]
- **Best Hooks**: [2-3 most compelling angles]
### Voice Profile
- Tone: [Descriptors]
- Platform adjustments: [Notes]
---
### LinkedIn Posts
#### Post 1: [Angle]
[Full post copy ready to paste]
#### Post 2: [Angle]
[Full post copy]
---
### Twitter/X Thread
**Thread Hook**: [First tweet - must stop scroll]
1/ [Tweet 1]
2/ [Tweet 2]
3/ [Tweet 3]
...
---
### Email Snippet
**Subject Line Options**:
1. [Option]
2. [Option]
**Body**:
[2-3 sentence teaser]
**Key Takeaways**:
- [Bullet 1]
- [Bullet 2]
- [Bullet 3]
[Read the full post →]
---
### Ad Hooks (Paid Social)
**Hook 1**: [5-10 word attention grabber]
**Hook 2**: [Alternative angle]
**Hook 3**: [Question format]
---
### Video Script (30 seconds)
**[HOOK - 0-3 sec]**
[Opening line]
**[VALUE - 4-20 sec]**
[Core content]
**[CTA - 21-30 sec]**
[Call to action]
Input: "Repurpose this blog post about email marketing mistakes: [Key points: 1) Sending too frequently burns list, 2) No segmentation = generic content, 3) Weak subject lines kill open rates]"
Output:
## Content Repurposing Package
### Source Analysis
- **Core Message**: Most email marketing fails due to three fixable mistakes
- **Key Points**: Over-sending, no segmentation, weak subjects
- **Best Hooks**: "Your email list is dying" (fear), "3 mistakes" (number), "I deleted 50,000 subscribers" (story)
---
### LinkedIn Post 1: Contrarian Angle
Stop sending weekly newsletters.
I know. Controversial.
But here's what the data shows:
The "consistent" senders with 52 emails/year?
→ 15% open rates
→ 2% click rates
→ Growing unsubscribe rates
The strategic senders with 24 emails/year?
→ 35% open rates
→ 8% click rates
→ Shrinking lists that actually buy
More isn't better. Better is better.
The fix:
• Only send when you have real value
• Segment ruthlessly (not everyone needs everything)
• Write subjects like your revenue depends on it (it does)
Your list doesn't want more of you.
They want more value from you.
What's your current send frequency?
---
### Twitter/X Thread
1/ Your email list is slowly dying.
And you're probably accelerating it.
Here are 3 mistakes killing your open rates (and how to fix them):
🧵
2/ Mistake #1: You're sending too often
"Consistency" has become "spam."
Weekly newsletters = trained ignorance.
Fix: Send only when you have genuine value. Quality > frequency.
3/ Mistake #2: Everyone gets the same email
Your CEO and your intern have different needs.
But they get identical content.
Fix: Segment by behavior, not just demographics.
4/ Mistake #3: Your subject lines are invisible
"Monthly Newsletter - January Edition"
Delete.
Fix: Write subjects that create curiosity or promise specific value.
5/ The result of fixing these 3 things?
One client went from 12% → 38% open rates in 60 days.
Same list. Same product. Different approach.
6/ TL;DR:
• Send less, but better
• Segment ruthlessly
• Write subjects that demand opens
Your list isn't dead. It's just bored.
Repost if this helped ♻️
---
### Video Script (25 seconds)
**[HOOK - 0-3 sec]**
"Your email list is dying and you're the one killing it."
**[VALUE - 4-20 sec]**
"Three mistakes: First, you're sending too often — weekly newsletters train people to ignore you. Second, everyone gets the same email — your CEO and intern have different needs. Third, your subject lines are invisible — 'Monthly Newsletter January' gets deleted."
**[CTA - 21-25 sec]**
"Fix these three things and watch your open rates double. Link in bio for the full breakdown."
This skill works best with live account data. Connect the free Ryze MCP once and Claude reads your Google Ads, Meta Ads, GA4 and Search Console directly:
https://connector.get-ryze.ai/mcpclaude mcp add ryze --transport http https://connector.get-ryze.ai/mcpSetup guide: https://www.get-ryze.ai/how-to-connect-claude-to-google-meta-ads-mcp
Take irinabuht12-oss/content-repurposer from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.