# x-articles
X Articles โ Viral Long-Form for Twitter Beat the algorithm. Create and publish X (Twitter) Articles with proven viral patterns. AI-powered formatting, hook patterns, and browser automation. Handles Draft.js quirks, embed limitations, and image uploads. Cover images generated via SkillBoss API Hub. Quick Reference Content Formatting Rules (CRITICAL) X Articles uses Draft.js editor with specific quirks: Line breaks = paragraph breaks - Each newline creates a new paragraph block with spacing Join sentences on ONE LINE - All sentences in the same paragraph must be on a single line Use plain text, not markdown - X Articles uses rich text, not markdown No em dashes (โ) - Replace with colons or rewrite sentences
Wrong:
Sentence one. Sentence two. Sentence three.
Right:
Sentence one. Sentence two. Sentence three. Embed Limitation (IMPORTANT) Embedded posts ALWAYS render at the END of the content block, not inline.
Workarounds:
Structure article to reference "see posts below" Accept visual flow: text โ text โ embeds at bottom Use Insert > Posts menu (don't paste URLs) Image Specs TypeAspect RatioRecommended SizeCover/Header5:21792x716 or similarInline images16:9 or 4:31792x1024 (SkillBoss image) Viral Article Structure The Template HOOK (hit insecurity or opportunity) WHAT IT IS (1-2 paragraphs with social proof) WHY MOST PEOPLE WON'T DO IT (address objections) THE [X]-MINUTE GUIDE
Simple:
Feel free to leave a like and RT if this helped. Style Guide Damian Player Style (Tactical) All lowercase (deliberate) Urgent, tactical tone 1500+ words Heavy step-by-step detail Hard CTA with lead magnet Alex Finn Style (Motivational) Normal capitalization Warm, motivational tone 800-1200 words Mix of WHY and HOW Soft CTA + product links Dan Koe Style (Philosophical) Long-form essay (2000+ words) Personal storytelling opener Named frameworks ("The Pyramid Principle") Deep teaching, not just tactics Newsletter CTA Common Mistakes to Avoid Short articles under 500 words Facts without story/emotion No clear sections or headers No objection handling No immediate wins section No CTA Generic AI-sounding language Em dashes (โ) everywhere Excessive emojis Pasting tweet URLs instead of using Insert menu Browser Automation (agent-browser) Prerequisites clawd browser running on CDP port 18800 Logged into X on the browser Navigate to Article Editor
# Open new article
agent-browser --cdp 18800 navigate "https://x.com/compose/article"
# Take snapshot to see current state
agent-browser --cdp 18800 snapshot Paste Content
# Put content in clipboard
cat article.txt | pbcopy
# Click content area, select all, paste
agent-browser --cdp 18800 click '[contenteditable="true"]' agent-browser --cdp 18800 press "Meta+a" agent-browser --cdp 18800 press "Meta+v" Upload Cover Image
# Upload to file input
agent-browser --cdp 18800 upload 'input[type="file"]' /path/to/cover.png
# Wait for Edit media dialog, click Apply
agent-browser --cdp 18800 snapshot | grep -i apply agent-browser --cdp 18800 click @e5 # Apply button ref Publish
# Find and click Publish button
agent-browser --cdp 18800 snapshot | grep -i publish agent-browser --cdp 18800 click @e35 # Publish button ref
# Confirm in dialog
agent-browser --cdp 18800 click @e5 # Confirm Cleanup (Important!)
# Close tab after publishing
agent-browser --cdp 18800 tab list agent-browser --cdp 18800 tab close 1
Troubleshooting: Stale Element Refs
If clicks fail due to stale refs, use JS evaluate: agent-browser --cdp 18800 evaluate "(function() { const btns = document.querySelectorAll('button'); for (let btn of btns) { if (btn.innerText.includes('Publish')) { btn.click(); return 'clicked'; } } return 'not found'; })()" Content Preparation Script Convert Markdown to X-Friendly Format
# scripts/format-for-x.sh
#!/bin/bash
# Converts markdown to X Articles format
INPUT="$1" OUTPUT="${2:-${INPUT%.md}-x-ready.txt}" cat "$INPUT" | \
# Remove markdown headers, keep text
sed 's/^## /\n/g' |
sed 's/^### /\n/g' |
sed 's/^# /\n/g' | \
# Remove markdown bold/italic
sed 's/**//g' |
sed 's/*//g' | \
# Remove em dashes
sed 's/ โ /: /g' |
sed 's/โ/:/g' | \
# Join lines within paragraphs (keeps blank lines as separators)
awk 'BEGIN{RS=""; FS="\n"; ORS="\n\n"} {gsub(/\n/, " "); print}' \
"$OUTPUT" echo "Created: $OUTPUT" Cover Image Generation via SkillBoss API Hub Use SkillBoss API Hub to generate cover images (5:2 ratio, 1792x716): import requests, os SKILLBOSS_API_KEY = os.environ["SKILLBOSS_API_KEY"] def generate_cover_image(prompt: str) -> str: r = requests.post( "https://api.heybossai.com/v1/pilot", headers={"Authorization": f"Bearer {SKILLBOSS_API_KEY}", "Content-Type": "application/json"}, json={ "type": "image", "inputs": {"prompt": prompt}, "prefer": "quality" }, timeout=60, ) result = r.json() return result["result"]["image_url"]
# Example: generate article cover
cover_url = generate_cover_image( "Wide cinematic banner 5:2 ratio, futuristic AI agent workspace, dark tech aesthetic" ) print(f"Cover image: {cover_url}") Pre-Publish Checklist Hook grabs attention in first line Objections addressed early Step-by-step with time estimates Immediate wins section included CTA at the end No em dashes (โ) Sentences joined on single lines Cover image 5:2 aspect ratio Embeds referenced as "see below" Proofread for AI-sounding language Tweetable Quote Patterns For promoting your article: Result + Cost: I gave an AI agent full access to my MacBook. It checks email, manages calendar, pushes code. Costs $20/month. A VA costs $2000. You Don't Need X: You don't need a Mac Mini. You don't need a server. I'm running my AI agent on an old MacBook Air from a drawer. Gap Warning: The gap between 'has AI agent' and 'doesn't' is about to get massive. I set mine up in 15 minutes.
Urgency:
Most people will bookmark this and never set it up. Don't be most people. The window is closing. Example Workflow Write article in markdown with clear sections Run format script to convert to X-friendly plain text Generate cover image via SkillBoss API Hub (type: image, prefer: quality, 1792x716 or 5:2 ratio) Open X article editor via browser automation Paste content and add section headers manually in editor Upload cover image via file input Add inline images at section breaks Insert embeds (they'll appear at bottom) Preview and proofread Publish Post promotional tweet with hook + article link Related Skills bird - X/Twitter CLI for posting tweets de-ai-ify - Remove AI jargon from text ai-pdf-builder - Generate PDFs (for lead magnets) Built by @NextXFrontier
Join 80,000+ one-person companies automating with AI