baoyu-post-to-x skill: write X posts and Articles in Chrome, then you publish
Baoyu's skill that makes your agent write a post, video post, quote post or long X Article in your own Chrome, and wait for your go-ahead to publish.
- Installs
- 29K
- on skills.sh
- Stars
- 27.2K
- on GitHub
- Files
- 15
- besides SKILL.md
- Updated
- Nov 2026
- last repo commit
baoyu-post-to-x opens X in a real Chrome browser and fills in a regular post (up to four images), a video post, a quote post or an X Article from a Markdown file. It loads when you ask to post to X, tweet, publish to Twitter or share on X.
By default the scripts only compose the post and leave Chrome open for you to review. SKILL.md has a publish gate: the agent must not click Post or Publish, or pass --submit, without your explicit final confirmation in the conversation. Once you confirm, it can publish publicly from your X account, so read the draft first. You need Chrome and bun, and X Articles need X Premium.
Good for
- Creators who draft in Markdown and want it filled into X Articles for them
- People who post images or video to X often and want the composer filled in for them
- Codex and Claude Code users who already work in Chrome and are fine with an agent clicking in it
Install baoyu-post-to-x
Claude Code
- 1
Copy this prompt.
Install the baoyu-post-to-x skill in Claude Code. Run this command: npx skills add https://github.com/jimliu/baoyu-skills --skill baoyu-post-to-x Then check that it loaded and tell me how to use it.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Node.js.
From its listing on skills.sh. Source.
What's in the skill
When it loads
Posts content and articles to X (Twitter). Supports regular posts with images/videos and X Articles (long-form Markdown). In Codex, honor explicit requests for the Codex Chrome plugin/@chrome by using the Chrome Extension workflow; otherwise use Chrome Computer Use when available and fall back to real Chrome CDP scripts only when allowed. Use when user asks to "post to X", "tweet", "publish to Twitter", or "share on X".
Sections in SKILL.md
- Script Directory
- Execution Mode Selection (Required)
- Codex Chrome Plugin Mode
- Preferences (EXTEND.md)
- Prerequisites
- Pre-flight Check (Optional)
- References
- Chrome Computer Use Mode
- CDP Script Mode (Fallback)
- Post Type Selection
- Regular Posts
- Video Posts
- Quote Tweets
- X Articles
- Troubleshooting
- Chrome debug port not ready
Key facts
- Installs on skills.sh
- 29,037 as of 2026-11-02
- Last repo commit
- 2026-11-01
What it includes
Codex Chrome plugin, Chrome Computer Use, or CDP scripts
The agent picks one browser mode before touching X. Codex users can ask for the Chrome plugin or Chrome Computer Use, which work in your existing Chrome session. The bundled CDP scripts are the fallback.
Read ·
Execution mode selectionNo Post, Publish or --submit without your final confirmation
SKILL.md says the agent must ask first, in every mode, before any step that makes something public.
Read ·
Publish gateText up to 10,000 characters with up to 4 images
Types your text into the X composer and pastes images through the system clipboard. Non-Premium accounts are limited to 280 characters.
Try: “Post to X: "Shipped v2 today" with ./launch.png, and let me review before you post.”
Runs code ·
Regular postVideo post from MP4, MOV or WebM
Attaches a video to the composer. Regular accounts allow 140 seconds, Premium 60 minutes.
Runs code ·
scripts/x-video.tsQuote a tweet URL with your comment
Try: “Quote https://x.com/user/status/123 with the comment "Great point".”
Runs code ·
scripts/x-quote.tsTitle, cover, body and images from a .md file; needs X Premium
Converts the Markdown to HTML, pastes it into the Articles editor, uploads the cover and each body image, then opens Preview for you to check.
Try: “Publish article.md as an X Article, with cover.jpg as the cover, and stop at preview.”
Runs code ·
X Article from MarkdownMarkdown to HTML, with image placeholders
Reads the Markdown and its frontmatter (title, cover_image). Remote images are downloaded to a temp folder.
Files ·
scripts/md-to-html.tsPut images or HTML on the clipboard, then press paste
Copies an image or rich HTML to the system clipboard and sends a real paste keystroke, which needs Accessibility permission on macOS.
Runs code ·
scripts/copy-to-clipboard.ts and paste-from-clipboard.tsOptional pre-flight check of Chrome, profile, bun and paste access
Checks Chrome, the profile folder, bun, clipboard access and paste keystrokes. SKILL.md suggests it before first use and says you can skip it.
Runs code ·
scripts/check-paste-permissions.tsSet a default Chrome profile per project or user
Files ·
EXTEND.md preferences
From the official docs
Permissions
High risk
This skill drives a browser logged in to your X account and can publish public posts once you confirm. Read every draft and keep the confirmation step on.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It can publish public posts from your account
Scripts post only with --submit, and SKILL.md bars the agent from that without your confirmation. Read the exact text, images and cover before you say yes. github.com
It keeps your X login in a Chrome profile
The scripts launch Chrome with a saved profile folder so the login persists, and read X session cookies to confirm sign-in. Use a separate profile or account if that worries you. github.com
It may kill Chrome debug processes without asking
In CDP script mode only, when a script fails with "Chrome debug port not ready" or "Unable to connect", SKILL.md says to run pkill -f on any Chrome or Chromium process whose command line contains remote-debugging-port, then retry, without asking you. That matches every such process, not only the skill's own. Save your work in any Chrome started with a debug port. github.com
macOS needs Accessibility access for paste
Image paste uses osascript and System Events to send Cmd+V, so your terminal needs Accessibility permission. Grant it only if you accept that. github.com
Scripts download and run packages
They run through bun or npx -y bun and import packages listed in package.json, such as baoyu-chrome-cdp. Remote images in Markdown are downloaded as well. github.com
Technical details
| Talks to | x.com (compose post and Articles pages). Remote image URLs in your Markdown are downloaded to a temp folder. bun is fetched through npx -y bun if it is not installed |
|---|---|
| Sign-in and keys | The CDP scripts use a persistent Chrome profile that keeps your X login; the Chrome plugin and Computer Use modes use your existing Chrome session. |
| Scopes |
|
Questions
What does baoyu-post-to-x do?
It fills in posts on X from your agent: text with images, video, quote posts, and long-form Articles from Markdown. It works through a real Chrome browser, and the publish click is held until you confirm.
Will it post on its own?
Not by SKILL.md's rules. The bundled scripts only compose by default and publish only when run with --submit, and the agent must not click Post or Publish or pass --submit without your explicit confirmation. That is an instruction to the agent, so say clearly that you want a draft only.
How do I install it in Claude Code, the Claude app or Codex?
Use the install box at the top of this page. You also need Google Chrome or Chromium and bun (or npx). For Codex, SKILL.md describes using the Codex Chrome plugin or Chrome Computer Use instead of the scripts.
Does it need an X API key?
No API key appears in SKILL.md or the scripts. It drives the X website, so you log in to X in the browser yourself on first run. Optional environment variables choose the Chrome path and profile folder.
Is it safe?
It controls a browser logged in to your X account and can publish publicly once you confirm, so only confirm text you have read. The CDP scripts keep a persistent Chrome profile with your X login, and in CDP script mode SKILL.md tells the agent to pkill existing Chrome and Chromium debug-port processes without asking when the debug port fails. Use a dedicated or test account first if you are unsure.
Do I need X Premium?
For X Articles, yes. SKILL.md also says regular posts are limited to 280 characters without Premium and up to 10,000 with it.
Does it work in the Claude app?
SKILL.md describes Codex and Chrome browser control and local scripts that need bun and Chrome on your machine. It does not say the Claude app can run them, so use Claude Code or Codex.
Information
updated Nov 2, 2026
- Repository
- jimliu/baoyu-skills
- Folder
skills/baoyu-post-to-x
Sources
Docs, issue trackers and discussions this page is built from.
Show all 10Hide
- baoyu-post-to-x SKILL.md · github.com
- references/articles.md · github.com
- scripts/x-browser.ts · github.com
- baoyu-skills README · github.com
- skills.sh listing · skills.sh
- references/regular-posts.md · github.com
- scripts/x-article.ts · github.com
- scripts/md-to-html.ts · github.com
- scripts/package.json · github.com
- scripts/x-utils.ts · github.com