New: Earn 20% as an AgentAlley affiliate. Share your link and earn on every sale you refer. Join now New: Earn 20% as an affiliate. Join now

Repurpose existing content into a native Facebook Page post

Facebook Repurposer

by sergebulaev · MIT license · ★ 49 on GitHub · updated Sep 17

Facebook Repurposer cover

Repurpose existing content into a native Facebook Page post. Take a LinkedIn post, X thread, blog, or newsletter and rewrite it for a Page: warm the tone, lead with a standalone claim before the "See more" fold, move links to the first…

---
name: fb-repurposer
description: "Repurpose existing content into a native Facebook Page post. Take a LinkedIn post, X thread, blog, or newsletter and rewrite it for a Page: warm the tone, lead with a standalone claim before the \"See more\" fold, move links to the first comment, strip off-platform artifacts (hashtag walls, \"link in bio\", @-handles), then humanize and publish via Publora on approval. Not for writing from scratch (use fb-post-writer), auditing a draft (use fb-humanizer), or comment replies (use fb-engagement-drafter)."
---

# Facebook Repurposer

Turn something you already made into a Page post that reads like it was born on
Facebook. Repurposing is not copy-paste. A post that killed on LinkedIn will die
on a Facebook Page if you paste it: wrong tone (corporate press release vs warm
Page voice), wrong length, links that suppress reach, and artifacts (hashtag
walls, "link in bio", X @-handles) that scream off-platform.

This skill transforms, it does not generate. It reads your source, keeps the
idea, and rebuilds the delivery for a Facebook Page.

## When to use

Overview

Turn something you already made into a Page post that reads like it was born on Facebook. Repurposing is not copy-paste. A post that killed on LinkedIn will die on a Facebook Page if you paste it: wrong tone (corporate press release vs warm Page voice), wrong length, links that suppress reach, and artifacts (hashtag walls, "link in bio", X @-handles) that scream off-platform.

Manual install (npx, ZIP)
Claude Codenpx skills add sergebulaev/facebook-skills --skill fb-repurposer -g -a claude-code
Claude Code (manual)mkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/sergebulaev/facebook-skills/tar.gz/cc47acac47a8 \ | tar -xz -C ~/.claude/skills --strip-components=4 facebook-skills-cc47acac47a8/.codex-marketplace/facebook-skills/skills/fb-repurposer
Windows (PowerShell)New-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/46b0a721ad895336a14f/fb-repurposer.zip" -OutFile "$env:TEMP\fb-repurposer.zip"; Expand-Archive "$env:TEMP\fb-repurposer.zip" -DestinationPath "$HOME\.claude\skills" -Force
Claude.ai / desktopDownload the ZIP and upload it under Settings → Capabilities → Skills.
Codex, Cursor, other agentsPoint them at SKILL.md. The other files are plain text.

Connects with Agent Alley MCP · agentalley.io/mcp

Files included

  • SKILL.md7.3 KB
Read the files here
sergebulaev/cc47aca1 file
Shared references3SKILL.md reads these from elsewhere in the repo. Not in the ZIP.Get them on GitHub ↗
SKILL.md
Show the full text128 lines

Facebook Repurposer

Turn something you already made into a Page post that reads like it was born on Facebook. Repurposing is not copy-paste. A post that killed on LinkedIn will die on a Facebook Page if you paste it: wrong tone (corporate press release vs warm Page voice), wrong length, links that suppress reach, and artifacts (hashtag walls, "link in bio", X @-handles) that scream off-platform.

This skill transforms, it does not generate. It reads your source, keeps the idea, and rebuilds the delivery for a Facebook Page.

When to use

  • "Turn this LinkedIn post into a Facebook Page post"
  • "Repurpose my blog post / newsletter / X thread for our Page"
  • "This worked on Threads, adapt it for Facebook"
  • "I have a rough idea in another format, make it native here"

Not for a blank-page draft (use fb-post-writer), not for reviewing an already-Facebook draft (use fb-humanizer --mode audit), and not for replying to comments on your Page (use fb-engagement-drafter).

How it works

