Fb Post Writer logo

Fb Post Writer

Community
sergebulaev
fb-post-writer

Draft a short punchy Facebook Page post, or a longer story post, using a 2026 Facebook hook formula (one-line opinion, tiny number, ask-the-page question, this-or-that, useful tip, story post) picked by goal (shares, comments, reactions). Favors the under-80-character engagement sweet spot, runs the humanizer pass, and publishes via Publora on approval. Use to write a Page post from notes. Not for replying to comments (use fb-engagement-drafter) or auditing a draft (use fb-humanizer).

Overview

Publishersergebulaev
Repositoryfacebook-skills
Skill namefb-post-writer
Stars
80
Forks
17
Bundled files
1
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 1 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by sergebulaev on GitHub. Read the source before you install it.

Installation

Install the Fb Post Writer AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/sergebulaev/facebook-skills/tree/main/skills/fb-post-writer
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/sergebulaev/facebook-skills.git /tmp/facebook-skills
mkdir -p .claude/skills
cp -r /tmp/facebook-skills/skills/fb-post-writer .claude/skills/fb-post-writer
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Fb Post Writer in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Fb Post Writer on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Fb Post Writer is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Facebook Page Post Writer

Ship a short punchy Page post, or a longer story post when the material earns it, using hook shapes that actually travel on a Facebook Page in 2026. The single highest-engagement move on a Page is the short post: posts under 80 characters get a reported ~66% engagement lift, so this skill leads short and only goes long on purpose.

When to use

  • User says "write me a Facebook Page post about X"
  • User has a topic or a rough line and wants a sharper, shorter hook
  • User wants to pick a proven Page-post shape and fill in their voice
  • User wants a quick draft that auto-publishes on approval

Formulas this skill uses

CodeFormulaPrimary goalBest for
FB1One-Line Opinionsharesa sharp, defensible take in one short line
FB2The Tiny Numbersharesone concrete number that reframes a thing
FB3Ask-the-Page Questioncommentsan easy, fun question the audience answers
FB4This-or-Thatcommentsa friendly binary choice readers pick a side on
FB5Relatable One-Linerreactionsa specific shared moment, no setup
FB6Behind-the-Scenesreactionsa real human moment inside the business
FB7Useful Tipsharesone usable tip the reader passes on
FB8Story Post with a Turnsharesa longer true story with a quotable turn
FB9Announcement with Stakessharesa launch or news, led human not corporate
FB10Community Spotlightsharesfeaturing a real customer or team member

Full skeletons in ../../references/hook-formulas.md. FB1-FB7 are short-post shapes (lead here). FB8-FB10 are longer story shapes (use on purpose).

Pick by goal first

GoalReach for
SharesFB1, FB2, FB7, FB8, FB9, FB10
CommentsFB3, FB4, FB8
ReactionsFB5, FB6

Steps

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.

Story bank next. If ../../references/story-bank.md has filled: yes, load it and take every concrete detail (numbers, dates, named projects, positions) from there instead of asking mid-draft. Never invent a figure, a date or a client name that is not in the bank or supplied by the user in this conversation. If the bank has nothing that fits, ask the user, or say once that fb-humanizer --mode interview fills it in 20 to 40 minutes. A draft with a plausible invented number is worse than a draft with none: one is vague, the other is a retraction.

  1. Gather inputs. Topic, angle, any rough draft, target audience (B2C / B2B / local / community), and the goal (shares / comments / reactions).
  2. Pick the container. Default to a short post (aim under 80 chars). If it is one opinion, number, question, or moment, it stays short. Only escalate to a story post (FB8-FB10) if the idea is a true narrative, a real launch, or a spotlight that needs room.
  3. Pick the formula. Use the goal table to shortlist, then suggest 2-3 that also fit the topic and let the user choose.
  4. Draft the post. Fill the skeleton in the user's voice. Respect the 2026 Facebook rules:
    • Lead short. Try to land the whole point under 80 chars.
    • First line carries the post (Facebook folds longer posts behind "See more").
    • One idea per post. Line breaks as beats.
    • 0-2 hashtags, 0-2 emoji, none on a serious take.
    • If the post includes a link, write framing text above it (Facebook builds a preview card) and warn that link posts reach fewer people organically.
  5. Humanizer pass. Scrub 2026 AI vocab by paragraph density, cap em dashes (about one per 100 words, never swap one for a period), strip "We are thrilled to announce" and every corporate opener, break stacked triads and reveal bridges. Fix only a story paragraph that reads machine-flat; never manufacture variance, and never fragment a short post for punch. Add an odd-precision number with a named referent or a named entity where the claim allows it. Canonical rules: fb-humanizer V3.
  6. Optional audit. Invoke fb-humanizer --mode audit for a pass-fail check.
  7. Approval card. Show: formula used, full draft, char count (flag if it crosses the 80-char sweet spot), suggested posting window, primary goal.
  8. On approval. Call 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.

