#78 by GitHub stars

AgriciDaniel/claude-seo

Universal SEO skill for Claude Code. 26 sub-skills + 19 sub-agents covering technical SEO, E-E-A-T, schema, GEO/AEO, agent readiness (Lighthouse Agentic Browsing, WebMCP, llms.txt), backlinks, local SEO, e-commerce, international SEO, Google APIs, and PDF/Excel reporting. 9 optional extensions for live SEO data.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

extensions/ahrefs/skills/seo-ahrefs/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

extensions/banana/skills/seo-image-gen/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

extensions/bing-webmaster/skills/seo-bing/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

extensions/dataforseo/skills/seo-dataforseo/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

extensions/firecrawl/skills/seo-firecrawl/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

extensions/matomo/skills/seo-matomo/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

extensions/profound/skills/seo-profound/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

extensions/seranking/skills/seo-seranking/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

extensions/unlighthouse/skills/seo-unlighthouse/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-agentic/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-audit/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-backlinks/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-cluster/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-competitor-pages/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-content/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-content-brief/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-dataforseo/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-drift/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-ecommerce/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-flow/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-geo/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-google/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-hreflang/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-image-gen/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-images/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-local/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-maps/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-page/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-plan/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-programmatic/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-schema/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-sitemap/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-sxo/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

skills/seo-technical/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

6be93f45064f → 6be93f45064f

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 6be93f45064ffbadced572b5d5c95f55fd263af0

git clone --filter=blob:none --no-checkout https://github.com/AgriciDaniel/claude-seo.git .hotskills/agricidaniel-claude-seo && git -C .hotskills/agricidaniel-claude-seo checkout --detach 6be93f45064ffbadced572b5d5c95f55fd263af0 # Copy each selected skill directory from .hotskills/agricidaniel-claude-seo into .claude/skills/<skill-name>/
git clone --filter=blob:none --no-checkout https://github.com/AgriciDaniel/claude-seo.git .hotskills/agricidaniel-claude-seo && git -C .hotskills/agricidaniel-claude-seo checkout --detach 6be93f45064ffbadced572b5d5c95f55fd263af0 # Copy each selected skill directory from .hotskills/agricidaniel-claude-seo into .agents/skills/<skill-name>/
27.1kGitHub stars
2kstars in 7 days
35skills in this repository
29commits in 30 days

Heat

8.2
  • Star growth, last 7 daysAhead of 98% of tracked repositories
  • Star growth, last 24 hoursAhead of 95% of tracked repositories
  • Rank movement, last 7 daysAhead of 88% of tracked repositories
  • Commits, last 30 daysAhead of 86% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Aug 2, 2026Nov 7, 202627,063

Individual skills in this repository

How it works

seo-ahrefs

When your agent uses it

Ahrefs API analyst (extension). Reads referring domains, backlinks, organic keywords, and content explorer data via the tested @ahrefs/mcp@0.0.11 server. Pairs with seo-backlinks for multi-source confidence weighting.

What it loads into context

Frontmatter

96 tokens

Always available to the agent

SKILL.md

669 tokens

When the skill is activated

Reference documents

0 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Prerequisites
  2. Routing
  3. Output conventions
  4. Cross-skill delegation
  5. Cost guardrails
  6. Security

Scripts executed separately

  • ../../../../hooks/run-python-hook.js
  • ../../../../hooks/validate-schema.py
  • ../../../../scripts/claude-seo

Files

  • ../../../../.claude-plugin/marketplace.jsonasset3,243 bytes
  • ../../../../.claude-plugin/plugin.jsonasset1,495 bytes
  • SKILL.mdcore2,796 bytes
  • SKILL.mdcore2,796 bytes
  • SKILL.mdcore2,796 bytes
  • SKILL.mdcore2,796 bytes
  • SKILL.mdcore2,796 bytes
  • ../../../../hooks/hooks.jsonasset443 bytes
  • ../../../../hooks/run-python-hook.jsruns1,726 bytes
  • ../../../../hooks/validate-schema.pyruns12,665 bytes
  • ../../../../scripts/claude-seoruns2,730 bytes
Read SKILL.md

# seo-ahrefs

Live Ahrefs data via the tested `@ahrefs/mcp@0.0.11` server.
Package check (2026-07-10): verify the current Ahrefs MCP package source before changing this tested version.

## Prerequisites