Voice profile first (all drafts). If ../../references/voice-profile.md has filled: yes, load it and match the user's voice fingerprint, hard rules, and CTA/link style throughout. If it is not filled, mention once that fb-humanizer --mode profile can learn their voice from a few posts, then proceed with the generic voice rules.

  1. Take the source. Any format: a post, a paragraph, a script, a caption, a transcript, a bullet list, a link to read. Ask for the source and the goal (shares / comments / reactions) if not given.
  2. Extract the spine. Strip the source platform's shell and pull out the one claim, the one story, or the one number worth keeping. Most repurposing fails because it keeps the words instead of the point.
  3. Choose the container. One claim, number, or moment -> a short Page post (aim under 80 chars). A true narrative or a build -> a story post (FB8-FB10 shapes). Match the source to a 2026 Facebook shape in ../../references/hook-formulas.md, picked by the goal.
  4. Warm the tone for a Page. A Page voice is warm and human, not a press release and not clickbait. Rewrite the source's hook: lead with a standalone claim that lands the whole point above the "See more" fold. Facebook folds longer posts, so line one must carry it alone.
  5. Refit the format. Lead short. One idea per post, line breaks as beats. Cut the source's connective tissue and corporate throat-clearing. 0-2 hashtags, 0-2 emoji, none on a serious take.
  6. Move links off the body. External links suppress organic reach on a Page. If the source's whole point is a link, put the link in the first comment and let the post stand on its own claim.
  7. Strip off-platform artifacts. Remove "link in bio", "smash subscribe", "read more below", hashtag walls, X @-handles that only exist elsewhere, and any "as I posted on LinkedIn" throat-clearing. A repurposed post should not admit it was repurposed.
  8. Humanizer pass. Run fb-humanizer V3 on the draft: 2026 AI vocab by paragraph density, em dashes above the cap (about one per 100 words, never swapped for a period), stacked rule-of-three triads, "We are thrilled to announce", generic openers and reveal bridges. Fix only a story paragraph that reads machine-flat; never manufacture variance. Keep the user's real numbers and named entities from the source.
  9. Approval card. Show: source -> Facebook mapping (what became what), the container (short post or story post), shape used, char count (flag if it crosses the 80-char sweet spot), whether a link moved to the first comment, primary goal.
  10. On approval. Publish via lib.publish(kind="post", draft_text=<approved>, target_url="https://www.facebook.com/YourPage", platforms=[<FACEBOOK_PLATFORM_ID>], scheduled_time=<iso_or_None>). For a deliberate long story post, pass kind="story". The wrapper handles Publora / manual / diy routing.

Native-fit rules (source -> Facebook)

  • LinkedIn post -> Facebook: warm the corporate tone. LinkedIn tolerates a thought-leadership register; a Page wants a human talking to people. Drop the buzzwords, keep the insight.
  • X thread -> Facebook: unroll into one short story post. A Page reads a numbered thread as noise, so stitch the beats into a single readable arc and cut the "1/", "2/" scaffolding and @-handles.
  • Blog / newsletter -> Facebook: pick the one relatable angle, not a summary. Lead with the human moment or the single most useful line; let the link (if any) live in the first comment.
  • YouTube script -> Facebook: lead with the payoff, not the intro. "Here is what we found" beats "In this video".
  • Instagram / TikTok caption -> Facebook: strip emoji density and hashtag blocks; a Page reads them as clutter. Keep the one line that carries.

Hard rules

Global voice rules: see root SKILL.md Voice rules. Additional skill-specific rules:

  • Keep the source's claim and facts intact. Repurposing changes the delivery, never the meaning or the numbers.
  • The first line must land the whole point above the fold, on its own.
  • Never paste the source verbatim and trim. Rebuild the hook and tone from the spine.
  • One specific number where the source offers one. Keep it.
  • Warm and human, never a press release and never "You won't BELIEVE" clickbait.
  • No tag-bait ("tag 3 friends"). Earn the share with the post.
  • Links move to the first comment. The body carries the claim.

Anti-patterns (skill will refuse)

  • Copy-pasting the source with light edits (that is not repurposing).
  • Keeping the source platform's artifacts ("link in bio", "smash subscribe", hashtag walls, X @-handles, "1/ 2/" thread numbering).
  • "You won't BELIEVE" clickbait or ALL CAPS for intensity.
  • Engagement bait ("LIKE and SHARE if you agree", "tag 3 friends").
  • Em dashes above the cap (more than about one per 100 words), or an em dash swapped for a period.
  • "The result?" / "Here's what" reveal bridges and staccato stacks added during the rewrite.
  • Rule-of-three lists without specifics.
  • "leverage", "fundamentally", "game-changer", "deep dive".
  • A bare external link in the post body (move it to the first comment).
  • Meta throat-clearing ("I originally posted this on...").

