Към всички skills

x-article-draft-uploader

mcncarl · Тестване

将 Obsidian 或本地 Markdown 文章上传到 X/Twitter Articles 草稿;支持 Markdown pipe 表格转成 X 原生表格块;如果文章最上方有图片,则按当前 X 界面提示的 5:2 封面图上传;如果没有封面图,则跳过封面区域,直接上传标题、正文、表格和正文图片,完成后提醒用户补一张 5:2 封面。X Article 当前实测正文最多 25 个媒体项,封面单独上传且不占正文名额;表格尺寸选择器当前最大 10 x 10。适用于用户要求上传、发布、保存 Markdown 到 X Article,尤其是需要复用 Chrome 登录态、使用独立 Playwright 浏览器、不接管用户当前浏览器,或旧脚本出现缺图、错位、MPH_MARKER、表格变纯文本等问题时。

Оригинален текст · няма потвърден превод на български

Първо прочетете инструкцията.

Файлът се зарежда от посочения източник само по ваше действие. Можете да го прочетете тук, да го копирате или да го запазите като .md.

Оригинален SKILL.md
GitHub хранилище
Звезди на репото
4098
Лиценз
NOASSERTION
Последна проверка на записа
21.09.2026 г.

Добавете в своя инструмент.

Командата отваря избора на skills от репозитория. Прочетете файла и условията на автора преди изпълнение.

npx skills add mcncarl/yichen-skills

Страницата копира текст. Не инсталира и не изпълнява нищо на устройството ви.

Откъс от SKILL.md

Началото на файла на автора, без превод.

X Article Draft Uploader

许可与商业授权

本 Skill 仅允许个人学习、研究和非商业个人工作流使用。客户交付、付费产品或服务、 公司内部部署、市场打包、课程打包及其他商业用途,必须事先取得作者明确的书面授权。 申请商业授权请添加微信 yichen365ai,并在验证信息中备注 商业授权;收到明确书面 授权前不得商用。完整条款见同目录 LICENSE。该限制只适用于本 Skill, 不改变 Ailu 核心的 AGPL-3.0-or-later 许可;第三方材料继续适用各自许可证。

核心原则

只创建草稿。除非用户明确确认可以公开发布,否则不要点击 X 最终的 发布 按钮。

封面图必须按 X Article 当前界面提示的封面比例 5:2 准备;不要沿用旧的错误比例。

X Article 当前实测正文最多按 25 个媒体项处理,封面单独上传、不占这 25 个正文名额;1 张封面 + 25 张正文图 是有效边界。如果 dry-run 显示 expected_body_images > 25,不要打开 X、不要硬传第 26 张正文图;先生成只用于上传的临时 Markdown,把连续截图合并成长图,或把文章拆成多篇。原始 Markdown 不要为了上传压缩版而直接改坏。

X Article 当前支持原生表格块,但不能靠 rich HTML 粘贴 <table> 自动生成表格。脚本会把 Markdown pipe 表格替换成临时 X_TABLE_MARKER_* 占位符,正文粘贴后在占位符位置插入 X 原生表格块,再打开表格块的 Markdown 编辑器写入原始表格。最终校验必须在自动保存后刷新同一个草稿:表格数量必须精确相等,每张表的可见行列与规范化单元格文本矩阵必须和本地一致、不能是空表,同时铅笔编辑器读回的 Markdown 也必须一致;只读回弹窗源码不算成功。

X 当前表格尺寸选择器实测最大为 10 x 10。如果 dry-run 出现 table_too_large,不要打开 X;先拆表、压缩列数,或把大表转成图片/正文段落后再上传。

使用独立的 Playwright 浏览器会话,不要抢占用户当前正在用的 Chrome 窗口。可以复用 Chrome 登录态,但只通过私有的 Playwright cookie JSON 使用。

默认只新建草稿。只有用户当轮明确确认要覆盖某个准确的 X 草稿 URL 时,才可以使用 --draft-url,并同时传入 --confirm-existing-draft-write;该模式默认会清空这个草稿已有的 标题、正文、表格、正文媒体和封面。不得把任意 URL 传给该参数,也不得用它处理他人的草稿。

快速开始

  1. 使用 Ailu 时,通过设置页“从 Chrome 导入 / 粘贴 JSON / 选择 JSON”准备 Cookie。 独立运行 Skill 时,如果 ~/.ailu/secrets/x/cookies.json 不存在或登录态失效,再显式导出:
python3 ~/.agents/skills/x-article-draft-uploader/scripts/export_x_cookies_from_chrome.py \
  --output ~/.ailu/secrets/x/cookies.json
  1. 正式碰 X 之前,先 dry-run 解析文章,确认可选封面、正文图数量、表格数量、图片文件存在性、正文结尾验收文本、content_checkpoints、expected_compact_length、expected_compact_sha256 和锚点。封面图推荐比例按当前 X 界面提示为 5:2:
python3 ~/.agents/skills/x-article-draft-uploader/scripts/upload_markdown_to_x_article.py \
  "/absolute/path/to/article.md" \
  --cookies-json ~/.ailu/secrets/x/cookies.json \
  --dry-run

如果 dry-run 的 preflight.errors 非空,必须立刻停止工作。不要打开 X,不要创建草稿,不要自动重跑。按错误类型处理:

  • missing_cover_file 或 missing_body_image:先修复 Markdown 图片路径或缺失文件。
  • weak_image_anchor:先在对应图片前补一行唯一、明确的说明文字。
  • image_count_mismatch:先检查 Markdown 图片语法是否异常。
  • table_too_large:先拆表、改成图片,或改写成正文段落;不要直接创建 X 草稿。
  • unsupported_raw_html:把代码围栏外的 raw HTML 改成 Markdown;URI/email autolink 不在此限制内。
  • unsupported_remote_image:先把 http://、https:// 或 // 远程图片下载到本地,再改用本地路径。
  • unsupported_reference_image:把 ![Alt][label]、![Alt][] 或 ![Alt] 改成 inline image 语法 ![Alt](path)。

Целият SKILL.md в GitHub