post-writer-sms

When the user wants to write a social media post for LinkedIn, Twitter/X, Threads, Bluesky, Facebook, Instagram, TikTok, Pinterest, or YouTube. Also use when…

INSTALLATION
npx skills add https://github.com/blacktwist/social-media-skills --skill post-writer-sms
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

$28

If the file does not exist, say:

"I don't see a social media context file yet. Run the social-media-context-sms skill first to capture your voice and preferences — it takes about 5 minutes and makes every post I write sound like you."

Input Gathering

Ask only for what the user has not already provided:

  • Topic or idea — or a rough draft you want refined
  • Target platform(s) — LinkedIn, Twitter/X, Threads, Bluesky, or multiple
  • Content type — educational, storytelling, promotional, engagement, or personal
  • Specific angle or CTA — what should the reader think, feel, or do?

If the user gives you a topic and a platform, start writing — don't over-ask.

Post Structure by Platform

LinkedIn

Format:

  • Hook (1-2 lines) — must earn the "see more" click; no throat-clearing
  • Body — line break every 1-2 sentences; white space is readability
  • CTA — question, directive, or invitation to engage

Specs:

  • 1200-1500 characters is the optimal range; under 3000 to avoid truncation in feed
  • No links in the post body — they suppress reach; drop the link in the first comment
  • 3-5 hashtags at the very end, after the CTA
  • First-person, specific, professional but not corporate
  • Personal stories + data hooks perform best here

Example structure:

[Hook line 1]

[Hook line 2 — optional]

[Point 1 or story beat]

[Point 2 or insight]

[Point 3 or proof]

[CTA — question or call to action]

#Hashtag1 #Hashtag2 #Hashtag3

Example LinkedIn post output:

The worst career advice I ever got: "Just keep your head down and do great work."

I did that for 3 years. Nobody noticed.

Then I started sharing what I learned — publicly, on LinkedIn.

Not because I'm an expert. Because documenting the process is the process.

Within 6 months:

→ 2 speaking invitations

→ 1 inbound job offer

→ A network that actually knows what I do

Great work matters. But invisible work stays invisible.

What's one thing you learned the hard way about visibility?

#careers #personalbrand #linkedin

Twitter / X

Format:

  • Hook → Core message → CTA — all in one tight unit
  • Under 280 characters for single tweets
  • Thread format if the idea needs more space (see thread-writer-sms)

Specs:

  • 0-2 hashtags maximum — hashtag stuffing kills reach on X
  • No fluff — cut every word that doesn't earn its place
  • Contrarian, bold, and question hooks get the most replies and quote-posts
  • Conversational > authoritative; punchy > polished

Threads

Format:

  • Conversational tone — write like you're texting a smart friend
  • Can run longer than a tweet with less structural pressure than LinkedIn
  • No established hashtag culture — skip them or use 1 at most

Specs:

  • 500-character limit per post (but posts can be standalone, not thread-format)
  • Relatable, human, a little raw — polish is suspicious here
  • Empathy and story-opener hooks land best on Threads
  • First-person specific experience outperforms advice-framing

Example Threads post output:

honestly the hardest part of content creation isn't writing.

it's hitting publish when you're not sure anyone cares.

the people who win are the ones who post anyway.

Bluesky

Format:

  • Concise, authentic, 300-character limit
  • Clever > corporate — the community is allergic to marketing language
  • Wit and genuine perspective outperform "growth hacks"

Specs:

  • No hashtag culture yet — skip them
  • Self-aware humor and dry observation perform well
  • Treat it like early Twitter — raw, real, direct
  • Contrarian and confession hooks fit the culture best

Visual-First Platforms

The platforms below are visual-first: an image or video carries the attention and the post copy is the supporting caption. The rules here cover the essentials for writing a single post on each one. **For deeper guidance on visual captions — including Reels, Shorts, photo carousels, and pin descriptions — use caption-writer-sms.**

Facebook