Resources

  • ../../references/hook-formulas.md - the 10 Facebook shapes to re-hook with (FB1-FB7 short, FB8-FB10 story)
  • ../../references/algorithm-heuristics.md - 2026 Facebook Page ranking rules (the under-80 boost, link reach suppression, timing, limits)
  • fb-post-writer - write a fresh Page post from scratch
  • fb-humanizer - scrub AI tells, plus --mode audit to review the result
  • fb-hook-extractor - reverse-engineer a hook from a Page post you admire
  • fb-engagement-drafter - reply to the comments your post earns
1---
2name: fb-repurposer
3description: "Repurpose existing content into a native Facebook Page post. Take a LinkedIn post, X thread, blog, or newsletter and rewrite it for a Page: warm the tone, lead with a standalone claim before the \"See more\" fold, move links to the first comment, strip off-platform artifacts (hashtag walls, \"link in bio\", @-handles), then humanize and publish via Publora on approval. Not for writing from scratch (use fb-post-writer), auditing a draft (use fb-humanizer), or comment replies (use fb-engagement-drafter)."
4---
5 
6# Facebook Repurposer
7 
8Turn something you already made into a Page post that reads like it was born on
9Facebook. Repurposing is not copy-paste. A post that killed on LinkedIn will die
10on a Facebook Page if you paste it: wrong tone (corporate press release vs warm
11Page voice), wrong length, links that suppress reach, and artifacts (hashtag
12walls, "link in bio", X @-handles) that scream off-platform.
13 
14This skill transforms, it does not generate. It reads your source, keeps the
15idea, and rebuilds the delivery for a Facebook Page.
16 
17## When to use
18 
19- "Turn this LinkedIn post into a Facebook Page post"
20- "Repurpose my blog post / newsletter / X thread for our Page"
21- "This worked on Threads, adapt it for Facebook"
22- "I have a rough idea in another format, make it native here"
23 
24Not for a blank-page draft (use `fb-post-writer`), not for reviewing an
25already-Facebook draft (use `fb-humanizer --mode audit`), and not for replying to
26comments on your Page (use `fb-engagement-drafter`).
27 
28## How it works
29 
30**Voice profile first (all drafts).** If `../../references/voice-profile.md` has `filled: yes`, load it and match the user's voice fingerprint, hard rules, and CTA/link style throughout. If it is not filled, mention once that `fb-humanizer --mode profile` can learn their voice from a few posts, then proceed with the generic voice rules.
31 
321. **Take the source.** Any format: a post, a paragraph, a script, a caption, a
33 transcript, a bullet list, a link to read. Ask for the source and the goal
34 (shares / comments / reactions) if not given.
352. **Extract the spine.** Strip the source platform's shell and pull out the one
36 claim, the one story, or the one number worth keeping. Most repurposing fails
37 because it keeps the words instead of the point.
383. **Choose the container.** One claim, number, or moment -> a short Page post
39 (aim under 80 chars). A true narrative or a build -> a story post (FB8-FB10
40 shapes). Match the source to a 2026 Facebook shape in
41 `../../references/hook-formulas.md`, picked by the goal.
424. **Warm the tone for a Page.** A Page voice is warm and human, not a press
43 release and not clickbait. Rewrite the source's hook: lead with a standalone
44 claim that lands the whole point above the "See more" fold. Facebook folds
45 longer posts, so line one must carry it alone.
465. **Refit the format.** Lead short. One idea per post, line breaks as beats. Cut
47 the source's connective tissue and corporate throat-clearing. 0-2 hashtags,
48 0-2 emoji, none on a serious take.
496. **Move links off the body.** External links suppress organic reach on a Page.
50 If the source's whole point is a link, put the link in the first comment and
51 let the post stand on its own claim.
527. **Strip off-platform artifacts.** Remove "link in bio", "smash subscribe",
53 "read more below", hashtag walls, X @-handles that only exist elsewhere, and
54 any "as I posted on LinkedIn" throat-clearing. A repurposed post should not
55 admit it was repurposed.
568. **Humanizer pass.** Run `fb-humanizer` V3 on the draft: 2026 AI vocab by
57 paragraph density, em dashes above the cap (about one per 100 words, never
58 swapped for a period), stacked rule-of-three triads, "We are thrilled to
59 announce", generic openers and reveal bridges. Fix only a story paragraph
60 that reads machine-flat; never manufacture variance. Keep the user's real
61 numbers and named entities from the source.
629. **Approval card.** Show: source -> Facebook mapping (what became what), the
63 container (short post or story post), shape used, char count (flag if it
64 crosses the 80-char sweet spot), whether a link moved to the first comment,
65 primary goal.
6610. **On approval.** Publish via `lib.publish(kind="post", draft_text=<approved>,
67 target_url="https://www.facebook.com/YourPage",
68 platforms=[<FACEBOOK_PLATFORM_ID>], scheduled_time=<iso_or_None>)`. For a
69 deliberate long story post, pass `kind="story"`. The wrapper handles Publora /
70 manual / diy routing.
71 
72## Native-fit rules (source -> Facebook)
73 
74- **LinkedIn post -> Facebook:** warm the corporate tone. LinkedIn tolerates a
75 thought-leadership register; a Page wants a human talking to people. Drop the
76 buzzwords, keep the insight.
77- **X thread -> Facebook:** unroll into one short story post. A Page reads a
78 numbered thread as noise, so stitch the beats into a single readable arc and
79 cut the "1/", "2/" scaffolding and @-handles.
80- **Blog / newsletter -> Facebook:** pick the one relatable angle, not a summary.
81 Lead with the human moment or the single most useful line; let the link (if
82 any) live in the first comment.
83- **YouTube script -> Facebook:** lead with the payoff, not the intro. "Here is
84 what we found" beats "In this video".
85- **Instagram / TikTok caption -> Facebook:** strip emoji density and hashtag
86 blocks; a Page reads them as clutter. Keep the one line that carries.
87 
88## Hard rules
89 
90Global voice rules: see root `SKILL.md` Voice rules. Additional skill-specific
91rules:
92 
93- Keep the source's **claim and facts** intact. Repurposing changes the delivery,
94 never the meaning or the numbers.
95- The first line must land the whole point above the fold, on its own.
96- Never paste the source verbatim and trim. Rebuild the hook and tone from the
97 spine.
98- One specific number where the source offers one. Keep it.
99- Warm and human, never a press release and never "You won't BELIEVE" clickbait.
100- No tag-bait ("tag 3 friends"). Earn the share with the post.
101- Links move to the first comment. The body carries the claim.
102 
103## Anti-patterns (skill will refuse)
104 
105- Copy-pasting the source with light edits (that is not repurposing).
106- Keeping the source platform's artifacts ("link in bio", "smash subscribe",
107 hashtag walls, X @-handles, "1/ 2/" thread numbering).
108- "You won't BELIEVE" clickbait or ALL CAPS for intensity.
109- Engagement bait ("LIKE and SHARE if you agree", "tag 3 friends").
110- Em dashes above the cap (more than about one per 100 words), or an em dash swapped for a period.
111- "The result?" / "Here's what" reveal bridges and staccato stacks added during the rewrite.
112- Rule-of-three lists without specifics.
113- "leverage", "fundamentally", "game-changer", "deep dive".
114- A bare external link in the post body (move it to the first comment).
115- Meta throat-clearing ("I originally posted this on...").
116 
117## Resources
118 
119- `../../references/hook-formulas.md` - the 10 Facebook shapes to re-hook with (FB1-FB7 short, FB8-FB10 story)
120- `../../references/algorithm-heuristics.md` - 2026 Facebook Page ranking rules (the under-80 boost, link reach suppression, timing, limits)
121 
122## Related skills
123 
124- `fb-post-writer` - write a fresh Page post from scratch
125- `fb-humanizer` - scrub AI tells, plus `--mode audit` to review the result
126- `fb-hook-extractor` - reverse-engineer a hook from a Page post you admire
127- `fb-engagement-drafter` - reply to the comments your post earns
128 
View all files on GitHub →

