agentsclimarketplace

Geo seo aeo skill

Skill staksoft/geo-seo-aeo-skill

AI agent skill to audit & generate websites for SEO, GEO (Generative Engine Optimization), and AEO — ChatGPT, Perplexity, Google AI Overviews, and featured snippets. By Staksoft.

Install
npx -y skills add staksoft/geo-seo-aeo-skill

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Audit or generate web content optimized for traditional search (SEO), AI generative answer engines like ChatGPT/Perplexity/Google AI Overviews (GEO), and answer engines / featured snippets / voice (AEO). Use when the user asks to improve a page's ranking or AI-citability, run an SEO/GEO/AEO audit of a URL or file, add JSON-LD schema, create an llms.txt, or write new content that is search- and LLM-friendly.

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

5.1 KB, as published. Nobody here has run it

Web Optimization (SEO · GEO · AEO)

This skill treats SEO, GEO, and AEO as three lenses over one shared body of web-optimization practice. It supports two workflows: Audit an existing page, and Generate new optimized content.

The three lenses (what each optimizes for)

LensOptimizes forLoad file
SEOGoogle/Bing ranking (blue links)references/seo.md
GEOLLM synthesis (ChatGPT, Perplexity, AI Overviews)references/geo.md
AEOAnswer engines, featured snippets, voicereferences/aeo.md

Shared support files:

  • references/schema.md — JSON-LD patterns (load whenever structured data is involved).
  • references/scoring.md — the rubric and priority weighting used by both workflows.

Progressive disclosure: Do NOT read every reference up front. Read only the lens file(s) relevant to the request, plus scoring.md for audits and schema.md when structured data is in play.

Workflow A — Audit

Use when given a URL or a local content file and asked to evaluate/improve it.

  1. Acquire the content.
    • URL: prefer python scripts/audit.py <url> for deterministic, objective checks (returns JSON). Also fetch the rendered content to judge quality.
    • Local file (.html/.md): read it directly; run audit.py --file <path>.
  2. Apply the three lenses. Read references/seo.md, geo.md, aeo.md and evaluate the content against each. Fold in the JSON facts from audit.py.
  3. Score & prioritize using references/scoring.md (P0 blocking → P3 nice-to-have).
  4. Emit the report using assets/audit-report-template.md: every finding = issue · lens · impact · concrete fix. Lead with the prioritized action list.

Workflow B — Generate

Use when given a topic/brief + target keyword or user intent and asked to produce new content.

  1. Clarify intent — target query, audience, and primary lens emphasis if any (default: optimize for all three).
  2. Draft applying all three lenses: answer-first structure (AEO), keyword/ intent coverage and clean heading hierarchy (SEO), high information density with concrete measurable claims (GEO).
  3. Attach structured data — pick the right JSON-LD from assets/schema-templates/ per references/schema.md (Article + FAQPage are the common pair).
  4. Produce an llms.txt entry from assets/llms-txt-template.md.
  5. Output the content + JSON-LD + llms.txt entry + a short "why this is optimized" rationale mapping choices back to the three lenses.

Workflow C — Fix (interactive step-by-step)

Use when the user says "fix [URL]", "fix the issues", or "apply the fixes" after an audit — or wants to be guided through improvements interactively.

  1. Run or recall the audit. If an audit was just completed, use those findings. Otherwise run Workflow A first silently, then begin fixing.
  2. Load references/fix-playbook.md. It maps every finding type to the minimum question(s) to ask and what to generate.
  3. Work P0 → P1 → P2 → P3, one fix per turn:
    • State: what you're fixing and why (one line).
    • Ask: the minimum question(s) needed (often zero — derive from fetched content).
    • Generate: the complete, ready-to-paste output (JSON-LD block, file content, rewritten copy, HTML snippet, diff of tag changes).
    • Confirm: "Fix N of M done — move to the next one? (or say skip / stop)"
  4. Maintain a session checklist (✅ done / ⏭ skipped / ⬜ pending) and show it at the top of each turn so the user always knows where they are.
  5. On "stop" or "done": show the full checklist summary and remind the user of any skipped items.

Key principle: Never ask the user to write anything manually. Every output should be copy-paste ready. If you need a number or URL you can't derive, ask for that one thing — then generate everything else yourself.

Quick rules of thumb

  • Information density beats word count. Replace hedges ("might be fast") with measurable claims ("sub-50ms p95 latency"). LLMs cite specifics.
  • Answer the question in the first sentence, then elaborate — this serves snippets, voice, and LLM extraction simultaneously.
  • Structure for two readers: a human operator and a natural-language parser. Tables, lists, and JSON-LD help the parser without hurting the human.
  • Authority is distributed. Off-domain mentions (GitHub, Reddit, citations) matter for GEO trust, not just on-page factors.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.