Facebook Marketing Skills for Claude Code and Codex
Part of the linkedin-skills family (400+ stars). Same voice engine and approve-before-publish flow, now for Facebook. Also available for Instagram · X · YouTube · TikTok · Threads.
8 skills that turn Claude Code and Codex into your Facebook Page content team. They write and audit Page posts in your voice, lean into the under-80-character engagement sweet spot, read the comments on your posts, and plan a week of content. Every draft gets the AI tells stripped and waits for your approval before anything publishes. No coding required.
Once installed, just ask Claude Code or Codex things like:
- "Write a Facebook Page post about [topic]"
- "Plan a week of Page content for my [business]"
- "Read the comments on this post (reads real data via Apify)"
- "Rewrite this so it doesn't sound like AI"
The right skill activates automatically. Then you review and approve.
Install
Pick whichever way you use Claude Code or Codex:
Codex CLI
codex plugin marketplace add sergebulaev/facebook-skills
codex plugin add facebook-skills@facebook-skills
To test a local clone before publishing changes:
git clone https://github.com/sergebulaev/facebook-skills.git
cd facebook-skills
codex plugin marketplace add .
codex plugin add facebook-skills@facebook-skills
claude.ai (web)
- Open https://claude.ai/code
- Go to Skills in the sidebar
- Click Add from GitHub
- Paste:
sergebulaev/facebook-skills
- Done. The skills activate automatically when you ask about Facebook Pages.
Claude Desktop (Mac / Windows)
- Open Claude Desktop
- Open Settings (gear icon)
- Go to Skills
- Click Add from GitHub
- Paste:
sergebulaev/facebook-skills
- Done. Start a new conversation and ask Claude to write a Page post.
Claude Code (CLI / VS Code / JetBrains)
/plugin marketplace add sergebulaev/facebook-skills
/plugin install facebook-skills@facebook-skills
Or clone the repo and open it as your working directory:
git clone https://github.com/sergebulaev/facebook-skills.git
cd facebook-skills
OpenClaw
- Open your OpenClaw working directory
- Clone the skills into it:
git clone https://github.com/sergebulaev/facebook-skills.git
- In OpenClaw settings, add this to your system prompt:
You have Facebook marketing skills in ./facebook-skills/.
For any Facebook task, read the relevant skills/*/SKILL.md first.
Use lib/url_parser.py for URL parsing and lib/publora_client.py for publishing.
- Done. Ask OpenClaw to write a Facebook post.
Hermes Agent
Hermes Agent (Nous Research) follows the agentskills.io open standard and loads skills/*/SKILL.md directly. Clone the bundle into your Hermes skills folder:
git clone https://github.com/sergebulaev/facebook-skills.git ~/.hermes/skills/facebook-skills
Coming from OpenClaw? hermes claw migrate imports these skills automatically. Then call /<skill-name> from any of your Hermes chat surfaces.
Any agent (skills CLI)
One command that works across Claude Code, Codex, Cursor, and any other agent that reads SKILL.md files:
npx skills add sergebulaev/facebook-skills
Found this useful? Star the repo. Curated Claude Code and Codex directories rank and gate by star count, so a star is what makes these skills findable for the next person. It is the only thing we ask. No signup, no email.
What you can do
Once installed, just ask Claude Code or Codex for help with your Facebook Page. The right skill activates automatically.
Write a short Page post:
"Write a short punchy Facebook Page post about our new weekend hours. Keep it under 80 characters."
Write a longer story post:
"Turn these notes into a story post about why we rebuilt the product three times."
Check a draft before posting:
"Audit this Page post for AI tells and the under-80 sweet spot: [paste your text]"
Reverse-engineer a high-share post:
"What hook does this Page post use? https://www.facebook.com/SomePage/posts/123 (I'll paste the text)"
Reply to comments on your Page:
"Draft replies to these comments on my latest Page post: [paste the comments]"
Plan your week:
"Plan a week of Facebook Page content. We're a local bakery launching a new menu."
Every skill shows you a draft first and waits for your OK. Nothing gets posted without your approval.
The 8 skills
| Skill | What it does |
|---|
| Post Writer | Drafts a short punchy Page post (favoring the under-80-char engagement sweet spot) or a longer story post, using a 2026 Facebook hook formula picked by goal: shares, comments, or reactions. Runs the humanizer pass before showing you the draft |
| Repurposer | Turns a LinkedIn post, X thread, blog, or newsletter into a native Page post: warms the tone, leads with a standalone claim above the "See more" fold, moves links to the first comment, and strips off-platform artifacts. Transforms, never copy-pastes |
| Humanizer | Removes the AI tells human readers react to: 2026 AI vocabulary scored by paragraph density, reveal bridges, staccato fragment stacks, stacked triads, performed sincerity, "We are thrilled to announce" corporate auto-pilot; caps em dashes at about one per 100 words instead of banning them. Does not promise to beat detectors (no edit reliably does). Bundles a --mode audit pre-publish check (under-80 sweet spot, hook, engagement bait, hashtag and emoji limits) |
| Hook Extractor | Reverse-engineers the hook from any high-share Page post. Maps it to one of the 10 Facebook formulas and returns a blank template you can fill |
| Engagement Drafter | Drafts replies to comments on your Page's posts in your voice. Publora has no Facebook comment endpoint, so the drafts come back as a copy-paste block to post in Facebook or Meta Business Suite |
| Content Planner | Creates a weekly Page plan with a short-to-story post mix, per-day hooks, posting times, a share-optimized goal balance, and a daily comment-reply target |
| Page Optimizer | Audits and rewrites the Page itself for 2026: Page name, username and vanity URL, profile picture and cover photo, Intro/About and category, the CTA button matched to your goal (Shop, Book, Sign Up, Contact), pinned post, tabs order, and contact/link fields. Turns a default Page into one that converts a visitor into a follower or a lead |
| Audience Insights | Reads a Page and its audience from real data (via Apify, no login): pulls any Page's public stats (followers, likes, category, intro) for you or a competitor, and pulls the commenters on a public post. Facebook hides who reacted or liked, so commenters are the engagement signal |
How posting works on a Facebook Page
Facebook Pages allow text-only, photo, link, and video posts (text-only is fully supported, unlike Instagram, TikTok, or YouTube). The single highest-engagement move is the short post: posts under 80 characters get a reported ~66% more engagement. So these skills lead with short, punchy lines and only reach for a longer story post when the material earns it.
Posting to a Page on the native Facebook Graph API means setting up a Meta Developer app, handling OAuth, managing 59-day page tokens, and tracking Graph API versioning. This bundle hands all of that to Publora: one create-post call publishes to your Page, and you can post to several Pages at once.
Optional: auto-post with Publora
By default, the skills draft content for you to copy-paste into your Facebook Page. If you want Claude Code or Codex to publish Page posts directly, connect Publora. It takes about 2 minutes.
What is Publora?
Publora is a publishing API that turns one create-post call into a Facebook Page post (and can cross-post the same content to LinkedIn, Instagram, X, Threads, and more), without you touching the Facebook Graph API.
Publora also ships official MCP skills (npx skills add publora/skills): one skill per platform, covering the publish side only. This bundle is the layer above them, adding the reading, the writing craft and the approval flow.
Setup (2 minutes)
Step 1. Sign up at https://app.publora.com/signup (free)
Step 2. Connect your Page: click Channels in the left sidebar, then Add Channel, pick Facebook, and authorize the Page (not a personal profile).
Step 3. Find your Platform ID: go to Channels, click your Facebook Page. The ID looks like facebook-112233445566. Copy the whole thing including facebook-. Each Page you manage has its own id.
Step 4. Get your API key: click Settings (gear icon, bottom-left), then API, then Create Key. Copy the sk_... string.
Step 5. Create a file called .env in the facebook-skills folder:
PUBLORA_API_KEY=sk_paste_your_key_here
FACEBOOK_PLATFORM_ID=facebook-paste_your_page_id_here
If you cloned the repo, copy the template instead:
cp .env.example .env
Then open .env and replace the placeholders with your real values.
Step 6. Install two small Python packages:
pip install requests python-dotenv
Step 7. Test it. Ask Claude Code or Codex:
"Schedule a test Page post via Publora 24 hours from now: 'testing the API connection, will cancel in dashboard'."
If Publora returns a postGroupId, you're set. Cancel the post in the Publora dashboard before the scheduled time. If you get HTTP 401, your API key is wrong. If you get an Invalid platform ID format error, your FACEBOOK_PLATFORM_ID is wrong. See Troubleshooting.
Note on comment replies: Facebook has no comment endpoint on Publora, so the Engagement Drafter always returns its drafts as a copy-paste block for you to post as replies yourself. Page posts auto-publish.
Optional: generate illustrations with Pixfaro
A post with a visual gets more reach. The Post Writer can generate a link-preview image or illustration and attach it automatically when publishing. Without a key it drafts the image prompt and asks you to generate it yourself, so nothing breaks.
Pixfaro is a single image API over multiple models (from flux-schnell at $0.004 to gpt-5-image). It composites your handle, brand color, or logo onto the image as a pixel-exact overlay, so a cheap base model still renders crisp text on a link image. Pull those brand fields from your Voice & Brand Profile (section 6) and every asset stays on-brand.