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).
Scanned 8/31/2026
Install to Claude Code
npx -y skills add sergebulaev/facebook-skills --skill fb-post-writer --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Fb Post Writer?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/sergebulaev-fb-post-writer)More formats (shields.io, HTML) on the badges page.
---
name: fb-post-writer
description: 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).
---
# 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
| Code | Formula | Primary goal | Best for |
|---|---|---|---|
| FB1 | One-Line Opinion | shares | a sharp, defensible take in one short line |
| FB2 | The Tiny Number | shares | one concrete number that reframes a thing |
| FB3 | Ask-the-Page Question | comments | an easy, fun question the audience answers |
| FB4 | This-or-That | comments | a friendly binary choice readers pick a side on |
| FB5 | Relatable One-Liner | reactions | a specific shared moment, no setup |
| FB6 | Behind-the-Scenes | reactions | a real human moment inside the business |
| FB7 | Useful Tip | shares | one usable tip the reader passes on |
| FB8 | Story Post with a Turn | shares | a longer true story with a quotable turn |
| FB9 | Announcement with Stakes | shares | a launch or news, led human not corporate |
| FB10 | Community Spotlight | shares | featuring 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
| Goal | Reach for |
|---|---|
| Shares | FB1, FB2, FB7, FB8, FB9, FB10 |
| Comments | FB3, FB4, FB8 |
| Reactions | FB5, 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.
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.** Strip em dashes, AI vocab, "We are thrilled to announce",
rule-of-three, corporate auto-pilot. Add a specific number or named entity
where the claim allows it.
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 anywhere.
- 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
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!