PluginBench
Skill
Review
Audit score 70

baoyu-post-to-weibo

jimliu/baoyu-skills

Post text, images, videos, and Markdown articles to Weibo via real Chrome browser.

What is baoyu-post-to-weibo?

Posts content to Weibo (微博) using Chrome CDP, supporting regular posts with text/images/videos and long-form headline articles (头条文章) with Markdown input. Use when the user asks to post, publish, or share on Weibo.

  • Post text with images and videos to Weibo homepage (max 18 files total)
  • Publish long-form Markdown articles as Weibo headline articles (头条文章)
  • Fill browser with content automatically; user reviews and publishes manually
  • Support custom Chrome profiles and session persistence across runs
  • Validate title (32 chars max) and summary (44 chars max) for headline articles
  • Replace image placeholders in articles via copy-paste workflow

How to install baoyu-post-to-weibo

npx skills add https://github.com/jimliu/baoyu-skills --skill baoyu-post-to-weibo
Prerequisites
  • Google Chrome or Chromium installed
  • bun runtime (or npx with bun available)
  • Manual login to Weibo on first run (session is saved)
Claude Code
Cursor
Windsurf
Cline

How to use baoyu-post-to-weibo

  1. 1.Determine the skill's base directory path
  2. 2.For regular posts: run `${BUN_X} {baseDir}/scripts/weibo-post.ts "Your text" --image ./photo.png` with optional --image and --video parameters
  3. 3.For headline articles: run `${BUN_X} {baseDir}/scripts/weibo-article.ts article.md` with optional --cover, --title, and --summary parameters
  4. 4.Review the content in the opened Chrome browser window
  5. 5.Manually publish the post or article in the browser

Use cases

Good for
  • Share a status update with photos to your Weibo feed
  • Publish a long-form article written in Markdown as a Weibo headline article
  • Post a video clip to Weibo with accompanying text
  • Batch post multiple images with a caption to Weibo
  • Publish an article with a custom cover image to Weibo
Who it's for
  • Weibo content creators and publishers
  • Users managing Chinese social media presence
  • Agents automating Weibo posting workflows
  • Developers integrating Weibo publishing into automation scripts

baoyu-post-to-weibo FAQ

Do I need to log in every time?

No. The first run requires manual login to Weibo, but the session is saved and persists for subsequent runs.

What's the difference between regular posts and headline articles?

Regular posts are text + images/videos posted to your Weibo homepage. Headline articles (头条文章) are long-form Markdown content published at card.weibo.com with title, summary, and cover image support.

Can I post without reviewing in the browser?

No. The scripts fill content into the browser, but you must review and manually publish. This bypasses anti-bot detection.

What are the character limits for headline articles?

Title: 32 characters max (truncated with warning if longer). Summary: 44 characters max (auto-regenerated from content if longer).

What should I do if Chrome debug port is not ready?

Kill only the CDP Chrome instances with `pkill -f "remote-debugging-port.*baoyu-skills/chrome-profile"`, wait 2 seconds, then retry the command.

Full instructions (SKILL.md)

Source of truth, from jimliu/baoyu-skills.


name: baoyu-post-to-weibo description: Posts content to Weibo (微博). Supports regular posts with text, images, and videos, and headline articles (头条文章) with Markdown input via Chrome CDP. Use when user asks to "post to Weibo", "发微博", "发布微博", "publish to Weibo", "share on Weibo", "写微博", or "微博头条文章". version: 1.117.3 metadata: openclaw: homepage: https://github.com/JimLiu/baoyu-skills#baoyu-post-to-weibo requires: anyBins: - bun - npx

Post to Weibo

Posts text, images, videos, and long-form articles to Weibo via real Chrome browser (bypasses anti-bot detection).

Script Directory

Important: All scripts are located in the scripts/ subdirectory of this skill.

Agent Execution Instructions:

  1. Determine this SKILL.md file's directory path as {baseDir}
  2. Script path = {baseDir}/scripts/<script-name>.ts
  3. Replace all {baseDir} in this document with the actual path
  4. Resolve ${BUN_X} runtime: if bun installed → bun; if npx available → npx -y bun; else suggest installing bun