Format:

  • Conversational, story-driven, personal — Facebook rewards posts that read like a friend talking
  • Hook in line 1; truncation kicks in around 477 chars on desktop, ~120 chars on mobile
  • Links work in the body and are not suppressed the way they are on Instagram

Specs:

  • 40-80 characters is the soft sweet spot for highest engagement on photo posts; storytelling captions can run 300-500 chars
  • 1-3 hashtags max — only use them if branded or community-specific
  • Tag relevant Pages and people to boost reach into their networks
  • A direct question at the end consistently outperforms statements
  • Native video and personal stories outperform link drops

Instagram

Format:

  • The first 125 characters decide whether the rest gets read — caption truncates with "...more" after that on mobile
  • Hook in line 1 must do the work of a headline
  • Body builds on the visual; CTA closes on a save or share

Specs:

  • 2200 character limit; high performers span the full range — one-liners to mini-essays
  • 3-10 hashtags — mix branded, niche, and broader community tags; place at the end of the caption or in the first comment
  • No clickable links in captions — direct viewers to "link in bio" or use the Reels/Stories link sticker
  • Always write alt text in the accessibility settings for reach and accessibility
  • Tag collaborators, locations, and products to expand distribution
  • For Reels: caption is secondary to the on-screen hook; a tight written hook still drives saves and shares

Caption length by format: photo feed 80-300 chars, carousel 200-800 chars, Reel 100-300 chars, Story rarely read.

TikTok

Format:

  • The video carries the hook — the caption adds context, a punchline, or a search keyword
  • First line should reinforce or extend the on-screen hook
  • Conversational, low-polish, native voice — overproduced captions feel like ads

Specs:

  • 2200 character limit (expanded from 300 in 2022); most high-performers stay under 150 characters
  • 3-5 hashtags — mix one broad, one mid-tier niche, a few specific topical
  • TikTok SEO matters — the caption is indexed for in-app search; include keywords your audience would type
  • Mention sounds, trends, and creators when relevant
  • Listicle setups, curiosity gaps that finish in the video, and "Part 1" framing perform well

Pinterest

Format:

  • Pinterest is a search engine, not a social feed — copy is SEO text, not lifestyle prose
  • Pin title and description are separate fields and both matter
  • Hashtags are effectively ignored — rely on natural keywords

Specs:

  • Title: 100 char limit — front-load the primary keyword, write like a headline a searcher would click
  • Description: 500 char limit — natural, keyword-rich sentences describing what the pin is for and who it helps
  • Link goes in the dedicated link field, not in the caption
  • No emojis in titles (lowers click-through); 0-1 in description if it fits the tone
  • Long-tail framings — "small kitchen organization ideas for renters" beats "kitchen ideas"
  • "How to," "ideas for," "best [X] for [Y]" framings match how people search

YouTube

YouTube has three distinct post surfaces — long-form video, Shorts, and Community posts. Each plays by different rules.

Long-form video (title + description):

  • Title: 100 char limit; 60-70 chars is the sweet spot to avoid truncation. Front-load the primary keyword + a curiosity gap or specific number
  • Description: 5000 char limit. First 150 chars are the hook (above the "...more" fold). Below: 1-2 paragraph summary, timestamps/chapters, useful links, hashtags (3 max — first hashtag becomes the clickable tag above the title)
  • Pin a top comment for the primary CTA when description visibility isn't enough

Shorts:

  • Caption stays under 150 characters — Shorts are discovered via swipe, not search
  • Include #shorts for Shorts shelf eligibility
  • Soft CTA: "subscribe for more," "full video on my channel"

Community posts:

  • Text-first, similar tone to Facebook
  • Polls, questions, and quick context drive return visits when the next video drops
  • Optional image attachment

Specs across surfaces: 3 hashtags max in descriptions; specific numbers and "how I" framings perform well; clickbait that the video doesn't deliver gets punished by retention drop.

Writing Process

-

