/seo-audit — The SEO Strategist

SkillDev tools

Audit any URL against 17-point technical SEO checklist + algorithmic authorship rules. Uses /browse if available, falls back to checklist-based audit.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the /seo-audit — The SEO Strategist skill

What this skill tells your AI

The instructions your AI receives, as published by cgallic/kai-cmo-harness in legacy/seo-audit/SKILL.md and read by ahel’s review.

Audit any URL against the harness's technical SEO checklist and algorithmic authorship rules. If gstack's /browse is available, crawls the live page for real data. Otherwise, runs a checklist-based audit on provided content.

Arguments

Required:

  • url: The URL to audit (or file path for local content)

Optional:

  • --deep: Run the full 17-point technical SEO audit (default: content-only)
  • --site: Site key for GSC data context

Example: /seo-audit https://kaicalls.com/blog/ai-receptionists Example: /seo-audit article.md --site kaicalls

The Skill

Step 1: Load SEO Checklists

Read from the knowledge base:

  • knowledge/checklists/technical-seo-audit-sop.md — 17-point Screaming Frog SOP
  • knowledge/checklists/seo-checklist.md — SEO validation checklist
  • knowledge/frameworks/content-copywriting/algorithmic-authorship.md — writing rules
  • knowledge/frameworks/aeo-ai-search/aeo-ai-search-playbook-2026.md — AI search optimization

Step 2: Gather Page Data

If /browse is available (gstack installed): Try using the browse skill to load the page:

$B navigate {url}
$B snapshot -i

Extract from the live page:

  • Title tag and meta description
  • H1, H2 hierarchy
  • Word count
  • Internal/external link count
  • Image alt text coverage
  • Schema markup presence
  • Page load indicators

If /browse is NOT available: Tell the user: "/browse not available — running checklist-based audit. For live page crawling, install gstack."

If the input is a URL, attempt to fetch basic metadata. If it's a file path, read the file directly.

Step 3: Content Quality Audit

Run the quality scorer on the page content:

kai-gate score {content_file} --format json --rules aa,geo

Score specifically against:

  • Algorithmic Authorship rules (conditions after clause, verbs first, sentence length)
  • AEO signals (entity mentions, citation patterns, information gain)
  • Content structure (heading hierarchy, list formatting, bold usage)

Step 4: Technical SEO Checklist

Evaluate against the 17-point checklist:

SEO AUDIT — {url}
══════════════════════════════════════════

CONTENT QUALITY: {score}/100
  Algorithmic Authorship: {aa}%
  AEO/AI Search Signals:  {geo}%
  Content Structure:       {cs}%

TECHNICAL SEO:
  [PASS] Title tag present and under 60 chars
  [PASS] Meta description present and under 160 chars
  [FAIL] H1 missing or duplicate
  [PASS] H2 hierarchy logical
  [WARN] Only 1 internal link (recommend 3+)
  [PASS] Images have alt text (4/4)
  [FAIL] No schema markup detected
  [PASS] Word count: 1,423 (target: 1,200-1,800)
  [WARN] Keyword density: 0.8% (target: 1-2%)
  [PASS] Average sentence length: 16 words (target: <20)
  [N/A]  Page speed (requires /browse --deep)

AEO/AI SEARCH READINESS:
  [PASS] Entity mentioned 3+ times
  [WARN] No citation-style references
  [FAIL] No FAQ schema for passage extraction
  [PASS] Clear atomic facts in opening paragraph

OVERALL: {total_pass}/{total_checks} passed

Step 5: Recommendations

Prioritize fixes by impact:

FIX PRIORITY:
  1. [HIGH]   Add FAQ schema markup — enables Featured Snippet extraction
  2. [HIGH]   Fix H1 tag — currently missing/duplicate
  3. [MEDIUM] Add 2 more internal links — improves PageRank flow
  4. [LOW]    Increase keyword density from 0.8% to 1.2%

Step 6: Offer Fixes

If the content is a local file (not a live URL): "Want me to fix the content issues? The technical SEO issues (schema, H1) need to be fixed in the HTML template."

Error Handling

  • /browse unavailable: Graceful fallback to checklist-based audit
  • URL unreachable: Suggest checking the URL, offer to audit a local file instead
  • No GSC data: Audit without search performance context

Chain State

Standalone: Does not require prior chain steps Optional reads: GSC data via kai-report for keyword context

Signals

GitHub stars
47
Forks
6
Last commit
Sep 2026
Hacker News mentions
1
Advanced
Catalog kind
skill
Gateway key
seo-audit-cgallic
Source
github.com/cgallic/kai-cmo-harness