Details

Updated
Sep 17, 2026
License
MIT
Stars on the repo
★ 49
Checked
Source
sergebulaev/facebook-skills ↗
Creator
sergebulaev · 77 listings
View creator

Similar skills

See all →
SkillRepurpose existing content into a native LinkedIn postLinkedin repurposersergebulaev/linkedin-skills · by sergebulaevRepurpose existing content into a native LinkedIn post. Take a tweet, thread, YouTube video, blog, or newsletter and rebuild it for LinkedIn: re-hook before the fold, expand to the 900 to 1300 char sweet spot, add whitespace and a CTA, move links to the first comment, run the humanizer, publish via Publora on approval. Not for writing from scratch (use linkedin-post-writer), not for auditing a draft (use linkedin-humanizer --mode audit).★ 3.1k GitHub starsSkillTurn public social videos, transcripts, postsContent repurposingScrapeCreators/social-media-research-skills · by ScrapeCreatorsUse when the user wants to turn public social videos, transcripts, posts, or creator research into reusable content assets such as LinkedIn posts, X threads, short-form scripts, newsletters, blog outlines, carousels, or content calendars.★ 2.6k GitHub starsSkillRepurpose and atomize content across platforms and formatsContent repurposingOpenClaudia/openclaudia-skills · by OpenClaudiaRepurpose and atomize content across platforms and formats. Use when the user says "repurpose this", "turn this into", "convert blog to", "make a thread from", "content atomization", "repurpose content", "turn this article into social posts", or asks about adapting content from one format to another.★ 705 GitHub starsSkillAn approved campaign, launch, research findingCross platform distributionOotto-AI/claude-content-skills · by Ootto-AIUse when an approved campaign, launch, research finding, or asset needs a deliberate plan across several social channels. Trigger phrases include "adapt this for LinkedIn and X", "where should this campaign go?", "make a distribution plan", "repurpose this without duplicating it", and "what is each platform's role?". Do not use this to invent a campaign strategy, bulk-post identical copy, or schedule a calendar; use campaign-brief for the strategic source, content-repurposer for asset transformations, and content-calendar for dates.★ 139 GitHub starsSkillVideo repurposing pipeline for multi-platform clipVideo Clipspawbytes/skill-suites · by pawbytesVideo repurposing pipeline for multi-platform clip extraction. Use when the user requests to 'extract clips', 'repurpose video', 'create clips from video', or 'clip video for social'.★ 114 GitHub starsSkillDistribute content across channels for maximum reachContent distributionLeadMagic/gtm-skills · by LeadMagicDistribute content across channels for maximum reach — multi-platform repurposing, syndication, paid amplification, email distribution, and partner promotion. Use when getting content in front of an audience, repurposing content, or building a distribution engine. Triggers on: "content distribution", "promote content", "repurpose content", "syndication", "amplify content", "get more eyes on", or any content amplification request.★ 62 GitHub stars

