Skip to content

v2.0.0 β€” a skill that runs

Latest

Choose a tag to compare

@umutxyp umutxyp released this 15 Aug 06:25
· 5 commits to main since this release

2.0.0 β€” 2026-08-15

The release that stops this being only a prompt.

It runs now

  • tools/seo-audit.mjs β€” a real audit against a live origin or a local
    build. Zero dependencies, Node 18+. Checks robots.txt against RFC 9309 group
    semantics, sitemap traversal and limits, lastmod credibility, host
    consolidation, per-template soft 404s, canonical self-reference, hreflang
    reciprocity across pages
    , duplicate titles, streamed-metadata visibility,
    raw-HTML content volume, JSON-LD validity, and image dimensions. Emits a
    computed score, Markdown and JSON, and exits 1 on any P1 so it can gate a
    deploy.
  • tools/seo-smoke.sh β€” the ten-second deploy tripwire: production
    noindex, robots.txt sanity, canonical and JSON-LD still rendering, and 404s
    per template via SEO_SMOKE_404_PATHS.
  • tools/README.md β€” what each one covers, and the three things they
    deliberately cannot see.

Both were tested against five production sites before release. The audit tool
found two live P1s (a Disallow: /_next/ blocking render, and a template
soft-404ing an entire section) that a source-only review had not surfaced.

It installs as a skill

install.sh drops the knowledge base into a target project and writes the entry
point each agent actually reads:

Agent File
Claude Code .claude/skills/seo-audit/SKILL.md
Codex, Amp, Jules AGENTS.md
Cursor .cursor/rules/seo-prompt-master.mdc
Gemini CLI GEMINI.md
GitHub Copilot .github/copilot-instructions.md

Existing AGENTS.md / GEMINI.md files are appended to rather than replaced,
and re-running is safe.

The knowledge base grew where it was thinnest

Six new documents, taking it from 11 to 17. The previous docs covered what to
put on a page; these cover the mechanisms around it:

  • docs/12 Crawling, robots.txt & crawl budget β€” RFC 9309 semantics,
    response-code behaviour, the crawler table, capacity vs demand, log analysis.
  • docs/13 Indexing, canonicals & duplicates β€” which instrument for which
    job, the duplicate taxonomy, faceted navigation, soft 404s, reading GSC index
    states, index bloat.
  • docs/14 Content quality, E-E-A-T & spam policies β€” all 16 spam policies,
    the line on AI-assisted content, the directory/UGC threshold rule, manual
    action recovery.
  • docs/15 Measurement & verification β€” Search Console reports, BigQuery,
    the KPI set, and the traffic-drop diagnosis flow.
  • docs/16 Migrations & incident response β€” the five-source URL inventory,
    redirect rules, rollback criteria, hack response.
  • docs/17 Off-page & entity authority β€” link quality, digital PR, disavow
    as a last resort, entity building.

Fixed

  • The <title> and canonical of any page whose framework streams metadata
    (Next.js 15+ and friends) were previously invisible to head-only parsing. The
    audit tool now reads the whole document and reports the streaming itself as a
    finding, since bots that stop at </head> genuinely do see an untitled page.
  • hreflang validation is case-insensitive, per Google. zh-tw is not an error.