乐于分享
好东西不私藏

OpenClaw小龙虾实战:我把“自动发文到公众号草稿箱”这件事跑通了”

OpenClaw小龙虾实战:我把“自动发文到公众号草稿箱”这件事跑通了”

🔥我把“自动发到公众号草稿箱”跑通了:
配置、流程、Skill 模板一次讲清楚

如果你经常写公众号,应该很熟这几个烦点:

  • 文章写完了,还得手动复制到后台
  • 图片要一张张传,封面不能漏,不然直接报错
  • 改完一版,还得再去草稿箱重新同步
  • 想让 AI 帮忙写,但最后总卡在“发布这一步”

我这段时间把这件事来回折腾了几遍,终于把一个比较稳定的流程跑通了:
本地写好 → AI 整理排版 → 调官方接口 → 自动进草稿箱。

如果你也想让自己的小龙虾(OpenClaw)自动把文章发进草稿箱,这篇就把过程讲明白。文末提供可直接复制的 Skill 模板,丢给 AI 就能学会!

🎯 先说目标:我们到底要自动化什么?

很多人一说“公众号自动发布”,会想得太大。其实第一步最值得做的,不是“直接群发”,而是先稳定进草稿箱

💡 草稿箱动作能解决 80% 的麻烦:
不用手动复制正文、不用重传图片、封面自动带上、改稿直接更新……
它相当于把最机械、最烦、最容易出错的段落交给工具,把高风险的“正式发布”留给人自己确认。

01第一步:先把文章组织成固定目录

不要今天一篇文章放这,明天放那。你一旦固定了结构,后面整个自动发布流程就会简单很多:文章在哪、图片在哪、之前发过没有,脚本全知道。

// 📂 建议的本地目录结构:/root/.openclaw/workspace/app/wechat_drafts/
└── 2026-03-20-my-article/
    ├── article.md(正文)
    ├── images/
    │   ├── cover.png(封面)
    │   └── fig1.png
    └── meta.json(记录草稿 media_id)
02第二步:准备微信公众号 API 凭证

走微信官方 Draft API,需要把凭证统一放在工作区的 .env 文件里,方便脚本读取,后续让 AI 发稿时也能直接走固定配置。

WECHAT_APPID=你的公众号AppID
WECHAT_APPSECRET=你的公众号AppSecret
03第三步:让脚本干掉“两个脏活”

真正把流程跑顺的,不是“会调接口”本身,而是脚本要处理好细节:

1)自动处理图片:找到本地图片 → 上传素材接口 → 拿回线上可用地址 → 替换正文中的引用(不然图会挂)。

2)自动缓存 media_id:第一次发布后,把接口返回的 media_id 写进 meta.json。后续改稿走“更新”而不是“新建”。

⚠️ 核心原则:不要只写一个能发成功的脚本,要写一个能继续维护同一篇文章的脚本,草稿箱才不会被塞满重复垃圾。

04第四步:让发布命令尽量简单

命令设计得越简单,后面你交给 AI 自动执行时越稳:

// 💻 极简发布命令:python3 scripts/publish.py --article-dir /root/.../2026-03-20-my-article

// 💻 指定封面或强制新建:python3 scripts/publish.py \
  --article-dir /root/.../2026-03-20-my-article \
  --cover /root/.../images/cover.png \
  --force-new

🚧 实际跑下来,最容易踩的 4 个坑

坑 1:封面不是有效图片。哪怕叫 cover.png,只要文件损坏或只是个文本,微信接口直接报错。
坑 2:图片相对路径解析错误。文章里的 ![](images/fig1.png),脚本必须从文章所在目录出发去找。
坑 3:改稿总是新建草稿。忘记缓存或读取 meta.json 里的 media_id
坑 4:文章充满“AI 味”。正文全是“我建议这样写”、“我先帮你分析”,建议发布前让 AI 使用 humanize 技能去一遍 AI 味。

🤖 把“发布规则”写死,直接喂给小龙虾

AI 最大的问题是容易自由发挥。你不是在教它“点按钮”,而是在给它一套固定工作流。下面这段提示词,直接复制给 OpenClaw 即可创建 Skill:

// 💬 复制给 AI 的 Skill 模板:创建一个 Skill:wechat-article-publisher
目标:把本地一篇 Markdown 文章自动发布到微信公众号草稿箱,支持首次创建和后续更新。

工作目录约定:
- 文章统一放在 /root/.openclaw/workspace/app/wechat_drafts/<date>-<slug>/
- 正文文件默认是 article.md,封面默认是 images/cover.png
- 如果存在 meta.json,里面可缓存 media_id 用于后续更新

凭证来源:
- 从 .env 读取 WECHAT_APPID 和 WECHAT_APPSECRET

Skill 要求:
1. 读取 article.md 并转换为适合公众号的 HTML。
2. 解析相对路径图片,上传到微信素材接口并替换为线上地址。
3. 上传封面图片。
4. 如果 meta.json 无 media_id,调用新增接口;若有,调用更新接口更新同一草稿。
5. 成功后回写 media_id 到 meta.json;失败则返回原始报错,不吞错。
6. 提供终端脚本支持 --cover, --title, --force-new 参数。

写作规范要求:
- 发布前确保正文是“可直接发”状态,文章进行一遍humanize技能去除AI味。
- 图片占位应放在相关段落后,勿堆积在文末。

💡 一句话总结:自动化的边界,在于人机分工。

AI 负责体力活(排版、传图、设封面、建草稿);
人负责拍板(确认标题、最后核对、点击群发)。
这才是公众号自动化里最舒服、最不容易翻车的方式!

👇 你在做内容自动化时还遇到过什么坑?
欢迎在评论区留言交流,把你的 Agent 调教得更聪明!

分享给苦于公众号排版排期的创作者朋友!