Generate platform-specific social post variants (Twitter/X, LinkedIn, Reddit) from one source input. Works with or without Node.js script. Includes platform reasoning, quality review, and guardrails against cross-posting spam.
Transform one source message into platform-ready social copy for Twitter/X, LinkedIn, and Reddit.
This skill works two ways:
generate.js for deterministic, automated outputDetect from context or ask: "One platform, all platforms, or all platforms with variants?"
| Mode | What you get | Best for |
|---|---|---|
quick | 1 platform (user picks), optimized variant | Testing a single channel |
standard | All 3 platforms: Twitter, LinkedIn, Reddit | Standard cross-platform post |
deep | All platforms + 3 variants each + A/B test guidance | Campaign testing, maximizing reach |
Default: standard — use quick if they specify a platform. Use deep if they're running a content campaign and want options.
Ask these before writing a single word of copy:
- Source message: What's the core idea, update, or story? (Paste raw text or describe it.)
- Tone goal: Informative? Provocative? Humble brag? Conversational? Educational?
- Audience: Who needs to see this? (Founders, marketers, developers, general public?)
- CTA: What do you want readers to do? (Visit link, reply, follow, share, start a conversation?)
Without these answers, you'll get generic output that won't land on any platform.
Follow this process exactly:
From the source input, extract:
Twitter/X variant:
[Bold claim or surprising fact — max 1 sentence]
[1-2 sentences of supporting context]
[Engaging question or CTA]
[1-2 relevant hashtags max]
Check: Under 280 chars for single tweet? If not, decide: cut or thread.
LinkedIn variant:
[First line hook — create curiosity, not announcement]
[1-2 line context paragraph]
[Core insight or framework — 2-4 short paragraphs]
[Personal angle or reflection]
[Discussion CTA — question for the audience]
[3-5 hashtags at the end only]
Check: Does the first line work before "See more"? Does it NOT start with "I'm excited to..."?
Reddit variant:
[Title: specific, searchable, not clickbaity]
[Opening: frame as experience, question, or lesson — community-first]
[Body: genuine story or insight with specifics]
[Closing question to invite community input]
Check: Would this feel at home in the target subreddit? No hashtags?
npm install
# text input
node generate.js --text "We reduced onboarding time by 35% with a checklist." --stdout
# file input
node generate.js --file examples/input-example.md --outdir examples
# URL input (when network is available)
node generate.js --url https://example.com/post --platforms twitter,linkedin --stdout
If generate.js is unavailable, use the Manual Generation Path above — same quality, just manual.
After generating all 3 variants, run this review before delivering:
| Check | |||
|---|---|---|---|
| Hook strong? (Would you stop scrolling?) | ✅/❌ | ✅/❌ | ✅/❌ |
| CTA present and clear? | ✅/❌ | ✅/❌ | ✅/❌ |
| Platform fit? (Tone matches platform norms) | ✅/❌ | ✅/❌ | ✅/❌ |
| Guardrails pass? (See below) | ✅/❌ | ✅/❌ | ✅/❌ |
Flag the weakest variant and explain why: "The Reddit variant is the weakest because it still reads like a LinkedIn post — too polished, not community-first."
❌ No identical copy cross-posted — every platform variant must be meaningfully different in tone and structure ❌ No hashtag spam on LinkedIn — max 5, always at the end, never in the body ❌ No self-promotional openers on Reddit — community value first, always ❌ No vague hooks — "I have some thoughts on X" is not a hook ❌ No copy that assumes platform context — Reddit readers don't know your LinkedIn audience
After delivering the 3 variants:
Deliver:
## Twitter/X
[Final copy — ready to paste]
Character count: [X]/280
## LinkedIn
[Final copy — ready to paste]
## Reddit
Title: [Post title]
[Body — ready to paste]
## Quality Review
- Strongest variant: [Platform] — because [reason]
- Weakest variant: [Platform] — [what to improve if needed]
- All guardrails passed: Yes / No — [note any issues]
Skill by Brian Wagner | AI Marketing Architect | brianrwagner.com