Script Reference:

ScriptPurpose
scripts/weibo-post.tsRegular posts (text + images)
scripts/weibo-article.tsHeadline article publishing (Markdown)
scripts/copy-to-clipboard.tsCopy content to clipboard
scripts/paste-from-clipboard.tsSend real paste keystroke

Preferences (EXTEND.md)

Check EXTEND.md in priority order — the first one found wins:

PriorityPathScope
1.baoyu-skills/baoyu-post-to-weibo/EXTEND.mdProject
2${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-post-to-weibo/EXTEND.mdXDG
3$HOME/.baoyu-skills/baoyu-post-to-weibo/EXTEND.mdUser home

If none found, use defaults.

EXTEND.md supports: Default Chrome profile

Prerequisites

  • Google Chrome or Chromium
  • bun runtime
  • First run: log in to Weibo manually (session saved)

Regular Posts

Text + images/videos (max 18 files total). Posted on Weibo homepage.

${BUN_X} {baseDir}/scripts/weibo-post.ts "Hello Weibo!" --image ./photo.png
${BUN_X} {baseDir}/scripts/weibo-post.ts "Watch this" --video ./clip.mp4

Parameters:

ParameterDescription
<text>Post content (positional)
--image <path>Image file (repeatable)
--video <path>Video file (repeatable)
--profile <dir>Custom Chrome profile

Note: Script opens browser with content filled in. User reviews and publishes manually.


Headline Articles (头条文章)

Long-form Markdown articles published at https://card.weibo.com/article/v3/editor.

${BUN_X} {baseDir}/scripts/weibo-article.ts article.md
${BUN_X} {baseDir}/scripts/weibo-article.ts article.md --cover ./cover.jpg

Parameters:

ParameterDescription
<markdown>Markdown file (positional)
--cover <path>Cover image
--title <text>Override title (max 32 chars, truncated if longer)
--summary <text>Override summary (max 44 chars, auto-regenerated if longer)
--profile <dir>Custom Chrome profile

Frontmatter: title, summary, cover_image supported in YAML front matter.

Character Limits:

  • Title: 32 characters max (truncated with warning if longer)
  • Summary/导语: 44 characters max (auto-regenerated from content if longer)

Markdown-to-HTML: Do NOT pass any --theme parameter when converting markdown to HTML. Use the default theme (no theme argument).

Article Workflow:

  1. Opens https://card.weibo.com/article/v3/editor
  2. Clicks "写文章" button, waits for editor to become editable
  3. Fills title (validated for 32-char limit)
  4. Fills summary/导语 (validated for 44-char limit)
  5. Inserts HTML content into ProseMirror editor via paste
  6. Replaces image placeholders one by one (copy image → select placeholder → paste)

Post-Composition Check: The script automatically verifies after all images are inserted:

  • Remaining WBIMGPH_ placeholders in editor content
  • Expected vs actual image count

If the check fails (warnings in output), alert the user with the specific issues before they publish.


Post Type Selection

Unless the user explicitly specifies the post type:

  • Markdown file (.md) → Headline Article (头条文章)
  • Plain text / text with images → Regular Post

Troubleshooting

Chrome debug port not ready

If a script fails with Chrome debug port not ready or Unable to connect, kill only the CDP Chrome instances (those with --remote-debugging-port AND the baoyu-skills profile), then retry:

pkill -f "remote-debugging-port.*baoyu-skills/chrome-profile" 2>/dev/null; sleep 2

CRITICAL: Never kill all Chrome processes (pkill -f "Google Chrome"). Only kill Chrome instances launched by CDP with the baoyu-skills profile directory. The user may have regular Chrome windows open.

Important: This should be done automatically -- when encountering this error, kill the CDP Chrome instances and retry the command without asking the user.

Notes

  • First run: manual login required (session persists)
  • All scripts only fill content into the browser, user must review and publish manually
  • Cross-platform: macOS, Linux, Windows

Extension Support

Custom configurations via EXTEND.md. See Preferences section for paths and supported options.