Atlas / Skills / onvoyage-ai / Improve Aeo Geo

Improve Aeo GeoSAFE

skills/onvoyage-ai/improve-aeo-geo

Claude Code skill for improving website AEO (AI Engine Optimization) and GEO (Generative Engine Optimization) scores — 16 foundational checks, 6 intelligence dimensions, framework-specific fixes

Verdict
SAFE
Grade
B
Trust score
89 /100
Version
—
Hosts
2 documented
License
MIT
Stars
1,321
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[](https://aeo-audit.sh/)

The web is no longer read only by humans. AI agents — ChatGPT, Claude, Perplexity, Google AI Overviews — are now how millions of people discover information. These agents don't browse. They extract, parse, and decide in milliseconds whether your content is worth citing.

If your site isn't optimized for AI, you're invisible to a growing share of your audience.

This is an agent skill that audits your website's codebase and makes concrete improvements to boost your AEO (AI Engine Optimization) and GEO (Generative Engine Optimization) scores.

Check your score at [aeo-audit.sh](https://aeo-audit.sh/) — then use this skill to improve it.

Install

Clone the repo, then symlink or copy improve-aeo-geo/ into either ~/.codex/skills/ or ~/.claude/skills/. See the root README for installation examples.

Usage

Once installed, invoke the skill by name:

/improve-aeo-geo

Or reference it in conversation:

"Use the AEO skill to optimize this site" "Run the AEO/GEO audit on my codebase"

The skill will:

  1. Detect your framework (Next.js, Nuxt, Astro, SvelteKit, WordPress, Hugo, Jekyll, and more)
  2. Audit your code against 16 foundational checks and 6 content quality dimensions
  3. Make targeted code changes in priority order
  4. Recommend verifying your score at aeo-audit.sh

What It Checks

Foundational (16 checks, 134 points)

Read from source at commit 575ed7e83826OBSERVED · 2026-10-12
02

Host compatibility

What the documentation claims. We have not run a compatibility test.

HostStatusNotes
claude-codementioned
codexmentioned
03

What it tells the agent

The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.

---
name: improve-aeo-geo
description: Audits a website codebase and makes code changes so AI engines (ChatGPT, Claude, Perplexity, Google AI Overviews) can better discover, parse, quote, and cite the site. Covers structured data, content structure, technical signals, and freshness.
---

# Improve Website AEO/GEO Skill

You are an expert at AI Engine Optimization (AEO) and Generative Engine Optimization (GEO). When invoked, you analyze the user's website codebase and make concrete, actionable code changes so AI agents — ChatGPT, Claude, Perplexity, Google AI Overviews, and others — can better discover, parse, quote, and cite the site.

The web is shifting from human-first to AI-first discovery. AI agents don't browse like humans. They extract structured data, scan for direct answers, and decide in milliseconds whether content is worth citing. This skill makes websites visible to that new audience.

## Workflow

When invoked on a codebase, follow this exact sequence:

### Step 1: Baseline
- If the user has a live URL, get a baseline score first. Run the **`audit-website-aeo`** skill for a local crawl + scored report, or use the hosted [aeo-audit.sh](https://aeo-audit.sh). If an `aeo_audit_report.md` already exists, read it — its prioritized fixes and weakest pages tell you exactly what to fix.
- If no URL is available, proceed with a code-level audit.

### Step 2: Discover the stack
- Identify the framework (Next.js, Nuxt, Astro, SvelteKit, Remix, WordPress, Hugo, Jekyll, 11ty, plain HTML)
- Find where `<head>` is managed (layout files, document components, plugins, theme files)
- Find where content lives (pages, MDX/MD files, CMS templates, components, PHP templates)
- Check for existing SEO plugins/packages (next-seo, @astrojs/sitemap, Yoast, etc.)
- Check if the site uses SSR, SSG, or client-side rendering

### Step 3: Audit existing state
Run through all checks below. For each failing check, note the file(s) to modify and the specific fix.

### Step 4: Fix in priority order
Apply changes starting with Priority 1 (blockers), then work down. Make the smallest, most targeted changes needed.

### Step 5: Verify
- Re-run the audit (`audit-website-aeo` skill, or [aeo-audit.sh](https://aeo-audit.sh)) and compare against the Step 1 baseline to confirm the score improved
- Target: 80+ overall score (B+ grade or higher)

---

## Scoring Model

The AEO audit score combines two halves:

- **Foundational Score (50%)** — 16 deterministic checks, pass/fail per page, aggregated site-wide (80%+ pages must pass)
- **Intelligence Score (50%)** — 6 LLM-evaluated content quality dimensions (0-5 scale)

**Final Score** = 50% Foundational + 50% Intelligence → letter grade (A+ = 95-100, A = 90-94, B+ = 80-84, ..., F = below 40).

---

## Priority 1: Blockers (fix these first)

### AI Bot Access (12 pts)

robots.txt must NOT block these 9 AI crawlers: `GPTBot`, `ClaudeBot`, `PerplexityBot`, `Google-Extended`, `OAI-SearchBot`, `anthropic-ai`, `ChatGPT-User`, `Bytespider`, `CCBot`.

**Fix**: Open `robots.txt` (project root, `public/robots.txt`, or framework equivalent). Remove any `Disallow` rules for these bots. If no robots.txt exists, create one:

```txt
User-agent: *
Allow: /

User-agent: GPTBot
Allow: /

User-agent: ClaudeBot
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: Google-Extended
Allow: /

User-agent: OAI-SearchBot
Allow: /

User-agent: anthropic-ai
Allow: /

User-agent: ChatGPT-User
Allow: /

User-agent: Bytespider
Allow: /

User-agent: CCBot
Allow: /

Sitemap: https://YOURDOMAIN.com/sitemap.xml
```

If AI bots are blocked, nothing else matters. This is the #1 prerequisite.

### AI-Accessible Meta Tags (6 pts)

Pages must NOT have `nosnippet`, `noai`, or `noimageai` in robots meta tags or `X-Robots-Tag` headers. Search for these and remove from public content pages.

### Indexability (10 pts)

Pages must NOT have `<meta name="robots" content="noindex">` on public-facing pages. Search codebase for `noindex` and remove where inappropriate.

---

## Priority 2: High-Impact Structure

### Structured Data / JSON-LD (8 pts)

Every page needs at least 1 `<script type="application/ld+json">` block. Recognized `@type` values (8 additional pts): `Organization`, `WebSite`, `WebPage`, `Article`, `Product`, `FAQPage`, `BreadcrumbList`, `LocalBusiness`, `Person`, `Event`, `HowTo`, `Recipe`, `VideoObject`, `SoftwareApplication`.

Minimum setup:
- **Site-wide**: Organization schema in the root layout
- **Homepage**: WebSite schema with SearchAction
- **Blog posts**: Article schema with author, datePublished, dateModified
- **Product pages**: Product schema
- **FAQ sections**: FAQPage schema

### Page Titles (10 pts)

Every `<title>` must be 10+ characters. Each page needs a unique, descriptive title. Format: `[Page Topic] | [Brand]`. Aim for 50-60 characters.

### Meta Descriptions (10 pts)

Every page needs `<meta name="description">` with 50+ characters. Write unique descriptions (120-160 chars ideal). Lead with the answer/value, not filler.

### Text Depth (12 pts)

Each page needs 250+ words of readable body text (excluding nav, footer, boilerplate). Aim for 500-2000 words on key pages. Articles over 2,900 words average 5.1 AI citations vs. 3.2 for under 800 words (SE Ranking, 2025 — 2.3M pages analyzed).

For SPA/component sites: ensure content is server-rendered or statically generated.

### llms.txt (10 pts)

Create `/.well-known/llms.txt` with a heading, links, and 100+ characters:

```markdown
# [Your Site Name]

> Brief description of what your site/product does.

## Documentation
- [Getting Started](https://yourdomain.com/docs/getting-started)
- [API Reference](https://yourdomain.com/docs/api)

## Key Pages
- [About](https://yourdomain.com/about)
- [Pricing](https://yourdomain.com/pricing)
- [Blog](https://yourdomain.com/blog)

## Policies
- [Terms of Service](https://yourdomain.com/terms)
- [Privacy Policy](https://yourdomain.com/privacy)
```

Also consider creating `llms-full.txt` with the
04

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeNA
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
none-observed
Shell
none-observed
Dependencies
pinned
Secrets in source
none-found

Findings (0)

No findings outside the package's declared scope.

Gates applied: no_behavioural_pass.

Audited 2026-10-12 · audit v0.4.1 · source sha 575ed7e83826full audit observations/trust-audit/skill/onvoyage-ai__improve-aeo-geo.json · Report an issue / request a re-scan
05

Audit history

Every audit this skill has had.

DateSourceVerdictGradeScoreChange
2026-10-12575ed7e83826SAFEB89first audit
06

Questions

What does the Improve Aeo Geo skill do?

Claude Code skill for improving website AEO (AI Engine Optimization) and GEO (Generative Engine Optimization) scores — 16 foundational checks, 6 intelligence dimensions, framework-specific fixes

Is Improve Aeo Geo safe to install?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.

What can Improve Aeo Geo access on my machine?

The audit observed no filesystem, network or shell use at all in its source.

Which assistants does Improve Aeo Geo work with?

Its documentation mentions claude-code and codex. That is what the text claims, not a compatibility test we ran.

How current is this page?

The grade is for one exact copy of the source (575ed7e83826), read on 2026-10-12. The repository is watched, and a new audit runs when it changes — this is the first audit.

Advertisement