一条命令发公众号:Hermes 自动排版+封面+推送全流程

系列前几篇讲了安装 Hermes、搭知识库、让飞书 Bot 团干活、自动采集读书,还有手写 Skill。这篇来说说公众号发布这条管线——怎么用一条命令完成排版、做封面、推草稿箱。

## 手工发公众号的常规动作

写公众号的人大概都熟悉这套流程:文章写好了,然后打开浏览器,登录后台,把 Markdown 贴到编辑器里。接着调整格式——标题大小、引用样式、代码块颜色,经常要反复调几遍。再然后做封面图,打开设计工具选模板、改文字、导出 900 × 383 的图片。最后上传封面、填摘要、选分类,点保存草稿。

这一套走下来,顺利的话也要十来分钟。碰上封面尺寸不对、格式乱了、图片上传失败,半小时就进去了。

能不能把这些重复劳动交给机器?

## 一条命令做完所有事

Hermes 生态里有一个脚本叫 `push_article.py`。做的事情很简单:把一篇写好的 Markdown 文件,变成公众号草稿箱里一篇排版完整、带封面图的文章。

长这样:

“`
cd ~/.hermes/skills/devops/wechat-official-account-api
python3 scripts/push_article.py \
–input /tmp/article.md \
–title “一条命令发公众号” \
–digest “Hermes 自动排版+封面+推送全流程” \
–cover /tmp/cover.png
“`

四个参数就够:文章文件、标题、摘要、封面图输出路径。如果有多个公众号账号,加个 `–entry` 参数指定 KeePass 条目名就行。

## 这条命令干了哪些事

按顺序来,一共 5 件事:

**第一,取凭证。** 脚本从 KeePass 拿到微信公众号的 AppID 和 AppSecret,调 `stable_token` 接口获取 access_token。凭证不写死在脚本里,换号只需要改 KeePass 条目名。

**第二,生成封面。** 调用百炼的 qwen-image-plus 模型,根据文章标题和内容生成一张科技风封面图(900 × 383)。风格统一——深蓝底、网格线、发光节点,跟系列文章的调性一致。

**第三,上传素材。** 把封面图传到微信永久素材库,拿到 `thumb_media_id`。这步要是失败,脚本会降级——用 PIL 画一张深蓝纯色封面继续走,不卡流程。

**第四,格式转换。** Markdown 转成微信公众号能渲染的 HTML。标题、加粗、引用、代码块都有对应的内联样式。列表项转成带圆点的段落——微信后台渲染 `

    ` 标签的问题比较多,所以绕开了它。

    **第五,推草稿箱。** 调 `draft/add` 接口创建草稿。要是账号有 `freepublish` 权限,会顺带直接发布。没有的话,草稿也已经躺在后台了,手动点一下发布就行。

    ## 每步都有后备方案

    自动化管线最怕的是「某一步卡死,整个流程停掉」。这个脚本的设计思路是每步失败都有替代方案:

    | 环节 | 失败处理 |
    |——|———|
    | 封面生成 | 换成纯色封面(PIL 绘制 900 × 383) |
    | 封面上传 | 跳过封面,继续走草稿推送 |
    | 草稿箱创建 | 保存本地 HTML 到 `/tmp/`,手动粘贴 |
    | 直接发布 | 草稿已创建,后台手动发布即可 |

    封面图没生成出来,文章照样能发到草稿箱。

    ## 两条路径,不冲突

    这个系列两套发布方案。`push_article.py` 是从命令行直接推草稿箱,适合批量写文或 AI 生成的场景。另一套是 WordPress + WordPress2MP 插件,在博客后台写文章,发布时自动同步到公众号。

    日常写博客可以走 WordPress 同步,偶尔需要快速发布就命令行跑一把。不过有个规则:如果文章已经在 WordPress 发布了,就别再跑一遍 `push_article.py`——会在公众号产生两篇重复草稿。

    前几篇讲了安装配置、Skill 写作、自动采集、公众号发布管线。系列还剩一个有意思的话题:在博客写文章,自动同步到公众号。下一篇来说说 WordPress + WordPress2MP 这个方案。

Leave a Comment

您的邮箱地址不会被公开。 必填项已用 * 标注

Scroll to Top