OpenClaw + Halo:把“技能”变成可复用的内容自动化生产力

很多人把自动化理解成“写一个脚本跑一次”。但在实际内容运营里,真正有价值的是:**把一次性脚本升级成可持续演进的技能体系**。

这篇文章分享我最近在 OpenClaw 里对 Halo 2.x 自动化发布能力的整理思路:从“能跑”进化到“能维护、能迭代、能复用”。

一、为什么要把 Halo 自动化做成 Skill?

如果只是临时发一篇文章,手动操作也许更快。

但当你开始重复做这些动作:登录后台、上传图片、粘贴正文、发布确认、检查结果——重复动作最怕两件事:**不稳定** 和 不可继承。

OpenClaw 的 Skill 化方式,核心价值在于:

  1. 流程结构化:把登录、上传、发布、校验拆成明确模块。

  2. 2. 知识沉淀化:把选择器基线、故障排查、流程规范写进 references。

  3. 3. 脚本参数化:不再硬编码标题、正文、账号,改为参数输入。

二、V2 升级做了什么?

1) upload_images.js:独立上传能力

  • 支持本地文件 --files

  • - 支持远程图片 `--urls`

  • - 自动上传到 Halo 附件库并输出 JSON

2) publish_post.js:支持占位替换

正文模板可写 {{IMAGE_1}}{{IMAGE_2}},发布前自动替换为真实附件链接。

3) run_publish_v2.js:一键编排流程

组合执行:**上传 → 生成替换映射 → 发布**。

三、可维护结构

  • scripts/:可执行入口

  • - scripts/lib/:复用逻辑

  • - configs/:配置与凭据模板

  • - references/:playbook / selectors / troubleshooting

这让技能具备了持续升级能力,而不是一次性脚本。

四、示例命令

node skills/halo-automation/scripts/run_publish_v2.js \
  --title "OpenClaw + Halo 技能化发布实战" \
  --content-file /path/post.md \
  --files "/path/a.png,/path/b.jpg"
```

纯文本发布:

```bash
node skills/halo-automation/scripts/publish_post.js \
  --title "OpenClaw + Halo 技能化发布实战" \
  --content-file /path/post.md
```

## 五、下一步建议

1. 增加标签/分类/摘要/封面参数
2. 增加“仅草稿”模式
3. 发布后自动回传文章 URL
4. 增加 smoke test 快速体检

---

自动化的终点,不是“能跑一次”,而是“让下一次更轻松”。