blog-hexo Skill
Use this skill to manage the entire Hexo workflow:
- - Draft mode: create or update Markdown with
published: false front matter so it remains a draft. - Publish mode: polish existing posts, ensure SEO best practices, and run the Hexo commands to deploy.
Requirements
- - Node.js + npm/npx installed locally (Hexo CLI depends on Node 18+).
- Hexo CLI available (
npx hexo ...). - Local access to the Hexo blog repository path (ask the user if it is not documented in memory).
- Git credentials or deployment tokens configured so
hexo deploy can push to the hosting remote (e.g., GitHub Pages). - Permission to read/write Markdown, config, and public folders within that repo.
- Optional: ability to preview locally requires
npx hexo clean && npx hexo generate.
Draft Mode
Use this skill whenever the user wants to draft a Hexo blog post that should
not publish yet.
Front Matter Template
Always start new drafts with this exact block (update values as needed):
CODEBLOCK0
Notes:
- - Keep
published: false so hexo generate skips the draft. - When picking tags, consult the preferred list (AI, OpenClaw, Agent, Technical, Life) unless the user specifies otherwise.
- Set
title and date when drafting. Use the user’s timezone (default: America/Los_Angeles). - Tags listed are the common ones; remove or add as appropriate for the post.
Drafting Workflow
Path Confirmation
- - Before creating a file, check memory/reference notes for the blog path. If it isn’t specified, ask the user which local path to use.
- 1. Confirm the post topic, target keywords, audience, and tone.
- Create the Markdown file under the confirmed blog path (ask if unknown).
- Insert the front matter template above, filling in title/date/subtitle/tags as needed.
- Write the draft content (introduction → body with H2/H3s → conclusion). Follow the user’s SEO preferences if provided.
- Do not run
hexo deploy unless the user explicitly wants to publish. If you run hexo clean/generate to preview locally, the published: false flag keeps the draft out of the public site.
- - When ready to publish, remove
published: false and continue with the Publish Mode checklist below for SEO polish + deployment.
Reminders
- - Preserve existing posts—only add or edit the target draft file.
- Mention in updates whether the draft is ready for review or needs more info.
- When ready to publish, remove
published: false and follow Publish Mode (below) for SEO polish + deployment.
Publish Mode
Before editing, confirm the repository path and ensure you have permission to modify it. If the path is not in memory, ask the user directly.
Before removing published: false or running npx hexo deploy, explicitly confirm with the user that they want the post to go live. If confirmation is not granted, stop after preparing the draft.
SEO Writer
You write blog posts that rank on Google AND are worth reading. SEO without the soul-sucking keyword stuffing.
Before Writing
Get from the user:
- 1. Target keyword — The main term they want to rank for
- Secondary keywords — 3-5 related terms
- Search intent — Informational, transactional, navigational, or commercial?
- Target audience — Who's searching for this?
- Word count target — Default: 1,500-2,000 words
- Tone — Professional, casual, technical, etc.
SEO Writing Framework
Title (H1)
- - Include target keyword, ideally near the front
- Under 60 characters (so it doesn't truncate in search results)
- Make it compelling — it's competing with 9 other results on the page
- Formats that work: "How to [X]", "[Number] Ways to [X]", "[X]: The Complete Guide"
Meta Description
- - 150-160 characters
- Include target keyword naturally
- Write it like ad copy — it's your pitch in search results
- Include a reason to click
URL Slug
- - Short, keyword-rich, lowercase, hyphens between words
- INLINECODE15 not INLINECODE16
Content Structure
Introduction (100-150 words)
- - Hook the reader in the first sentence
- State what they'll learn
- Include target keyword in the first 100 words
Body — Use H2 and H3 headers
- - Each H2 should target a secondary keyword or subtopic
- H3s break up long sections
- Aim for 300 words max per section before a new header
- Use bullet points and numbered lists (Google loves them, readers love them)
Conclusion (100-150 words)
- - Summarize key takeaways
- Include a CTA (what should they do next?)
- Don't introduce new information
Keyword Placement Rules
- - Target keyword appears in: Title, first paragraph, one H2, conclusion, meta description
- Keyword density: 1-2% max. If it sounds forced, you've overdone it.
- Use variations: Synonyms, related phrases, natural language variations
- LSI keywords: Include semantically related terms throughout (Google understands context)
Internal & External Links
- - Internal links: Link to 2-3 other relevant pages on their site
- External links: Link to 2-3 authoritative sources (builds trust with Google)
- Anchor text: Descriptive, not "click here"
Readability
- - Short sentences. Vary length for rhythm.
- Short paragraphs (2-3 sentences max)
- Flesch reading ease: aim for 60+ (understandable by most adults)
- Use transition words
- Break up text with headers, lists, images (suggest image placements with alt text)
Featured Snippet Optimization
For "how to" or "what is" queries:
- - Include a concise definition or step-by-step list right after the relevant H2
- Use numbered lists for processes
- Use tables for comparisons
- Keep the snippet-target answer under 50 words
Hexo Command Workflow
Whenever you modify or create a post in the user-specified blog repository, confirm the path (ask if unsure) and run:
- 1. INLINECODE17
- INLINECODE18
- INLINECODE19
These commands rebuild the site and push to the configured remote using the user’s git credentials.
Improving Existing Markdown
You don’t just draft from scratch—- If this is a brand-new article that should stay unpublished, use the draft-hexo skill first to create the draft with published: false, then hand it here when ready to polish/publish.
you often receive an existing Markdown article. When that happens:
- - Preserve front matter (title, tags, dates).
- Read the current structure, then rewrite sections using the SEO framework above.
- Re-run the Hexo workflow afterwards so the live blog stays in sync.
Rules
- - Write for humans first, search engines second
- No keyword stuffing. Ever. Google is smarter than that.
- Every section should deliver value. No filler paragraphs to hit word count.
- Cite statistics and claims. "[Source]" placeholder is fine if you need to.
- Suggest where to add images, infographics, or embedded content.
Credits
- - Based on the original
ai-seo-writer skill from ClawHub. Thanks to the original author for the SEO framework; Jessie customized it for Hexo publishing.
blog-hexo 技能
使用此技能管理整个 Hexo 工作流程:
- - 草稿模式:创建或更新带有 published: false 前置元数据的 Markdown 文件,使其保持草稿状态。
- 发布模式:润色现有文章,确保遵循 SEO 最佳实践,并运行 Hexo 命令进行部署。
要求
- - 本地安装 Node.js + npm/npx(Hexo CLI 依赖 Node 18+)。
- 可用的 Hexo CLI(npx hexo ...)。
- 本地访问 Hexo 博客仓库路径(如果内存中未记录,请询问用户)。
- 配置 Git 凭据或部署令牌,以便 hexo deploy 能推送到托管远程仓库(例如 GitHub Pages)。
- 拥有对该仓库中 Markdown、配置和 public 文件夹的读写权限。
- 可选:本地预览需要运行 npx hexo clean && npx hexo generate。
草稿模式
当用户想要撰写一篇
尚未发布的 Hexo 博客文章时,使用此技能。
前置元数据模板
始终使用以下精确代码块开始新草稿(根据需要更新值):
title:
published: false
catalog: true
header-img: /img/article
header/articleheader.png
date: YYYY-MM-DD HH:mm:ss
subtitle:
tags: []---
注意:
- - 保持 published: false,以便 hexo generate 跳过该草稿。
- 选择标签时,除非用户另有指定,否则参考首选列表(AI、OpenClaw、Agent、Technical、Life)。
- 起草时设置 title 和 date。使用用户的时区(默认:America/Los_Angeles)。
- 列出的标签是常用标签;根据文章需要删除或添加。
起草工作流程
路径确认
- - 在创建文件前,检查内存/参考笔记中的博客路径。如果未指定,询问用户使用哪个本地路径。
- 1. 确认文章主题、目标关键词、目标受众和语气。
- 在确认的博客路径下创建 Markdown 文件(如果未知则询问)。
- 插入上述前置元数据模板,根据需要填写标题/日期/副标题/标签。
- 撰写草稿内容(引言 → 带有 H2/H3 的正文 → 结论)。如果用户提供了 SEO 偏好,请遵循。
- 不要运行 hexo deploy,除非用户明确要求发布。如果运行 hexo clean/generate 进行本地预览,published: false 标志会使草稿不进入公开站点。
- - 准备发布时,删除 published: false,并继续执行下面的发布模式清单,进行 SEO 润色和部署。
提醒
- - 保留现有文章——仅添加或编辑目标草稿文件。
- 在更新中说明草稿是否已准备好供审阅,或是否需要更多信息。
- 准备发布时,删除 published: false,并遵循发布模式(如下)进行 SEO 润色和部署。
发布模式
在编辑前,确认仓库路径并确保拥有修改权限。如果路径不在内存中,直接询问用户。
在删除 published: false 或运行 npx hexo deploy 之前,明确与用户确认他们是否希望文章上线。如果未获得确认,则在准备草稿后停止。
SEO 写手
你撰写能在 Google 上排名靠前且值得阅读的博客文章。SEO 不包含令人反感的堆砌关键词。
写作前
从用户处获取:
- 1. 目标关键词 — 他们希望排名的核心词
- 次要关键词 — 3-5 个相关词
- 搜索意图 — 信息型、交易型、导航型还是商业型?
- 目标受众 — 谁在搜索这个?
- 字数目标 — 默认:1500-2000 字
- 语气 — 专业、随意、技术性等
SEO 写作框架
标题(H1)
- - 包含目标关键词,理想情况下靠近开头
- 不超过 60 个字符(以免在搜索结果中被截断)
- 使其引人注目——它正在与页面上的其他 9 个结果竞争
- 有效的格式:如何 [X]、[数字] 种 [X] 的方法、[X]:完整指南
元描述
- - 150-160 个字符
- 自然地包含目标关键词
- 像广告文案一样撰写——这是你在搜索结果中的推销语
- 包含一个点击理由
URL 别名
- - 简短、关键词丰富、小写、单词之间用连字符
- /how-to-write-cold-emails 而不是 /how-to-write-the-best-cold-emails-that-get-replies-in-2024
内容结构
引言(100-150 字)
- - 第一句话吸引读者
- 说明他们将学到什么
- 在前 100 字内包含目标关键词
正文 — 使用 H2 和 H3 标题
- - 每个 H2 应针对一个次要关键词或子主题
- H3 用于拆分长段落
- 每个部分在新标题前最多 300 字
- 使用项目符号和编号列表(Google 喜欢,读者也喜欢)
结论(100-150 字)
- - 总结关键要点
- 包含行动号召(他们接下来应该做什么?)
- 不要引入新信息
关键词放置规则
- - 目标关键词出现在: 标题、第一段、一个 H2、结论、元描述
- 关键词密度: 最多 1-2%。如果感觉生硬,说明过度使用了。
- 使用变体: 同义词、相关短语、自然语言变体
- LSI 关键词: 在整个内容中包含语义相关的术语(Google 理解上下文)
内部和外部链接
- - 内部链接: 链接到网站上的 2-3 个其他相关页面
- 外部链接: 链接到 2-3 个权威来源(建立与 Google 的信任)
- 锚文本: 描述性,不要用点击这里
可读性
- - 短句。变化长度以创造节奏。
- 短段落(最多 2-3 句)
- Flesch 阅读易读性:目标 60+(大多数成年人能理解)
- 使用过渡词
- 用标题、列表、图片(建议图片位置并添加替代文本)拆分文本
精选摘要优化
针对如何做或什么是类查询:
- - 在相关 H2 后立即包含一个简洁的定义或分步列表
- 对流程使用编号列表
- 对比较使用表格
- 将针对摘要的答案控制在 50 字以内
Hexo 命令工作流程
每当你在用户指定的博客仓库中修改或创建文章时,确认路径(如果不确定则询问)并运行:
- 1. npx hexo clean
- npx hexo generate
- npx hexo deploy
这些命令会重建站点并使用用户的 Git 凭据推送到配置的远程仓库。
改进现有 Markdown
你不仅是从头起草——你经常收到现有的 Markdown 文章。发生这种情况时:
- - 保留前置元数据(标题、标签、日期)。
- 阅读当前结构,然后使用上述 SEO 框架重写各部分。
- 之后重新运行 Hexo 工作流程,以使实时博客保持同步。
规则
- - 首先为人写作,其次为搜索引擎
- 绝不堆砌关键词。Google 比那聪明。
- 每个部分都应提供价值。不要为了凑字数而写填充段落。
- 引用统计数据和声明。如果需要,可以使用[来源]占位符。
- 建议在何处添加图片、信息图或嵌入内容。
致谢
- - 基于 ClawHub 的原始 ai-seo-writer 技能。感谢原作者提供的 SEO 框架;Jessie 为其针对 Hexo 发布进行了定制。