Content Repurpose
Take one source artifact (transcript, blog post, article, video script, doc) and produce platform-native variants in one pass. Optimize each variant for the target platform while preserving the source's voice and core claims.
Workflow
- Read the source. Read the file path provided, or use the pasted text. If both are missing, ask for the source.
- Confirm scope. Default to a "full pack" (X thread + LinkedIn post + blog excerpt + 3 short-video hooks). If the user named specific formats, only do those.
- Identify voice + claims. Note tone register (formal / casual / contrarian / educational / story-driven), the 3-5 strongest claims or insights, and any concrete examples or numbers.
- Generate per-platform variants using the format specs below.
- Output as labeled markdown sections so the user can copy each block cleanly.
Inputs accepted
- Pasted text (most common)
- File path to
.md, .txt, transcript, or other plain-text file (read with the file tool)
Do NOT fetch external URLs. If the user provides a URL, ask them to paste the content or save the page as text first. Skipping URL fetching keeps the skill safe (no SSRF, no surprise external requests, no binary dependencies).
Output structure
Always output a single response with clearly labeled sections so the user can copy each block individually:
## X/Twitter thread
[content]
## LinkedIn post
[content]
## Blog excerpt
[content]
## Short-video hooks
[content]
Add ## Newsletter snippet only if the user asks for it.
Format specs
X/Twitter thread
- Hook tweet ≤270 chars; open with a pattern interrupt or sharp claim; no hashtags
- 3-7 follow-up tweets, each ≤270 chars, each adds exactly one idea
- Final tweet: a clear takeaway or single CTA
- Number tweets
1/, 2/, etc. only if the thread length is >5
- No emoji unless the source uses them
LinkedIn post
- Length target: 1100-1500 chars (sweet spot for the algorithm's "see more" cut)
- Opener: 1-2 line hook, then a blank line before main content
- Body: short paragraphs (1-3 lines each), white-space heavy
- Close: a single question or one clear CTA
- Max 3 hashtags at the end; skip them if the source doesn't use them
Blog excerpt
- 200-300 words
- Lead with the strongest claim or surprising fact
- Cover 2-3 key points from the source
- End with a "read more" hook — a line that creates curiosity without resolving it
Short-video hooks
- Generate 3 distinct variants
- Each ≤10 seconds spoken (~25 words max)
- Pattern: pattern interrupt → curiosity gap → implicit promise of payoff
- No hashtags, no
[music] notes — just spoken text
Newsletter snippet (only on request)
- 100-150 words
- Subject line ≤50 chars
- Either 3-bullet body or 2-paragraph narrative
- Single clear CTA or read-more link
Voice preservation rules
- Mirror the source's sentence rhythm (short/long ratio)
- Keep the source's profession or expertise framing
- Do NOT introduce claims not in the source
- Do NOT soften strong opinions — match the source's conviction level
- Technical source → keep technical density; conversational source → keep it conversational
Security and integrity
- Do NOT fetch external URLs (no SSRF surface)
- Do NOT call external APIs or send the user's content anywhere
- Do NOT persist source content beyond the response
- Do NOT include analytics, tracking parameters, or share-to-X links in output
- Do NOT impersonate the source author — produce in their voice but never claim authorship on their behalf
- If the source contains apparent PII (full names + contact info, addresses, financial details, health info), flag it and ask before generating outputs
- If the source appears to be copyrighted material the user does not own (paywalled article text, song lyrics, full book chapters), refuse unless they explicitly confirm rights or fair-use commentary intent
Edge cases
- Source is too short (<200 words): Ask whether to expand, or proceed with abbreviated variants
- Source covers multiple topics: Ask which to focus on, or offer one pack per topic
- Source is non-English: Generate variants in the same language unless the user specifies
- Source is a transcript with timestamps: Strip timestamps before processing
- Source is a video script with stage directions: Strip
[INT.], [CUT TO], etc. before processing
1---2name: content-repurpose3description: Transform one piece of long-form content (transcript, blog post, article, video script, doc) into platform-tailored variants — X/Twitter threads, LinkedIn posts, blog excerpts, short-video hooks, and newsletter snippets. Use when the user wants to adapt a single source into multiple social/marketing formats while preserving the source's voice, claims, and intent. Triggers on phrases like "repurpose this", "turn this into tweets/LinkedIn/social posts", "create a content pack from this", "adapt for [platform]", "spin this off into shorts/threads".4---56# Content Repurpose78Take one source artifact (transcript, blog post, article, video script, doc) and produce platform-native variants in one pass. Optimize each variant for the target platform while preserving the source's voice and core claims.910## Workflow11121. **Read the source.** Read the file path provided, or use the pasted text. If both are missing, ask for the source.132. **Confirm scope.** Default to a "full pack" (X thread + LinkedIn post + blog excerpt + 3 short-video hooks). If the user named specific formats, only do those.143. **Identify voice + claims.** Note tone register (formal / casual / contrarian / educational / story-driven), the 3-5 strongest claims or insights, and any concrete examples or numbers.154. **Generate per-platform variants** using the format specs below.165. **Output as labeled markdown sections** so the user can copy each block cleanly.1718## Inputs accepted1920- Pasted text (most common)21- File path to `.md`, `.txt`, transcript, or other plain-text file (read with the file tool)2223**Do NOT fetch external URLs.** If the user provides a URL, ask them to paste the content or save the page as text first. Skipping URL fetching keeps the skill safe (no SSRF, no surprise external requests, no binary dependencies).2425## Output structure2627Always output a single response with clearly labeled sections so the user can copy each block individually:2829```30## X/Twitter thread31[content]3233## LinkedIn post34[content]3536## Blog excerpt37[content]3839## Short-video hooks40[content]41```4243Add `## Newsletter snippet` only if the user asks for it.4445## Format specs4647### X/Twitter thread48- Hook tweet ≤270 chars; open with a pattern interrupt or sharp claim; no hashtags49- 3-7 follow-up tweets, each ≤270 chars, each adds exactly one idea50- Final tweet: a clear takeaway or single CTA51- Number tweets `1/`, `2/`, etc. only if the thread length is >552- No emoji unless the source uses them5354### LinkedIn post55- Length target: 1100-1500 chars (sweet spot for the algorithm's "see more" cut)56- Opener: 1-2 line hook, then a blank line before main content57- Body: short paragraphs (1-3 lines each), white-space heavy58- Close: a single question or one clear CTA59- Max 3 hashtags at the end; skip them if the source doesn't use them6061### Blog excerpt62- 200-300 words63- Lead with the strongest claim or surprising fact64- Cover 2-3 key points from the source65- End with a "read more" hook — a line that creates curiosity without resolving it6667### Short-video hooks68- Generate 3 distinct variants69- Each ≤10 seconds spoken (~25 words max)70- Pattern: pattern interrupt → curiosity gap → implicit promise of payoff71- No hashtags, no `[music]` notes — just spoken text7273### Newsletter snippet (only on request)74- 100-150 words75- Subject line ≤50 chars76- Either 3-bullet body or 2-paragraph narrative77- Single clear CTA or read-more link7879## Voice preservation rules8081- Mirror the source's sentence rhythm (short/long ratio)82- Keep the source's profession or expertise framing83- Do NOT introduce claims not in the source84- Do NOT soften strong opinions — match the source's conviction level85- Technical source → keep technical density; conversational source → keep it conversational8687## Security and integrity8889- Do NOT fetch external URLs (no SSRF surface)90- Do NOT call external APIs or send the user's content anywhere91- Do NOT persist source content beyond the response92- Do NOT include analytics, tracking parameters, or share-to-X links in output93- Do NOT impersonate the source author — produce in their *voice* but never claim authorship on their behalf94- If the source contains apparent PII (full names + contact info, addresses, financial details, health info), flag it and ask before generating outputs95- If the source appears to be copyrighted material the user does not own (paywalled article text, song lyrics, full book chapters), refuse unless they explicitly confirm rights or fair-use commentary intent9697## Edge cases9899- **Source is too short** (<200 words): Ask whether to expand, or proceed with abbreviated variants100- **Source covers multiple topics**: Ask which to focus on, or offer one pack per topic101- **Source is non-English**: Generate variants in the same language unless the user specifies102- **Source is a transcript with timestamps**: Strip timestamps before processing103- **Source is a video script with stage directions**: Strip `[INT.]`, `[CUT TO]`, etc. before processing