内容创作全流程自动化:OpenClaw+大模型搞定选题+写稿+多平台发布
2026/6/21 2:18:37 网站建设 项目流程

做垂直内容创作的朋友,大概率都陷入过这种死循环:每天一睁眼先刷遍各大平台热榜找选题,憋半天写完稿子,还要挨个平台调整格式、上传封面、点发布。
一套流程下来两三个小时就没了,真正用来打磨内容逻辑、补充实战案例的时间被挤得少之又少。更糟的是哪天忙起来漏发一个平台,流量又少一截。

我之前也是这么手动跑了大半年,直到用OpenClaw搭了这套全自动化内容流水线,从选题生成、稿件撰写到多平台发布,全程只需要最后人工过一眼内容,每天实打实省出三个小时。
跑了一个多月,除了偶尔平台登录态过期需要更新,基本没出过什么大问题。今天把完整的落地步骤和踩过的坑整理出来,照着做你也能搭出自己的内容自动化生产线。

一、整体自动化架构设计

整套方案的核心思路是拆解和解耦:把内容生产的每个环节都拆成独立的能力模块,用工作流串起执行顺序,每个模块自带异常重试和状态追踪,不用我们自己写调度和容错逻辑。

整体分为四层,各司其职:

输出与通知层

能力技能层

Agent编排层

触发层

定时触发

手动触发

OpenClaw TaskFlow 工作流引擎

选题生成Skill

内容撰写Skill

格式适配Skill

多平台发布Skill

技术博客平台

微信公众号

资讯内容平台

执行结果推送

执行链路很清晰:触发条件启动工作流 → 采集热榜生成备选选题 → 基于选题生成完整稿件 → 适配不同平台的格式要求 → 并发发布到各个平台 → 推送执行结果。
中间任意一步失败都会自动重试,重试不成就发告警通知人工介入,不用人盯着执行进度。

二、前期准备工作

正式动手之前先把依赖环境备齐,避免中途卡壳:

  1. 一套可用的OpenClaw运行环境,推荐部署在云服务器上,保证7x24小时稳定运行
  2. 顺手的大模型API服务,用来生成选题和正文,根据自己的内容领域选合适的模型即可
  3. 各发布平台的访问凭证:有开放API的平台准备好接口密钥,无API的准备好登录态Cookie
  4. Python基础依赖:requestsmarkdownbeautifulsoup4,用来写Skill的业务逻辑

三、分步落地:封装四大核心能力模块

所有功能都以Skill的形式封装,每个模块独立维护,后续调整某个环节不用动整个流程。
每个Skill遵循标准目录结构:一个SKILL.md元信息文件加业务执行脚本,放在skills/目录下即可被Agent识别调用。

3.1 选题生成Skill:热榜采集+智能选题

选题是内容的第一步,也是最耗时间的环节。我们不用自己挨个刷平台,让Agent自动采集各大社区公开热榜数据,再结合账号定位筛选出合适的方向。

先写SKILL.md定义技能元信息,这是Agent识别和调用技能的唯一依据:

---name:topic-generatordescription:采集技术社区热榜,结合账号定位生成备选选题和标题user-invocable:truemetadata:openclaw:emoji:"💡"requires:bins:["python3"]---## 调用参数-category:内容领域,默认技术方向-count:生成选题数量,默认5个## 返回格式返回JSON数组,每个元素包含选题方向、推荐标题、核心切入点三个字段。

核心执行逻辑分两步:先采集公开热榜数据,再调用大模型筛选生成选题。这里给出核心采集片段:

importrequestsfrombs4importBeautifulSoupdeffetch_hot_list():"""采集技术社区公开热榜数据"""headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64)"}resp=requests.get("https://xxx.com/hot",headers=headers,timeout=10)soup=BeautifulSoup(resp.text,"html.parser")items=soup.select(".hot-item .title")return[item.text.strip()foriteminitems[:20]]

拿到热榜后,把账号定位、历史内容风格和热榜话题一起喂给大模型,生成符合账号调性的备选选题。
我自己的习惯是生成5个备选,挑1个来写,剩下的存进选题池留着以后用。

3.2 内容撰写Skill:结构化生成+风格对齐

很多人用大模型写稿效果差,其实不是模型不行,是prompt写得太笼统。只说“写一篇技术文章”,生成的内容必然空泛。

正确的做法是给足结构化约束:文章结构、字数范围、风格要求、必须包含的实战点,最好再附上1-2篇自己的过往文章做风格参考,生成的内容调性会贴合很多。

核心调用片段如下,把结构要求拆成明确的参数传给模型:

defgenerate_article(topic,reference_articles):prompt=f""" 请围绕选题「{topic}」写一篇技术文章,要求: 1. 字数2000字左右,采用总分总结构,分4-5个小标题 2. 风格务实,多讲落地步骤和踩坑经验,少讲空泛理论 3. 参考以下过往文章的语气和结构:{reference_articles[:2]}直接返回Markdown格式的正文,不要多余说明。 """returncall_llm_api(prompt)

不要指望一次生成就完美。可以再加一轮优化步骤,让模型针对开头、结尾、案例部分做细化,内容质量会再上一个台阶。

3.3 格式适配Skill:一次生成,多平台适配

不同平台的内容格式要求天差地别:技术博客支持标准Markdown,公众号需要带样式的富文本,资讯平台要去掉复杂格式、缩短段落适配移动端。
如果手动挨个改,比写稿子还费时间。

我们做一个统一的格式转换模块,生成一份原稿,自动适配成各个平台的版本。核心做三件事:调整标题层级、提取摘要、转换对应格式。

