使用 OpenClaw 自动发布微信公众号文章推文:技术指南(本地部署/云部署)
用 AI 助手一键发布,告别手动复制粘贴
作为一个技术博主,你是不是也经历过这样的痛苦:
- 写好的文章要手动复制到公众号编辑器
- 格式总是乱,要重新调整
- 图片要一张张上传到图床
- 每天都要重复同样的操作
今天我来教你用 OpenClaw + wechat-publisher 技能实现自动化发布。
不用写脚本,不用调 API,用自然语言就能指挥 AI 帮你发布。
一、OpenClaw 是什么?
OpenClaw 是一个 AI 助手运行时框架,可以让你用自然语言指挥 AI 完成各种任务。
核心能力:
- ✅ 文件读写、代码执行
- ✅ 浏览器自动化
- ✅ 消息渠道集成(微信、Telegram、Discord)
- ✅ 技能系统(可扩展)— 今天的主角
我们要用的技能: wechat-publisher — 一键发布 Markdown 到微信公众号草稿箱。
二、快速开始(5 分钟)
2.1 安装 OpenClaw
Linux环境下
# 安装 Node.js 20+
curl -fsSL https://deb.nodesource.com/setup_20.x | bash -
apt-get install -y nodejs
# 安装 OpenClaw
npm install -g openclaw
# 验证安装
openclaw --version
Windows环境下
# PowerShell / cmd
npm install -g openclaw
# 验证安装
openclaw --version
2.2 访问 OpenClaw Web UI 管理面板
若OpenClaw是部署在云: 服务监听在 http://127.0.0.1:18789 端口上,现通过 ssh 隧道来访问,输入下面的命令
ssh -N -L 18789:127.0.0.1:18789 用户名@服务器IP
# 回车之后输入密码
# 然后在浏览器打开 http://127.0.0.1:18789/, 你会看到 Dashboard 了
若是本地部署(windows):
浏览器打开 http://127.0.0.1:18789/
2.3 安装 wechat-publisher 技能
这是核心!一个命令搞定:
# 搜索技能
skillhub search wechat-publisher
# 安装技能
skillhub install wechat-publisher
安装成功后,技能位于:~/.openclaw/workspace/skills/wechat-publisher
技能会自动安装依赖(包括 wenyan-cli),无需手动操作。
若会进入OpenClaw WebUI,则直接让openClaw安装wechat-publisher
2.3 配置微信公众号凭证
获取 AppID 和 AppSecret:
-
登录微信公众号后台:微信公众号
-
进入 设置与开发 → 开发接口管理
-
开发管理模块迁移通知 → 微信开发者平台
-
我的业务与服务 → 公众号
-
记录开发密钥中的 开发者 ID(AppID) 和 开发者密码 (AppSecret)
设置环境变量:
# 临时设置(当前会话)
export WECHAT_APP_ID=你的 AppID
export WECHAT_APP_SECRET=你的 AppSecret
# 永久设置(推荐)
echo 'export WECHAT_APP_ID=你的 AppID' >> ~/.bashrc
echo 'export WECHAT_APP_SECRET=你的 AppSecret' >> ~/.bashrc
source ~/.bashrc
若会进入OpenClaw WebUI,则直接将AppID和AppSecret扔给OpenClaw,让它用wechat-publisher并绑定微信公众号API
2.4 配置 IP 白名单
这一步很重要! 若是服务器部署OpenClaw就查看服务器的公网IP
若是本地部署则:
# 获取服务器公网 IP
curl ifconfig.me
在公众号后台添加 IP 白名单:
- 开发 → 基本配置 → IP 白名单
- 添加你的服务器 IP
三、使用技能发布文章
3.1 方式 1:用 OpenClaw的WebUI 发布(推荐)
需要部署OpenClaw后访问到OpenClaw的WebUI中 部署后不会进入OpenClaw WebUI的可以查询相关文章进入
直接对 OpenClaw 说:
帮我发布这篇文章到微信公众号的草稿中
OpenClaw 会自动:
- 读取 Markdown 文件
- 调用 wechat-publisher 技能
- 发布到草稿箱
- 返回 Media ID 和查看链接
输出示例:
📝 准备发布文章...
文件:/path/to/article.md
主题:lapis
代码高亮:solarized-light
发布成功,Media ID: XpLFr8o7PBqxU70dgtIrkw453xG6dTy38eqypvc-wUiXkGpUFnWXb6DlauQpxzAb
✅ 发布成功!
📱 请前往微信公众号后台草稿箱查看:
https://mp.weixin.qq.com/
3.2 方式 2:使用技能自带的 publish.sh 脚本
cd ~/.openclaw/workspace/skills/wechat-publisher
bash scripts/publish.sh /path/to/article.md
3.3 方式 3:直接使用 wenyan-cli
技能安装时会自动安装 wenyan-cli:
wenyan publish -f article.md -t lapis -h solarized-light
主题选项:
-t lapis— 青金石(推荐)-t phycat— 物理猫-t default— 默认
代码高亮主题:
-h solarized-light— 推荐-h github-dark-h dracula
四、自动化工作流
4.1 定时发布
使用 cron 定时任务:
# 编辑 crontab
crontab -e
# 每天上午 9 点发布文章
0 9 * * * cd ~/.openclaw/workspace/skills/wechat-publisher && bash scripts/publish.sh /path/to/article.md >> /var/log/wechat-publish.log 2>&1
4.2 批量发布
创建发布脚本 batch-publish.sh:
#!/bin/bash
ARTICLES_DIR="./articles"
LOG_FILE="./publish.log"
for article in $ARTICLES_DIR/*.md; do
echo "发布:$article" >> $LOG_FILE
bash scripts/publish.sh "$article" >> $LOG_FILE 2>&1
sleep 5 # 避免频率限制
done
echo "批量发布完成" >> $LOG_FILE
4.3 与 CI/CD 集成
GitHub Actions 示例:
name: Publish to WeChat
on:
push:
branches: [main]
paths: ['articles/*.md']
jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '20'
- name: Install OpenClaw skill
run: |
npm install -g openclaw
skillhub install wechat-publisher
- name: Publish article
env:
WECHAT_APP_ID: ${{ secrets.WECHAT_APP_ID }}
WECHAT_APP_SECRET: ${{ secrets.WECHAT_APP_SECRET }}
run: |
bash ~/.openclaw/workspace/skills/wechat-publisher/scripts/publish.sh articles/latest.md
4.4 用 OpenClaw 实现完整自动化
场景:每天早上 9 点,AI 自动写文章并发布
创建 HEARTBEAT.md:
# 每日任务
- 检查是否有新文章素材
- 如果有,撰写文章并发布到公众号
- 发布后发送通知到 Telegram
OpenClaw 会自动执行这些任务,无需人工干预。
五、技能系统详解
5.1 什么是技能?
技能是 OpenClaw 的可扩展模块,每个技能完成一个特定任务。
已发布的技能:
- 📱
wechat-publisher— 发布公众号文章 - 📝
csdn-publisher— 发布 CSDN 博客 - 🌤️
weather— 天气预报 - 📅
notion— 管理 Notion 页面 - 🔍
tavily— AI 优化搜索 - 🎬
yt-digest— YouTube 视频摘要
5.2 如何发现技能?
# 搜索技能
skillhub search <关键词>
# 示例
skillhub search wechat
skillhub search publisher
skillhub search notion
5.3 如何安装技能?
# 安装技能
skillhub install <技能名>
# 示例
skillhub install wechat-publisher
skillhub install notion
5.4 技能存储在哪里?
~/.openclaw/workspace/skills/
├── wechat-publisher/
│ ├── SKILL.md # 技能文档
│ ├── scripts/
│ │ ├── publish.sh # 发布脚本
│ │ └── setup.sh # 安装脚本
│ └── references/
├── csdn-publisher/
└── ...
5.5 如何查看技能文档?
# 阅读技能文档
cat ~/.openclaw/workspace/skills/wechat-publisher/SKILL.md
# 或在 OpenClaw 中
帮我看看 wechat-publisher 技能怎么用
六、故障排查
6.1 上传失败:IP 不在白名单
错误信息:
40164: invalid ip 43.139.48.73, not in whitelist
解决方法:
- 获取公网 IP:
curl ifconfig.me - 登录公众号后台
- 开发 → 基本配置 → IP 白名单 → 添加 IP
- 等待 5 分钟生效
6.2 技能未安装
错误信息:
skill not found: wechat-publisher
解决方法:
skillhub install wechat-publisher
6.3 环境变量未设置
错误信息:
WECHAT_APP_ID is required
解决方法:
export WECHAT_APP_ID=your_wechat_app_id
export WECHAT_APP_SECRET=your_wechat_app_secret
6.4 Frontmatter 缺失
错误信息:
title is required in frontmatter
未能找到文章封面
解决方法: 在 Markdown 文件顶部添加完整的 frontmatter:
---
title: 你的文章标题
cover: ./assets/cover.jpg
---
6.5 Node.js 版本过低
错误信息:
SyntaxError: Unexpected token 'with'
wenyan-cli 需要 Node.js 20+:
# 检查版本
node --version
# 升级 Node.js
curl -fsSL https://deb.nodesource.com/setup_20.x | bash -
apt-get install -y nodejs
七、总结
7.1 完整工作流程
1. 安装 OpenClaw
↓
2. 安装 wechat-publisher 技能
↓
3. 配置公众号凭证(AppID + AppSecret)
↓
4. 写 Markdown 文章(带 frontmatter)
↓
5. 对 OpenClaw 说:"帮我发布这篇文章"
↓
6. 公众号后台审核并发布
7.2 核心优势
| 方式 | 传统手动 | 使用技能 |
|---|---|---|
| 复制内容 | 需要 | 自动 |
| 调整格式 | 需要 | 自动 |
| 上传图片 | 需要 | 自动 |
| 添加标签 | 需要 | 自动 |
| 时间成本 | 10-15 分钟 | 1 分钟 |
技能的优势:
- 一次安装,长期使用
- Markdown 写作,专注内容
- 自动上传图片,无需手动
- 格式统一,美观专业
- 可集成到自动化工作流
7.3 下一步
- 尝试写第一篇文章并发布
- 配置定时任务实现自动化
- 集成到 CI/CD 流程
- 探索更多技能(CSDN、知乎、掘金等)
参考资料
如果你觉得这篇文章有帮助,欢迎点赞、收藏、关注!