More from sergebulaev

SkillBy density per paragraph, not per wordAI Tells — Complete Blacklist (V3, 2026-09)sergebulaev/linkedin-skills · by sergebulaevScored the way readers read: by density per paragraph, not per word. One marker in a paragraph is English. Three is a signature. The…★ 3.1k GitHub starsSkillFifteen rules from the linkedin-humanizer packageAI-Tell Rules: Tier-Classified Referencesergebulaev/linkedin-skills · by sergebulaevFifteen rules from the linkedin-humanizer package, sorted by what kind of evidence each one actually represents.★ 3.1k GitHub starsSkillPattern data from MagicPost LinkedIn analysisEmoji Patterns — AI vs. Humansergebulaev/linkedin-skills · by sergebulaevPattern data from MagicPost LinkedIn analysis (Feb 2026, viral post with 220 engagement).★ 3.1k GitHub starsSkillRead your Instagram niche and profile from real dataInstagram Audience Insightssergebulaev/instagram-skills · by sergebulaevRead your Instagram niche and profile from real data via Apify, no login. Scan a hashtag for the posts traveling now (likes, comments, owner) to see the format and hook that works. Pull profile stats for any handle, yours or a competitor's: followers, posts, bio, category. Instagram hides who liked or commented on other accounts, so this is discovery plus profiles, not engagers. Triggers on "what works in my niche", "scan the hashtag", "competitor stats". Not for writing captions (use ig-caption-writer).★ 138 GitHub starsSkillDraft an Instagram caption with the hook in the first 125Instagram Caption Writersergebulaev/instagram-skills · by sergebulaevDraft an Instagram caption with the hook in the first 125 characters, a skimmable body, and one clear CTA, using a 2026 hook formula chosen by goal (saves, shares, comments, follows). Runs the humanizer pass and, on approval, publishes with the image or video you supply via the Publora media flow. Use to caption a single image or a Reel. Not for slide-by-slide carousels (use ig-carousel-planner) or auditing a draft (use ig-humanizer --mode audit).★ 138 GitHub starsSkillPlan an Instagram carousel slide by slide, up to 10 slidesInstagram Carousel Plannersergebulaev/instagram-skills · by sergebulaevPlan an Instagram carousel slide by slide, up to 10 slides, with a hook slide that opens a loop, value slides that front-load the payoff, and a payoff slide that earns the save and follow. Picks a 2026 carousel formula (listicle, before/after, myth-buster, framework) by goal (saves, shares, follows), drafts each slide's text plus the caption, then publishes the images you supply via Publora. Use to structure a multi-slide carousel. Not for single-image captions (use ig-caption-writer).★ 138 GitHub stars