Skip to content
Marketing
Skill

/write-content

Use when writing a complete SEO article. Includes the full anti-AI-slop ruleset (banned vocabulary, banned phrases, banned structural patterns) and voice rules. The agent researches the SERP itself if needed — no keyword data exports required.

From plugin
superseo-skills
37811 skills

Claude Code

$ npx -y skills add inhouseseo/superseo-skills --skill write-content --agent claude-code

SKILL.md

write-content.SKILL.md
name: write-content
description: Use when writing a complete SEO article. Includes the full anti-AI-slop ruleset (banned vocabulary, banned phrases, banned structural patterns) and voice rules. The agent researches the SERP itself if needed — no keyword data exports required.

Write Content

Writes a complete SEO-optimized article. Four phases: research → content type decision → knowledge extraction → write. Includes the full anti-AI-slop ruleset and the voice rules that make the output sound like a practitioner, not a press release.

Input

  • **Topic or target keyword** (required)
  • *(Optional)* An existing content brief — skip the research phase if provided
  • *(Optional)* Expert interview output from the `expert-interview` skill

If no topic is given, ask for one before proceeding.

Business context persistence

Business context (audience, tone, language, brand voice, examples) shapes every article. Don't re-ask these questions every session.

**First use**: ask 4-5 questions and save the answers somewhere persistent in your agent's environment. Use the safest default first:

  • **Claude Code**: `~/.claude/projects/<path>/memory/business-context.md` is the recommended default. Do NOT write to `./CLAUDE.md` unless the user explicitly asks for it — `CLAUDE.md` is the user's project instructions file and appending unsolicited content to it can surprise them on every subsequent agent turn.
  • **Claude Desktop / Claude.ai**: save to a Project's context or a pinned note.
  • **Cursor**: `.cursor/rules/business-context.md`.
  • **Any other agent**: `seo-context.md` in the working directory.

Always confirm the write location with the user before saving. If any of these are unavailable or the user objects, fall back to re-asking the questions each session.

**Every use after that**: load that file first. If missing, ask where the user saved it or re-ask the questions.

Questions on first use:

  • What does the business do, and who is it for?
  • What's the brand's tone of voice? (Professional / Casual / Technical / Authoritative / Conversational)
  • What language should content be written in?
  • What topics should NEVER appear? (compliance, competitor mentions, etc.)
  • Who are the 2-3 main competitors?

Phase 1: Research

If a content brief wasn't provided, Google the topic and read the top 5 results. Note: what formats are ranking, what angles exist, what gaps you see. 3-5 bullet points, not a full brief.

Skip this phase entirely if a brief or prior conversation context already contains SERP analysis.

Phase 2: Content Type Decision

Based on what's ranking, pick a content type: how-to, definition/explainer, comparison (X vs Y), listicle/roundup, product review, case study, pillar/ultimate guide, FAQ, landing page, service page, news/trend analysis.

State it plainly: "The top results for [keyword] are all [format]. I'll write a [content type] with [key structural element]. Sound good, or did you have something else in mind?"

Wait for confirmation. If the user already asked for the article in one go, or there's nobody to respond (autonomous run), state your choice with a one-line reason and keep going.

Load `references/content-types-overview.md` for the decision table covering all 23 content types. Then load the specific template from `references/content-types/<type>.md` (e.g., `references/content-types/how-to.md`) for H1/H2 structure, schema, featured snippet format, CTA placement, word count targets. The 19 content types bundled as full templates: how-to, definition, comparison, listicle, pillar-page, faq-page, landing-page, service-page, case-study, statistics-page, news-article, glossary-page, alternatives-page, buying-guide, product-page, category-page, integration-page, location-page, programmatic-page. For the 4 types covered only by the overview table (thought-leadership, product-reviews, pricing-pages, about-pages), those live under `eeat-audit/references/content-types/` because the E-E-A-T bar for them is the load-bearing factor.

Phase 3: Knowledge Extraction

Ask 2-3 quick questions to extract unique knowledge the user has. Pick from:

  • "What do most people get wrong about [topic]?"
  • "Can you give me a specific example — a client, a project, a number?"
  • "What surprised you when you actually did this?"
  • "Who should NOT follow this advice, and why?"

Ask one at a time. Keep it quick.

If the user can't or won't answer — autonomous run, or they skip the questions — write from Phase 1 research alone and note in the delivery where first-party input would lift the article.

**Adapt style**:

  • Newer/smaller site, less SEO-savvy user: conversational, explain why each question matters
  • Established site, experienced user: fast, direct, no hand-holding

Phase 4: Write the Article

**Length**: Do not target a specific word count. Match the depth of top-ranking content from Phase 1. Length follows intent and competition — never pad to hit a number.

Produce the complete article in clean markdown. Follow ALL of these rules:

Voice and Stance

  • Write like a practitioner talking to a peer. Not a textbook, not a press release.
  • Take clear positions. "We tested this and X works better than Y" beats "both X and Y have merits."
  • Use "you" and "I/we" — write to one person, not an audience.
  • Include specific numbers, names, dates. Never "many companies" — always "[Company] in [year]."
  • Specifics must be real: pulled from the Phase 1 research, the interview answers, or the business context. Never invent a number, name, study, or citation — an invented specific is worse than a generic sentence. No real one available? Ask, or cut the claim.
  • Weave in interview answers as first-person experience. Preserve phrasing where it sounds natural.
  • Use contractions: "doesn't" not "does not."
  • Show thinking changing: "At first I thought this was a branding problem — turns out it was pricing all along." Self-correction is a human signal.
  • Anchor in real context — reference current
Read more
@inhouseseo
Ships withsuperseo-skills

11 Claude skills for SEO: page audits, linkbuilding, article writing, E-E-A-T audits, semantic gap analysis, link building. Methodology from Koray Tuğberk, Kyle Roof, and Lily Ray, plus a generation-time anti-AI-slop ruleset. Production-tested at InhouseSEO

Stars on GitHub

Momentum

stars in total
378
Star history of inhouseseo/superseo-skills on GitHub, a chart by star-history.com

Other skills on superseo-skills.

eeat-audit

eeat-audit

Use when auditing a page for E-E-A-T signals. The agent reads the page and scores Experience, Expertise, Authoritativeness, and…

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-content.

Which coding agents can use write-content?
write-content 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.