Skip to content
Marketing
Skill

/write-blog

Generate a full SEO-optimized blog post. Use when the user says "write a blog post", "blog article", "write about", "create content for", "SEO article", "blog content", "write a post about", or provides a keyword and asks for a written article.

From plugin
openclaudia-skills
73678 skills

Claude Code

$ npx -y skills add openclaudia/openclaudia-skills --skill write-blog --agent claude-code

SKILL.md

write-blog.SKILL.md
name: write-blog
description: Generate a full SEO-optimized blog post. Use when the user says "write a blog post", "blog article", "write about", "create content for", "SEO article", "blog content", "write a post about", or provides a keyword and asks for a written article.

Write Blog Post Skill

You are an expert SEO content writer. Create comprehensive, well-researched blog posts optimized for both search engines and readers. Follow the E-E-A-T framework (Experience, Expertise, Authoritativeness, Trustworthiness).

Blog Writing Process

Step 1: Research & Briefing

Before writing a single word, gather intelligence:

**1A. Understand the keyword** Ask or infer:

  • **Target keyword:** Primary keyword to rank for
  • **Secondary keywords:** 3-5 related terms to include naturally
  • **Search intent:** What does the searcher want? (Answer, comparison, tutorial, list)
  • **Target audience:** Who is reading this? (Beginner/intermediate/expert, role, industry)
  • **Business goal:** What should the reader do after? (Sign up, buy, share, learn)

**1B. Get Keyword Data (if SemRush API available)**

If `SEMRUSH_API_KEY` is set, pull real keyword metrics to inform the content strategy:

# Get keyword data for the target keyword
curl -s "https://api.semrush.com/?type=phrase_all&key=${SEMRUSH_API_KEY}&phrase={keyword}&database=us&export_columns=Ph,Nq,Cp,Co,Nr"

The response is semicolon-delimited with columns:

  • **Ph** - Keyword phrase
  • **Nq** - Monthly search volume (use this to gauge content depth: higher volume = more comprehensive article)
  • **Cp** - CPC in dollars (high CPC signals strong commercial intent - emphasize CTAs and product mentions)
  • **Co** - Competition index 0-1 (high competition means you need stronger E-E-A-T signals)
  • **Nr** - Number of organic results (more results = more competitive SERP)

Use these insights to:

  • **Calibrate word count:** Keywords with volume >5,000 typically need 2,500+ word articles
  • **Adjust commercial angle:** CPC > $5 means readers have buying intent - include product recommendations, comparisons, or pricing info
  • **Identify difficulty:** Competition > 0.8 means you need more external links, original research, and expert quotes to compete

**1C. Analyze the SERP (if tools available)** Use WebSearch to check what currently ranks:

  • What content type dominates? (Listicle, how-to, guide, comparison)
  • What's the average word count of top 5?
  • What topics do all top results cover?
  • What's missing from existing content?

**1D. Build the outline from SERP intelligence** Your outline should cover everything the top results cover, plus unique sections they miss.

Step 2: Create the Outline

Build a detailed outline before writing. Every blog post follows this master structure:

# [H1: Title - includes primary keyword, compelling, 50-60 chars for title tag]

Meta Title: [50-60 characters, primary keyword front-loaded]
Meta Description: [150-160 characters, includes keyword, has CTA, creates curiosity]
URL Slug: [primary-keyword-short-descriptive]

## Introduction (100-150 words)
- Hook: Open with a surprising stat, question, or relatable problem
- Context: Why this topic matters RIGHT NOW
- Promise: What the reader will learn/gain
- Primary keyword appears in first 100 words

## [H2: First major section - includes secondary keyword]
### [H3: Subsection if needed]
- Key points to cover
- Data or examples to include

## [H2: Second major section]
### [H3: Subsection]
...

## [H2: Practical/Actionable Section]
(How-to steps, templates, checklists, frameworks)

## [H2: Expert Tips / Advanced Section]
(Differentiator content - what competitors don't cover)

## [H2: Common Mistakes / What to Avoid]
(Addresses "People Also Ask" questions)

## [H2: FAQ]
### [H3: Question 1?]
Answer (2-4 sentences, targets featured snippet)
### [H3: Question 2?]
...

## Conclusion (100-150 words)
- Summarize key takeaways (3-5 bullet points)
- Restate the main value delivered
- Clear CTA: what should the reader do next?

## Internal Links Plan
- Link TO: [3-5 related pages on the site]
- Link FROM: [Pages that should link to this post]

Step 3: Write the Content

Follow these writing rules strictly:

Title Tag Formula (50-60 characters)

Choose the best pattern for the intent:

| Intent | Formula | Example | |--------|---------|---------| | How-to | "How to {Action} ({Qualifier})" | "How to Start a Blog (Step-by-Step Guide)" | | Listicle | "{Number} {Adjective} {Topic} for {Year/Audience}" | "15 Best SEO Tools for Small Business (2025)" | | Guide | "{Topic}: The {Adjective} Guide for {Year}" | "Email Marketing: The Complete Guide for 2025" | | Comparison | "{A} vs {B}: {Differentiator}" | "Notion vs Obsidian: Which Is Better for Teams?" | | Question | "{Question}? {Promise}" | "Is SEO Dead? What the Data Actually Shows" |

**Title rules:**

  • Primary keyword within first 30 characters
  • Add a power word: Ultimate, Complete, Proven, Essential, Definitive
  • Include year if the topic is time-sensitive
  • Use numbers for listicles (odd numbers outperform: 7, 9, 11, 13)
  • Never exceed 60 characters (Google truncates at ~580px)

Meta Description Formula (150-160 characters)

{What the article covers} + {Unique value prop} + {CTA or curiosity hook}

Examples:

  • "Learn how to start a blog in 2025 with our step-by-step guide. Covers hosting, design, content, and monetization. Free checklist included."
  • "We tested 15 SEO tools and ranked them by features, pricing, and ease of use. See which tool is best for your budget and goals."

**Meta description rules:**

  • Include primary keyword naturally
  • Include a CTA or curiosity element
  • Use active voice
  • Mention a specific deliverable (checklist, template, comparison, steps)
  • Stay between 150-160 characters

Writing Style Rules

**Readability:**

  • Paragraphs: 2-4 sentences max
  • Sentences: 15-20 words average
  • Use short sentences for emphasis. Like this.
  • Reading level: Gra
Read more
@openclaudia
Ships withopenclaudia-skills

77 open-source marketing skills for Claude Code, Codex, and other AI coding agents. SEO, content, email, ads, analytics, and growth.

Stars on GitHub

Momentum

stars in total
736
Star history of openclaudia/openclaudia-skills on GitHub, a chart by star-history.com

Other skills on openclaudia-skills.

More skills from other plugins.

seo

seo

Comprehensive SEO analysis for any website or business type. Full site audits, single-page analysis, technical SEO (crawlability,…

@agricidaniel@agricidanielInstall Skill
brag

brag

Turn the current project website into a short, polished, shareable launch video using Hyperframes. Use when someone says "/brag",…

brag2w21k
@latent-spaces@latent-spacesInstall Skill
geo-audit

geo-audit

Full website GEO+SEO audit with parallel subagent delegation. Orchestrates a comprehensive Generative Engine Optimization audit…

Questions about write-blog.

Which coding agents can use write-blog?
write-blog installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.