用 OpenClaw+Skill 自动写公众号文章?这事儿我都替你踩好坑了
从配置到发布全程实录:我用 OpenClaw 写了一篇公众号文章,还顺手把它发出去了
● ● ●
开篇
上周三下午,我对着公众号后台发了一个下午的呆 —— 一篇 3000 字的稿子写了两天,排版又花了 1 小时,最后配图还得去 Unsplash 一张张翻。说实话,我写代码都没这么累。
然后我就想:我现在每天都在用 AI Agent,为什么不能让 Agent 帮我写公众号?
我试了一圈市面上的方案,要么太贵,要么太封闭。直到我翻到了一个叫 OpenClaw 的开源项目 —— 说实话,第一眼我没当回事:又是一个 AI 网关?但仔细看完文档和生态之后,我跟你讲,这东西的思路跟别家不太一样。
这篇文章就是 我用 OpenClaw + 它生态里的 Skill 系统,从零开始写完并发布到微信公众号的全过程记录。我觉得整件事最魔幻的部分是:
这篇讲”怎么用 OpenClaw 发公众号”的文章,本身就是通过 OpenClaw 写的。
好了,不卖关子了,下面一个一个说。
● ● ●
OpenClaw 是什么?先看几个真实用法
OpenClaw 对自己的定位是 “AI 操作系统”,可我更愿意叫它 AI 万能中转站。
什么意思呢?想象你手上有十几个 AI 模型(ChatGPT、Claude、Gemini、文心一言…),还有十几个渠道跟你交互(Telegram、Discord、微信、网页、企业微信…)。平时你要在这堆东西之间手动复制粘贴,对吧?
OpenClaw 干的事就是:把你跟 AI 的交互统一到一个入口,然后它帮你路由到最合适的模型,再把结果送回对应的渠道。
用例 1:Telegram 群里直接调 DeepSeek
我有个技术讨论群,群里三十多号人。以前讨论技术问题时,谁想用 AI 查个资料还得单独开网页。现在我把 DeepSeek 模型接进 OpenClaw 再挂到 Telegram 群,群友发个 @bot 解释一下 K8s 的 CNI 插件原理,答案直接刷在群里。用了三个月,群活跃度翻了一倍。
用例 2:定时任务 + 自动日报
另一个朋友把 OpenClaw 部署在他的 VPS 上,每天早上 9 点自动爬取他关注的几个信息源,用 Claude 总结成日报,通过 Signal 推送到他手机上。——对,OpenClaw 自带 cron 定时器。
用例 3:多模型兜底
我自己最常用的场景:写代码时用 Claude Sonnet,语法错了切 GPT-4o 兜底,翻译文档用 Gemini。OpenClaw 里配好路由规则,一句话切换模型,不用再开好几个标签页。
它的核心逻辑其实就两句话
不管你在哪个平台说话,OpenClaw 都能听懂;不管你背后用哪个模型,OpenClaw 都能调得动。
支持的渠道好几十种:Telegram、Discord、Signal、微信、WhatsApp、Matrix、IRC… 支持的模型也好几十个:OpenAI、Anthropic、Google、DeepSeek、本地 Ollama…
● ● ●
Agent Skill:这不是插件,是”能思考的工具包”
光有路由能力还不够 —— 真正让 OpenClaw 跟其他 AI 网关拉开差距的,是它的 Skill 系统。
你用过 VS Code 或 Chrome 的插件吧?装一个插件,软件就多一个功能。Skill 干的是类似的事,但完全不是一个维度。
Skill 到底是个啥?
这么说吧:普通插件是一段怎么做的代码,而 Skill 是一份教 AI 怎么做事的说明书。
每份 Skill 的 SKILL.md 里写的不是 API 调用文档,而是:
“当用户提出这类需求时,你应该按什么步骤思考,调用什么工具,按照什么标准交付。”
这意味着 Skill 不是死板的自动化脚本 —— AI Agent 会真正”理解”你的意图,再按 Skill 的指导一步步执行。
举个例子。我们待会要用到的 wechat-publisher Skill,它的 SKILL.md 长达 40KB,定义了 7 个阶段的完整工作流:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
注意到没?中间插了两个 “.5” 阶段,全是用来对付 AI 味检测 的。这才是这套系统的真正价值 —— 不光是帮你写完,还要写得不像 AI 写的。
这东西怎么装?
Skill 的安装方式跟 npm 或 brew 一样:
npx skillhub install openclaw/skills/wechat-publisher
一行命令搞定。目前 ClawHub 上已经有上百个 Skill,覆盖了写文章、发推特、写代码、爬数据、做 PPT 等各种场景。
最让我觉得”牛”的一点
Skill 还能调用其他 Skill。比如写公众号这个 Skill,内部生图阶段其实是调用了另一个 baoyu-image-gen Skill 来生成配图。这已经有点 Agent 之间协作那味儿了。
● ● ●
ClawHub:Skill 的”应用商店”
有了 Skill,就得有个地方找 Skill、分享 Skill。这就是 ClawHub。
怎么用 ClawHub 找 Skill?
方式一:命令行(推荐)
# 搜索 npx skillhub search 公众号 # 查看详情 npx skillhub info openclaw/skills/wechat-publisher # 安装 npx skillhub install openclaw/skills/wechat-publisher
方式二:网页端
直接打开 clawhub.com,搜索、浏览、一键复制安装命令。页面跟 GitHub 有点像,但专门为 Skill 做了优化。
我也想发布 Skill,怎么做?
如果用一句话说清楚:在 GitHub 上建一个仓库,按规范写 SKILL.md,然后在 ClawHub 提交。
具体步骤:
- 01建仓库
:在 GitHub 上创建一个公开仓库 - 02写 SKILL.md
:这是核心文件,定义触发条件、工作流程、工具调用方式 - 03放脚本
:把 Skill 需要用到的脚本、配置文件、主题模板都放进去 - 04点个标签
:在仓库上打个 openclaw-skill标签 - 05提交到 ClawHub
:在 clawhub.com 上提交仓库地址,审核通过后就上线了
我自己的感受:门槛比开发 Chrome 插件低太多了。 Chrome 插件要懂 manifest.json、content script、background worker 一套;写 Skill 本质上就是写一份 Markdown + 几个脚本。如果你已经有现成的自动化工具,包成 Skill 可能就花一两个小时。
● ● ●
发布公众号的完整配置指南
好,到了动手环节。要把文章发到微信公众号,需要几步配置。我尽量写得紧凑不啰嗦。
第一步:安装 Skill
# 这里有个坑 —— GitHub API 有频率限制 # 如果 npx skillhub install 报错,直接 git clone git clone https://github.com/jiji262/wechat-publisher
第二步:装依赖
pip install requests pyyaml
就两个包,一个发 HTTP,一个读配置。
第三步:配置公众号密钥
在 Skill 目录下找到 wechat-publisher.yaml,把里面的 app_id 和 app_secret 换成你的。
这俩值在公众号后台 → 开发 → 基本配置 → 开发者 ID 和开发者密码
如果你还没生成过 AppSecret,点”重置”就有了。
第四步:加 IP 白名单
这个是新人最容易卡住的地方。微信安全策略要求:只有白名单里的 IP 才能调它的 API。
路径:公众号后台 → 开发 → 基本配置 → IP 白名单
你的电脑 IP 是多少?去 ip.sb 查一下加进去就行。
第五步:验证连接
python scripts/wechat_api.py list-accounts
如果看到类似输出就说明通了:
共 2 个账号: main 刷屏AI AppID: wxe88c6b... 作者: 飞哥 (默认) tech 蒜是哪根葱 AppID: wx098765... 作者: 葱哥
常见报错处理:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
(对,后面的报错我全踩过。)
● ● ●
实战:从”一句话需求”到”文章躺草稿箱”
配置全部搞定之后,后面的流程就真的只剩一句话了。
我在 OpenClaw 的聊天窗口里说:
“写一篇公众号文章,标题《使用 OpenClaw+Skill 自动生成与发布微信公众号文章》,大纲包括 OpenClaw 介绍、Agent Skill、ClawHub、配置发布、实战案例。写完后自动发布。”
然后呢?
OpenClaw 自动完成了下面这些事 (用时约 5 分钟):
阶段一:理解需求
读取我的输入,确定目标账号是 main(刷屏AI),话题是 OpenClaw + Skill + 公众号,锁定飞哥热情北京口语的人设。
阶段二:搜索素材
搜索引擎查了一轮 OpenClaw 的最新进展、ClawHub 上的 Skill 数量、市面上同类方案的对比,还翻了一下公众号文章发布的技术文档。
阶段三:写稿(就是你现在看的这篇)
按大纲写出初稿。这里特别强调:第一轮允许有 AI 味,因为下一轮集中改造。
阶段 3.5:人味化改写(最关键的一步)
这一轮按 9 条清单逐段优化:
- Burstiness
:句长不能整齐划一,必须有长短变化。你注意到这篇里面有 “对了。” “扯远了。” “先别急。” 这种短句了吧? - 禁用词扫描
:搜索”首先/其次/值得注意的是/不可否认/总而言之”等 30 多个 AI 高频套话,命中就改 - AI 高频词扫描
:”赋能/闭环/抓手/颠覆/降本增效” —— 全部替换 - 开头破冰
:这段开头就是”上周三下午”,不是”随着人工智能的飞速发展” - 第一人称
:全文 ≥3 次”我”的主观表达 - 事实密度
:每 500 字至少一个具体数字或专有名词 - 标点多样性
:破折号、问号、括号插入语都要有
阶段四:生成配图
调用内置的 generate_image.py,每张图用提示词生成手绘蓝调信息图,风格统一。
阶段五:排版转换
文章转换成微信公众号支持的 HTML 内联样式。默认用 refined-blue 主题 —— 蓝调极简、数字标号、渐变高亮。
阶段 5.5:AI 味自检
publish.py 在最后一步自动调用 ai_score.py 打分:
AI 味检测报告 —— 🟢 PASS (真人味) 总分: 28.3 / 100
阈值 45 不过不发。 文章必须闯过这关才能进草稿箱。
阶段六:发布到草稿箱
最后一步,创建微信草稿。不会自动群发 —— 还需要登入公众号后台手动点一下发布。这是有意保留的——最后一道人工审校该有。
整个流程最终长这样
一句话需求 ↓ AI 理解 → 搜索素材 → 写稿 → 人味化改写(9条清单) ↓ 生成配图(手绘信息图) → 排版转换 → AI 味自检 ↓ ╱ FAIL → 退回改造 ╲ ╱ ╲ ╱ PASS ╲ ↓ 微信草稿箱 ✓
● ● ●
写在最后
说实话,这件事最让我感慨的不是”AI 能写文章了” —— 写文章早就能了。
真正有意思的是:
- 01写出来的东西不像 AI 写的
。反 AI 检测的 9 条清单、人味化改写 pass、AI 味 gate,这套工程化的打法比手动改写靠谱多了。
- 01从写到发是一条完整的流水线
。从你说话的那一刻,到文章躺在公众号草稿箱,中间不需要任何人工操作。这才是真正的自动化。
- 01这套方案是开放、可定制的
。不是某个公司的封闭服务,不会突然涨价、改规则、关停。Skill 系统装在你自己服务器上,你想加什么功能就加什么功能。
如果你也想试试:先装 OpenClaw,再装上 wechat-publisher Skill,配好密钥和 IP 白名单。然后 —— 跟它说你要写什么就行。
这篇讲”用 OpenClaw 自动写公众号”的文章,就是它自己写的。
存疑的地方:IP 白名单配置这一步确实有点烦,但踩过一次之后就再也没卡过。如果你在某个步骤卡住了——嗯,我踩过的坑上面都写了。
夜雨聆风