All skills
agricidaniel avatar
by Agrici.Danielagricidaniel/claude-seo18k stars
2,665

Comprehensive SEO analysis for any website or business type. Full site audits, single-page analysis, technical SEO (crawlability, indexability, Core Web Vitals with INP), schema markup, content quality (E-E-A-T), image optimization, sitemap analysis, and GEO for AI Overviews/ChatGPT/Perplexity. Industry detection for SaaS, e-commerce, local, publishers, agencies. Triggers on: SEO, audit, schema, Core Web Vitals, sitemap, E-E-A-T, AI Overviews, GEO, technical SEO, content quality, page speed. Use this hub only when the SEO domain is clear and the requested workflow is not; otherwise use the exact retained leaf or command.

Use this Skill: https://skilld.dev/gh/agricidaniel/claude-seo/seo

This session only. Nothing lands on disk.

referencesthinking-framework.md

≈1.7k tokens on demand. Your agent reads this file only when SKILL.md points to it.

The 10-Principle Audit Synthesis Framework

This is the canonical methodology claude-seo uses to assemble raw findings into strategically coherent recommendations. Every full-site audit and deep-page analysis walks through these ten principles before producing the final action plan.

The principles group into four phases:

Phase Principles
PERCEIVE OBSERVE (external) · OBSERVE (internal) · LISTEN
ANALYZE THINK · CONNECT (lateral) · CONNECT (system)
VALIDATE FEEL · ACCEPT
ACT CREATE · GROW

A recommendation that has not passed through all four phases is a finding, not a recommendation.


PERCEIVE

1. OBSERVE: the external input

Collect signals without interpreting them. For a website audit this means:

  • Raw HTML + rendered HTML (via "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run render_page.py)
  • Schema.org markup actually present (via seo-schema)
  • SERP visibility for the site's published topics (via seo-dataforseo / Google APIs when available)
  • Backlink + brand-mention landscape (via seo-backlinks)
  • Core Web Vitals field data from CrUX (via "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run pagespeed_check.py)
  • AI-search citation patterns (via seo-geo)
  • Competitor pages on the target's primary keywords

Discipline: do not score yet. Do not classify yet. Just collect.

2. OBSERVE: internal metacognition

Audit your own assumptions about the site before assembling recommendations. Common assumption traps in SEO:

  • Assuming the homepage represents the site (often it doesn't: programmatic pages or category pages drive traffic)
  • Assuming "low traffic" means "low value" (intent-matched low-volume can outconvert high-volume informational queries)
  • Assuming the brand wants what the analyst thinks is "best practice" (their constraint might be brand voice, legal, or trade-offs you don't see)
  • Assuming a CMS limitation is unfixable (often it isn't)
  • Assuming a 1.x finding still applies in 2.x (Google updates change the ground)

Discipline: for each major recommendation, ask "what assumption is this resting on?" If the answer surprises you, surface the assumption in the report so the user can reject it explicitly.

3. LISTEN: active receptivity

Read what the site, user intent, and platform signals are actually saying, not what you expect them to say.

  • Read the page's existing copy before recommending a rewrite. The brand voice is data.
  • Read the SERP for target keywords before deciding what page type to build. The SERP is Google's revealed preference for that intent.
  • Read user reviews / community discussions / Reddit threads for what customers actually ask about (versus what the marketing team thinks they ask about).
  • Read the user's prior conversations + memory if available; they may have ruled out approaches already.

Discipline: if a recommendation contradicts the SERP for the same intent, the SERP wins unless you can explain why this site is the exception.


ANALYZE

4. THINK: critical processing

Reduce the findings to first principles:

  • What is the page type (informational, transactional, navigational, local, commercial-investigation) and does the current layout serve that intent?
  • What is the eligibility floor for AI features (indexed + can be shown with a snippet)? If the page is not indexed, no AI work matters yet.
  • What is the highest-leverage constraint binding the site right now? (Often: a single technical defect (non-indexable, slow LCP, missing canonical) that gates everything else.)
  • What does Google's primary-source guidance say about the recommendation? When community claims and Google contradict, defer to Google (see ${CLAUDE_PLUGIN_ROOT}/skills/seo-geo/references/google-ai-optimization-guide.md).

Discipline: the highest-leverage constraint goes first in the action plan, even if it's less interesting than the "growth" recommendations.

5. CONNECT: lateral / associative

Combine findings from sub-skills that the user wouldn't naturally pair. Examples that frequently produce the highest-value recommendations:

  • seo-content thin-content finding × seo-cluster SERP-overlap data → consolidate three weak pages into one cluster hub.
  • seo-schema missing Product schema × seo-ecommerce UCP-not-declared → both close the same agent-era buying gap; bundle as one recommendation.
  • seo-geo low AI-citation rate × seo-backlinks brand-mention underweight → mentions matter 3× more than backlinks for AI citations; reframe link-building budget into PR / Reddit / YouTube.
  • seo-technical SPA detection × seo-content missing main-content → JS-blocked content is the upstream cause of the content finding.

Discipline: any single sub-skill finding that survives connection unchanged should be skeptical; it might be a symptom, not a cause.

6. CONNECT: system orchestration

Wire the validated recommendations into an executable sequence:

  • Which recommendation unblocks the most others? Do that first.
  • Which recommendations depend on each other? Sequence them.
  • Which recommendations can be parallelized? Surface that to the user so they can dispatch them.
  • Which recommendations need a tool that's not yet installed (e.g. Firecrawl for site crawl, DataForSEO for SERP data)? Flag the gap.

Discipline: the action plan is a dependency graph, not a list. If two recommendations cannot be done in either order, say so.


How to invoke the framework

Every full-site audit (/seo audit) and deep-page audit (/seo page) walks through PERCEIVE → ANALYZE → VALIDATE → ACT before emitting the action plan. The Critical / High / Medium / Low priority bucketing happens after the validation phase, not instead of it.

Single-purpose commands (/seo schema, /seo images, /seo technical, etc.) can skip the full loop when the user is asking a narrow question, but their recommendations should still pass at least THINK + ACCEPT before being emitted (does this rest on a sound first principle, and is the falsifiability surfaced?).

When to escalate to the user

These principles are claude-seo's; they are not the user's. Surface them for the user when:

  • A recommendation requires accepting an assumption you'd rather not own (CONNECT-lateral often produces these; surface the link and let the user confirm).
  • The validation phase flagged a brand-voice / operator-capacity / hard constraint you can see but cannot resolve.
  • The audit found no upstream constraint and is recommending an optimization that may be premature.

Phases 3 and 4 (VALIDATE and ACT): thinking-framework-validate-act.md.

Source: SKILL.md on GitHub

No alerts1d5 checks · Risk SAFE
  • Gen Agent Trust Hub1d

    The skill is a comprehensive SEO tool that orchestrates multiple sub-agents and scripts. It performs network operations to fetch SEO data from various APIs and crawls user-provided websites. While it follows complex analysis frameworks, it relies on a bundled script launcher and performs analysis on untrusted external web content, which carries a risk of indirect prompt injection.

  • Socket1d

    No alerts

  • Snyk1d

    Risk: LOW · No issues

  • Runlayer6mo

    1/5 files flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at ff87fce. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 3 days ago.

Activeupdated 3 days ago
user-invocable
true
argument-hint
[command] [url]
metadata
{
  "author": "AgriciDaniel",
  "version": "2.4.1",
  "category": "seo"
}

README badge

README badge for agricidaniel/claude-seo/seo