乐于分享
好东西不私藏

课外练习:OpenClaw 一句话发布微信公众号文章

课外练习:OpenClaw 一句话发布微信公众号文章

现阶段,我们只做基础练习,把 skill 装好,把 API 发布跑通,再把“发布公众号”这条规则写进 OpenClaw 的工作区。

这样以后你说:

给我把 D:\教程\OpenClaw\某篇文章.md 发布到微信公众号

OpenClaw 就会把“某篇文章”发布到公众号。

(后期配合搜索、排版、净化成当我们说:“去看看最近某某相关的新闻,给我发布一篇相关的公众号”,openclaw会自动去搜索相关信息,整理文本,排版,发布公众号。)


1. 安装 bun

npm install -g bun

检查

bun --version

能输出版本号就行。


2. 下载 skill 并放到指定目录

需要两个 skill:

  • • baoyu-format-markdown
  • • baoyu-post-to-wechat

从 GitHub 下载后,放到:

C:\Users\Administrator\.openclaw\workspace\skills

最后目录应该是:

C:\Users\Administrator\.openclaw\workspace\skills\baoyu-format-markdownC:\Users\Administrator\.openclaw\workspace\skills\baoyu-post-to-wechat

检查

Get-ChildItem "C:\Users\Administrator\.openclaw\workspace\skills"

能看到这两个目录就行。

(为什么要从GitHub上下载安装? 因为openclaw更新比较快,skill的作者第一时间会更新到GitHub,同步到Clawhub会有时间差。


3. 安装依赖

baoyu-format-markdown

cd "C:\Users\Administrator\.openclaw\workspace\skills\baoyu-format-markdown\scripts"bun install

baoyu-post-to-wechat

cd "C:\Users\Administrator\.openclaw\workspace\skills\baoyu-post-to-wechat\scripts"bun install

检查

安装结束后没有报错即可。


4. 配置 skill

baoyu-format-markdown

这个 skill 没有强制初始配置。

只要:

  • • skill 放对目录
  • • 依赖装好
  • • 系统里有 bun

就可以直接用。

它支持可选配置文件:

C:\Users\Administrator\.baoyu-skills\baoyu-format-markdown\EXTEND.md

没有也能跑。

baoyu-post-to-wechat

这个 skill 需要先配环境。

.env

文件位置:

C:\Users\Administrator\.baoyu-skills\.env

内容:

WECHAT_APP_ID=你的微信公众号AppIDWECHAT_APP_SECRET=你的微信公众号AppSecret

EXTEND.md

文件位置:

C:\Users\Administrator\.baoyu-skills\baoyu-post-to-wechat\EXTEND.md

内容:

default_theme: defaultdefault_color: bluedefault_publish_method: apidefault_author:need_open_comment: 1only_fans_can_comment: 0

检查

Get-Content "C:\Users\Administrator\.baoyu-skills\.env"Get-Content "C:\Users\Administrator\.baoyu-skills\baoyu-post-to-wechat\EXTEND.md"

能看到内容即可。


5. 测试发布环境

cd "C:\Users\Administrator\.openclaw\workspace\skills\baoyu-post-to-wechat\scripts"bun check-permissions.ts

检查

看到:

All checks passed. Ready to post to WeChat.

说明环境没问题。


6. 先测试一次 API 发布

准备测试文件:

D:\test\XXX.mdD:\test\cover.jpg

执行:

bun "C:\Users\Administrator\.openclaw\workspace\skills\baoyu-post-to-wechat\scripts\wechat-api.ts" "D:\test\XXX.md" --theme default --cover "D:\test\cover.jpg"

检查

如果输出里有:

"success": true"media_id": "..."[wechat-api] Published successfully!

说明 API 发布成功。

这一步没成功,不要往下做。


7. 先把发布工作流写清楚

先把你要 OpenClaw 执行的流程写成固定规则:

1. 外部文章先复制到 C:\Users\Administrator\.openclaw\workspace\USR2. 在 USR 中读取文章3. 用 baoyu-format-markdown 整理文章4. 准备 cover.jpg5. 用 baoyu-post-to-wechat API 发布6. 成功后归档到 D:\Work\项目名\7. 生成 publish-result.md8. 清空 USR9. 把结果反馈给用户

这一步的目的不是给人看教程,而是先把流程定死。

(为什么要拷贝到workspace\USR? 因为防止权限问题,openclaw访问workspace目录外的文件,需要通过授权,为了避免麻烦,我们统一将要操作的文件拷贝到USR目录。


8. 把这条规则写进 OpenClaw 工作区

这一步不能只在聊天里说。要写进 OpenClaw 后续能看到的工作区文件里。

当前最直接的做法:把这条规则写进工作区规则文件,例如:

C:\Users\Administrator\.openclaw\workspace\AGENTS.md

要写进去的内容可以是:

当用户说“给我把 XXX 文档发布到微信公众号”时,默认执行以下流程:1. 把外部文章复制到 C:\Users\Administrator\.openclaw\workspace\USR2. 在 USR 中读取文章3. 用 baoyu-format-markdown 整理文章4. 准备 cover.jpg5. 用 baoyu-post-to-wechat API 发布6. 成功后归档到 D:\Work\项目名\7. 生成 publish-result.md8. 清空 USR9. 把结果反馈给用户

检查

以后重新打开 OpenClaw 会话时,这条规则仍然在工作区文件里。

这才叫真正“告诉 OpenClaw”。


9. 再测试一次“一句话发布”

当前面都完成后,再测试:

给我把 D:\教程\OpenClaw\01-OpenClaw-到底是什么.md 发布到微信公众号

检查

如果 OpenClaw 会自动按固定流程去做:

  • • 复制到 USR
  • • 整理文章
  • • 准备封面图
  • • 发布
  • • 归档
  • • 清空 USR
  • • 最后反馈结果

说明这条规则已经生效。


10. 完成标准

下面这些都成立,才算打通:

  • • bun --version 正常
  • • 两个 skill 已放到 workspace\skills
  • • bun install 已完成
  • • .env 和 EXTEND.md 已写好
  • • bun check-permissions.ts 已通过
  • • wechat-api.ts 已测试发布成功
  • • 发布工作流已经写清楚
  • • 这条规则已经写进 OpenClaw 工作区文件
  • • 再说一句“给我把 XXX 文档发布到微信公众号”,OpenClaw 会按规则执行