以Markdown转公众号富文本为例,核心片段如下:

importmarkdownfrommarkdown.extensionsimportextradefmd_to_wechat_article(md_content):"""Markdown转公众号适配的HTML格式"""html=markdown.markdown(md_content,extensions=['extra','codehilite'],output_format='html5')# 注入公众号默认样式,调整行间距和字体returnf"<div class='article-content'>{html}</div>"

除此之外,还要自动提取文章摘要、生成封面图占位,不同平台按需取用,不用每次手动复制调整。

3.4 多平台发布Skill:API+浏览器自动化双方案

发布环节是最繁琐的,但不是所有平台都有开放的发布接口。针对不同平台,我们用两套方案组合覆盖:

  • 有开放API的平台:直接调用官方接口发布,稳定高效,不容易触发风控
  • 无开放API的平台:用Playwright驱动浏览器,模拟人工操作完成发布,兼容性拉满

API发布的逻辑很简单,传标题、内容、分类这些参数就行,这里重点说浏览器自动化发布的核心逻辑:

defpublish_by_browser(platform,title,content):"""用浏览器自动化模拟发布"""page=browser.new_page()page.goto(platform["publish_url"])page.fill("#title-input",title)page.fill("#content-editor",content)page.click("#publish-btn")page.wait_for_selector(".publish-success")returnTrue

这里有个关键细节:不要每次发布都重启浏览器,复用同一个浏览器上下文保存登录态,既能提升速度,也能减少账号异常检测的概率。

四、工作流编排:串起完整自动化链路

四个独立Skill封装好之后,用TaskFlow把它们串成一条完整的流水线,定义好执行顺序、依赖关系和重试策略。
相比手动拼接命令,TaskFlow支持状态持久化,某一步失败了修好之后可以从断点续跑,不用从头再来。

创建工作流文件content-publish-flow.js,核心结构如下:

const{taskflow}=require('@openclaw/sdk');module.exports=taskflow({name:'daily-content-publish',description:'内容创作全流程:选题→写稿→适配→多平台发布',steps:[{id:'generate-topics',task:async(ctx)=>{constres=awaitctx.tools.exec({cmd:'python3 skills/topic-generator/run.py tech 5'});returnJSON.parse(res.stdout);},retry:2},{id:'write-article',depends:['generate-topics'],task:async(ctx)=>{consttopic=ctx.state['generate-topics'][0].title;constres=awaitctx.tools.exec({cmd:`python3 skills/article-writer/run.py '${topic}'`});return{topic,content:res.stdout};},retry:1}// 格式适配、多平台发布步骤同理配置]});

我最开始图省事做过全自动化,结果连续两篇内容方向跑偏,发出去效果很差。加了人工审核节点之后,只需要花30秒确认选题,后续全程不用管,兼顾了效率和质量。
TaskFlow原生支持审批节点,配置approval: required即可在指定步骤暂停,等待人工确认后继续执行。

五、定时任务与运行配置

工作流调试通过后,最后一步就是配置定时触发,让整个流程自动跑起来。
OpenClaw内置了Cron调度器,不用额外装第三方定时任务服务,一条命令就能配置。

比如设置每周一、三、五早上8点生成选题,推送确认通知:

openclawcronadd\--name"内容创作定时选题"\--cron"0 8 * * 1,3,5"\--tz"Asia/Shanghai"\--message"执行选题生成Skill,生成5个技术方向备选选题,推送到通知群"

确认选题后,手动触发一次完整发布工作流即可。如果你的内容质量要求不高,也可以设置成全自动运行,到点直接写稿发布。

六、踩坑实录:这些问题我都替你踩过了

这套流程跑了一个多月,遇到过不少细节问题,都是很容易踩的坑,提前避开能省很多事。

坑1:大模型输出格式不稳定

最开始经常遇到模型返回的内容格式乱掉,没有按要求返回Markdown或者JSON,导致后续步骤解析失败。
解决方法:在prompt里明确输出格式,附上完整的输出示例;返回后先做格式校验,不通过就自动重生成,最多重试3次。

坑2:平台登录态频繁过期

用浏览器自动化发布的平台,Cookie隔一两周就会过期,导致发布失败。
解决方法:每次发布前先访问后台首页校验登录状态,检测到未登录就立刻发告警通知人工更新;不要在自动化浏览器里乱点其他页面,保持环境纯净,延长登录态有效期。

坑3:内容同质化过不了审核

纯大模型生成的内容很容易出现套话多、案例空的问题,不仅读者不爱看,还容易被平台判定为低质内容。
解决方法:建立自己的素材库,把平时项目里的踩坑经验、真实案例存进去,生成内容的时候自动注入素材,让文章有真实的细节支撑,不要全靠模型凭空生成。

坑4:同时发布触发平台风控

最开始图省事设置了多平台并发发布,结果连续两次被平台判定为批量搬运,流量受限。
解决方法:把并发发布改成串行,每个平台间隔3-5分钟,发布顺序错开;主平台先发,隔半小时再发其他平台,符合正常创作者的发布习惯。

七、写在最后

最后聊点真心话。

很多人觉得内容自动化就是“用AI洗稿凑数量”,其实不是。真正的提效,是把你从找选题、复制粘贴、挨个点发布这些没有创造力的机械劳动里解放出来,把时间省下来去打磨内容深度、补充实战案例、研究读者需求。

工具永远是辅助,内容本身的价值才是核心。OpenClaw这类执行型Agent的意义,就是帮你扛下所有脏活累活,让你把精力放在真正重要的事情上。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询