Install the belt CLI skill: npx skills add belt-sh/cli
LinkedIn Content
Write high-engagement LinkedIn posts via inference.sh CLI.
Quick Start
Requires inference.sh CLI (belt). Install instructions
belt login
# Research trending LinkedIn content patterns
belt app run tavily/search-assistant --input '{
"query": "LinkedIn viral post examples 2024 high engagement patterns"
}'
# Post to X (cross-posting reference)
belt app run x/post-create --input '{
"text": "Your cross-posted version here"
}'
Post Anatomy
┌─────────────────────────────────────┐
│ HOOK (first 1-2 lines) │ ← Visible before "...see more"
│ │
│ ...see more ─────────────────────── │ ← The click gate
│ │
│ BODY (story/value) │
│ - Formatted with line breaks │
│ - Short paragraphs (1-2 sentences) │
│ - Lists or numbered points │
│ │
│ CTA (last 1-2 lines) │ ← Ask for engagement
│ │
│ #hashtags (3-5) │
└─────────────────────────────────────┘
Character Limits
| Element |
Limit |
| Post text |
3,000 characters |
| Visible before "see more" |
210 characters (2 lines on mobile) |
| Hashtags |
3-5 recommended |
| Comment |
1,250 characters |
| Article title |
100 characters |
| Article body |
125,000 characters |
The first 210 characters are everything. If the hook fails, nobody clicks "see more."
Hook Formulas
What Works
| Formula |
Example |
| Contrarian opinion |
"Unpopular opinion: code reviews are a waste of time." |
| Personal story opening |
"I got fired on a Tuesday. Best thing that ever happened." |
| Surprising stat |
"92% of startups fail. But not for the reason you think." |
| List promise |
"I've hired 200+ engineers. Here are 5 red flags I look for." |
| Bold statement |
"Your resume doesn't matter. Here's what does." |
| Before/after |
"3 years ago I couldn't get a single interview. Yesterday I turned down a FAANG offer." |
| Pattern interrupt |
"Stop. Before you send that cold email, read this." |
What Fails
❌ "Excited to announce that we are pleased to share..." (corporate speak)
❌ "In today's rapidly evolving landscape..." (cliché, says nothing)
❌ "I'd like to take a moment to..." (slow, no hook)
❌ "Just published a new blog post!" (no value proposition)
❌ Starting with a hashtag or emoji
Formatting Rules
Line Breaks Are Your Best Friend
❌ Dense paragraph:
"I learned something important about leadership last week. My team was struggling with a deadline and instead of pushing harder, I decided to remove scope. The result was incredible — we shipped faster and the quality was better. Sometimes less really is more."
✅ Formatted for LinkedIn:
"I learned something about leadership last week.
My team was struggling with a deadline.
Instead of pushing harder, I removed scope.
The result?
We shipped faster.
And the quality was BETTER.
Sometimes less really is more."
Formatting Guidelines
| Rule |
Why |
| One sentence per line |
Easier to scan on mobile |
| Blank line between paragraphs |
Visual breathing room |
| Short paragraphs (1-2 sentences) |
Mobile readability |
| Use line breaks for dramatic effect |
Creates pacing and suspense |
| Bold key phrases sparingly |
Draws eye to important points |
| Numbered lists for tips |
Scannable, shareable |
| Avoid walls of text |
Nobody reads them |
Post Types (Ranked by Engagement)
| Post Type |
Engagement |
Best For |
| Personal story + lesson |
Very High |
Building connection, authenticity |
| Contrarian take |
High |
Starting conversations, visibility |
| Carousel (document post) |
High |
Educational content, tips |
| List/tips (numbered) |
High |
Actionable value, saves |
| Poll |
Medium-High |
Easy engagement, data gathering |
| Photo + story |
Medium |
Humanizing, events |
| Video (native) |
Medium |
Demonstrations, personality |
| Link post |
Low |
Driving traffic (algorithm penalizes) |
| Reshare |
Very Low |
Don't bother — write original |
Link Posts Strategy
LinkedIn penalizes posts with links (reduces reach). Workarounds:
- Comment method: Post without link, add link as first comment, edit post to say "Link in comments"
- No-link method: Summarize the content in the post itself, mention "DM for link"
- If you must link: Put it at the very end, after strong standalone content
Content Pillars
Every LinkedIn creator should have 3-5 pillars they rotate through:
| Pillar |
What It Covers |
Example |
| Expertise |
Industry knowledge, how-tos |
"5 database patterns every engineer should know" |
| Stories |
Personal experiences, failures, wins |
"The hardest feedback I ever received" |
| Opinions |
Takes on industry trends, contrarian views |
"AI won't replace engineers. Bad managers will." |
| Behind the scenes |
Building in public, process |
"Here's our actual sprint retrospective format" |
| Curated insights |
Trends, data, research summaries |
"I analyzed 500 job postings. Here's what changed." |
Algorithm Signals
| Signal |
Impact |
How |
| Dwell time |
Very High |
Longer posts that people read fully |
| Comments |
Very High |
Ask questions, create discussion |
| Saves |
High |
Actionable, reference-worthy content |
| "See more" clicks |
High |
Strong hook that makes people expand |
| Shares |
Medium |
Relatable, quotable content |
| Reactions |
Medium |
Easy to get but weighted less |
| External links |
Negative |
Reduces reach — put links in comments |
| Editing after posting |
Negative |
Don't edit within first hour |
| Posting frequency |
3-5x/week |
Daily is fine, more than 1/day hurts |
Posting Schedule
| Day |
Best Time (your audience's timezone) |
| Tuesday-Thursday |
7-8 AM, 12 PM, 5-6 PM |
| Monday |
8 AM (people catching up) |
| Friday |
7-8 AM (before checkout) |
| Weekend |
Skip or light content |
Engage in comments for 30-60 minutes after posting — this is more important than the post itself.
Visual Content
# Generate a visual for a LinkedIn post
belt app run infsh/html-to-image --input '{
"html": "<div style=\"width:1080px;height:1080px;background:#0f172a;display:flex;align-items:center;justify-content:center;padding:80px;font-family:system-ui;color:white;text-align:center\"><div><h1 style=\"font-size:56px;font-weight:900;line-height:1.2;margin:0\">The best code is the code you don't write</h1><p style=\"font-size:22px;opacity:0.5;margin-top:24px\">— Every senior engineer</p></div></div>"
}'
# Generate a professional photo for a personal post
belt app run falai/flux-dev-lora --input '{
"prompt": "candid professional photo, person speaking at a conference podium, audience in background blurred, natural stage lighting, authentic moment, corporate event photography",
"width": 1200,
"height": 900
}'
CTA Formulas
End every post with engagement driver:
| CTA Type |
Example |
| Question |
"What's the worst career advice you've received?" |
| Agreement check |
"Agree or disagree?" |
| Share request |
"Repost if this resonates ♻️" |
| Save prompt |
"Save this for your next [situation] 🔖" |
| Recommendation ask |
"What would you add to this list?" |
| Experience ask |
"Has this happened to you?" |
Common Mistakes
| Mistake |
Problem |
Fix |
| Weak hook |
Nobody clicks "see more" |
Use hook formulas above |
| Wall of text |
Unreadable on mobile |
One sentence per line, blank lines between |
| Links in main post |
Algorithm reduces reach |
Put links in first comment |
| Too many hashtags |
Looks spammy |
3-5 relevant hashtags max |
| Corporate jargon |
"Leveraging synergies" = instant scroll past |
Write like you talk |
| Only self-promotion |
Audience stops engaging |
80% value, 20% promotion |
| No CTA |
No engagement direction |
Always end with a question or ask |
| Resharing without adding |
Near-zero reach |
Write original posts, quote instead |
| Posting and disappearing |
Kills comment momentum |
Engage for 30-60 min after posting |
| Being generic |
"Hard work pays off" = invisible |
Specific stories and data |
Related Skills
npx skills add inference-sh/skills@social-media-carousel
npx skills add inference-sh/skills@content-repurposing
npx skills add inference-sh/skills@twitter-thread-creation
Browse all apps: belt app store
1---2name: linkedin-content3description: LinkedIn post writing with hook formulas, formatting rules, and engagement patterns. Covers post types, algorithm signals, character limits, and content pillars. Use for: LinkedIn posts, professional content, thought leadership, B2B content, personal branding. Triggers: linkedin post, linkedin content, linkedin writing, linkedin strategy, linkedin engagement, linkedin algorithm, linkedin hook, linkedin formatting, thought leadership, professional content, b2b content, linkedin growth4---56> **Install the belt CLI skill:** `npx skills add belt-sh/cli`78# LinkedIn Content910Write high-engagement LinkedIn posts via [inference.sh](https://inference.sh) CLI.1112## Quick Start1314> Requires inference.sh CLI (`belt`). [Install instructions](https://raw.githubusercontent.com/inference-sh/skills/refs/heads/main/cli-install.md)1516```bash17belt login1819# Research trending LinkedIn content patterns20belt app run tavily/search-assistant --input '{21 "query": "LinkedIn viral post examples 2024 high engagement patterns"22}'2324# Post to X (cross-posting reference)25belt app run x/post-create --input '{26 "text": "Your cross-posted version here"27}'28```293031## Post Anatomy3233```34┌─────────────────────────────────────┐35│ HOOK (first 1-2 lines) │ ← Visible before "...see more"36│ │37│ ...see more ─────────────────────── │ ← The click gate38│ │39│ BODY (story/value) │40│ - Formatted with line breaks │41│ - Short paragraphs (1-2 sentences) │42│ - Lists or numbered points │43│ │44│ CTA (last 1-2 lines) │ ← Ask for engagement45│ │46│ #hashtags (3-5) │47└─────────────────────────────────────┘48```4950## Character Limits5152| Element | Limit |53|---------|-------|54| Post text | 3,000 characters |55| Visible before "see more" | ~210 characters (~2 lines on mobile) |56| Hashtags | 3-5 recommended |57| Comment | 1,250 characters |58| Article title | 100 characters |59| Article body | 125,000 characters |6061**The first 210 characters are everything.** If the hook fails, nobody clicks "see more."6263## Hook Formulas6465### What Works6667| Formula | Example |68|---------|---------|69| Contrarian opinion | "Unpopular opinion: code reviews are a waste of time." |70| Personal story opening | "I got fired on a Tuesday. Best thing that ever happened." |71| Surprising stat | "92% of startups fail. But not for the reason you think." |72| List promise | "I've hired 200+ engineers. Here are 5 red flags I look for." |73| Bold statement | "Your resume doesn't matter. Here's what does." |74| Before/after | "3 years ago I couldn't get a single interview. Yesterday I turned down a FAANG offer." |75| Pattern interrupt | "Stop. Before you send that cold email, read this." |7677### What Fails7879```80❌ "Excited to announce that we are pleased to share..." (corporate speak)81❌ "In today's rapidly evolving landscape..." (cliché, says nothing)82❌ "I'd like to take a moment to..." (slow, no hook)83❌ "Just published a new blog post!" (no value proposition)84❌ Starting with a hashtag or emoji85```8687## Formatting Rules8889### Line Breaks Are Your Best Friend9091```92❌ Dense paragraph:93"I learned something important about leadership last week. My team was struggling with a deadline and instead of pushing harder, I decided to remove scope. The result was incredible — we shipped faster and the quality was better. Sometimes less really is more."9495✅ Formatted for LinkedIn:96"I learned something about leadership last week.9798My team was struggling with a deadline.99100Instead of pushing harder, I removed scope.101102The result?103104We shipped faster.105And the quality was BETTER.106107Sometimes less really is more."108```109110### Formatting Guidelines111112| Rule | Why |113|------|-----|114| One sentence per line | Easier to scan on mobile |115| Blank line between paragraphs | Visual breathing room |116| Short paragraphs (1-2 sentences) | Mobile readability |117| Use line breaks for dramatic effect | Creates pacing and suspense |118| Bold key phrases sparingly | Draws eye to important points |119| Numbered lists for tips | Scannable, shareable |120| Avoid walls of text | Nobody reads them |121122## Post Types (Ranked by Engagement)123124| Post Type | Engagement | Best For |125|-----------|-----------|----------|126| **Personal story + lesson** | Very High | Building connection, authenticity |127| **Contrarian take** | High | Starting conversations, visibility |128| **Carousel (document post)** | High | Educational content, tips |129| **List/tips (numbered)** | High | Actionable value, saves |130| **Poll** | Medium-High | Easy engagement, data gathering |131| **Photo + story** | Medium | Humanizing, events |132| **Video (native)** | Medium | Demonstrations, personality |133| **Link post** | Low | Driving traffic (algorithm penalizes) |134| **Reshare** | Very Low | Don't bother — write original |135136### Link Posts Strategy137138LinkedIn penalizes posts with links (reduces reach). Workarounds:1391401. **Comment method**: Post without link, add link as first comment, edit post to say "Link in comments"1412. **No-link method**: Summarize the content in the post itself, mention "DM for link"1423. **If you must link**: Put it at the very end, after strong standalone content143144## Content Pillars145146Every LinkedIn creator should have 3-5 pillars they rotate through:147148| Pillar | What It Covers | Example |149|--------|---------------|---------|150| **Expertise** | Industry knowledge, how-tos | "5 database patterns every engineer should know" |151| **Stories** | Personal experiences, failures, wins | "The hardest feedback I ever received" |152| **Opinions** | Takes on industry trends, contrarian views | "AI won't replace engineers. Bad managers will." |153| **Behind the scenes** | Building in public, process | "Here's our actual sprint retrospective format" |154| **Curated insights** | Trends, data, research summaries | "I analyzed 500 job postings. Here's what changed." |155156## Algorithm Signals157158| Signal | Impact | How |159|--------|--------|-----|160| **Dwell time** | Very High | Longer posts that people read fully |161| **Comments** | Very High | Ask questions, create discussion |162| **Saves** | High | Actionable, reference-worthy content |163| **"See more" clicks** | High | Strong hook that makes people expand |164| **Shares** | Medium | Relatable, quotable content |165| **Reactions** | Medium | Easy to get but weighted less |166| **External links** | Negative | Reduces reach — put links in comments |167| **Editing after posting** | Negative | Don't edit within first hour |168| **Posting frequency** | 3-5x/week | Daily is fine, more than 1/day hurts |169170## Posting Schedule171172| Day | Best Time (your audience's timezone) |173|-----|------|174| Tuesday-Thursday | 7-8 AM, 12 PM, 5-6 PM |175| Monday | 8 AM (people catching up) |176| Friday | 7-8 AM (before checkout) |177| Weekend | Skip or light content |178179**Engage in comments for 30-60 minutes after posting** — this is more important than the post itself.180181## Visual Content182183```bash184# Generate a visual for a LinkedIn post185belt app run infsh/html-to-image --input '{186 "html": "<div style=\"width:1080px;height:1080px;background:#0f172a;display:flex;align-items:center;justify-content:center;padding:80px;font-family:system-ui;color:white;text-align:center\"><div><h1 style=\"font-size:56px;font-weight:900;line-height:1.2;margin:0\">The best code is the code you don't write</h1><p style=\"font-size:22px;opacity:0.5;margin-top:24px\">— Every senior engineer</p></div></div>"187}'188189# Generate a professional photo for a personal post190belt app run falai/flux-dev-lora --input '{191 "prompt": "candid professional photo, person speaking at a conference podium, audience in background blurred, natural stage lighting, authentic moment, corporate event photography",192 "width": 1200,193 "height": 900194}'195```196197## CTA Formulas198199End every post with engagement driver:200201| CTA Type | Example |202|----------|---------|203| Question | "What's the worst career advice you've received?" |204| Agreement check | "Agree or disagree?" |205| Share request | "Repost if this resonates ♻️" |206| Save prompt | "Save this for your next [situation] 🔖" |207| Recommendation ask | "What would you add to this list?" |208| Experience ask | "Has this happened to you?" |209210## Common Mistakes211212| Mistake | Problem | Fix |213|---------|---------|-----|214| Weak hook | Nobody clicks "see more" | Use hook formulas above |215| Wall of text | Unreadable on mobile | One sentence per line, blank lines between |216| Links in main post | Algorithm reduces reach | Put links in first comment |217| Too many hashtags | Looks spammy | 3-5 relevant hashtags max |218| Corporate jargon | "Leveraging synergies" = instant scroll past | Write like you talk |219| Only self-promotion | Audience stops engaging | 80% value, 20% promotion |220| No CTA | No engagement direction | Always end with a question or ask |221| Resharing without adding | Near-zero reach | Write original posts, quote instead |222| Posting and disappearing | Kills comment momentum | Engage for 30-60 min after posting |223| Being generic | "Hard work pays off" = invisible | Specific stories and data |224225## Related Skills226227```bash228npx skills add inference-sh/skills@social-media-carousel229npx skills add inference-sh/skills@content-repurposing230npx skills add inference-sh/skills@twitter-thread-creation231```232233Browse all apps: `belt app store`234