- Run `extensions/ahrefs/install.sh` (Linux/macOS) or `install.ps1` (Windows) before using this skill.
- An Ahrefs API token (https://ahrefs.com/api).
- Node 18+ on `$PATH` for the MCP server.

Before calling any Ahrefs tool, verify the MCP is connected by checking
that any Ahrefs MCP tool is available in this session. If tools are
not available, tell the user the extension is not installed and
View the complete source on GitHub

Skills included

  • seo-ahrefs
  • seo-image-gen
  • seo-bing
  • seo-dataforseo
  • seo-firecrawl
  • seo-matomo
  • seo-profound
  • seo-seranking
  • seo-unlighthouse
  • seo
  • seo-agentic
  • seo-audit
  • seo-backlinks
  • seo-cluster
  • seo-competitor-pages
  • seo-content
  • seo-content-brief
  • seo-dataforseo
  • seo-drift
  • seo-ecommerce
  • seo-flow
  • seo-geo
  • seo-google
  • seo-hreflang
  • seo-image-gen
  • seo-images
  • seo-local
  • seo-maps
  • seo-page
  • seo-plan
  • seo-programmatic
  • seo-schema
  • seo-sitemap
  • seo-sxo
  • seo-technical

Repository facts

License
MIT
Created
Feb 7, 2026
Last pushed
Nov 1, 2026
Forks
3,496
Open issues
31
Project activity
Active

Rank over the last 12 weeks

Now #78 · best #78 · up 14 in 30 days

  1. #90 on Oct 25
  2. #81 from Oct 28 to Oct 29
  3. #82 from Oct 30 to Oct 31
  4. #80 on Nov 1
  5. #79 from Nov 2 to Nov 3
  6. #78 since Nov 4
33 earlier periods
  1. #102 on Aug 2
  2. #102 from Aug 7 to Aug 8
  3. #101 on Aug 9
  4. #102 from Aug 10 to Aug 12
  5. #103 from Aug 13 to Aug 15
  6. #102 from Aug 16 to Aug 17
  7. #100 from Aug 18 to Aug 20
  8. #101 on Aug 21
  9. #100 from Aug 22 to Aug 23
  10. #99 from Aug 24 to Aug 25
  11. #98 from Aug 26 to Aug 29
  12. #97 from Aug 30 to Aug 31
  13. #98 on Sep 1
  14. #96 on Sep 2
  15. #97 on Sep 3
  16. #96 on Sep 4
  17. #97 on Sep 5
  18. #96 on Sep 6
  19. #98 from Sep 7 to Sep 15
  20. #97 from Sep 16 to Sep 18
  21. #96 on Sep 19
  22. #97 from Sep 20 to Sep 21
  23. #96 from Sep 22 to Sep 23
  24. #95 from Sep 24 to Sep 26
  25. #94 from Sep 27 to Sep 29
  26. #93 from Sep 30 to Oct 3
  27. #92 from Oct 4 to Oct 5
  28. #91 on Oct 6
  29. #92 from Oct 7 to Oct 20
  30. #90 on Oct 21
  31. #89 on Oct 22
  32. #88 on Oct 23
  33. #89 on Oct 24

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 2, 2026

Changed on Oct 27, 2026

No longer found: Access to secrets

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 82 notes
  • extensions/ahrefs/skills/seo-ahrefs/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/ahrefs/skills/seo-ahrefs/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/ahrefs/skills/seo-ahrefs/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/ahrefs/skills/seo-ahrefs/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/banana/skills/seo-image-gen/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/banana/skills/seo-image-gen/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • scripts/claude-seo:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • scripts/claude-seo:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/bing-webmaster/skills/seo-bing/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/bing-webmaster/skills/seo-bing/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/dataforseo/skills/seo-dataforseo/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/dataforseo/skills/seo-dataforseo/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/dataforseo/skills/seo-dataforseo/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/firecrawl/skills/seo-firecrawl/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/matomo/skills/seo-matomo/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/matomo/skills/seo-matomo/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/matomo/skills/seo-matomo/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/seranking/skills/seo-seranking/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • extensions/unlighthouse/skills/seo-unlighthouse/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/seo/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 633 signals by file

.claude-plugin/marketplace.json

  • Network accessline 1
    {   "$schema": "https://anthropic.com/claude-code/marketplace.schema.json",
  • Network accessline 2
    "$schema": "https://anthropic.com/claude-code/marketplace.schema.json",
  • Network accessline 15
    "author": {         "name": "AgriciDaniel",         "url": "https://github.com/AgriciDaniel"
  • Network accessline 16
    "name": "AgriciDaniel",         "url": "https://github.com/AgriciDaniel"       },
  • Network accessline 17
    "url": "https://github.com/AgriciDaniel"
  • Network accessline 18
    },       "category": "marketing",       "homepage": "https://claude-seo.md",
  • Network accessline 19
    "category": "marketing",       "homepage": "https://claude-seo.md",       "keywords": [
  • Network accessline 20
    "homepage": "https://claude-seo.md",
  • Network accessline 71
    "author": {         "name": "AgriciDaniel",         "url": "https://github.com/AgriciDaniel"
  • Network accessline 72
    "name": "AgriciDaniel",         "url": "https://github.com/AgriciDaniel"       },
  • Network accessline 73
    "url": "https://github.com/AgriciDaniel"
  • Network accessline 74
    },       "category": "marketing",       "homepage": "https://github.com/AgriciDaniel/claude-seo/tree/seo-cockpit/plugins/seo-cockpit",
  • Network accessline 75
    "category": "marketing",       "homepage": "https://github.com/AgriciDaniel/claude-seo/tree/seo-cockpit/plugins/seo-cockpit",       "keywords": [
  • Network accessline 76
    "homepage": "https://github.com/AgriciDaniel/claude-seo/tree/seo-cockpit/plugins/seo-cockpit",

.claude-plugin/plugin.json

  • Network accessline 5
    "author": {     "name": "AgriciDaniel",     "url": "https://github.com/AgriciDaniel"
  • Network accessline 6
    "name": "AgriciDaniel",     "url": "https://github.com/AgriciDaniel"   },
  • Network accessline 7
    "url": "https://github.com/AgriciDaniel"
  • Network accessline 8
    },   "license": "MIT",   "homepage": "https://claude-seo.md",
  • Network accessline 9
    "license": "MIT",   "homepage": "https://claude-seo.md",   "repository": "https://github.com/AgriciDaniel/claude-seo",
  • Network accessline 10
    "homepage": "https://claude-seo.md",
  • Network accessline 11
    "repository": "https://github.com/AgriciDaniel/claude-seo",

extensions/ahrefs/skills/seo-ahrefs/SKILL.md

  • Network accessline 16
    - Run `extensions/ahrefs/install.sh` (Linux/macOS) or `install.ps1` (Windows) before using this skill. - An Ahrefs API token (https://ahrefs.com/api).
  • Network accessline 17
    - An Ahrefs API token (https://ahrefs.com/api).

extensions/banana/skills/seo-image-gen/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

extensions/banana/skills/seo-image-gen/SKILL.md

  • Network accessline 22
    This extension is built on [Claude Banana](https://github.com/AgriciDaniel/banana-claude),
  • Network accessline 104
    {      "@type": "ImageObject",      "url": "https://example.com/images/keyword-description.webp",
  • Network accessline 105
    "@type": "ImageObject",      "url": "https://example.com/images/keyword-description.webp",      "width": 1200,
  • Network accessline 106
    "url": "https://example.com/images/keyword-description.webp",
  • Network accessline 114
    <meta property="og:image" content="https://example.com/images/og-image.webp" />
  • Network accessline 127
    Pricing is not hard-coded. Check current Google pricing at https://ai.google.dev/gemini-api/docs/pricing, store dated values in
  • Network accessline 128
    https://ai.google.dev/gemini-api/docs/pricing, store dated values in
  • Network accessline 143
    |-------|-----------| | MCP not configured | Run `./extensions/banana/install.sh` or `"${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run --extension banana setup_mcp.py --key YOUR_KEY` | | API key invalid | New key at https://aistudio.google.co
  • Network accessline 144
    | MCP not configured | Run `./extensions/banana/install.sh` or `"${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run --extension banana setup_mcp.py --key YOUR_KEY` | | API key invalid | New key at https://aistudio.google.com/apikey | | Rate limi
  • Network accessline 145
    | API key invalid | New key at https://aistudio.google.com/apikey |

extensions/bing-webmaster/skills/seo-bing/SKILL.md

  • Access to secretsline 6
    [Credential-related source omitted]

extensions/dataforseo/skills/seo-dataforseo/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

extensions/firecrawl/skills/seo-firecrawl/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

extensions/firecrawl/skills/seo-firecrawl/SKILL.md

  • Access to secretsline 193
    [Credential-related source omitted]

extensions/matomo/skills/seo-matomo/SKILL.md

  • Network accessline 18
    - Run `extensions/matomo/install.sh` or `install.ps1`. - A Matomo instance URL (https://analytics.example.com).
  • Network accessline 19
    - A Matomo instance URL (https://analytics.example.com).
  • Network accessline 65
    is validated and DNS-pinned, and a redirect off the instance is refused. Private, loopback, and link-local addresses are refused by default. When the user's instance lives on one (`http://matomo.internal:8080`,
  • Network accessline 66
    Private, loopback, and link-local addresses are refused by default. When the user's instance lives on one (`http://matomo.internal:8080`, `http://192.168.1.20`, `http://localhost:8080`), tell them to name it in the
  • Network accessline 67
    user's instance lives on one (`http://matomo.internal:8080`,
  • Network accessline 68
    `http://192.168.1.20`, `http://localhost:8080`), tell them to name it in the

extensions/profound/skills/seo-profound/SKILL.md

  • Access to secretsline 6
    [Credential-related source omitted]
  • Access to secretsline 20
    [Credential-related source omitted]

extensions/seranking/skills/seo-seranking/SKILL.md

  • Access to secretsline 6
    [Credential-related source omitted]
  • Network accessline 15
    - Run `extensions/seranking/install.sh` (or `install.ps1`). - An SE Ranking API key (https://seranking.com/api.html).
  • Network accessline 16
    - An SE Ranking API key (https://seranking.com/api.html).
  • Access to secretsline 17
    [Credential-related source omitted]

hooks/run-python-hook.js

  • Executable scriptline 1
    #!/usr/bin/env node

hooks/validate-schema.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 107
    SCHEMA_ORG_CONTEXTS = frozenset(     {"https://schema.org", "http://schema.org", "https://schema.org/", "http://schema.org/"}
  • Network accessline 108
    {"https://schema.org", "http://schema.org", "https://schema.org/", "http://schema.org/"}
  • Network accessline 200
    errors.append(f"{prefix}: Missing @context")     elif "@context" in obj and not _is_schema_org_context(obj["@context"]):         errors.append(f"{prefix}: @context should be 'https://schema.org'")
  • Network accessline 202
    errors.append(f"{prefix}: @context should be 'https://schema.org'")

scripts/claude-seo

  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    #!/usr/bin/env bash
  • Executable scriptline 1
    Executable file; content unavailable
  • Executable scriptline 1
    Executable file; content unavailable

skills/seo-agentic/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-agentic/SKILL.md

  • Instruction override signalline 86
    | P1 | Stable, visible confirmation states; no hover-only menus or focus traps | manual review (no script evidence; say so if not checked) | | P1 (transactional) / P2 | Imperative WebMCP tools bound to existing handlers | `webmcp-tools`, Li
  • Instruction override signalline 87
    | P1 (transactional) / P2 | Imperative WebMCP tools bound to existing handlers | `webmcp-tools`, Lighthouse `webmcp-registered-tools` | | P1 if tools exist | Tool safety: annotations, confirmation, logging, and no tool description that tell
  • Instruction override signalline 88
    | P1 if tools exist | Tool safety: annotations, confirmation, logging, and no tool description that tells agents to skip confirmation | review the tool list and descriptions from Lighthouse `webmcp-registered-tools` (it sees tools registere

skills/seo-agentic/references/access-policy.md

  • Network accessline 87
    Sitemap: https://example.com/sitemap.xml
  • Network accessline 112
    replacing the earlier Meunier individual drafts. - `Signature-Agent` is now a **dictionary keyed by signature label**, e.g.   `Signature-Agent: sig1="https://signer.example"`. The bare-string form is
  • Network accessline 113
    - `Signature-Agent` is now a **dictionary keyed by signature label**, e.g.   `Signature-Agent: sig1="https://signer.example"`. The bare-string form is   outdated; some verifiers may still expect it, so test before relying on it.
  • Network accessline 114
    `Signature-Agent: sig1="https://signer.example"`. The bare-string form is
  • Network accessline 115
    outdated; some verifiers may still expect it, so test before relying on it. - Signers reported: OpenAI (agent and cloud-browser traffic), Google   (experimental, `https://agent.bot.goog`), Amazon Bedrock AgentCore, Shopify.
  • Network accessline 116
    - Signers reported: OpenAI (agent and cloud-browser traffic), Google   (experimental, `https://agent.bot.goog`), Amazon Bedrock AgentCore, Shopify.   Anthropic and Perplexity signing is claimed only by secondary sources.
  • Network accessline 117
    (experimental, `https://agent.bot.goog`), Amazon Bedrock AgentCore, Shopify.

skills/seo-agentic/references/discovery-and-markdown.md

  • Network accessline 74
    curl -sI -H "Accept: text/markdown" https://example.com/pricing | grep -iE "content-type|vary"
  • Network accessline 75
    curl -sI https://example.com/pricing | grep -i vary
  • Network accessline 92
    "displayName": "Example Docs MCP server",       "type": "application/mcp-server-card+json",       "url": "https://example.com/mcp/server-card",
  • Network accessline 93
    "type": "application/mcp-server-card+json",       "url": "https://example.com/mcp/server-card",       "representativeQueries": ["How do I rotate an API key?", "What are the rate limits?"]
  • Network accessline 94
    "url": "https://example.com/mcp/server-card",
  • Network accessline 109
    | Path | Standard | Content type | When | |---|---|---|---| | `/.well-known/api-catalog` | RFC 9727 (published) | `application/linkset+json; profile="https://www.rfc-editor.org/info/rfc9727"` | You publish APIs |
  • Network accessline 110
    |---|---|---|---| | `/.well-known/api-catalog` | RFC 9727 (published) | `application/linkset+json; profile="https://www.rfc-editor.org/info/rfc9727"` | You publish APIs | | `/.well-known/oauth-protected-resource` | RFC 9728 (published) | JS
  • Network accessline 111
    | `/.well-known/api-catalog` | RFC 9727 (published) | `application/linkset+json; profile="https://www.rfc-editor.org/info/rfc9727"` | You publish APIs |

skills/seo-agentic/references/vendor-matrix.md

  • Network accessline 12
    | OpenAI: ChatGPT desktop built-in browser ("site tools") | ARIA / accessibility tree (publisher FAQ) | **Yes, imperative only**, top-level document, on by default, not Enterprise/Edu | ChatGPT-User; signs agent and cloud-browser traffic wi
  • Network accessline 13
    | OpenAI: cloud browser (ChatGPT Work), Codex | as above | not documented | Web Bot Auth | S | | Google: Gemini in Chrome, Chrome auto browse | page elements and screen positions | no public evidence of consumption; Google co-edits the spec
  • Network accessline 14
    | Google: Gemini in Chrome, Chrome auto browse | page elements and screen positions | no public evidence of consumption; Google co-edits the spec | Google-Agent (user-triggered, generally ignores robots.txt); experimenting with Web Bot Auth
  • Network accessline 63
    1. PSI: run `lighthouse_agentic.py https://claude-seo.md/ --json`. If

skills/seo-agentic/references/webmcp.md

  • Network accessline 67
    annotations: { readOnlyHint: true },     async execute({ query }) {       const r = await fetch(`/api/search?q=${encodeURIComponent(query)}`); // same endpoint as the UI
  • Network accessline 68
    async execute({ query }) {       const r = await fetch(`/api/search?q=${encodeURIComponent(query)}`); // same endpoint as the UI       return { content: [{ type: "text", text: JSON.stringify(await r.json()) }] };
  • Network accessline 69
    const r = await fetch(`/api/search?q=${encodeURIComponent(query)}`); // same endpoint as the UI
  • Instruction override signalline 97
    7. For API or MCP access use OAuth (RFC 9728 metadata), not session scraping. 8. A tool description must never tell the agent to skip or bypass user    confirmation (for example "no need to confirm with the user"). Treat that
  • Instruction override signalline 98
    8. A tool description must never tell the agent to skip or bypass user    confirmation (for example "no need to confirm with the user"). Treat that    wording as a P1 safety finding: it is an instruction to the agent that a

skills/seo-audit/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-backlinks/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-backlinks/SKILL.md

  • Network accessline 247
    | No sources configured | No API keys, no DataForSEO | Run `/seo backlinks setup` | | Moz rate limit | Free tier: 1 req/10s | Wait 10 seconds, retry. Built into script. | | Bing site not verified | Site not verified in Bing | Verify at http
  • Network accessline 248
    | Moz rate limit | Free tier: 1 req/10s | Wait 10 seconds, retry. Built into script. | | Bing site not verified | Site not verified in Bing | Verify at https://www.bing.com/webmasters | | CC download timeout | Large graph file, slow connect
  • Network accessline 249
    | Bing site not verified | Site not verified in Bing | Verify at https://www.bing.com/webmasters | | CC download timeout | Large graph file, slow connection | Use `--timeout 180` flag | | DataForSEO unavailable | Extension not installed | R

skills/seo-cluster/SKILL.md

  • Network accessline 235
    - Competing pages to differentiate from 3. Write briefs to `cluster-briefs/` directory as individual markdown files 4. Inform user: "Install [claude-blog](https://github.com/AgriciDaniel/claude-blog)
  • Network accessline 236
    3. Write briefs to `cluster-briefs/` directory as individual markdown files 4. Inform user: "Install [claude-blog](https://github.com/AgriciDaniel/claude-blog)    to auto-create content. Briefs saved to `cluster-briefs/`."
  • Network accessline 237
    4. Inform user: "Install [claude-blog](https://github.com/AgriciDaniel/claude-blog)

skills/seo-competitor-pages/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-competitor-pages/SKILL.md

  • Network accessline 69
    {   "@context": "https://schema.org",
  • Network accessline 70
    "@context": "https://schema.org",
  • Network accessline 90
    {   "@context": "https://schema.org",
  • Network accessline 91
    "@context": "https://schema.org",
  • Network accessline 106
    {   "@context": "https://schema.org",
  • Network accessline 107
    "@context": "https://schema.org",
  • Network accessline 108
    "@type": "ItemList",   "name": "Best [Category] Tools [Year]",   "itemListOrder": "https://schema.org/ItemListOrderDescending",
  • Network accessline 109
    "name": "Best [Category] Tools [Year]",   "itemListOrder": "https://schema.org/ItemListOrderDescending",   "numberOfItems": "[Count]",
  • Network accessline 110
    "itemListOrder": "https://schema.org/ItemListOrderDescending",

skills/seo-content-brief/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 puneetindersingh https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-content/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-content/SKILL.md

  • Network accessline 30
    Primary source: https://developers.google.com/search/docs/fundamentals/creating-helpful-content
  • Network accessline 31
    https://developers.google.com/search/docs/fundamentals/creating-helpful-content

skills/seo-dataforseo/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-drift/SKILL.md

  • Network accessline 207
    /seo drift baseline https://example.com     # Before deploy
  • Network accessline 209
    /seo drift compare https://example.com      # After deploy
  • Network accessline 214
    /seo drift baseline https://example.com     # Initial capture
  • Network accessline 215
    # ... weeks later ... /seo drift compare https://example.com      # Check for drift /seo drift history https://example.com      # Review all changes
  • Network accessline 216
    /seo drift compare https://example.com      # Check for drift
  • Network accessline 217
    /seo drift history https://example.com      # Review all changes
  • Network accessline 222
    /seo drift compare https://example.com      # What changed?
  • Network accessline 223
    /seo drift history https://example.com      # When did it change?

skills/seo-ecommerce/SKILL.md

  • Network accessline 238
    {   "@context": "https://schema.org",
  • Network accessline 239
    "@context": "https://schema.org",
  • Network accessline 246
    "priceCurrency": "USD",     "price": "49.00",     "availability": "https://schema.org/InStock"
  • Network accessline 247
    "price": "49.00",     "availability": "https://schema.org/InStock"   }
  • Network accessline 248
    "availability": "https://schema.org/InStock"
  • Network accessline 261
    - `shippingDetails` -- ShippingDetails with rate and delivery time (merchant-level shipping via `ShippingService` is also supported; shipping/returns can be set in Search Console without a Merchant Center account) - `hasMerchantReturnPolicy
  • Network accessline 262
    - `hasMerchantReturnPolicy` -- MerchantReturnPolicy with type and days - `hasAdultConsideration` -- **required for adult-oriented products** (added 2026-05-20 to Product variant / Merchant listing); Google Search supports only the value `ht
  • Network accessline 263
    - `hasAdultConsideration` -- **required for adult-oriented products** (added 2026-05-20 to Product variant / Merchant listing); Google Search supports only the value `https://schema.org/SexualContentConsideration`
  • Network accessline 329
    # Discover and validate the UCP profile "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run ucp_check.py https://store.example.com --json
  • Network accessline 330
    "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run ucp_check.py https://store.example.com --json
  • Network accessline 332
    # With endpoint reachability probes (HEAD each declared capability) "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run ucp_check.py https://store.example.com --probe-endpoints --json
  • Network accessline 333
    "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run ucp_check.py https://store.example.com --probe-endpoints --json

skills/seo-ecommerce/references/ucp-universal-commerce-protocol.md

  • Network accessline 16
    **Primary sources (canonical, stable):** - Google merchant developer guide: https://developers.google.com/merchant/ucp
  • Network accessline 17
    - Google merchant developer guide: https://developers.google.com/merchant/ucp
  • Network accessline 18
    (and /merchant/ucp/guides/ucp-profile) - Spec / overview: https://ucp.dev. Versions are dates (YYYY-MM-DD). ucp.dev lists **2026-08-25** as the latest spec release; Google's merchant   implementation guide still documents **2026-04-08**, an
  • Network accessline 19
    - Spec / overview: https://ucp.dev. Versions are dates (YYYY-MM-DD). ucp.dev lists **2026-08-25** as the latest spec release; Google's merchant
  • Network accessline 38
    `ucp` object; `services` and `capabilities` are keyed by reverse-domain name, each holding a list of version variants (shape from https://ucp.dev/latest/specification/overview/, checked 2026-09-23 against a
  • Network accessline 39
    each holding a list of version variants (shape from https://ucp.dev/latest/specification/overview/, checked 2026-09-23 against a live Shopify profile):
  • Network accessline 40
    https://ucp.dev/latest/specification/overview/, checked 2026-09-23 against a
  • Network accessline 45
    "ucp": {     "version": "2026-08-25",     "supported_versions": {"2026-04-08": "https://shop.example/.well-known/ucp/2026-04-08"},
  • Network accessline 46
    "version": "2026-08-25",     "supported_versions": {"2026-04-08": "https://shop.example/.well-known/ucp/2026-04-08"},     "services": {
  • Network accessline 47
    "supported_versions": {"2026-04-08": "https://shop.example/.well-known/ucp/2026-04-08"},
  • Network accessline 48
    "services": {       "dev.ucp.shopping": [         {"version": "2026-08-25", "spec": "https://ucp.dev/2026-08-25/specification/overview/",
  • Network accessline 49
    "dev.ucp.shopping": [         {"version": "2026-08-25", "spec": "https://ucp.dev/2026-08-25/specification/overview/",          "transport": "mcp", "endpoint": "https://shop.example/api/ucp/mcp",
  • Network accessline 50
    {"version": "2026-08-25", "spec": "https://ucp.dev/2026-08-25/specification/overview/",
  • Network accessline 51
    "transport": "mcp", "endpoint": "https://shop.example/api/ucp/mcp",
  • Network accessline 52
    "schema": "https://ucp.dev/2026-08-25/services/shopping/mcp.openrpc.json"}
  • Network accessline 56
    "dev.ucp.shopping.checkout": [         {"version": "2026-08-25",          "spec": "https://ucp.dev/2026-08-25/specification/shopping/checkout/",
  • Network accessline 57
    {"version": "2026-08-25",          "spec": "https://ucp.dev/2026-08-25/specification/shopping/checkout/",          "schema": "https://ucp.dev/2026-08-25/schemas/shopping/checkout.json"}
  • Network accessline 58
    "spec": "https://ucp.dev/2026-08-25/specification/shopping/checkout/",
  • Network accessline 59
    "schema": "https://ucp.dev/2026-08-25/schemas/shopping/checkout.json"}

skills/seo-flow/references/bibliography.md

  • Network accessline 16
    - https://ahrefs.com/blog/ai-overviews-reduce-clicks-update/ | retrieved 2026-04-25 | used for: 58% lower average CTR for position-one content when an AI Overview is present, using December 2025 Ahrefs data
  • Network accessline 17
    - https://backlinko.com/google-user-behavior | retrieved 2026-04-25 | used for: 42% of local-query searchers click inside the Google Maps Pack
  • Network accessline 18
    - https://gs.statcounter.com/search-engine-market-share/all/worldwide/2025 | retrieved 2026-04-25 | used for: Bing March 2026 share: 5.13% worldwide; 9.85% United States all-platform search share
  • Network accessline 19
    - https://support.google.com/business/answer/10515606?hl=en | retrieved 2026-04-25 | used for: 70% more likely to visit; 50% more likely to consider purchasing
  • Network accessline 20
    - https://www.brightlocal.com/resources/local-seo-statistics/ | retrieved 2026-04-25 | used for: 39%
  • Network accessline 21
    - https://www.pewresearch.org/short-reads/2025/07/22/google-users-are-less-likely-to-click-on-links-when-an-ai-summary-appears-in-the-results/ | retrieved 2026-04-25 | used for: 8% with AI summary vs 15% without AI summary
  • Network accessline 22
    - https://www.searchenginejournal.com/state-of-seo/ | retrieved 2026-04-25 | used for: 77.9% worry about AI reducing website clicks
  • Network accessline 23
    - https://www.sec.gov/Archives/edgar/data/1652044/000165204426000018/goog-20251231.htm | retrieved 2026-04-25 | used for: 73.2% of FY2025 revenue from Google advertising: $294.691B / $402.836B
  • Network accessline 24
    - https://www.semrush.com/blog/semrush-ai-overviews-study/ | retrieved 2026-04-25 | used for: 33.75% to 31.53%
  • Network accessline 25
    - https://www.seoclarity.net/research/analysis-of-top-cited-pages-from-chatgpt | retrieved 2026-04-25 | used for: 25% of top 1,000 cited URLs have zero organic visibility in Google

skills/seo-geo/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-geo/SKILL.md

  • Network accessline 176
    Sources: [OpenAI crawlers](https://platform.openai.com/docs/bots),
  • Network accessline 177
    [Google crawlers overview](https://developers.google.com/search/docs/crawling-indexing/overview-google-crawlers),
  • Network accessline 178
    [Anthropic crawler support article](https://support.anthropic.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler),
  • Network accessline 179
    [Apple Applebot-Extended support article](https://support.apple.com/en-us/119829).

skills/seo-geo/references/google-ai-optimization-guide.md

  • Network accessline 10
    **Primary source:** https://developers.google.com/search/docs/fundamentals/ai-optimization-guide
  • Network accessline 10
    **Primary source:** https://developers.google.com/search/docs/fundamentals/ai-optimization-guide
  • Network accessline 11
    https://developers.google.com/search/docs/fundamentals/ai-optimization-guide
  • Network accessline 11
    https://developers.google.com/search/docs/fundamentals/ai-optimization-guide
  • Network accessline 12
    (announcing blog: https://developers.google.com/search/blog/2026/05/a-new-resource-for-optimizing)
  • Network accessline 12
    (announcing blog: https://developers.google.com/search/blog/2026/05/a-new-resource-for-optimizing)
  • Network accessline 19
    > claude-seo's scores are heuristics, not Google-internal signals; state this > honestly in reports. Source: > https://developers.google.com/search/docs/fundamentals/third-party-seo
  • Network accessline 19
    > claude-seo's scores are heuristics, not Google-internal signals; state this > honestly in reports. Source: > https://developers.google.com/search/docs/fundamentals/third-party-seo
  • Network accessline 21
    > https://developers.google.com/search/docs/fundamentals/third-party-seo
  • Network accessline 21
    > https://developers.google.com/search/docs/fundamentals/third-party-seo
  • Network accessline 42
    the Search Console "Search generative AI" control (include is the default; the options are include, exclude or inherit; rolled out to all sites worldwide 2026-08-31, https://support.google.com/webmasters/answer/16908024). The setting is not
  • Network accessline 42
    the Search Console "Search generative AI" control (include is the default; the options are include, exclude or inherit; rolled out to all sites worldwide 2026-08-31, https://support.google.com/webmasters/answer/16908024). The setting is not
  • Network accessline 43
    the options are include, exclude or inherit; rolled out to all sites worldwide 2026-08-31, https://support.google.com/webmasters/answer/16908024). The setting is not a ranking signal and not a training control. There is no separate "AI inde
  • Network accessline 43
    the options are include, exclude or inherit; rolled out to all sites worldwide 2026-08-31, https://support.google.com/webmasters/answer/16908024). The setting is not a ranking signal and not a training control. There is no separate "AI inde
  • Network accessline 44
    https://support.google.com/webmasters/answer/16908024). The setting is not a
  • Network accessline 44
    https://support.google.com/webmasters/answer/16908024). The setting is not a
  • Network accessline 73
    **Primary source:** https://developers.google.com/search/docs/fundamentals/creating-helpful-content
  • Network accessline 73
    **Primary source:** https://developers.google.com/search/docs/fundamentals/creating-helpful-content
  • Network accessline 74
    https://developers.google.com/search/docs/fundamentals/creating-helpful-content
  • Network accessline 74
    https://developers.google.com/search/docs/fundamentals/creating-helpful-content
  • Network accessline 96
    **Primary source:** https://developers.google.com/search/blog/2023/02/google-search-and-ai-content
  • Network accessline 96
    **Primary source:** https://developers.google.com/search/blog/2023/02/google-search-and-ai-content
  • Network accessline 97
    https://developers.google.com/search/blog/2023/02/google-search-and-ai-content
  • Network accessline 97
    https://developers.google.com/search/blog/2023/02/google-search-and-ai-content

skills/seo-google/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-google/SKILL.md

  • Access to secretsline 39
    [Credential-related source omitted]
  • Access to secretsline 51
    [Credential-related source omitted]

skills/seo-google/references/auth-setup.md

  • Network accessline 15
    1. Go to [console.cloud.google.com](https://console.cloud.google.com)
  • Network accessline 55
    "client_email": "<service-account-identifier>",   "client_id": "...",   "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  • Network accessline 56
    "client_id": "...",   "auth_uri": "https://accounts.google.com/o/oauth2/auth",   "token_uri": "https://oauth2.googleapis.com/token"
  • Network accessline 57
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  • Network accessline 58
    "token_uri": "https://oauth2.googleapis.com/token"
  • Network accessline 66
    1. Go to [Google Search Console](https://search.google.com/search-console)
  • Network accessline 76
    1. Go to [Google Analytics](https://analytics.google.com)
  • Access to secretsline 93
    [Credential-related source omitted]
  • Network accessline 102
    |--------|---------|-------------| | Domain property | `sc-domain:example.com` | Covers all URLs on the domain (recommended) | | URL-prefix property | `https://example.com/` | Covers only that specific prefix |
  • Network accessline 104
    | URL-prefix property | `https://example.com/` | Covers only that specific prefix |
  • Access to secretsline 131
    [Credential-related source omitted]
  • Network accessline 138
    | Scope | APIs | |-------|------| | `https://www.googleapis.com/auth/webmasters.readonly` | GSC (read) |
  • Network accessline 139
    |-------|------| | `https://www.googleapis.com/auth/webmasters.readonly` | GSC (read) | | `https://www.googleapis.com/auth/webmasters` | GSC (read/write, needed for sitemap submission) |
  • Network accessline 140
    | `https://www.googleapis.com/auth/webmasters.readonly` | GSC (read) |
  • Network accessline 141
    | `https://www.googleapis.com/auth/webmasters` | GSC (read/write, needed for sitemap submission) |
  • Network accessline 142
    | `https://www.googleapis.com/auth/indexing` | Indexing API |
  • Network accessline 143
    | `https://www.googleapis.com/auth/analytics.readonly` | GA4 (read) |

skills/seo-google/references/crux-history-api.md

  • Network accessline 7
    **Endpoint:** `POST https://chromeuxreport.googleapis.com/v1/records:queryHistoryRecord`

skills/seo-google/references/dma-consent-mode-v2.md

  • Network accessline 34
    - Consent Mode v2 wired up (`gtag('consent', 'default', {...})`   including `ad_user_data` and `ad_personalization`, set before any tags   fire; https://developers.google.com/tag-platform/security/guides/consent).
  • Network accessline 35
    including `ad_user_data` and `ad_personalization`, set before any tags   fire; https://developers.google.com/tag-platform/security/guides/consent). - `ads_data_redaction` flag set on EU traffic.
  • Network accessline 36
    fire; https://developers.google.com/tag-platform/security/guides/consent).
  • Network accessline 60
    - DMA enforcement: https://digital-markets-act.ec.europa.eu/
  • Network accessline 61
    - Google's third-party cookie reversal: https://privacysandbox.google.com/blog/privacy-sandbox-next-steps
  • Network accessline 62
    - Privacy Sandbox API retirements (2025-10-17): https://privacysandbox.google.com/blog/update-on-plans-for-privacy-sandbox-technologies
  • Network accessline 63
    - Consent Mode v2, EEA consent updates: https://support.google.com/google-ads/answer/13695607

skills/seo-google/references/ga4-data-api.md

  • Network accessline 7
    **Base URL:** `https://analyticsdata.googleapis.com/v1beta`
  • Network accessline 150
    credentials = service_account.Credentials.from_service_account_file(     "service_account.json",     scopes=["https://www.googleapis.com/auth/analytics.readonly"],
  • Network accessline 151
    "service_account.json",     scopes=["https://www.googleapis.com/auth/analytics.readonly"], )
  • Network accessline 152
    scopes=["https://www.googleapis.com/auth/analytics.readonly"],
  • Network accessline 181
    ## Authentication - **Scope:** `https://www.googleapis.com/auth/analytics.readonly`
  • Network accessline 182
    - **Scope:** `https://www.googleapis.com/auth/analytics.readonly`

skills/seo-google/references/indexing-api.md

  • Network accessline 13
    **`POST https://indexing.googleapis.com/v3/urlNotifications:publish`**
  • Network accessline 16
    {   "url": "https://example.com/jobs/software-engineer",
  • Network accessline 17
    "url": "https://example.com/jobs/software-engineer",
  • Network accessline 29
    {   "urlNotificationMetadata": {     "url": "https://example.com/jobs/software-engineer",
  • Network accessline 30
    "urlNotificationMetadata": {     "url": "https://example.com/jobs/software-engineer",     "latestUpdate": {
  • Network accessline 31
    "url": "https://example.com/jobs/software-engineer",
  • Network accessline 32
    "latestUpdate": {       "url": "https://example.com/jobs/software-engineer",       "type": "URL_UPDATED",
  • Network accessline 33
    "url": "https://example.com/jobs/software-engineer",
  • Network accessline 43
    **`GET https://indexing.googleapis.com/v3/urlNotifications/metadata?url={ENCODED_URL}`**
  • Network accessline 49
    **`POST https://indexing.googleapis.com/batch`**
  • Network accessline 64
    {"url": "https://example.com/jobs/1", "type": "URL_UPDATED"}
  • Network accessline 72
    {"url": "https://example.com/jobs/2", "type": "URL_UPDATED"}
  • Network accessline 78
    - **Scope:** `https://www.googleapis.com/auth/indexing`
  • Network accessline 90
    View your quota in the [Google API Console](https://console.cloud.google.com/apis/api/indexing.googleapis.com/quotas). Google removed the outdated quota request form on 2026-10-16; see [Indexing API quota and pricing](https://developers.goo

skills/seo-google/references/nlp-api.md

  • Network accessline 7
    Entities use `POST https://language.googleapis.com/v1/documents:analyzeEntities`.
  • Network accessline 9
    `POST https://language.googleapis.com/v2/documents:annotateText`.
  • Network accessline 54
    1. Go to [console.cloud.google.com/apis/library](https://console.cloud.google.com/apis/library)

skills/seo-google/references/pagespeed-crux-api.md

  • Network accessline 13
    **Endpoint:** `GET https://www.googleapis.com/pagespeedonline/v5/runPagespeed`
  • Network accessline 28
    {   "id": "https://example.com/",
  • Network accessline 29
    "id": "https://example.com/",
  • Network accessline 73
    **Endpoint:** `POST https://chromeuxreport.googleapis.com/v1/records:queryRecord`
  • Network accessline 80
    {   "origin": "https://example.com",
  • Network accessline 81
    "origin": "https://example.com",
  • Network accessline 115
    {   "record": {     "key": { "origin": "https://example.com" },
  • Network accessline 116
    "record": {     "key": { "origin": "https://example.com" },     "metrics": {
  • Network accessline 117
    "key": { "origin": "https://example.com" },

skills/seo-google/references/search-console-api.md

  • Network accessline 13
    **Endpoint:** `POST https://www.googleapis.com/webmasters/v3/sites/{siteUrl}/searchAnalytics/query`
  • Network accessline 50
    "rows": [     {       "keys": ["seo tools", "https://example.com/tools"],
  • Network accessline 51
    {       "keys": ["seo tools", "https://example.com/tools"],       "clicks": 150,
  • Network accessline 52
    "keys": ["seo tools", "https://example.com/tools"],
  • Network accessline 86
    **Endpoint:** `POST https://searchconsole.googleapis.com/v1/urlInspection/index:inspect`
  • Network accessline 91
    {   "inspectionUrl": "https://example.com/page",
  • Network accessline 92
    "inspectionUrl": "https://example.com/page",
  • Network accessline 124
    **Base:** `https://www.googleapis.com/webmasters/v3/sites/{siteUrl}/sitemaps`
  • Network accessline 150
    **Base:** `https://www.googleapis.com/webmasters/v3/sites`

skills/seo-google/references/supplementary-apis.md

  • Network accessline 7
    **Endpoint:** `GET https://kgsearch.googleapis.com/v1/entities:search`
  • Network accessline 27
    "detailedDescription": {         "articleBody": "Google LLC is an American...",         "url": "https://en.wikipedia.org/wiki/Google"
  • Network accessline 28
    "articleBody": "Google LLC is an American...",         "url": "https://en.wikipedia.org/wiki/Google"       },
  • Network accessline 29
    "url": "https://en.wikipedia.org/wiki/Google"
  • Network accessline 30
    },       "image": { "url": "..." },       "url": "https://www.google.com"
  • Network accessline 31
    "image": { "url": "..." },       "url": "https://www.google.com"     },
  • Network accessline 32
    "url": "https://www.google.com"
  • Network accessline 49
    **Endpoint:** `GET https://customsearch.googleapis.com/customsearch/v1`
  • Network accessline 77
    **Endpoint:** `GET https://webrisk.googleapis.com/v1/uris:search`

skills/seo-google/references/youtube-api.md

  • Network accessline 45
    1. Go to [console.cloud.google.com/apis/library](https://console.cloud.google.com/apis/library)

skills/seo-hreflang/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-hreflang/SKILL.md

  • Network accessline 74
    ### 5c. Region-specific Search units (EEA, South Africa, Türkiye) - Google documents Search experiences that exist only in certain regions   (documentation added 2026-09-08; https://developers.google.com/search/docs/appearance/aggregator-fe
  • Network accessline 75
    - Google documents Search experiences that exist only in certain regions   (documentation added 2026-09-08; https://developers.google.com/search/docs/appearance/aggregator-features):   - **EEA only:** aggregator units and supplier units (ho
  • Network accessline 76
    (documentation added 2026-09-08; https://developers.google.com/search/docs/appearance/aggregator-features):
  • Network accessline 129
    <link rel="alternate" hreflang="en-US" href="https://example.com/page" />
  • Network accessline 130
    <link rel="alternate" hreflang="en-GB" href="https://example.co.uk/page" />
  • Network accessline 131
    <link rel="alternate" hreflang="fr" href="https://example.com/fr/page" />
  • Network accessline 132
    <link rel="alternate" hreflang="x-default" href="https://example.com/page" />
  • Network accessline 141
    Link: <https://example.com/page>; rel="alternate"; hreflang="en-US",
  • Network accessline 142
    <https://example.com/fr/page>; rel="alternate"; hreflang="fr",
  • Network accessline 143
    <https://example.com/page>; rel="alternate"; hreflang="x-default"
  • Network accessline 175
    <?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
  • Network accessline 176
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
  • Network accessline 177
    xmlns:xhtml="http://www.w3.org/1999/xhtml">
  • Network accessline 178
    <url>     <loc>https://example.com/page</loc>     <xhtml:link rel="alternate" hreflang="en-US" href="https://example.com/page" />
  • Network accessline 179
    <loc>https://example.com/page</loc>
  • Network accessline 180
    <xhtml:link rel="alternate" hreflang="en-US" href="https://example.com/page" />
  • Network accessline 181
    <xhtml:link rel="alternate" hreflang="fr" href="https://example.com/fr/page" />
  • Network accessline 182
    <xhtml:link rel="alternate" hreflang="de" href="https://example.de/page" />
  • Network accessline 183
    <xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/page" />
  • Network accessline 184
    </url>   <url>     <loc>https://example.com/fr/page</loc>
  • Network accessline 185
    <url>     <loc>https://example.com/fr/page</loc>     <xhtml:link rel="alternate" hreflang="en-US" href="https://example.com/page" />
  • Network accessline 186
    <loc>https://example.com/fr/page</loc>
  • Network accessline 187
    <xhtml:link rel="alternate" hreflang="en-US" href="https://example.com/page" />
  • Network accessline 188
    <xhtml:link rel="alternate" hreflang="fr" href="https://example.com/fr/page" />
  • Network accessline 189
    <xhtml:link rel="alternate" hreflang="de" href="https://example.de/page" />
  • Network accessline 190
    <xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/page" />
  • Network accessline 211
    | Language | URL | Self-Ref | Return Tags | x-default | Status | |----------|-----|----------|-------------|-----------|--------| | en-US | https://... | ✅ | ✅ | ✅ | ✅ |
  • Network accessline 212
    |----------|-----|----------|-------------|-----------|--------| | en-US | https://... | ✅ | ✅ | ✅ | ✅ | | fr | https://... | ❌ | ⚠<U+FE0F> | ✅ | ❌ |
  • Network accessline 213
    | en-US | https://... | ✅ | ✅ | ✅ | ✅ |
  • Network accessline 214
    | fr | https://... | ❌ | ⚠<U+FE0F> | ✅ | ❌ |
  • Network accessline 215
    | de | https://... | ✅ | ❌ | ✅ | ❌ |

skills/seo-hreflang/references/machine-translation-qa.md

  • Network accessline 7
    names "automated transformations like synonymizing, **translating**, or other obfuscation techniques" as scaled content abuse: https://developers.google.com/search/docs/essentials/spam-policies
  • Network accessline 9
    https://developers.google.com/search/docs/essentials/spam-policies
  • Network accessline 56
    - Current QRG (September 11, 2025; 182 pages; nothing newer through 2026-09-23): https://static.googleusercontent.com/media/guidelines.raterhub.com/en//searchqualityevaluatorguidelines.pdf (the services.google.com hsw-sqrg.pdf file is the 3

skills/seo-image-gen/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-image-gen/SKILL.md

  • Network accessline 22
    This extension is built on [Claude Banana](https://github.com/AgriciDaniel/banana-claude),
  • Network accessline 103
    {      "@type": "ImageObject",      "url": "https://example.com/images/keyword-description.webp",
  • Network accessline 104
    "@type": "ImageObject",      "url": "https://example.com/images/keyword-description.webp",      "width": 1200,
  • Network accessline 105
    "url": "https://example.com/images/keyword-description.webp",
  • Network accessline 113
    <meta property="og:image" content="https://example.com/images/og-image.webp" />
  • Network accessline 141
    |-------|-----------| | MCP not configured | Run `./extensions/banana/install.sh` | | API key invalid | New key at https://aistudio.google.com/apikey |
  • Network accessline 142
    | MCP not configured | Run `./extensions/banana/install.sh` | | API key invalid | New key at https://aistudio.google.com/apikey | | Rate limited (429) | Wait 60s, retry. Free tier: ~10 RPM / ~500 RPD |
  • Network accessline 143
    | API key invalid | New key at https://aistudio.google.com/apikey |

skills/seo-image-gen/references/cost-tracking.md

  • Network accessline 7
    | Model | Resolution | Cost/Image | Notes | |-------|-----------|-----------|-------| | Installed MCP model | Any | Verify before use | Check https://ai.google.dev/gemini-api/docs/pricing and installed MCP config |
  • Network accessline 8
    |-------|-----------|-----------|-------| | Installed MCP model | Any | Verify before use | Check https://ai.google.dev/gemini-api/docs/pricing and installed MCP config | | Batch API | Any | Verify before use | Confirm availability and disc
  • Network accessline 9
    | Installed MCP model | Any | Verify before use | Check https://ai.google.dev/gemini-api/docs/pricing and installed MCP config |
  • Network accessline 12
    Do not quote fixed package prices unless they have been verified at https://ai.google.dev/gemini-api/docs/pricing.

skills/seo-image-gen/references/gemini-models.md

  • Network accessline 83
    https://generativelanguage.googleapis.com/v1beta/models/{model-id}:generateContent
  • Network accessline 159
    Pricing is approximate and based on ~1,290 output tokens per image. Research suggests NB2 pricing may be ~$0.067/img (vs documented $0.039). Verify current pricing at https://ai.google.dev/gemini-api/docs/pricing
  • Network accessline 160
    Research suggests NB2 pricing may be ~$0.067/img (vs documented $0.039). Verify current pricing at https://ai.google.dev/gemini-api/docs/pricing

skills/seo-image-gen/references/mcp-tools.md

  • Network accessline 3
    > Package: `@ycse/nanobanana-mcp` > GitHub: https://github.com/YCSE/nanobanana-mcp
  • Network accessline 4
    > GitHub: https://github.com/YCSE/nanobanana-mcp
  • Network accessline 93
    | Variable | Required | Description | |----------|----------|-------------| | `GOOGLE_AI_API_KEY` | Yes | API key from https://aistudio.google.com/apikey |
  • Network accessline 94
    |----------|----------|-------------| | `GOOGLE_AI_API_KEY` | Yes | API key from https://aistudio.google.com/apikey | | `NANOBANANA_MODEL` | No | Override default model from the installed MCP package |
  • Network accessline 95
    [Credential-related source omitted]
  • Access to secretsline 95
    [Credential-related source omitted]

skills/seo-image-gen/references/post-processing.md

  • Dangerous shell operationline 14
    Install ImageMagick if not present: `sudo apt install imagemagick` (Debian/Ubuntu) or `brew install imagemagick` (macOS).

skills/seo-images/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-images/SKILL.md

  • Dangerous shell operationline 239
    - `exiftool` -- EXIF/IPTC/XMP read/write (install: `sudo apt install libimage-exiftool-perl`)
  • Dangerous shell operationline 240
    - `cwebp` -- WebP conversion (install: `sudo apt install webp`)
  • Network accessline 318
    Primary source (Merchant Center AI-generated content policy): https://support.google.com/merchants/answer/14743464
  • Network accessline 319
    https://support.google.com/merchants/answer/14743464
  • Network accessline 345
    # Inject manually exiftool \   -XMP-iptcExt:DigitalSourceType="https://cv.iptc.org/newscodes/digitalsourcetype/trainedAlgorithmicMedia" \
  • Network accessline 346
    exiftool    -XMP-iptcExt:DigitalSourceType="https://cv.iptc.org/newscodes/digitalsourcetype/trainedAlgorithmicMedia"
  • Network accessline 347
    -XMP-iptcExt:DigitalSourceType="https://cv.iptc.org/newscodes/digitalsourcetype/trainedAlgorithmicMedia" \
  • Dangerous shell operationline 434
    | exiftool not installed | Fall back to ImageMagick for metadata. Recommend: `sudo apt install libimage-exiftool-perl` |
  • Dangerous shell operationline 435
    | cwebp not installed | Fall back to ImageMagick or FFmpeg for WebP conversion. Recommend: `sudo apt install webp` |

skills/seo-local/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-maps/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-maps/SKILL.md

  • Network accessline 196
    1. Search for business name on each platform:    - Google: infer from GBP data or Maps SERP result    - Bing: `WebFetch https://www.bing.com/maps?q=BUSINESS+NAME+LOCATION`
  • Network accessline 197
    - Google: infer from GBP data or Maps SERP result    - Bing: `WebFetch https://www.bing.com/maps?q=BUSINESS+NAME+LOCATION`    - Apple: manual check (no public API -- verify/claim Apple business listing presence; treat Apple Business launch/
  • Network accessline 198
    - Bing: `WebFetch https://www.bing.com/maps?q=BUSINESS+NAME+LOCATION`

skills/seo-page/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-plan/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-plan/assets/agency.md

  • Network accessline 59
    {   "@context": "https://schema.org",
  • Network accessline 60
    "@context": "https://schema.org",
  • Network accessline 62
    "name": "Agency Name",   "description": "What the agency does",   "url": "https://example.com",
  • Network accessline 63
    "description": "What the agency does",   "url": "https://example.com",   "logo": "https://example.com/logo.png",
  • Network accessline 64
    "url": "https://example.com",
  • Network accessline 65
    "logo": "https://example.com/logo.png",

skills/seo-plan/assets/ecommerce.md

  • Network accessline 67
    {   "@context": "https://schema.org",
  • Network accessline 68
    "@context": "https://schema.org",
  • Network accessline 69
    "@type": "Product",   "name": "Product Name",   "image": ["https://example.com/product.jpg"],
  • Network accessline 70
    "name": "Product Name",   "image": ["https://example.com/product.jpg"],   "description": "Product description",
  • Network accessline 71
    "image": ["https://example.com/product.jpg"],
  • Network accessline 80
    "price": "99.99",     "priceCurrency": "USD",     "availability": "https://schema.org/InStock",
  • Network accessline 81
    "priceCurrency": "USD",     "availability": "https://schema.org/InStock",     "url": "https://example.com/product"
  • Network accessline 82
    "availability": "https://schema.org/InStock",
  • Network accessline 83
    "url": "https://example.com/product"

skills/seo-plan/assets/local-service.md

  • Network accessline 70
    {   "@context": "https://schema.org",
  • Network accessline 71
    "@context": "https://schema.org",

skills/seo-plan/assets/publisher.md

  • Network accessline 52
    {   "@context": "https://schema.org",
  • Network accessline 53
    "@context": "https://schema.org",
  • Network accessline 59
    "@type": "Person",     "name": "Author Name",     "url": "https://example.com/authors/author-name"
  • Network accessline 60
    "name": "Author Name",     "url": "https://example.com/authors/author-name"   },
  • Network accessline 61
    "url": "https://example.com/authors/author-name"
  • Network accessline 66
    "logo": {       "@type": "ImageObject",       "url": "https://example.com/logo.png"
  • Network accessline 67
    "@type": "ImageObject",       "url": "https://example.com/logo.png"     }
  • Network accessline 68
    "url": "https://example.com/logo.png"
  • Network accessline 69
    }   },   "image": ["https://example.com/article-image.jpg"],
  • Network accessline 70
    },   "image": ["https://example.com/article-image.jpg"],   "mainEntityOfPage": {
  • Network accessline 71
    "image": ["https://example.com/article-image.jpg"],
  • Network accessline 72
    "mainEntityOfPage": {     "@type": "WebPage",     "@id": "https://example.com/article-url"
  • Network accessline 73
    "@type": "WebPage",     "@id": "https://example.com/article-url"   }
  • Network accessline 74
    "@id": "https://example.com/article-url"

skills/seo-programmatic/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-schema/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-schema/SKILL.md

  • Network accessline 72
    ### Still supported (do not flag): - QAPage (expanded comment-thread properties 2026-03-24), DiscussionForumPosting, Education Q&A (Quiz / `eduQuestionType=Flashcard`). For e-commerce, **hasAdultConsideration** (added 2026-05-20; value `htt
  • Network accessline 73
    - QAPage (expanded comment-thread properties 2026-03-24), DiscussionForumPosting, Education Q&A (Quiz / `eduQuestionType=Flashcard`). For e-commerce, **hasAdultConsideration** (added 2026-05-20; value `https://schema.org/SexualContentConsid
  • Network accessline 90
    {   "@context": "https://schema.org",
  • Network accessline 91
    "@context": "https://schema.org",
  • Network accessline 111
    {   "@context": "https://schema.org",
  • Network accessline 112
    "@context": "https://schema.org",
  • Network accessline 135
    {   "@context": "https://schema.org",
  • Network accessline 136
    "@context": "https://schema.org",

skills/seo-schema/references/deprecated-types-2024-2026.md

  • Network accessline 10
    Announced at [Simplifying our Search rich results](https://developers.google.com/search/blog/2025/06/simplifying-search-results)
  • Network accessline 11
    [Simplifying our Search rich results](https://developers.google.com/search/blog/2025/06/simplifying-search-results)
  • Network accessline 69
    - Google retirement announcement (June 2025): https://developers.google.com/search/blog/2025/06/simplifying-search-results
  • Network accessline 70
    - Special Announcement deprecation (July 2025): https://developers.google.com/search/blog/2025/06/simplifying-search-results
  • Network accessline 71
    - HowTo retirement (September 2023): https://developers.google.com/search/blog/2023/08/howto-faq-changes
  • Network accessline 72
    - FAQ restriction (August 2023): https://developers.google.com/search/blog/2023/08/howto-faq-changes
  • Network accessline 73
    - FAQ rich result retirement (May 7, 2026): https://developers.google.com/search/updates#removing-faq-rich-result

skills/seo-sitemap/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-sitemap/SKILL.md

  • Network accessline 66
    Google documents three subtypes with their own rules, validate per-subtype: - **Image** (`http://www.google.com/schemas/sitemap-image/1.1`): only two valid
  • Network accessline 67
    - **Image** (`http://www.google.com/schemas/sitemap-image/1.1`): only two valid
  • Network accessline 113
    <?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  • Network accessline 114
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  • Network accessline 115
    <url>     <loc>https://example.com/page</loc>     <lastmod>2026-02-07</lastmod>
  • Network accessline 116
    <loc>https://example.com/page</loc>
  • Network accessline 124
    <?xml version="1.0" encoding="UTF-8"?> <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  • Network accessline 125
    <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  • Network accessline 126
    <sitemap>     <loc>https://example.com/sitemap-pages.xml</loc>     <lastmod>2026-02-07</lastmod>
  • Network accessline 127
    <loc>https://example.com/sitemap-pages.xml</loc>
  • Network accessline 129
    </sitemap>   <sitemap>     <loc>https://example.com/sitemap-posts.xml</loc>
  • Network accessline 130
    <sitemap>     <loc>https://example.com/sitemap-posts.xml</loc>     <lastmod>2026-02-07</lastmod>
  • Network accessline 131
    <loc>https://example.com/sitemap-posts.xml</loc>

skills/seo-technical/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo-technical/SKILL.md

  • Network accessline 169
    Google documents it as "a workaround and not a recommended solution" because of the added   complexity and resource cost.   See https://developers.google.com/search/docs/crawling-indexing/javascript/dynamic-rendering
  • Network accessline 171
    See https://developers.google.com/search/docs/crawling-indexing/javascript/dynamic-rendering
  • Network accessline 213
    "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run agent_ux_check.py https://example.com --json
  • Network accessline 258
    `url_safety` refuses loopback and private addresses by default, so `http://localhost:3000` and a staging host on Tailscale fail with "Blocked hostname" or "Blocked IP literal". That default is deliberate: these scripts follow URLs found on 
  • Network accessline 263
    CLAUDE_SEO_LOCAL_TARGETS="localhost:3000,127.0.0.1:8080,100.101.102.103" \   "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run fetch_page.py http://localhost:3000/
  • Network accessline 264
    "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run fetch_page.py http://localhost:3000/

skills/seo-technical/references/stack-cve-exposure.md

  • Network accessline 44
    taking the system offline until it can be fully mitigated." - **Sources:**   - https://www.php.net/archive/2026.php#2026-10-21-5
  • Network accessline 45
    - **Sources:**   - https://www.php.net/archive/2026.php#2026-10-21-5   - https://github.com/php/php-src/security/advisories/GHSA-w8hw-w9fx-j79w
  • Network accessline 46
    - https://www.php.net/archive/2026.php#2026-10-21-5
  • Network accessline 47
    - https://github.com/php/php-src/security/advisories/GHSA-w8hw-w9fx-j79w
  • Network accessline 48
    - https://github.com/php/php-src/security/advisories/GHSA-6wmf-4rv5-p3rp
  • Network accessline 49
    - https://www.ncsc.gov.uk/news/critical-security-issue-affecting-php
  • Network accessline 56
    "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run fetch_page.py https://example.com --json
  • Network accessline 64
    | `Server:` value (Apache/LiteSpeed/nginx) | response header | Host software, not proof of PHP by itself | | `Set-Cookie: PHPSESSID=` | response header | PHP session in use | | `Link: <...wp-json/>; rel="https://api.w.org/"` | response head
  • Network accessline 65
    | `Set-Cookie: PHPSESSID=` | response header | PHP session in use | | `Link: <...wp-json/>; rel="https://api.w.org/"` | response header/HTML | WordPress (PHP) | | `<meta name="generator" content="WordPress ...">` | HTML `<head>` | WordPress
  • Network accessline 66
    | `Link: <...wp-json/>; rel="https://api.w.org/"` | response header/HTML | WordPress (PHP) |

skills/seo/LICENSE.txt

  • Network accessline 3
    Copyright (c) 2026 AgriciDaniel https://github.com/AgriciDaniel/claude-seo
  • Network accessline 4
    https://github.com/AgriciDaniel/claude-seo

skills/seo/SKILL.md

  • Network accessline 157
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Built by agricidaniel. Join the AI Marketing Hub community 🆓 Free  → https://www.skool.com/ai-marketing-hub
  • Network accessline 158
    Built by agricidaniel. Join the AI Marketing Hub community 🆓 Free  → https://www.skool.com/ai-marketing-hub ⚡ Pro   → https://www.skool.com/ai-marketing-hub-pro
  • Network accessline 159
    🆓 Free  → https://www.skool.com/ai-marketing-hub
  • Network accessline 160
    ⚡ Pro   → https://www.skool.com/ai-marketing-hub-pro

skills/seo/references/cwv-thresholds.md

  • Network accessline 17
    - **Thresholds unchanged since original definitions**: ignore claims of "tightened thresholds" from SEO blogs. - **Anti-hallucination guard**: There is **no "Visual Stability Index" (VSI)**, **no "Core Web Vitals 2.0"**, no "Engagement Reli
  • Network accessline 19
    - As of the **August 2026 CrUX dataset** (18,294,881 origins, published 2026-09-08): **55.6%** of origins pass all three CWV (down 0.2 points MoM; July 2026 was 55.7%), and Chrome flags the continued INP regression as a cause for concern wi
  • Network accessline 39
    soft-navigation entries so RUM tools can measure LCP, INP and CLS per SPA route change. Chrome has not yet said how CrUX will report soft navigations (https://developer.chrome.com/docs/web-platform/soft-navigations-experiment,
  • Network accessline 40
    change. Chrome has not yet said how CrUX will report soft navigations (https://developer.chrome.com/docs/web-platform/soft-navigations-experiment, updated 2026-09-02).
  • Network accessline 41
    (https://developer.chrome.com/docs/web-platform/soft-navigations-experiment,
  • Network accessline 97
    [Credential-related source omitted]
  • Network accessline 98
    [Credential-related source omitted]
  • Access to secretsline 98
    [Credential-related source omitted]
  • Network accessline 99
    "https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url=URL"
  • Network accessline 107
    - **Lighthouse 13.5.0** (September 2026, latest stable): Lighthouse 13.0 (Oct 2025) migrated performance audits to **insight-based audits** aligned with the DevTools Performance panel and removed legacy audits (first-meaningful-paint, font-
  • Network accessline 108
    - **PSI / PSI API v5** run Lighthouse 13.x (updated 2025-10-20). The **PWA category was removed in Lighthouse 12**; do not parse a `pwa` category. Mobile lab **CPU throttling was increased on 2024-12-05** (higher mobile lab TBT since then; 
  • Network accessline 109
    - **CrUX Vis** replaced the CrUX Dashboard (Looker Studio), which was **shut down at end of November 2025** (October 2025 was its final dataset; the CrUX Connector is no longer updated). Use [CrUX Vis](https://cruxvis.withgoogle.com) or the

skills/seo/references/free-backlink-sources.md

  • Network accessline 50
    ### Moz API (Tier 1) - **Endpoint:** `https://api.moz.com/jsonrpc` (JSON-RPC 2.0)
  • Network accessline 50
    ### Moz API (Tier 1) - **Endpoint:** `https://api.moz.com/jsonrpc` (JSON-RPC 2.0)
  • Network accessline 51
    - **Endpoint:** `https://api.moz.com/jsonrpc` (JSON-RPC 2.0)
  • Network accessline 51
    - **Endpoint:** `https://api.moz.com/jsonrpc` (JSON-RPC 2.0)
  • Network accessline 52
    - **Free tier:** 2,500 rows/month, 1 request per 10 seconds (verify current limits at https://moz.com/products/api: free tier limits may change)
  • Network accessline 52
    - **Free tier:** 2,500 rows/month, 1 request per 10 seconds (verify current limits at https://moz.com/products/api: free tier limits may change)
  • Network accessline 53
    - **Signup:** https://moz.com/products/api (credit card required, not charged)
  • Network accessline 53
    - **Signup:** https://moz.com/products/api (credit card required, not charged)
  • Network accessline 61
    ### Bing Webmaster Tools (Tier 2) - **Endpoint:** `https://ssl.bing.com/webmaster/api.svc/json/`
  • Network accessline 61
    ### Bing Webmaster Tools (Tier 2) - **Endpoint:** `https://ssl.bing.com/webmaster/api.svc/json/`
  • Network accessline 62
    - **Endpoint:** `https://ssl.bing.com/webmaster/api.svc/json/`
  • Network accessline 62
    - **Endpoint:** `https://ssl.bing.com/webmaster/api.svc/json/`
  • Network accessline 63
    - **Free tier:** Unlimited for verified sites - **Signup:** https://www.bing.com/webmasters (Microsoft account) - **Comparison:** Backlink-domain gaps between two registered properties that
  • Network accessline 63
    - **Free tier:** Unlimited for verified sites - **Signup:** https://www.bing.com/webmasters (Microsoft account) - **Comparison:** Backlink-domain gaps between two registered properties that
  • Network accessline 64
    - **Signup:** https://www.bing.com/webmasters (Microsoft account)
  • Network accessline 64
    - **Signup:** https://www.bing.com/webmasters (Microsoft account)

skills/seo/references/local-schema-multilocation.md

  • Network accessline 8
    // Homepage: Organization with branchOf references {   "@context": "https://schema.org",
  • Network accessline 8
    // Homepage: Organization with branchOf references {   "@context": "https://schema.org",
  • Network accessline 8
    // Homepage: Organization with branchOf references {   "@context": "https://schema.org",
  • Network accessline 9
    {   "@context": "https://schema.org",   "@type": "Organization",
  • Network accessline 9
    {   "@context": "https://schema.org",   "@type": "Organization",
  • Network accessline 9
    {   "@context": "https://schema.org",   "@type": "Organization",
  • Network accessline 10
    "@context": "https://schema.org",
  • Network accessline 10
    "@context": "https://schema.org",
  • Network accessline 10
    "@context": "https://schema.org",
  • Network accessline 11
    "@type": "Organization",   "@id": "https://example.com/#org",   "name": "Brand Name",
  • Network accessline 11
    "@type": "Organization",   "@id": "https://example.com/#org",   "name": "Brand Name",
  • Network accessline 11
    "@type": "Organization",   "@id": "https://example.com/#org",   "name": "Brand Name",
  • Network accessline 12
    "@id": "https://example.com/#org",
  • Network accessline 12
    "@id": "https://example.com/#org",
  • Network accessline 12
    "@id": "https://example.com/#org",
  • Network accessline 13
    "name": "Brand Name",   "url": "https://example.com" }
  • Network accessline 13
    "name": "Brand Name",   "url": "https://example.com" }
  • Network accessline 13
    "name": "Brand Name",   "url": "https://example.com" }
  • Network accessline 14
    "url": "https://example.com"
  • Network accessline 14
    "url": "https://example.com"
  • Network accessline 14
    "url": "https://example.com"
  • Network accessline 17
    // Each location page: individual LocalBusiness {   "@context": "https://schema.org",
  • Network accessline 17
    // Each location page: individual LocalBusiness {   "@context": "https://schema.org",
  • Network accessline 17
    // Each location page: individual LocalBusiness {   "@context": "https://schema.org",
  • Network accessline 18
    {   "@context": "https://schema.org",   "@type": "Dentist",
  • Network accessline 18
    {   "@context": "https://schema.org",   "@type": "Dentist",
  • Network accessline 18
    {   "@context": "https://schema.org",   "@type": "Dentist",
  • Network accessline 19
    "@context": "https://schema.org",
  • Network accessline 19
    "@context": "https://schema.org",
  • Network accessline 19
    "@context": "https://schema.org",
  • Network accessline 20
    "@type": "Dentist",   "@id": "https://example.com/locations/downtown/#location",   "name": "Brand Name - Downtown",
  • Network accessline 20
    "@type": "Dentist",   "@id": "https://example.com/locations/downtown/#location",   "name": "Brand Name - Downtown",
  • Network accessline 20
    "@type": "Dentist",   "@id": "https://example.com/locations/downtown/#location",   "name": "Brand Name - Downtown",
  • Network accessline 21
    "@id": "https://example.com/locations/downtown/#location",
  • Network accessline 21
    "@id": "https://example.com/locations/downtown/#location",
  • Network accessline 21
    "@id": "https://example.com/locations/downtown/#location",
  • Network accessline 22
    "name": "Brand Name - Downtown",   "branchOf": { "@id": "https://example.com/#org" },   "address": { ... },
  • Network accessline 22
    "name": "Brand Name - Downtown",   "branchOf": { "@id": "https://example.com/#org" },   "address": { ... },
  • Network accessline 22
    "name": "Brand Name - Downtown",   "branchOf": { "@id": "https://example.com/#org" },   "address": { ... },
  • Network accessline 23
    "branchOf": { "@id": "https://example.com/#org" },
  • Network accessline 23
    "branchOf": { "@id": "https://example.com/#org" },
  • Network accessline 23
    "branchOf": { "@id": "https://example.com/#org" },

skills/seo/references/maps-api-endpoints.md

  • Network accessline 22
    **Endpoint:** `POST https://api.dataforseo.com/v3/serp/google/maps/live/advanced`
  • Network accessline 22
    **Endpoint:** `POST https://api.dataforseo.com/v3/serp/google/maps/live/advanced`
  • Network accessline 23
    **Pricing source:** https://dataforseo.com/pricing
  • Network accessline 23
    **Pricing source:** https://dataforseo.com/pricing
  • Network accessline 57
    **Endpoint:** `POST https://api.dataforseo.com/v3/business_data/google/my_business_info/live`
  • Network accessline 57
    **Endpoint:** `POST https://api.dataforseo.com/v3/business_data/google/my_business_info/live`
  • Network accessline 58
    **Pricing source:** https://dataforseo.com/pricing/business-data
  • Network accessline 58
    **Pricing source:** https://dataforseo.com/pricing/business-data
  • Network accessline 78
    **Endpoint:** `POST https://api.dataforseo.com/v3/business_data/google/reviews/task_post`
  • Network accessline 78
    **Endpoint:** `POST https://api.dataforseo.com/v3/business_data/google/reviews/task_post`
  • Network accessline 79
    **Pricing source:** https://dataforseo.com/pricing/business-data
  • Network accessline 79
    **Pricing source:** https://dataforseo.com/pricing/business-data
  • Network accessline 107
    **Endpoint:** `POST https://api.dataforseo.com/v3/business_data/google/questions_and_answers/live`
  • Network accessline 107
    **Endpoint:** `POST https://api.dataforseo.com/v3/business_data/google/questions_and_answers/live`
  • Network accessline 113
    **Note:** Google discontinued its own My Business Q&A API on 2025-11-03 (https://developers.google.com/my-business/content/sunset-dates); public Q&A is reportedly being replaced by an AI "Ask" experience (secondary reports only). This endpo
  • Network accessline 113
    **Note:** Google discontinued its own My Business Q&A API on 2025-11-03 (https://developers.google.com/my-business/content/sunset-dates); public Q&A is reportedly being replaced by an AI "Ask" experience (secondary reports only). This endpo
  • Network accessline 119
    **Endpoint:** `POST https://api.dataforseo.com/v3/business_data/business_listings/search/live`
  • Network accessline 119
    **Endpoint:** `POST https://api.dataforseo.com/v3/business_data/business_listings/search/live`

skills/seo/references/maps-free-apis.md

  • Network accessline 13
    **Base URL:** `https://overpass-api.de/api/interpreter`
  • Network accessline 13
    **Base URL:** `https://overpass-api.de/api/interpreter`
  • Network accessline 14
    **Docs:** https://wiki.openstreetmap.org/wiki/Overpass_API
  • Network accessline 14
    **Docs:** https://wiki.openstreetmap.org/wiki/Overpass_API
  • Network accessline 28
    curl -s "https://overpass-api.de/api/interpreter" \
  • Network accessline 28
    curl -s "https://overpass-api.de/api/interpreter" \
  • Network accessline 34
    curl -s "https://overpass-api.de/api/interpreter" \
  • Network accessline 34
    curl -s "https://overpass-api.de/api/interpreter" \
  • Network accessline 40
    curl -s "https://overpass-api.de/api/interpreter" \
  • Network accessline 40
    curl -s "https://overpass-api.de/api/interpreter" \
  • Network accessline 65
    - Data quality varies by region (excellent in Europe, inconsistent elsewhere) - Volunteer-contributed data; may be outdated - Interactive tester: https://overpass-turbo.eu/
  • Network accessline 65
    - Data quality varies by region (excellent in Europe, inconsistent elsewhere) - Volunteer-contributed data; may be outdated - Interactive tester: https://overpass-turbo.eu/
  • Network accessline 67
    - Interactive tester: https://overpass-turbo.eu/
  • Network accessline 67
    - Interactive tester: https://overpass-turbo.eu/
  • Network accessline 73
    **Base URL:** `https://api.geoapify.com/v2/places`
  • Network accessline 73
    **Base URL:** `https://api.geoapify.com/v2/places`
  • Network accessline 74
    **Docs:** https://apidocs.geoapify.com/docs/places/
  • Network accessline 74
    **Docs:** https://apidocs.geoapify.com/docs/places/
  • Network accessline 75
    **Pricing:** https://www.geoapify.com/pricing
  • Network accessline 75
    **Pricing:** https://www.geoapify.com/pricing
  • Network accessline 87
    [Credential-related source omitted]
  • Network accessline 87
    [Credential-related source omitted]
  • Network accessline 109
    **Base URL:** `https://nominatim.openstreetmap.org`
  • Network accessline 109
    **Base URL:** `https://nominatim.openstreetmap.org`
  • Network accessline 110
    **Docs:** https://nominatim.org/release-docs/latest/api/Overview/
  • Network accessline 110
    **Docs:** https://nominatim.org/release-docs/latest/api/Overview/
  • Network accessline 111
    **Policy:** https://operations.osmfoundation.org/policies/nominatim/
  • Network accessline 111
    **Policy:** https://operations.osmfoundation.org/policies/nominatim/
  • Network accessline 124
    curl -s "https://nominatim.openstreetmap.org/search?q=123+Main+St+Austin+TX&format=json&addressdetails=1" \
  • Network accessline 124
    curl -s "https://nominatim.openstreetmap.org/search?q=123+Main+St+Austin+TX&format=json&addressdetails=1" \
  • Network accessline 131
    curl -s "https://nominatim.openstreetmap.org/reverse?lat=40.7128&lon=-74.0060&format=json" \
  • Network accessline 131
    curl -s "https://nominatim.openstreetmap.org/reverse?lat=40.7128&lon=-74.0060&format=json" \
  • Network accessline 150
    # Nominatim: enforce 1 req/sec with sleep for addr in "${addresses[@]}"; do   curl -s "https://nominatim.openstreetmap.org/search?q=${addr}&format=json" \
  • Network accessline 150
    # Nominatim: enforce 1 req/sec with sleep for addr in "${addresses[@]}"; do   curl -s "https://nominatim.openstreetmap.org/search?q=${addr}&format=json" \
  • Network accessline 151
    for addr in "${addresses[@]}"; do   curl -s "https://nominatim.openstreetmap.org/search?q=${addr}&format=json" \     -H "User-Agent: claude-seo/1.7.0"
  • Network accessline 151
    for addr in "${addresses[@]}"; do   curl -s "https://nominatim.openstreetmap.org/search?q=${addr}&format=json" \     -H "User-Agent: claude-seo/1.7.0"
  • Network accessline 152
    curl -s "https://nominatim.openstreetmap.org/search?q=${addr}&format=json" \
  • Network accessline 152
    curl -s "https://nominatim.openstreetmap.org/search?q=${addr}&format=json" \

skills/seo/references/maps-gbp-checklist.md

  • Network accessline 10
    - Google official: https://support.google.com/business/answer/7091
  • Network accessline 10
    - Google official: https://support.google.com/business/answer/7091

skills/seo/references/schema-types.md

  • Network accessline 95
    | ConferenceEvent | 2025-12-08 | Schema.org v29.4 addition (schema.org/docs/releases.html); no Google rich result | | PerformingArtsEvent | Long-standing schema.org type | Event subtype; no dedicated Google rich result | | hasAdultConsidera
  • Network accessline 95
    | ConferenceEvent | 2025-12-08 | Schema.org v29.4 addition (schema.org/docs/releases.html); no Google rich result | | PerformingArtsEvent | Long-standing schema.org type | Event subtype; no dedicated Google rich result | | hasAdultConsidera
  • Network accessline 96
    | PerformingArtsEvent | Long-standing schema.org type | Event subtype; no dedicated Google rich result | | hasAdultConsideration | 2026-05-20 | Product variant / Merchant listing; **required for adult-oriented products**; Google Search supp
  • Network accessline 96
    | PerformingArtsEvent | Long-standing schema.org type | Event subtype; no dedicated Google rich result | | hasAdultConsideration | 2026-05-20 | Product variant / Merchant listing; **required for adult-oriented products**; Google Search supp
  • Network accessline 97
    | hasAdultConsideration | 2026-05-20 | Product variant / Merchant listing; **required for adult-oriented products**; Google Search supports only `https://schema.org/SexualContentConsideration` |
  • Network accessline 97
    | hasAdultConsideration | 2026-05-20 | Product variant / Merchant listing; **required for adult-oriented products**; Google Search supports only `https://schema.org/SexualContentConsideration` |
  • Network accessline 120
    1. ✅ `@context` is `"https://schema.org"` (not http)
  • Network accessline 120
    1. ✅ `@context` is `"https://schema.org"` (not http)
  • Network accessline 131
    - [Google Rich Results Test](https://search.google.com/test/rich-results)
  • Network accessline 131
    - [Google Rich Results Test](https://search.google.com/test/rich-results)
  • Network accessline 132
    - [Schema.org Validator](https://validator.schema.org/)
  • Network accessline 132
    - [Schema.org Validator](https://validator.schema.org/)

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Signal confidence: 500 facts

and 450 more

Only the first 500 facts are listed.

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeNativeManifest .claude-plugin/marketplace.json.claude/skills/<skill-name>/
CodexNativeManifest AGENTS.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md extensions/ahrefs/skills/seo-ahrefs/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md extensions/ahrefs/skills/seo-ahrefs/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md extensions/ahrefs/skills/seo-ahrefs/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md extensions/ahrefs/skills/seo-ahrefs/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

Explore alternatives and comparisons

Add this badge to your README

It updates every night and links to this page.

AgriciDaniel/claude-seo: #78 on hotskills, 27.1k stars

[![AgriciDaniel/claude-seo on hotskills](https://hotskills.dev/badge/agricidaniel-claude-seo.svg)](https://hotskills.dev/skill/agricidaniel-claude-seo/)