将内容发布到微博。支持带文字、图片和视频的普通微博,以及通过 Chrome CDP 使用 Markdown 输入的头条文章。当用户要求“post to Weibo”、“发微博”、“发布微博”、“publish to Weibo”、“share on Weibo”、“写微博”或“微博头条文章”时使用。
发布到微博
通过真实的 Chrome 浏览器(绕过反爬虫检测)将文字、图片、视频和长文发布到微博。
脚本目录
重要:所有脚本都位于此技能的 scripts/ 子目录中。
代理执行说明:
- 确定此 SKILL.md 文件所在目录路径为
{baseDir} - 脚本路径 =
{baseDir}/scripts/<script-name>.ts - 将本文档中所有
{baseDir}替换为实际路径 - 解析
${BUN_X}运行时:如果安装了bun→bun;如果可用npx→npx -y bun;否则建议安装 bun
脚本参考:
| 脚本 | 用途 |
|---|---|
scripts/weibo-post.ts |
普通微博(文字+图片) |
scripts/weibo-article.ts |
头条文章发布(Markdown) |
scripts/copy-to-clipboard.ts |
复制内容到剪贴板 |
scripts/paste-from-clipboard.ts |
发送真实的粘贴按键 |
偏好设置 (EXTEND.md)
按优先级顺序检查 EXTEND.md —— 找到的第一个生效:
| 优先级 | 路径 | 范围 |
|---|---|---|
| 1 | .baoyu-skills/baoyu-post-to-weibo/EXTEND.md |
项目 |
| 2 | ${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-post-to-weibo/EXTEND.md |
XDG |
| 3 | $HOME/.baoyu-skills/baoyu-post-to-weibo/EXTEND.md |
用户主目录 |
如果未找到,则使用默认值。
EXTEND.md 支持:默认 Chrome 配置文件
前提条件
- Google Chrome 或 Chromium
bun运行时- 首次运行:手动登录微博(会话会保存)
普通微博
文字 + 图片/视频(最多 18 个文件)。发布在微博首页。
${BUN_X} {baseDir}/scripts/weibo-post.ts "Hello Weibo!" --image ./photo.png
${BUN_X} {baseDir}/scripts/weibo-post.ts "Watch this" --video ./clip.mp4
参数:
| 参数 | 描述 |
|---|---|
<text> |
微博内容(位置参数) |
--image <path> |
图片文件(可重复) |
--video <path> |
视频文件(可重复) |
--profile <dir> |
自定义 Chrome 配置文件 |
注意:脚本会打开浏览器并填充内容。用户需自行审核并手动发布。
头条文章
长文 Markdown 文章,发布在 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
参数:
| 参数 | 描述 |
|---|---|
<markdown> |
Markdown 文件(位置参数) |
--cover <path> |
封面图片 |
--title <text> |
覆盖标题(最多 32 字符,超长则截断) |
--summary <text> |
覆盖摘要(最多 44 字符,超长则自动重新生成) |
--profile <dir> |
自定义 Chrome 配置文件 |
Frontmatter:支持 YAML 前置元数据中的 title、summary、cover_image。
字符限制:
- 标题:最多 32 字符(超长则截断并给出警告)
- 摘要/导语:最多 44 字符(超长则从内容自动重新生成)
Markdown 转 HTML:将 Markdown 转换为 HTML 时,不要传递任何 --theme 参数。使用默认主题(无主题参数)。
文章工作流程:
- 打开
https://card.weibo.com/article/v3/editor - 点击“写文章”按钮,等待编辑器变为可编辑状态
- 填写标题(验证 32 字符限制)
- 填写摘要/导语(验证 44 字符限制)
- 通过粘贴将 HTML 内容插入 ProseMirror 编辑器
- 逐个替换图片占位符(复制图片 → 选择占位符 → 粘贴)
发布前检查:脚本会在所有图片插入后自动验证:
- 编辑器中剩余的
WBIMGPH_占位符 - 预期图片数量与实际图片数量
如果检查失败(输出中有警告),请在用户发布前提醒具体问题。
微博类型选择
除非用户明确指定微博类型:
- Markdown 文件 (
.md) → 头条文章 - 纯文本 / 带图片的文本 → 普通微博
故障排除
Chrome 调试端口未就绪
如果脚本失败并显示 Chrome debug port not ready 或 Unable to connect,仅终止 CDP Chrome 实例(那些带有 --remote-debugging-port 且使用 baoyu-skills 配置文件的实例),然后重试:
pkill -f "remote-debugging-port.*baoyu-skills/chrome-profile" 2>/dev/null; sleep 2
关键:切勿终止所有 Chrome 进程(pkill -f "Google Chrome")。仅终止由 CDP 启动且使用 baoyu-skills 配置文件目录的 Chrome 实例。用户可能打开了常规的 Chrome 窗口。
重要:此操作应自动执行——遇到此错误时,终止 CDP Chrome 实例并重试命令,无需询问用户。
备注
- 首次运行:需要手动登录(会话会持久保存)
- 所有脚本仅将内容填充到浏览器中,用户必须自行审核并手动发布
- 跨平台:macOS、Linux、Windows
扩展支持
通过 EXTEND.md 进行自定义配置。有关路径和受支持的选项,请参阅偏好设置部分。






