Site Architecture
AvdLee/RocketSimApp
When the user wants to plan, map, or restructure their website's page hierarchy, navigation, URL structure, or internal linking.
Focused one-shot technical SEO audit for a domain. An agent skill from seranking/seo-skills.
$ npx skills add seranking/seo-skills --skill seo-technical-audit -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install seranking/seo-skills seo-technical-audit --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/seo-technical-audit .claude/skills/seo-technical-audit && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "seo-technical-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-technical-audit into .claude/skills/seo-technical-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-technical-audit", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/seranking/seo-skills/tree/main/skills/seo-technical-auditType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add seranking/seo-skills --skill seo-technical-audit -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install seranking/seo-skills seo-technical-audit --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/seo-technical-audit .agents/skills/seo-technical-audit && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "seo-technical-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-technical-audit into .agents/skills/seo-technical-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-technical-audit", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add seranking/seo-skills --skill seo-technical-audit -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install seranking/seo-skills seo-technical-audit --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/seo-technical-audit .cursor/skills/seo-technical-audit && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "seo-technical-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-technical-audit into .cursor/skills/seo-technical-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-technical-audit", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/seranking/seo-skills.git --path skills/seo-technical-audit--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add seranking/seo-skills --skill seo-technical-audit -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install seranking/seo-skills seo-technical-audit --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/seo-technical-audit .gemini/skills/seo-technical-audit && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "seo-technical-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-technical-audit into .gemini/skills/seo-technical-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-technical-audit", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install seranking/seo-skills seo-technical-auditInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add seranking/seo-skills --skill seo-technical-audit -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/seo-technical-audit .github/skills/seo-technical-audit && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "seo-technical-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-technical-audit into .github/skills/seo-technical-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-technical-audit", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add seranking/seo-skills --skill seo-technical-audit -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install seranking/seo-skills seo-technical-audit --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/seranking/seo-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/seo-technical-audit .opencode/skills/seo-technical-audit && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "seo-technical-audit" agent skill from https://github.com/seranking/seo-skills/tree/main/skills/seo-technical-audit into .opencode/skills/seo-technical-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seo-technical-audit", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
seo-technical-auditFocused one-shot technical SEO audit for a domain. An agent skill from seranking/seo-skills.
SEO Technical Audit is an agent skill from seranking/seo-skills. Focused one-shot technical SEO audit for a domain. Crawlability, indexability, security, mobile, structured data, JS rendering — single-pass deliverable, not a diff. Distinct from seo-drift (which tracks changes over time) and from seo-page (which audits keywords/traffic for one URL, not technical health). Use when the user asks "technical audit", "site audit", "audit my site", "crawl issues", "indexation issues", or "technical SEO check".
Its SKILL.md is about 4.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/severity-mapping.md`).
It sits in Marketing & SEO, covering Technical SEO. It works with Firecrawl. The repository describes itself as: Claude SEO Skills — production Claude Agent Skills for the SE Ranking MCP server. Content briefs, AI Search share of voice, audits, backlink gaps, keyword clusters, schema… The licence is MIT.
8 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit fd6d140. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
python3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
SEO Technical Audit loads about 4.5k tokens when it runs, and up to ~6.8k if it reads all its reference files. Until then it costs about 117 tokens; SKILL.md has 1,586 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from seranking/seo-skills at commit fd6d140, republished under its MIT licence (© seranking). 1,586 words, ~4,518 tokens.
.claude/skills/seo-technical-audit/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Example output: examples/seo-technical-audit-linear-app-20260514/TECH-AUDIT.md
A one-shot technical SEO audit for a domain. Pulls SE Ranking's audit data, categorizes findings by area (crawlability, indexability, security, mobile, structured data, etc.), severity-sorts within each, and produces a top-10 fix list ranked by impact × effort.
WebFetch tool available (used for sense-checking robots.txt and sitemap presence).example.com). Optional: target country (default us), audit-page-limit override (default: rely on the existing audit's limit).Validate target & preflight. See skills/seo-firecrawl/references/preflight.md for the canonical 3-stage preflight (credit balance, Firecrawl availability, Google APIs). Skill-specific notes:
/robots.txt, ~6 Firecrawl credits (hard cap). Without it, step 8 is skipped — JS-render canonical/noindex divergence, X-Robots-Tag headers, and AI-crawler robots-rule analysis are unavailable but the full technical-audit deliverable still ships. Pass --no-firecrawl to skip step 8 even when Firecrawl is available (saves credits).skills/seo-google/references/cross-skill-integration.md § "seo-technical-audit" for the full recipe and per-tier branches.Find or create the audit DATA_listAudits
DATA_recheckAudit to refresh.DATA_createStandardAudit (it consumes credits).DATA_getAuditStatus to report done before pulling the report.Pull the audit report DATA_getAuditReport
Pull per-issue page lists DATA_getAuditPagesByIssue
Cross-reference key URLs DATA_getIssuesByUrl
DATA_getDomainKeywords's page aggregation, or homepage + key landing pages if no keyword data), pull all issues for those specific URLs.Sense-check WebFetch
/robots.txt and /sitemap.xml directly.csp_missing — Content-Security-Policy absent.xframe_missing — X-Frame-Options absent (informational; CSP frame-ancestors supersedes).xcontent_missing — X-Content-Type-Options not set to nosniff.referrer_policy_missing — Referrer-Policy absent.hsts_no_preload — Strict-Transport-Security present but preload directive missing AND domain not on the Chromium HSTS preload list.references/severity-mapping.md § Security and surface in evidence/02-issues-by-category/security.md (and inline into TECH-AUDIT.md's "By category → Security" section).Categorize and prioritize using references/severity-mapping.md
Modern signals checklist mcp__firecrawl-mcp__firecrawl_scrape
js_canonical_mismatch). Compare metadata.canonical (after JS render) against the canonical the audit recorded. Flag any divergence — per Google's Dec-2025 JavaScript SEO guidance, when a canonical in raw HTML differs from one injected by JS, Google MAY use either one, making canonical decisions non-deterministic. JS-injected canonical changes silently break indexing on JS-heavy sites.metadata.robots for noindex after render. Catches client-side-only noindex injection that the audit can't see.metadata. Flag any noindex / nofollow / none directives at the HTTP layer.js_render_budget). Compare initial-HTML body size to rendered-HTML body size. Flag pages where rendered HTML is <50% of initial HTML size after JS execution — indicates Google may exhaust its render budget before the page's actual content loads.js_canonical_mismatch; rationale: per the Dec-2025 guidance Google may pick either canonical, so any drift is a real-world ranking risk, not just a tidiness issue.js_csr_meta_drift). Diff initial-HTML <title>, <h1>, and <meta name="description"> against the same fields in the JS-rendered DOM. Flag any divergence — Google does not reliably index content that only appears post-render, so the empty/wrong initial values may be what gets indexed.js_soft_404). Flag rendered pages where body text content is <500 chars but the HTTP response status is 200. This pattern indicates a JS render failure that Google treats as a soft-404 — the page returns 200 (so it's "live") but contains no real content (so it's "empty").firecrawl_scrape on /robots.txt (1 credit). Parse for AI-crawler User-Agent rules — GPTBot, ClaudeBot, PerplexityBot, Google-Extended, ChatGPT-User, Bytespider, CCBot. Surface allow/disallow scope per agent.TECH-AUDIT.md: Modern signals (JS canonical/noindex divergence, X-Robots-Tag, AI-crawler robots.txt rules, Dec-2025 JS-SEO risks): skipped — Firecrawl not installed.8b. CWV field data via CrUX (only if google-api.json is present, tier ≥ 0)
python3 scripts/pagespeed_check.py "https://{domain}" --crux-only --json for current p75 LCP / INP / CLS / FCP / TTFB.python3 scripts/crux_history.py "https://{domain}" --origin --json for the 25-week trend per metric (improving / stable / degrading).TECH-AUDIT.md as a new section "## Core Web Vitals (field data)" with current p75 + trend per metric, source labelled "CrUX 28-day origin".8c. Per-URL indexation status via GSC URL Inspection (only if google-api.json is present, tier ≥ 1)
python3 scripts/gsc_inspect.py "{url}" --site-url "{config.default_property}" --jsonindexStatusVerdict, coverageState, googleCanonical (vs userCanonical), and lastCrawlTime per URL.INDEXED but the audit flagged noindex, the audit is stale or the directive was added recently — flag for re-audit. If GSC reports EXCLUDED for a page the audit treats as healthy, that's a hidden indexability issue the SE Ranking audit can't see.userCanonical ≠ googleCanonical divergence on a top-traffic page is added to the Top-10 fix list at Critical severity regardless of severity-mapping.md's default — Google having decided on a different canonical is a real-world ranking problem.TECH-AUDIT.md as a new section "## Indexation reality check (GSC URL Inspection)" with one row per top-5-traffic URL: status / canonical-divergence / last-crawled.skills/seo-google/references/cross-skill-integration.md § "seo-technical-audit" for the full recipe and failure modes.8d. IndexNow detection WebFetch
/robots.txt (step 6) for an IndexNow: directive or a comment referencing the key file path.x-indexnow-key, x-indexnow, or x-indexnow-key-location./<key>.txt if a key was hinted in (1) or (2). If neither hint exists, additionally probe a small set of conventional locations only when the user's domain has signalled IndexNow elsewhere (e.g. Bing Webmaster integration disclosed in robots.txt).references/severity-mapping.md § IndexNow:indexnow_no_key (Low; informational — Bing-only benefit)./<key>.txt content ≠ advertised key → indexnow_key_mismatch (Medium).indexnow_not_submitted_recently (Low; informational).Last-Modified response header (or fall back to the file's Date header).evidence/02-issues-by-category/security.md (or a new evidence/02-issues-by-category/indexnow.md if findings are non-trivial; either way, fold into TECH-AUDIT.md's "By category" section) and add a row to the TECH-AUDIT.md Modern signals section showing IndexNow status: configured (Y/N) and last-key-rotation date if detectable.TECH-AUDIT.mdCreate a folder seo-technical-audit-{target-slug}-{YYYYMMDD}/ with:
seo-technical-audit-{target-slug}-{YYYYMMDD}/
├── TECH-AUDIT.md (synthesised top-10 fix list + category summary — primary deliverable; inlines 01-audit-summary header + the six 02-issues-by-category/* tables under "By category")
├── issues.csv (every issue: code, severity, count, fix, effort — load-bearing CSV engineering pastes into Jira)
├── 03-key-pages-issues.md (top 5 traffic pages, all their issues — load-bearing reference engineering / on-call consult per-URL)
└── evidence/
├── 02-issues-by-category/ (raw per-category tables — preserved in case a reader wants the unmerged view)
│ ├── crawlability.md
│ ├── indexability.md
│ ├── security.md
│ ├── mobile.md
│ ├── structured-data.md
│ └── content.md
├── 04-robots-sitemap-snapshot.md (raw fetched files — preserved for reproducibility)
└── 05-modern-signals.md (JS-render canonical/noindex divergence, X-Robots-Tag, AI-crawler rules — requires Firecrawl)Top-level: TECH-AUDIT.md + issues.csv + 03-key-pages-issues.md. The audit summary header (01-audit-summary) is already in TECH-AUDIT.md's header; the six per-category tables (02-issues-by-category/*.md) are inlined under TECH-AUDIT.md's "By category" section. The raw category files, robots/sitemap snapshot, and modern-signals dump live under evidence/ for reproducibility.
TECH-AUDIT.md follows this shape:
# Technical Audit: {domain}
> Audit date {YYYY-MM-DD} · Pages crawled: {n} · Health score: {n}/100
## Summary
| Severity | Count |
|---|---|
| Critical | {n} |
| High | {n} |
| Medium | {n} |
| Low | {n} |
## Top 10 fixes (impact × effort)
| Rank | Issue | Severity | Pages | Fix | Effort |
|---|---|---|---|---|---|
| 1 | {issue name} | {severity} | {n} | {one-line fix} | {S/M/L} |
| ... |
## By category
### Crawlability ({n} issues)
- {issue name} ({n} pages) — {fix}
- ...
### Indexability ({n} issues)
- ...
### Security ({n} issues)
- ...
### Mobile ({n} issues)
- ...
### Structured data ({n} issues)
- ...
### Content ({n} issues)
- ...
### Modern signals ({n} findings — Firecrawl)
- {URL} — initial-HTML canonical `{X}` differs from JS-rendered canonical `{Y}` (`js_canonical_mismatch`)
- {URL} — JS-rendered `noindex` not visible to static crawler
- {URL} — `X-Robots-Tag: noindex` at HTTP layer
- {URL} — rendered HTML <50% of initial HTML size (`js_render_budget` — Google may stop rendering before content loads)
- {URL} — title / H1 / meta description differ between initial HTML and post-render DOM (`js_csr_meta_drift`)
- {URL} — rendered body <500 chars but HTTP 200 (`js_soft_404` — likely JS render failure, treated as soft-404 by Google)
- robots.txt — `GPTBot`: {allow / disallow `/path`}, `ClaudeBot`: {…}, `Google-Extended`: {…}, ...
- IndexNow — configured: {Y/N} · key-file: `/<key>.txt` {found / missing / mismatch} · last-key-rotation: {YYYY-MM-DD or "unknown"}
- (Or: `Modern signals: skipped — Firecrawl not installed`)
### Security headers (extended — WebFetch)
| Header | Homepage | Sample 1 | Sample 2 | Sample 3 | Issue |
|---|---|---|---|---|---|
| Content-Security-Policy | {present/absent} | … | … | … | `csp_missing` if absent |
| X-Frame-Options | {present/absent} | … | … | … | `xframe_missing` if absent (informational; CSP frame-ancestors supersedes) |
| X-Content-Type-Options | {`nosniff`/absent/other} | … | … | … | `xcontent_missing` if not `nosniff` |
| Referrer-Policy | {present/absent} | … | … | … | `referrer_policy_missing` if absent |
| HSTS preload | {preload directive Y/N · on Chromium preload list Y/N} | … | … | … | `hsts_no_preload` if not on list |
## Core Web Vitals (field data — CrUX)
| Metric | p75 (current) | 25-week trend | Threshold | Status |
|---|---|---|---|---|
| LCP | {n} ms | {improving/stable/degrading} | ≤2500 ms good · ≤4000 ms needs improvement | {pass/warn/fail} |
| INP | {n} ms | … | ≤200 ms good · ≤500 ms needs improvement | … |
| CLS | {n} | … | ≤0.1 good · ≤0.25 needs improvement | … |
| FCP | {n} ms | … | ≤1800 ms good · ≤3000 ms needs improvement | … |
| TTFB | {n} ms | … | ≤800 ms good · ≤1800 ms needs improvement | … |
Source: CrUX 28-day origin. If insufficient field data: "CrUX: insufficient data for {domain} (low-traffic origin)."
(Or: `CWV (field data): not configured — run `bash extensions/google/install.sh` for setup.`)
## Indexation reality check (GSC URL Inspection)
| URL | Status | userCanonical → googleCanonical | Last crawled |
|---|---|---|---|
| {top-traffic URL 1} | {INDEXED|EXCLUDED|...} | {URL} {→ different URL if divergent} | {YYYY-MM-DD} |
| {top-traffic URL 2} | … | … | … |
| ... |
Source: GSC URL Inspection (Tier 1). If property not verified: "GSC: {domain} not verified — add it in Search Console."
(Or: `Indexation reality check: not configured (Tier 1 setup required).`)
## Key-page deep dives
### {URL with most issues}
{n} issues found. Top fixes:
1. ...
2. ...
## Recommended cadence
Re-run this skill monthly to catch regressions, or wire `seo-drift` to baseline + diff between audits.issues.csv columns: category,issue_code,issue_name,severity,affected_pages,suggested_fix,effort,priority_score
DATA_getAuditStatus until done — be patient.references/severity-mapping.md so impact × effort scoring is consistent run-to-run.seo-drift for regression tracking: this skill is the snapshot, drift is the diff.seo-sitemap for orphan/missing-page analysis (it consumes this skill's audit data).© seranking, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in skills/seo-technical-audit of seranking/seo-skills.
Open the folder on GitHubat commit fd6d140
SEO Technical Audit next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| SEO Technical Audit this skillseranking/seo-skills | 160 | — | ~4.5k | Automated safety check: Pass | MIT | |
| Site ArchitectureAvdLee/RocketSimApp | 803 | 11 repos | ~3.3k | Automated safety check: Pass | Custom licence | |
| Hreflang and International SEOAgriciDaniel/claude-seo | 18k | 5 repos | ~3.4k | Automated safety check: Pass | MIT | |
| Google SEO APIsAgriciDaniel/claude-seo | 18k | 1 repos | ~4.2k | Automated safety check: Pass | MIT | |
| Broken Link Checkernowork-studio/notfair-plugin | 3.9k | 1 repos | ~507 | Automated safety check: Pass | MIT | |
| GEO-First SEO Audit Toolzubair-trabzada/geo-seo-claude | 11k | — | ~2.8k | Automated safety check: Notes | MIT |
AvdLee/RocketSimApp
When the user wants to plan, map, or restructure their website's page hierarchy, navigation, URL structure, or internal linking.
AgriciDaniel/claude-seo
Audits, validates and generates hreflang tags for multi-language and multi-region sites in HTML, HTTP headers or XML sitemaps, flagging common code and return-tag mistakes.
AgriciDaniel/claude-seo
Pulls real Google data for SEO work: Search Console, PageSpeed Insights, CrUX field data, the Indexing API and GA4 organic traffic, through /seo google commands.
nowork-studio/notfair-plugin
Crawls a website with a bundled Python script to find broken internal and outbound links, then reports them by status code with the pages they appear on.
zubair-trabzada/geo-seo-claude
Audits a website for AI search visibility across ChatGPT, Claude, Perplexity and Google AI Overviews while checking traditional SEO, schema and E-E-A-T content quality.
tigerless-labs/seo-ops
Checks a site against a deterministic set of structural SEO and GEO checks, either running a crawler-eye report against a URL or reviewing code against the same checklist.
seranking/seo-skills
Direct access to Google's own SEO data via Search Console (Search Analytics, URL Inspection, Sitemaps), PageSpeed Insights v5, CrUX field data with 25-week history, Indexing API v3, GA4 organic…
seranking/seo-skills
SE Ranking API integration architect. An agent skill from seranking/seo-skills.
seranking/seo-skills
E-E-A-T + CITE quality audit for an EXISTING piece of content.
seranking/seo-skills
Generate a writer-ready SEO content brief from a target domain and topic.
seranking/seo-skills
Capture an SEO baseline snapshot for a domain or URL, then on later runs compare the current state and surface regressions.
seranking/seo-skills
Ad-hoc web scraping, site mapping, and full-site crawling via Firecrawl MCP.
Works with
Categories
Focused one-shot technical SEO audit for a domain. An agent skill from seranking/seo-skills. SEO Technical Audit is an agent skill from seranking/seo-skills. Focused one-shot technical SEO audit for a domain.
SEO Technical Audit fits situations like: the user asks technical audit; indexation issues; technical SEO check.
Run `npx skills add seranking/seo-skills --skill seo-technical-audit -a claude-code`. Or copy the skill folder (skills/seo-technical-audit in seranking/seo-skills) into .claude/skills/seo-technical-audit in your project. Claude Code loads it when a task matches its description.
Run `npx skills add seranking/seo-skills --skill seo-technical-audit -a codex`. Or copy the skill folder (skills/seo-technical-audit in seranking/seo-skills) into .agents/skills/seo-technical-audit in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add seranking/seo-skills --skill seo-technical-audit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/seo-technical-audit, .gemini/skills/seo-technical-audit, .github/skills/seo-technical-audit and .opencode/skills/seo-technical-audit in your project.
Going by SKILL.md and its folder, SEO Technical Audit needs the command-line tools its instructions call (python3). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
SEO Technical Audit is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.5k tokens (SKILL.md is roughly 18k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.3k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with SEO Technical Audit: Site Architecture (AvdLee/RocketSimApp, 803 stars), Hreflang and International SEO (AgriciDaniel/claude-seo, 18k stars), Google SEO APIs (AgriciDaniel/claude-seo, 18k stars) and Broken Link Checker (nowork-studio/notfair-plugin, 3.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
seranking (a GitHub organization) maintains it in seranking/seo-skills, which has 160 GitHub stars. The repository holds 32 skills in this directory. The repository was last updated on June 25, 2026.
Source: seranking/seo-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.