Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add majdghithan/agent-skills --skill geo-llm-optimizationgit clone --depth 1 https://github.com/majdghithan/agent-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/majdghithan/agent-skills/geo-llm-optimization)<a href="https://agentmods.dev/skills/majdghithan/agent-skills/geo-llm-optimization"><img src="https://agentmods.dev/badge/skills/majdghithan/agent-skills/geo-llm-optimization/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/majdghithan/agent-skills/geo-llm-optimization"><img src="https://agentmods.dev/badge/skills/majdghithan/agent-skills/geo-llm-optimization.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00129 | $0.01403 |
| Opus 5 | $0.00064 | $0.00701 |
| Sonnet 5 | $0.00026 | $0.00281 |
| Haiku 4.5 | $0.00013 | $0.00140 |
Grade A, and why
geo-llm-optimization scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 92 lines — stays where its author put it; the contents beside it link to each section on GitHub.
GEO - Generative Engine Optimization
More and more people skip Google and ask ChatGPT/Claude/Perplexity/Gemini directly. When they do, there is no results page - one synthesized answer. If your content isn't inside that answer, you don't exist for that person: no impression, no click, nothing. GEO is how you get into the answer.
SEO vs GEO: SEO optimizes so a search engine ranks your page and you win a click. GEO optimizes so an AI assistant cites or recommends you inside its answer - you win a mention. They share most fundamentals; the target differs. SEO is not dead - do the shared fundamentals well and you play both games with one codebase.
The five things GEO actually asks (in priority order)
1. Let the AI crawlers in (the #1 thing people get backwards)
AI assistants read the web through their own bots. If robots.txt blocks them, you've opted out of every AI answer on purpose. Allow them:
# robots.txt - allow AI crawlers explicitly (or just Allow: / for User-agent: *)
User-agent: GPTBot
Allow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: Google-Extended # Gemini / Vertex training + grounding
Allow: /
Sitemap: https://example.com/sitemap.xml
Verify you are not accidentally blocking them at the CDN/WAF layer (Cloudflare "block AI bots" toggles, etc.).
2. Be extractable - LLMs lift claims
Models pull discrete claims out of your text. Make them easy to lift verbatim:
- Clear, descriptive headings; a direct definition near the top of each section.
- Short declarative sentences with real numbers and sources ("cut p95 from 800ms to 120ms").
- Answer the actual question plainly instead of burying it under vague prose - the page that says the thing directly gets quoted; the wall of fluff gets skipped.
3. Give machines structure (JSON-LD + semantic HTML)
Structured data tells both Google and the models exactly what the page is, who wrote it, and when. Use real Article/BlogPosting, WebSite, and Person/Organization types - and a @graph linking author to site:
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "…",
"datePublished": "2026-07-28",
"author": {
"@type": "Person",
"name": "Your Name",
"jobTitle": "…",
"sameAs": ["https://www.linkedin.com/in/you", "https://github.com/you"]
},
"publisher": { "@type": "Organization", "name": "…" }
}
Add a clean sitemap.xml, canonical URLs, and OG/Twitter meta. Do not fake schema (e.g. a FAQPage for Q&As that aren't really on the page) - fabricated structured data is a liability, not a GEO win.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 92 lines · 129 tokens per session scan A 060a878d71f2
geo-llm-optimization is a skill published in the GitHub repository majdghithan/agent-skills (7 stars, last pushed 1mo ago), licensed MIT. It adds 129 tokens to every session and 1,403 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
olakunlevpn-filament-skills
Use when writing, reviewing, or refactoring Filament PHP v5 code -- resources, forms, tables, infolists, actions, widgets, panels, relation managers, multi-tenancy, testing, or plugin development. Always apply these standards to all Filament work.
powergrid-theme
Create or update a PowerGrid v7 theme using the Theme abstract class, per-section token methods (layout/header/table/footer/cols/tabs plus filter/editable/toggleable), config themeoverrides, or ArrayTheme.
upgrade-theme-v6-to-v7
Migrates a v6 Theme class to the v7 architecture: a tiny struct() plus per-section token methods (layout/header/table/footer/cols/tabs + filter/editable/toggleable) with parentTheme inheritance.
create-powergrid-plugin
Create a complete PowerGrid plugin from scratch, including PHP class, Column macro, Blade view, Alpine.js component, and registration.
module:assistant
Add an AI assistant chat panel to any Laravel project — with tool calling, streaming, and MCP support.
laravel-spatie-event-sourcing
Use this skill any time a user works with Laravel and event sourcing together — whether setting up spatie/laravel-event-sourcing for the first time, designing a new event-sourced domain (aggregates, events, projectors, reactors), generating code for bounded contexts, or debugging issues with AggregateRoot…