X Article Publisher
把 Markdown 文章一键发布到 X (Twitter) Articles:本地脚本解析出标题/图片/分割线的块索引,经系统剪贴板以富文本粘贴进编辑器,按索引精确定位插入图片,只保存草稿绝不自动发布,把手动 20-30 分钟的排版压缩到 2-3 分钟。
仓库:wshuyi/x-article-publisher-skill
热度证据:被 VoltAgent 收录的发布技能
五维评分
热度4/5
质量4/5
创新4/5
易用4/5
文档5/5
优秀点拆解
- block_index 确定性定位 + 反向插入:每张图片/分割线携带 0 索引块号,按从大到小顺序插入避免索引偏移,替代 v1.0 脆弱的文本匹配;after_text 保留为人工核验锚点,双锚点设计
- 系统剪贴板作为格式传输通道:HTML 写入 NSPasteboardTypeHTML 后一键 Cmd+V 保留全部富文本格式;图片走剪贴板粘贴(含 2000px/quality-85 压缩),把每图 5 次 UI 点击降为 1 次粘贴,且不受浏览器沙盒限制、脚本可单独测试
- Safety by design:Critical Rules 置顶『NEVER publish - Only save draft』,自动完成全部排版后只存草稿、回报用户人工预览发布,把对外不可逆动作永远留给人类确认
- 把实测 MCP 行为坑固化为执行指令:文档披露 Playwright MCP 的 browser_wait_for 是『先睡 time 秒再检查』而非轮询,规定等上传只用 textGone 不设 time;并给出避免多余 browser_snapshot、并行独立操作、浏览器操作连续推进等效率原则
- 平台能力降级矩阵完整:原生支持的格式直接映射,不支持的逐一降级——代码块→blockquote、表格→PNG(table_to_image.py)、Mermaid→mmdc 转 PNG、分割线→Insert>Divider 菜单(实测 HTML <hr> 被 X 忽略);另有图片缺失自动搜索 Downloads/Desktop/Pictures、含链接段落按 End 键防弹窗等 edge case 处理
可复用的设计模式
- 本地确定性脚本 + 浏览器自动化分工:解析/转换/剪贴板交给可独立测试的 Python 脚本,MCP 只做非确定性 UI 操作
- 降级转换矩阵:按『目标平台支持度』列映射表,能原生渲染的直接转,不能的转图片或走 UI 菜单,把平台限制显性化
- 位置锚点 + 反向插入:批量插入富文本元素时用块索引定位并一律从最大索引往最小插,规避索引偏移
- 安全护栏:对外不可逆动作(发布/发送)只做到草稿/预演一步并写为置顶规则,让自动化与安全兼得
适用场景
Markdown 写作者把长文发布到 X Articles(Premium Plus 订阅)高频/批量把博客或 Newsletter 内容发布到社交平台把结构化内容搬进富文本编辑器(编辑器支持剪贴板粘贴即可复用该思路)学习『本地脚本 + Playwright MCP 浏览器自动化』协作模式的 skill 开发范本
边界与注意:硬门槛是 X Premium Plus 订阅(Articles 专属);依赖 Playwright MCP 与已登录浏览器且要求浏览器窗口可见,多账号需手动切换;Linux 剪贴板未实现;markdown→HTML 为正则实现,嵌套列表/脚注等复杂语法易失真;X 页面改版会导致流程失效需维护。
完整拆解分析文档
本页为摘要版,完整精读分析(核心机制、逐条优秀点拆解、写作过程)见本地 Markdown 文档:
analysis/x-article-publisher.md