| name | content-writer |
| slug | aaron-content-writer |
| displayName | Content Writer · SEO文章写作 |
| summary | SEO文章写作/内容更新/排名恢复 |
| description | Use when the user asks to "write SEO content", "draft a blog post / landing page", "update outdated content", or "fix traffic/ranking decay"; two modes — new drafts pages with keywords, headers, snippets, and evidence boundaries; refresh scores decay, prioritizes update work, and produces a republish plan with GEO guidance. Not for AI-citation/GEO readiness scoring — use geo-content-optimizer; not for publish-gate scoring — use content-quality-auditor. SEO文章写作/内容更新/排名恢复 |
| version | 20.1.0 |
| license | Apache-2.0 |
| compatibility | Claude Code and compatible agent-skill hosts |
| homepage | https://github.com/aaron-he-zhu/aaron-marketing-skills |
| when_to_use | Use when writing SEO articles, blog posts, landing pages, or product descriptions targeting a keyword (mode: new), OR when updating outdated content, refreshing old articles, or recovering pages that lost traffic/rankings (mode: refresh). |
| argument-hint | [--mode new|refresh] <topic/keyword or URL of existing content> |
| metadata | {"author":"aaron-he-zhu","version":"20.1.0","discipline":"seo-geo","phase":"implement","geo-relevance":"high","hermes":{"tags":["marketing","seo-geo","implement"],"category":"seo-geo"},"openclaw":{"emoji":"🔍","homepage":"https://github.com/aaron-he-zhu/aaron-marketing-skills"}} |
Content Writer
Writes and updates SEO/GEO content across two modes: new drafts net-new pages against a target keyword and search intent; refresh diagnoses decay on an existing page, prioritizes the update, and produces a republish plan. Both modes apply the same CORE-EEAT constraints so a draft and a refresh clear the same quality bar before the auditor gate.
This skill does NOT compute the CORE-EEAT score or run vetoes — that is the publish-gate role of content-quality-auditor. This skill works the writing/updating lever and hands off. It also does not score AI-citation/GEO readiness in isolation (geo-content-optimizer) or produce meta tags/schema as standalone artifacts (serp-markup-builder).
Mode Selector
| Mode | Trigger | Output |
|---|
new | "write / draft SEO content", net-new page against a keyword, no existing URL | Ready-to-use draft (title, meta, H1/H2 structure, snippet block, links) |
refresh | "update outdated content", "fix decay", "refresh for [year]", an existing URL that lost traffic/rankings | Decay diagnosis, prioritized update plan, republish-date strategy, optional refreshed copy |
Selecting the mode: honor an explicit --mode. Otherwise infer: an existing URL plus a decline/staleness signal → refresh; a topic/keyword with no prior version → new. If the request says "refresh" but there is no existing URL, treat it as new and note the mismatch once (do not fabricate a prior version).
Quick Start
# mode: new
Write an SEO-optimized article about [topic] targeting the keyword [keyword]
Here's my content brief: [brief]. Write SEO content following this outline.
# mode: refresh
Refresh this article for [current year]: [URL/content]
Which of my blog posts have lost the most traffic? Refresh the worst one.
Update this content to outrank [competitor URL]: [your URL]
Skill Contract
Expected output: mode new → a ready-to-use draft; mode → a scored decay diagnosis plus a prioritized update plan (and optional refreshed copy). Both emit the standard handoff summary for .