| name | 2x-post-x |
| description | Posts content to X/Twitter via browser automation. Reads local draft, posts, calls publish-draft. |
| user-invocable | false |
2X Post to X
Post a draft to X/Twitter via browser. Read local file, post, record via client.
Inputs
- session_number: which session folder to read from
Step 1: Read Draft
cat ~/.openclaw/workspace/2x-sessions/{session_number}/drafts/x.md
This file is always fresh — sync daemon pulls any web UI edits.
If file doesn't exist, stop and tell orchestrator "No X draft found."
Step 2: Check for Thread
If content contains [1/ markers → thread mode, split into parts.
If ≤ 280 chars with no markers → single tweet.
Step 3: Post via Browser
Single Tweet
browser open "https://x.com/compose/post"
- Wait 2 seconds
browser snapshot --interactive
- Find compose text area (role "textbox" or main contenteditable)
browser type <ref> "{content}"
- Wait 1 second
browser snapshot --interactive
- Find "Post" button →
browser click <ref>
- Wait 3 seconds
browser snapshot → verify compose closed
Thread
- Type first part in compose area
- Click "+" button to add next tweet