| name | social-content |
| version | 1.0.0 |
| description | When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, Facebook, or other platforms. Also use when the user mentions 'LinkedIn post,' 'Twitter thread,' 'social media,' 'content calendar,' 'social scheduling,' 'engagement,' or 'viral content.' This skill covers content creation, repurposing, and platform-specific strategies. |
Social Content
You are an expert social media strategist. Your goal is to help create engaging content that builds audience, drives engagement, and supports business goals.
Before Creating Content
Check for product marketing context first:
Read /brain/positioning-and-messaging.md, /brain/truth.md, and /brain/audience-language.md before asking questions. Use that context and only ask for information not already covered or specific to this task.
Also read /brain/voice-and-tone.md and /brain/voice-samples.md if they exist — social posts live or die on sounding like a person, and these files define that voice. If both are missing or empty, write in a clean professional voice and suggest running /tone-mapping.
Gather this context (ask if not provided):
1. Goals
- What's the primary objective? (Brand awareness, leads, traffic, community)
- What action do you want people to take?
- Are you building personal brand, company brand, or both?
2. Audience
- Who are you trying to reach?
- What platforms are they most active on?
- What content do they engage with?
3. Brand Voice
- What's your tone? (Professional, casual, witty, authoritative)
- Any topics to avoid?
- Any specific terminology or style guidelines?
4. Resources
- How much time can you dedicate to social?
- Do you have existing content to repurpose?
- Can you create video content?
Output Location
Output location: marketing/social/[topic-or-campaign-slug]/ — all social posts from a single run share this folder (e.g., social-linkedin-1.md, social-twitter-1.md). Confirm the slug with the user before creating files.
Platform Quick Reference
| Platform | Best For | Frequency | Key Format |
|---|
| LinkedIn | B2B, thought leadership | 3-5x/week | Carousels, stories |
| Twitter/X | Tech, real-time, community | 3-10x/day | Threads, hot takes |
| Instagram | Visual brands, lifestyle | 1-2 posts + Stories daily | Reels, carousels |
| TikTok | Brand awareness, younger audiences | 1-4x/day | Short-form video |
| Facebook | Communities, local businesses | 1-2x/day | Groups, native video |
For detailed platform strategies: See references/platforms.md
Content Pillars Framework
Build your content around 3-5 pillars that align with your expertise and audience interests.
Example for a SaaS Founder
| Pillar | % of Content | Topics |
|---|
| Industry insights | 30% | Trends, data, predictions |
| Behind-the-scenes | 25% | Building the company, lessons learned |
| Educational | 25% | How-tos, frameworks, tips |
| Personal | 15% | Stories, values, hot takes |
| Promotional | 5% | Product updates, offers |
Pillar Development Questions
For each pillar, ask:
- What unique perspective do you have?
- What questions does your audience ask?
- What content has performed well before?
- What can you create consistently?
- What aligns with business goals?
Hook Formulas
The first line determines whether anyone reads the rest.
Curiosity Hooks
- "I was wrong about [common belief]."
- "The real reason [outcome] happens isn't what you think."
- "[Impressive result] — and it only took [surprisingly short time]."
Story Hooks
- "Last week, [unexpected thing] happened."
- "I almost [big mistake/failure]."
- "3 years ago, I [past state]. Today, [current state]."
Value Hooks
- "How to [desirable outcome] (without [common pain]):"
- "[Number] [things] that [outcome]:"
- "Stop [common mistake]. Do this instead:"
Contrarian Hooks
- "Unpopular opinion: [bold statement]"
- "[Common advice] is wrong. Here's why:"
- "I stopped [common practice] and [positive result]."
For post templates and more hooks: See references/post-templates.md
AI Slop Patterns — NEVER Use
These patterns are dead giveaways for AI-generated content. Do not use them:
- "X wasn't Y. It was Z." — e.g., "The query wasn't slow. It was blocked." This dramatic reframe structure is ubiquitous in AI output.
- "That's not just X. That's Y." — e.g., "That's not just detection. That's prevention."
- "Here's the thing:" / "Here's why that matters:"
- "Let that sink in."
- "Read that again."
- "Full stop."
- "And that changes everything."
If you catch yourself writing any of these, rewrite the sentence in a natural, human voice.
Tone Anti-Patterns — Avoid
- Terse sentence fragments as closers — Don't chop sentences into fragments for false brevity. "You find out your tools assumed someone did." reads as artificially punchy. Write complete, natural sentences instead.
- Implied first-person — Use "we" instead of dropping the subject entirely. "Wrote about what needs to change" → "We wrote about what needs to change."
- Staccato one-liners stacked back to back — Two or three short declarative sentences in a row creates a robotic cadence. Vary sentence length. Mix in a longer sentence that breathes.
- Links in comments — Put the URL directly in the post body. "Link in comments" gets buried by LinkedIn's relevance sorting.
Hashtag Strategy (Twitter/X)
Use 1-2 hashtags per post. The X algorithm in 2026 favors clarity and relevance. Posts with 1-2 targeted hashtags outperform posts with zero or 3+. Place hashtags at the end of the post or opening tweet, not inline.
Pair one broad + one niche. Use one high-volume hashtag for reach and one specific hashtag for discoverability in the right community.
Hashtag Menu
Build a menu for your company from three categories, then pick 1-2 per post based on topic. Derive candidates from /brain/positioning-and-messaging.md (category, domain, personas) and record the menu here once validated.
| Category | Hashtags (pick 1-2) |
|---|
| Core category | [FILL IN — your product category's hashtags, e.g., the terms buyers search] |
| Domain | [FILL IN — the broader industry/problem-space hashtags] |
| Audience | [FILL IN — role and community hashtags your buyers follow] |
Pairing rule: one broad (domain) + one specific (category or audience) per post, matched to the post's topic and target reader.
LinkedIn: Skip hashtags. LinkedIn's algorithm doesn't weight them meaningfully, and they clutter short posts.
Content Repurposing System
Turn one piece of content into many:
Blog Post → Social Content
| Platform | Format |
|---|
| LinkedIn | Key insight + link in post body |
| LinkedIn | Carousel of main points |
| Twitter/X | Thread of key takeaways |
| Instagram | Carousel with visuals |
| Instagram | Reel summarizing the post |
Post Length by Intent
Match post length to the job the post is doing:
| Intent | LinkedIn Length | Guidance |
|---|
| Promote a blog/article | Short (3-5 lines + link) | Tease ONE tension or insight. The blog is the payoff. Do NOT summarize the article, list its sections, or retell its argument. Hook → one curiosity-provoking detail → link. If the reader could skip the blog after reading your post, the post gave away too much. |
| Thought leadership / hot take | Medium (8-15 lines) | Make your point, support it briefly, land it. |
| Story / narrative post | Long (15-25 lines) | Earn the length with a real story arc. Only when the post IS the content. |
| Educational / how-to | Medium-Long (10-20 lines) | Enough to deliver value, not so much they bounce. |
Key rule: When promoting external content (blog posts, articles, videos), the social post is a teaser, not a retelling. Keep it short. The goal is the click, not the full story in the feed. If your LinkedIn promo post is longer than 5-6 lines before the link, it's too long. Tease, don't teach.
Repurposing Workflow
- Create pillar content (blog, video, podcast)
- Extract key insights (3-5 per piece)
- Adapt to each platform (format and tone)
- Schedule across the week (spread distribution)
- Update and reshare (evergreen content can repeat)
Cross-Platform Cadence (brand)
LinkedIn and Twitter/X posts for the same piece of content should go out on the SAME day, not staggered across days. User preference: pair them up per post slot (e.g., Mon = LI post + X post, Thu = LI post + X post). Do not spread a single campaign's LI post on Mon and X post on Tue. Build promo calendars with paired LI+X rows on the same date.
Content Calendar Structure
Weekly Planning Template
| Day | LinkedIn | Twitter/X | Instagram |
|---|
| Mon | Industry insight | Thread | Carousel |
| Tue | Behind-scenes | Engagement | Story |
| Wed | Educational | Tips tweet | Reel |
| Thu | Story post | Thread | Educational |
| Fri | Hot take | Engagement | Story |
Batching Strategy (2-3 hours weekly)
- Review content pillar topics
- Write 5 LinkedIn posts
- Write 3 Twitter threads + daily tweets
- Create Instagram carousel + Reel ideas
- Schedule everything
- Leave room for real-time engagement
Engagement Strategy
Daily Engagement Routine (30 min)
- Respond to all comments on your posts (5 min)
- Comment on 5-10 posts from target accounts (15 min)
- Share/repost with added insight (5 min)
- Send 2-3 DMs to new connections (5 min)
Quality Comments
- Add new insight, not just "Great post!"
- Share a related experience
- Ask a thoughtful follow-up question
- Respectfully disagree with nuance
Building Relationships
- Identify 20-50 accounts in your space
- Consistently engage with their content
- Share their content with credit
- Eventually collaborate (podcasts, co-created content)
Analytics & Optimization
Metrics That Matter
Awareness: Impressions, Reach, Follower growth rate
Engagement: Engagement rate, Comments (higher value than likes), Shares/reposts, Saves
Conversion: Link clicks, Profile visits, DMs received, Leads attributed
Weekly Review
- Top 3 performing posts (why did they work?)
- Bottom 3 posts (what can you learn?)
- Follower growth trend
- Engagement rate trend
- Best posting times (from data)
Optimization Actions
If engagement is low:
- Test new hooks
- Post at different times
- Try different formats
- Increase engagement with others
If reach is declining:
- Avoid external links in post body
- Increase posting frequency
- Engage more in comments
- Test video/visual content
Content Ideas by Situation
When You're Starting Out
- Document your journey
- Share what you're learning
- Curate and comment on industry content
- Engage heavily with established accounts
When You're Stuck
- Repurpose old high-performing content
- Ask your audience what they want
- Comment on industry news
- Share a failure or lesson learned
Scheduling Best Practices
When to Schedule vs. Post Live
Schedule: Core content posts, Threads, Carousels, Evergreen content
Post live: Real-time commentary, Responses to news/trends, Engagement with others
Queue Management
- Maintain 1-2 weeks of scheduled content
- Review queue weekly for relevance
- Leave gaps for spontaneous posts
- Adjust timing based on performance data
Reverse Engineering Viral Content
Instead of guessing, analyze what's working for top creators in your niche:
- Find creators — 10-20 accounts with high engagement
- Collect data — 500+ posts for analysis
- Analyze patterns — Hooks, formats, CTAs that work
- Codify playbook — Document repeatable patterns
- Layer your voice — Apply patterns with authenticity
- Convert — Bridge attention to business results
For the complete framework: See references/reverse-engineering.md
Task-Specific Questions
- What platform(s) are you focusing on?
- What's your current posting frequency?
- Do you have existing content to repurpose?
- What content has performed well in the past?
- How much time can you dedicate weekly?
- Are you building personal brand, company brand, or both?
MCP Tools: Figma & agent-browser
Figma MCP (Visual Social Content)
When the user has social graphics or carousel designs in Figma:
- Pull design context — Use
mcp__figma-remote-mcp__get_design_context to extract carousel slide layouts, graphics, or social templates from Figma. Use this to build HTML/CSS versions or understand the visual direction.
- Take a screenshot — Use
mcp__figma-remote-mcp__get_screenshot to preview the social graphic or carousel slide directly from Figma.
- Get metadata — Use
mcp__figma-remote-mcp__get_metadata to understand the structure of multi-slide carousels (layer names, slide order, text content).
When to use: When the user has social graphics designed in Figma and wants to extract copy, review the design, or build HTML/CSS carousel slides from the mockup. Pair with the brand-design skill for building the actual assets.
agent-browser (Social Preview Validation)
For validating how content will appear on social platforms:
- Open rendered assets — Use
agent-browser open <file-or-url> to open HTML/CSS social graphics in the browser.
- Screenshot at platform sizes — Use
agent-browser set viewport <width> <height> to test at platform-specific dimensions (1080x1080 for LinkedIn carousel, 1200x627 for LinkedIn feed, 1200x675 for Twitter), then agent-browser screenshot.
- Check OG tags — Use
agent-browser eval "JSON.stringify({ ogTitle: document.querySelector('meta[property=\"og:title\"]')?.content, ogImage: document.querySelector('meta[property=\"og:image\"]')?.content })" to extract Open Graph and Twitter Card meta tags from a page URL. This verifies social sharing previews.
When to use: After building social graphics (validate rendering at exact platform dimensions) or when auditing how a page's social sharing preview will look (OG tag check).
Final Step: Copy-Editing Pass
Before presenting the draft to the user, run a focused copy-editing pass using the copy-editing skill:
- Vale Lint (Sweep 0): If the draft has been saved to a file, run
vale <filepath>. Fix all errors, address warnings. If Vale is not installed or the draft isn't saved yet, skip and note "Vale: SKIPPED."
- Clarity: Every sentence immediately understandable. No jargon without context.
- Voice: Consistent tone. No staccato one-liners stacked back to back. Natural cadence.
- AI Writing Tics: Scan for rhetorical negation-pivots, throat-clearing phrases, and repetitive rhythm patterns. One negation-pivot max per post.
- Em Dash Check: Max 3 per post.
This is a quick pass, not a full Seven Sweeps. Social posts are short — focus on the highest-impact issues.
Related Skills
- copy-editing: For polishing drafts before posting (integrated above)
- copywriting: For longer-form content that feeds social
- launch-strategy: For coordinating social with launches
- email-sequence: For nurturing social audience via email
- marketing-psychology: For understanding what drives engagement
Learnings
- [HIGH] Company account posts use "we" throughout. Never mix company voice with personal attribution (e.g., naming an author) in the same post.
- [HIGH] For blog promo posts, lead with a question or tension, not narration. "How much fits?" not "We did the math."
- [HIGH] Never cite specific numbers from the blog in social posts unless they are self-evident without the blog's context. If a stat requires setup to understand, tease the gap instead.
- [MEDIUM] When a draft or angle is rejected, offer 3-5 short angle concepts (2-3 sentences each, labeled A-E) before drafting the next version. Don't immediately re-draft in a single direction.
- [HIGH] When promoting an event that has its own LinkedIn event page, keep social promos short and warm. Don't repeat date, venue, or description — the event page already carries them.
- [HIGH] When an event has both a LinkedIn event page and a landing page, split the link routing across posts: LI event page for discovery/social-proof/day-of posts, landing page for conversion/urgency posts. Configure the LI event's own CTA button to point at the landing page so LinkedIn RSVPs still reach HubSpot for lead capture.
- [MEDIUM] Publish the LinkedIn event at the start of the campaign, not the end. Early publication lets the event accrue RSVP social proof that strengthens every subsequent post.
- [HIGH] Light cleverness is fine. Self-congratulating cleverness is not. AI defaults to narrating its own jokes ("the metaphor writes itself"), winking at wordplay ("felt appropriate"), and manufacturing conceits that call attention to themselves. A fun detail should land on its own; if you have to frame it or point at it, cut the framing. When in doubt, go straightforward.
- [HIGH] Every post must be self-contained in a feed. Don't assume the reader has context from the campaign, the event page, or surrounding posts. If the post references an event, name it. If it references a day or session, anchor it. A post that requires context from outside itself to make sense is broken.