Hard rules

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

  • Lead short. Default to under 80 chars; that is the engagement sweet spot. A long post is a deliberate choice for a story, not the fallback.
  • The first line must carry the post on its own (everything above the "See more" fold).
  • One specific number where the claim allows it. "4 minutes" beats "fast".
  • Never open with "We are thrilled / excited / delighted to announce".
  • Do not beg for engagement. Earn the share or comment with the post itself.

Anti-patterns (skill will refuse)

  • "We are thrilled to announce.." and every variant.
  • Engagement bait ("LIKE and SHARE if you agree", "comment YES", "tag 3 friends").
  • Em dashes above the cap (more than about one per 100 words), or an em dash swapped for a period.
  • "Here's what" or "Stop X, start Y" as the opener; "The result?" as a reveal.
  • Announced candor ("We'll be honest with you", "real talk") with no dated fact behind it.
  • Staccato stacks ("No X. No Y. Just Z.") and one-word lines added for drama.
  • Padding a one-line idea into five paragraphs.
  • Rule-of-three lists without specifics.
  • "leverage", "fundamentally", "game-changer", "deep dive".
  • A bare external link with no framing text.
  • 5+ hashtags stuffed at the bottom.

Resources

  • ../../references/hook-formulas.md - all 10 Facebook formula skeletons (FB1-FB7 short, FB8-FB10 story)
  • ../../references/algorithm-heuristics.md - 2026 Facebook Page ranking rules (signals, the under-80 boost, timing, limits)
  • references/short-post-checklist.md - the per-post scrub and the under-80 fit check

Optional illustration

Offer a generated image when a visual would lift reach. Draft a prompt and call lib.illustrate(prompt, kind="wide"), pulling brand handle/color from Voice & Brand Profile section 6 for a pixel-exact overlay. Show the returned url + cost, then attach on publish via media_urls=[url]. Full workflow (incl. quote-cards): ../fb-humanizer/sub-skills/illustration.md. No Pixfaro key -> it drafts the prompt for you to generate manually.

Related skills

  • fb-humanizer - aggressive AI-tell scrubber, plus --mode audit for review
  • fb-hook-extractor - reverse-engineer a hook from a Page post you admire
  • fb-content-planner - plan a week of these posts
  • fb-engagement-drafter - reply to the comments your post earns

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Fb Post Writer AI skill do?

Draft a short punchy Facebook Page post, or a longer story post, using a 2026 Facebook hook formula (one-line opinion, tiny number, ask-the-page question, this-or-that, useful tip, story post) picked by goal (shares, comments, reactions). Favors the under-80-character engagement sweet spot, runs the humanizer pass, and publishes via Publora on approval. Use to write a Page post from notes. Not for replying to comments (use fb-engagement-drafter) or auditing a draft (use fb-humanizer).

Why use Fb Post Writer on TypingMind?

Because you install it once and use it with any model. Fb Post Writer is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Fb Post Writer in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/sergebulaev/facebook-skills/tree/main/skills/fb-post-writer. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Fb Post Writer?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Fb Post Writer?

As many as you like. As long as a model supports skills, you can use Fb Post Writer with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Fb Post Writer AI skill free?

Yes. It is published on GitHub by sergebulaev under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