| name | rank-audit |
| description | Full SEO/GEO/AEO/Citability/Content/Performance/Vertical/Security audit with auto-fix. Scans, reports, fixes, and verifies. |
Full Audit
Comprehensive search optimization audit across 8 dimensions. Finds issues AND fixes them.
Phase 1: Parallel Scan
Run all eight scanners:
node ${CLAUDE_PLUGIN_ROOT}/tools/seo-scanner.mjs <project-directory>
node ${CLAUDE_PLUGIN_ROOT}/tools/geo-scanner.mjs <project-directory>
node ${CLAUDE_PLUGIN_ROOT}/tools/aeo-scanner.mjs <project-directory>
node ${CLAUDE_PLUGIN_ROOT}/tools/citability-scorer.mjs <project-directory>
node ${CLAUDE_PLUGIN_ROOT}/tools/content-analyzer.mjs <project-directory>
node ${CLAUDE_PLUGIN_ROOT}/tools/perf-scanner.mjs <project-directory>
node ${CLAUDE_PLUGIN_ROOT}/tools/vertical-scanner.mjs <project-directory>
node ${CLAUDE_PLUGIN_ROOT}/tools/security-scanner.mjs <project-directory>
Parse JSON output from each for findings and scores.
Phase 2: Report
Present findings grouped by all 8 categories with severity.
Show scores table:
| Category | Score |
|---|
| SEO | -- |
| GEO | -- |
| AEO | -- |
| Citability | -- |
| Content | -- |
| Performance | -- |
| Vertical | -- |
| Security | -- |
| Overall | -- |
Show summary: X critical, Y high, Z medium, W low across all categories.
Phase 3: Auto-Fix
For each finding, apply the appropriate fix:
SEO fixes (Edit tool on HTML files):
- Missing title → add
<title> in <head>
- Missing meta description → add
<meta name="description">
- Missing OG tags → generate from page content
- Missing H1 → add heading from page content
- Missing alt text → add descriptive alt attributes
- Missing canonical → add
<link rel="canonical">
- Missing sitemap → run:
node ${CLAUDE_PLUGIN_ROOT}/tools/sitemap-analyzer.mjs generate <dir> <url>
- Missing robots.txt → run:
node ${CLAUDE_PLUGIN_ROOT}/tools/robots-analyzer.mjs generate <dir> <url>
GEO fixes:
- Missing llms.txt → run:
node ${CLAUDE_PLUGIN_ROOT}/tools/llms-txt-generator.mjs <dir>
- Missing structured data → run:
node ${CLAUDE_PLUGIN_ROOT}/tools/schema-engine.mjs generate <type> --out=<path>
- Blocked AI bots → update robots.txt to allow GPTBot, PerplexityBot, ClaudeBot, Google-Extended
- Improve content structure: add question-based H2s, TL;DR summaries, definition patterns
AEO fixes:
- Missing FAQ schema → generate FAQPage from Q&A content on page
- Missing speakable → add speakable schema for key content sections
- Snippet optimization → restructure answers to 40-60 word direct answers
Performance fixes:
- Missing image dimensions → add
width and height attributes to all <img> tags
- Render-blocking scripts → add
async or defer to third-party <script> tags
- Font display issues → add
font-display: swap to @font-face declarations
- Lazy loading → add
loading="lazy" to below-fold images
- LCP priority → add
fetchpriority="high" to the LCP image (hero/above-fold)
- Missing preconnect → add
<link rel="preconnect"> hints for third-party origins (fonts, CDNs, analytics)
Security fixes:
- Missing CSP → add
<meta http-equiv="Content-Security-Policy" content="..."> in <head>
- Missing referrer policy → add
<meta name="referrer" content="strict-origin-when-cross-origin">
- Unsafe target="_blank" → add
rel="noopener noreferrer" to all target="_blank" links
- Unsandboxed iframes → add
sandbox attribute to <iframe> elements
- Mixed content → fix
http:// URLs to https:// in src, href, and content attributes
Content fixes:
- Long paragraphs → break up paragraphs longer than 150 words into smaller chunks
- Complex sentences → simplify sentences with Flesch-Kincaid grade level > 12
- Passive voice → rewrite passive voice constructions to active voice
Vertical fixes:
- Missing Product schema → add Product JSON-LD for e-commerce product pages
- Missing LocalBusiness schema → add LocalBusiness JSON-LD with business details
- Missing NAP data → add Name, Address, Phone in structured data and visible on page
- Missing opening hours → add
openingHoursSpecification to LocalBusiness schema
Phase 4: Verify
Re-run all eight scanners. Show before/after score comparison for each category.
Phase 5: Save History
node ${CLAUDE_PLUGIN_ROOT}/tools/audit-history.mjs save <dir> seo <score>
node ${CLAUDE_PLUGIN_ROOT}/tools/audit-history.mjs save <dir> geo <score>
node ${CLAUDE_PLUGIN_ROOT}/tools/audit-history.mjs save <dir> aeo <score>
node ${CLAUDE_PLUGIN_ROOT}/tools/audit-history.mjs save <dir> citability <score>
node ${CLAUDE_PLUGIN_ROOT}/tools/audit-history.mjs save <dir> content <score>
node ${CLAUDE_PLUGIN_ROOT}/tools/audit-history.mjs save <dir> performance <score>
node ${CLAUDE_PLUGIN_ROOT}/tools/audit-history.mjs save <dir> vertical <score>
node ${CLAUDE_PLUGIN_ROOT}/tools/audit-history.mjs save <dir> security <score>
Phase 6: Content Strategy
Advise on content optimizations the scanner cannot automate:
- Rewrite H2 headers as questions for AI citation
- Add concise TL;DR summaries under key sections
- Write in citation-ready format: factual, quotable, 134-167 word passages
- Create comparison tables, statistics pages, glossaries
Phase 7: Backlink Strategy
Guide link building: create link-worthy assets, guest posting, broken link building, digital PR, expert roundups.
Phase 8: Search Console Action Plan
After fixing issues, guide the user through submitting their improved site to search engines.
Google Search Console (GSC)
- Submit Sitemap — GSC → Sitemaps → Enter
sitemap.xml → Submit
- Request Indexing for Money Pages — URL Inspection → paste each fixed page → Request Indexing (10-12/day limit, prioritize homepage, pricing, top landing pages)
- Check Index Coverage — Pages → review "Not indexed" list. "Crawled - currently not indexed" = needs content/links. "Discovered - currently not indexed" = needs internal links.
- Validate Robots.txt — Settings → Crawling → verify AI bots are unblocked
- Check Rich Results — Enhancements → review schema types. Test with Rich Results Test.
- Monitor Core Web Vitals — Experience → Core Web Vitals → fix "Poor" URLs (LCP, CLS, INP)
Bing Webmaster Tools
- Submit Sitemap — Configure Sitemaps → submit sitemap.xml URL
- Submit URLs — URL Submission → submit top pages (10,000/day limit)
- Enable IndexNow — Generate key at indexnow.org → place key file at domain root. Feeds Bing, Yandex, Seznam.
- Verify Robots.txt — Configure My Site → Block URLs → Robots.txt Tester. Bingbot feeds Copilot and ChatGPT Browse.
AI Search Verification
- Test AI Visibility (2-4 weeks after deploy) — search brand + keywords in ChatGPT, Perplexity, Gemini, Google AI Overviews
- Verify llms.txt — confirm
https://yourdomain.com/llms.txt returns content
- Monitor AI Citations Weekly — track which pages get cited vs competitors in Perplexity and ChatGPT
Phase 9: Next Steps
Recommend which /claude-rank sub-commands to run next based on lowest scores. Prioritize by score:
- If SEO < 60, run
/claude-rank:rank-seo for detailed on-page analysis
- If GEO < 60, run
/claude-rank:rank-geo for AI visibility deep-dive
- If AEO < 60, run
/claude-rank:rank-aeo for snippet and voice optimization
- If Citability < 50, run
/claude-rank:rank-citability for detailed per-page citation breakdown across all 7 dimensions
- If Content < 50, run
/claude-rank:rank-content for readability analysis and thin page identification
- If Performance < 50, run
/claude-rank:rank-performance for CLS/LCP/blocking resource analysis
- If Vertical < 50, run
/claude-rank:rank-vertical for industry-specific schema and optimization
- If Security < 50, run
/claude-rank:rank-security for header analysis and CSP configuration
Present the user with a prioritized action checklist ordered by impact (lowest scores first).