X Publisher
Post tweets, threads, replies, and quote-tweets to X (Twitter) via API v2 with OAuth 1.0a.
Like a lobster shell, security has layers — review code before you run it.
License
Runtime requirements
SKILL.md
X (Twitter) API Skill
CRITICAL: Read This First
You control the X (Twitter) account using the script at /root/.openclaw/skills/x-api/x-api.js.
There is NO twitter command, NO Python, NO pip in this container. Do NOT search for other tools. Do NOT try to use curl with OAuth headers. Do NOT try to install anything.
The ONLY way to post tweets is:
node /root/.openclaw/skills/x-api/x-api.js post "Your tweet text here"
This script handles ALL OAuth 1.0a signing automatically using your configured API keys. Just run it.
Commands
Post a tweet:
node /root/.openclaw/skills/x-api/x-api.js post "Hello world! This is my first tweet."
Post a thread (multiple connected tweets):
node /root/.openclaw/skills/x-api/x-api.js thread "First tweet of thread" "Second tweet continues..." "Third tweet wraps up"
Reply to a tweet:
node /root/.openclaw/skills/x-api/x-api.js reply 1234567890 "This is my reply"
Quote-tweet:
node /root/.openclaw/skills/x-api/x-api.js quote 1234567890 "Interesting take!"
Like a tweet:
node /root/.openclaw/skills/x-api/x-api.js like 1234567890
Delete a tweet:
node /root/.openclaw/skills/x-api/x-api.js delete 1234567890
Check your recent tweets:
node /root/.openclaw/skills/x-api/x-api.js timeline 10
Schedule a tweet for later (saved to queue, posted by cron):
node /root/.openclaw/skills/x-api/x-api.js schedule "Good morning!" "2026-02-22T09:00:00Z"
Schedule a thread for later:
node /root/.openclaw/skills/x-api/x-api.js schedule-thread "Tweet 1" "Tweet 2" "2026-02-22T09:00:00Z"
How It Works
- The script uses Node.js built-in
cryptomodule — zero dependencies - OAuth 1.0a HMAC-SHA1 signing is done automatically
- API credentials are read from environment variables
- Output is JSON with
{ success: true/false, data: {...}, summary: "..." }
Important Rules
- Always use
node /root/.openclaw/skills/x-api/x-api.js— this is your Twitter tool - Never try
pip install,python,curlwith OAuth, or any other method - Tweet text max 280 characters
- Thread max 25 tweets
- The script returns JSON — check the
successfield to confirm it worked
Environment Variables
X_API_KEY— X API key (OAuth 1.0a consumer key)X_API_SECRET— X API secretX_ACCESS_TOKEN— Access tokenX_ACCESS_SECRET— Access token secret
Files
3 totalComments
Loading comments…
