Content Engine
From blank page to published, optimized, and promoted — in one workflow. This skill turns a topic or keyword into a researched, drafted, optimized, and publish-ready piece of content.
Why This Exists
Content creation with OpenClaw today requires manually chaining 4-5 skills: web research, writing, SEO optimization, CMS formatting, and social scheduling. This skill connects the full pipeline so you go from idea to published post in one flow.
The Pipeline
Content Engine runs in 5 phases. The user can run the full pipeline or start from any phase.
Phase 1: Research
When the user provides a topic or target keyword:
- 1. Competitor analysis: Use web_search to find the top 5-10 ranking articles for the target keyword
- Structure extraction: For each competitor article, note:
- Word count (approximate from snippets)
- H2/H3 headings and structure
- Key angles and arguments
- What's missing or weak
- 3. People Also Ask: Search for "[keyword]" and extract related questions
- Content gap identification: What do all competitors cover? What does nobody cover? The gap is the opportunity.
- Research brief output:
CODEBLOCK0
Phase 2: Draft
Generate a structured first draft using the research brief:
- 1. Check for brand voice: look in OpenClaw memory for stored brand guidelines, tone preferences, or writing style notes. If none exist, ask the user on first run and store for future use.
- Outline first: generate an outline with H2/H3 structure before writing. Show the user and get approval (or auto-proceed if they said "just write it").
- Write the draft following these principles:
- Open with a hook that addresses the reader's problem directly
- Use the gap opportunities from research as unique sections
- Include data points and specific examples (from research)
- Write for the target keyword naturally — no keyword stuffing
- End with a clear conclusion and call-to-action
- 4. Output: Markdown file saved to workspace
Phase 3: Optimize
SEO and readability optimization:
- 1. Meta description: Generate a compelling meta description under 155 characters that includes the target keyword
- Title tag: Optimize the title for search (include keyword, keep under 60 chars, make it compelling)
- Internal link suggestions: if the user has provided a sitemap or list of existing content, suggest internal links. Otherwise, note where internal links could go.
- Image alt text: suggest alt text for any images mentioned or planned
- Readability check:
- Flag paragraphs longer than 4 sentences
- Flag sentences longer than 25 words
- Suggest subheadings every 300 words if missing
- Check for passive voice overuse
- 6. Keyword integration check: verify the target keyword appears in title, first paragraph, at least one H2, and meta description
Output an optimization report appended to the draft:
CODEBLOCK1
Phase 4: Format & Publish
Format the content for the user's CMS and prepare for publication:
- 1. Detect CMS: check memory for CMS preference. Common options:
-
WordPress: use WordPress skill if available, or output HTML-ready content with featured image suggestions
-
Ghost: output in Ghost-compatible Markdown
-
Notion: create a Notion page via Notion skill if available
-
Markdown/Hugo/Jekyll: output as .md with proper frontmatter
-
No CMS: just output clean Markdown
- 2. Frontmatter generation (for static site generators):
CODEBLOCK2
- 3. Publish or save: if CMS integration is available, offer to publish directly. Otherwise, save the final file and tell the user where it is.
Phase 5: Promote
Generate social media promotion content:
- 1. Platform-specific posts: generate posts optimized for each platform:
-
LinkedIn: professional tone, 1-3 paragraphs, relevant hashtags
-
Twitter/X: hook + link, under 280 chars, 2-3 hashtags
-
Reddit: genuine value-add framing (not promotional), suggest appropriate subreddits
-
Hacker News: technical angle, factual title
- 2. Schedule: if Mixpost or Buffer skill is available, offer to schedule posts
- Email newsletter: offer to generate a newsletter blurb for the article
Output all promotional content in a single block:
CODEBLOCK3
Usage Modes
Full Pipeline
User: "Write a blog post about AI agent security best practices"
→ Run all 5 phases sequentially, showing output at each stage
Research Only
User: "Research what's ranking for 'openclaw tutorial'"
→ Run Phase 1 only, output the research brief
Draft from Research
User: "I already researched this topic, here are my notes: [notes]. Write the draft."
→ Skip Phase 1, run Phases 2-5
Optimize Existing Content
User: "Optimize this blog post for SEO" + [attached content]
→ Skip Phases 1-2, run Phases 3-5
Promote Existing Content
User: "Generate social posts for this article: [URL or content]"
→ Skip Phases 1-4, run Phase 5 only
Content Calendar
If the user asks for a content plan or calendar:
- 1. Research trending topics in their niche using web_search
- Cross-reference with their existing content (if known) to avoid duplication
- Suggest 4-8 topics for the next month with:
- Target keyword
- Estimated search volume (use web research clues)
- Difficulty assessment (how strong is the competition?)
- Recommended publish date
- 4. Store the calendar in memory for tracking
Storing Brand Context
On first use, ask the user about their brand voice and store in memory:
- - Tone: professional, casual, technical, friendly, authoritative?
- Audience: developers, marketers, business owners, general public?
- Formatting preferences: short paragraphs? lots of headers? code examples?
- Things to avoid: jargon level, competitors not to mention, topics to skip
- Existing content URL: for internal linking and avoiding duplication
Once stored, use these preferences for every future content generation without asking again.
Edge Cases
- - No keyword given: if the user just says "write about AI agents", help them choose a specific keyword first using research
- Very competitive keyword: warn the user and suggest long-tail alternatives
- Existing content: if the user's site already has a similar article, flag it and suggest updating instead of creating new
- Multiple languages: support content creation in any language the user requests, adjusting SEO practices for that language's search engine norms
- Short-form content: for social posts or email copy (not blog posts), skip Phases 1 and 3, go straight to writing + formatting
技能名称:content-engine
详细描述:
内容引擎
从空白页面到发布、优化和推广——一站式工作流。该技能将一个主题或关键词转化为经过研究、撰写、优化并可直接发布的内容。
为何存在
目前使用OpenClaw创建内容需要手动串联4-5项技能:网络研究、写作、SEO优化、CMS格式化和社交媒体排期。该技能连接了完整流程,让你从创意到发布一气呵成。
流程
内容引擎分5个阶段运行。用户可以运行完整流程,或从任意阶段开始。
阶段1:研究
当用户提供主题或目标关键词时:
- 1. 竞品分析:使用web_search查找目标关键词排名前5-10的文章
- 结构提取:对每篇竞品文章,记录:
- 字数(从摘要估算)
- H2/H3标题及结构
- 关键角度和论点
- 缺失或薄弱之处
- 3. 用户还问了:搜索[关键词]并提取相关问题
- 内容缺口识别:所有竞品覆盖了什么?无人覆盖什么?缺口即机会。
- 研究简报输出:
📊 研究简报:[关键词]
主要竞品(按排名):
- 1. [标题] — [URL] — ~[字数]字
关键角度:[一句话]
- 2. ...
常见结构:
- - 所有内容覆盖:[每个人都提到的主题]
- 缺口机会:[无人很好覆盖的主题]
用户还问了:
推荐角度:[基于缺口的独特见解]
推荐字数:[基于竞品平均值+20%]
阶段2:撰写
根据研究简报生成结构化初稿:
- 1. 检查品牌语调:在OpenClaw记忆中查找存储的品牌指南、语调偏好或写作风格说明。若无,首次运行时询问用户并存储供后续使用。
- 先列大纲:在写作前生成包含H2/H3结构的大纲。展示给用户并获得批准(如果用户说直接写,则自动继续)。
- 撰写初稿,遵循以下原则:
- 以直接解决读者问题的钩子开头
- 将研究中的缺口机会作为独特章节
- 包含数据点和具体示例(来自研究)
- 自然围绕目标关键词写作——不堆砌关键词
- 以清晰的结论和行动号召结尾
- 4. 输出:保存为工作区的Markdown文件
阶段3:优化
SEO和可读性优化:
- 1. 元描述:生成包含目标关键词、不超过155个字符的引人元描述
- 标题标签:优化搜索标题(包含关键词,不超过60个字符,使其吸引人)
- 内链建议:如果用户提供了站点地图或现有内容列表,建议内链。否则,注明可添加内链的位置。
- 图片替代文本:为提及或计划的图片建议替代文本
- 可读性检查:
- 标记超过4句话的段落
- 标记超过25个词的句子
- 建议每300字添加子标题(若缺失)
- 检查被动语态过度使用
- 6. 关键词整合检查:确认目标关键词出现在标题、第一段、至少一个H2和元描述中
输出附加在初稿后的优化报告:
🔍 SEO优化报告
标题标签:[优化标题]([字符数])
元描述:[元描述]([字符数])
目标关键词:[关键词]
└─ 标题中:✅
└─ 第一段中:✅
└─ H2中:✅
└─ 元描述中:✅
可读性:[评分/评估]
建议内链:[列表或提供站点地图以获取建议]
阶段4:格式化与发布
为用户的内容管理系统格式化内容并准备发布:
- 1. 检测CMS:检查记忆中的CMS偏好。常见选项:
-
WordPress:使用WordPress技能(如有),或输出带特色图片建议的HTML就绪内容
-
Ghost:输出为Ghost兼容的Markdown
-
Notion:通过Notion技能(如有)创建Notion页面
-
Markdown/Hugo/Jekyll:输出为带正确前置元数据的.md文件
-
无CMS:仅输出干净的Markdown
- 2. 前置元数据生成(适用于静态站点生成器):
yaml
title: [优化标题]
description: [元描述]
date: [今天]
tags: [相关标签]
categories: [相关分类]
- 3. 发布或保存:如果CMS集成可用,提供直接发布选项。否则,保存最终文件并告知用户位置。
阶段5:推广
生成社交媒体推广内容:
- 1. 平台特定帖子:为每个平台生成优化帖子:
-
LinkedIn:专业语调,1-3段,相关标签
-
Twitter/X:钩子+链接,不超过280个字符,2-3个标签
-
Reddit:真实价值导向(非推广),建议合适的子版块
-
Hacker News:技术角度,事实性标题
- 2. 排期:如果Mixpost或Buffer技能可用,提供排期帖子选项
- 邮件通讯:提供为文章生成通讯摘要的选项
将所有推广内容输出为一个区块:
📢 推广工具包:[文章标题]
LinkedIn:
[帖子文本]
Twitter/X:
[推文文本]
Reddit(建议子版块:r/[子版块1],r/[子版块2]):
[帖子文本]
通讯摘要:
[2-3句话的邮件摘要]
使用模式
完整流程
用户:写一篇关于AI代理安全最佳实践的博客文章
→ 依次运行所有5个阶段,在每个阶段显示输出
仅研究
用户:研究openclaw教程的排名情况
→ 仅运行阶段1,输出研究简报
从研究开始撰写
用户:我已经研究了这个主题,这是我的笔记:[笔记]。请撰写初稿。
→ 跳过阶段1,运行阶段2-5
优化现有内容
用户:优化这篇博客文章的SEO + [附加内容]
→ 跳过阶段1-2,运行阶段3-5
推广现有内容
用户:为这篇文章生成社交媒体帖子:[URL或内容]
→ 跳过阶段1-4,仅运行阶段5
内容日历
如果用户要求内容计划或日历:
- 1. 使用web_search研究其领域内的热门主题
- 与其现有内容交叉引用(若已知)以避免重复
- 为下个月建议4-8个主题,包括:
- 目标关键词
- 估计搜索量(使用网络研究线索)
- 难度评估(竞争有多强?)
- 推荐发布日期
- 4. 将日历存储在记忆中以便跟踪
存储品牌上下文
首次使用时,询问用户品牌语调并存储在记忆中:
- - 语调:专业、随意、技术性、友好、权威?
- 受众:开发者、营销人员、企业主、普通公众?
- 格式偏好:短段落?多标题?代码示例?
- 避免事项:术语水平、不提的竞品、跳过的主题
- 现有内容URL:用于内链和避免重复
一旦存储,在未来的每次内容生成中自动使用这些偏好,无需再次询问。
边缘情况
- - 未提供关键词:如果用户只说写关于AI代理的内容,先使用研究帮助他们选择具体关键词
- 竞争激烈的关键词:警告用户并建议长尾替代方案
- 现有内容:如果用户网站已有类似文章,标记并建议更新而非创建新内容
- 多语言:支持用户要求的任何语言的内容创建,并根据该语言的搜索引擎规范调整SEO实践
- 短格式内容:对于社交媒体帖子或邮件文案(非博客文章),跳过阶段1和3,直接进入写作和格式化