Select or generate a hook — use patterns from hook-writer-sms (contrarian, question, story opener, statistic, list preview, bold claim, empathy, before/after, confession). Match the hook pattern to the platform and content type.

-

Draft the post body — use the user's voice from the context file. Mirror their vocabulary, sentence rhythm, and punctuation habits. Do not impose a generic "expert" voice.

-

Add the CTA — make it specific to the content type:

  • Educational: "What would you add?"
  • Storytelling: "Has this happened to you?"
  • Promotional: "Link in comments / DM me [word]"
  • Engagement: open question that invites a reply
  • Personal: "Anyone else?"

-

Format for readability — use generous white space to make the post scannable and easy to read. Apply one of these spacing patterns:

Pattern A — Single-line rhythm:

Line 1

Line 2

Line 3

Line 4

Pattern B — Grouped rhythm (1-2-1 or similar):

Line 1

Line 2

Line 3

Line 4

The key rule: never stack more than 2-3 lines without an empty line break. Dense paragraphs kill engagement on every platform. When in doubt, add the line break — readers scroll past walls of text.

-

Apply platform-specific rules — hashtags, character limits, and link placement per platform.

-

Generate variants if requested — offer 2-3 versions with different hooks or angles when the user wants options.

Voice Matching

Pull from the user's example posts in the context file to match:

  • Vocabulary — do they use "I" or "we"? Formal or casual contractions? Technical terms or plain language?
  • Sentence length — short punchy sentences or longer flowing ones?
  • Punctuation habits — em dashes, ellipses, all-lowercase, no Oxford comma?
  • Emotional register — motivational, analytical, dry, warm, direct?
  • Structural patterns — do they always end with a question? Use numbered lists? Avoid bullet points?

If the context file has example posts, open with: "I'll match the style from your examples."

Publishing with BlackTwist

When the BlackTwist MCP tools are available, offer to publish or schedule the post directly:

"Want me to schedule this? I can queue it for your next available slot or pick a specific time."

Use create_post to publish. Pass the post body, platform, and scheduling time if provided.

When MCP tools are not available, output the post as formatted plain text ready to copy-paste, with a note about any link-in-comments action required.

Pre-Publish Checklist

Before delivering the final post, verify:

  • Hook is strong — would you stop scrolling for this line?
  • Voice is consistent — does it sound like the user, not a generic expert?
  • CTA is clear — does the reader know exactly what to do or think next?
  • Length is platform-appropriate — within spec for the target platform
  • No links in the LinkedIn or Instagram body — LinkedIn link goes in the first comment; Instagram link goes in bio
  • Hashtag count is correct — 3-5 LinkedIn, 0-2 X, 0-1 Threads, 0 Bluesky, 1-3 Facebook, 3-10 Instagram, 3-5 TikTok, 0 Pinterest, ≤3 YouTube
  • YouTube has chapters when a long-form video runs over ~3 minutes
  • Pinterest title and description are both filled, keyword-led, and link is set in the dedicated field
  • White space is readable — empty line after every 1-2 lines; no dense text blocks

Boundaries

  • Does not write multi-part threads — see thread-writer-sms for threaded content
  • Does not write carousels or slide decks — see carousel-writer-sms for slide-by-slide content
  • Does not analyze post performance or metrics — see performance-analyzer-sms for analytics
  • Does not define content strategy or decide what to post — see content-strategy-sms for planning
  • Does not execute code or access external APIs unless BlackTwist MCP is connected
  • Does not produce visual design or images — output is text copy only, ready to paste

Related Skills

  • social-media-context-sms — capture voice, pillars, and platform preferences before writing
  • caption-writer-sms — deeper guidance for visual-first captions (Facebook, Instagram, TikTok, Pinterest, YouTube)
  • hook-writer-sms — generate and test opening lines independently
  • platform-strategy-sms — decide which platform to prioritize before writing
  • content-repurposer-sms — adapt a finished post across multiple platforms
BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card