Geo Fundamentals
wasp-lang/wasp
Generative Engine Optimization for AI search engines (ChatGPT, Claude, Perplexity).
Optimize content for AI search engines — ChatGPT, Perplexity, Claude, Gemini, Google AI Overviews.
$ npx skills add galfrevn/apollo --skill optimize-for-ai -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install galfrevn/apollo optimize-for-ai --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/galfrevn/apollo.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/optimize-for-ai .claude/skills/optimize-for-ai && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "optimize-for-ai" agent skill from https://github.com/galfrevn/apollo/tree/main/.claude/skills/optimize-for-ai into .claude/skills/optimize-for-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "optimize-for-ai", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/galfrevn/apollo/tree/main/.claude/skills/optimize-for-aiType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add galfrevn/apollo --skill optimize-for-ai -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install galfrevn/apollo optimize-for-ai --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/galfrevn/apollo.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/optimize-for-ai .agents/skills/optimize-for-ai && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "optimize-for-ai" agent skill from https://github.com/galfrevn/apollo/tree/main/.claude/skills/optimize-for-ai into .agents/skills/optimize-for-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "optimize-for-ai", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add galfrevn/apollo --skill optimize-for-ai -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install galfrevn/apollo optimize-for-ai --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/galfrevn/apollo.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/optimize-for-ai .cursor/skills/optimize-for-ai && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "optimize-for-ai" agent skill from https://github.com/galfrevn/apollo/tree/main/.claude/skills/optimize-for-ai into .cursor/skills/optimize-for-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "optimize-for-ai", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/galfrevn/apollo.git --path .claude/skills/optimize-for-ai--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add galfrevn/apollo --skill optimize-for-ai -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install galfrevn/apollo optimize-for-ai --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/galfrevn/apollo.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/optimize-for-ai .gemini/skills/optimize-for-ai && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "optimize-for-ai" agent skill from https://github.com/galfrevn/apollo/tree/main/.claude/skills/optimize-for-ai into .gemini/skills/optimize-for-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "optimize-for-ai", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install galfrevn/apollo optimize-for-aiInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add galfrevn/apollo --skill optimize-for-ai -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/galfrevn/apollo.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/optimize-for-ai .github/skills/optimize-for-ai && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "optimize-for-ai" agent skill from https://github.com/galfrevn/apollo/tree/main/.claude/skills/optimize-for-ai into .github/skills/optimize-for-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "optimize-for-ai", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add galfrevn/apollo --skill optimize-for-ai -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install galfrevn/apollo optimize-for-ai --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/galfrevn/apollo.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/optimize-for-ai .opencode/skills/optimize-for-ai && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "optimize-for-ai" agent skill from https://github.com/galfrevn/apollo/tree/main/.claude/skills/optimize-for-ai into .opencode/skills/optimize-for-ai/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "optimize-for-ai", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
optimize-for-aiOptimize content for AI search engines — ChatGPT, Perplexity, Claude, Gemini, Google AI Overviews.
Optimize For AI is an agent skill from galfrevn/apollo. Optimize content for AI search engines — ChatGPT, Perplexity, Claude, Gemini, Google AI Overviews. Use when the user asks about AI SEO, AISO, getting cited by AI, appearing in AI answers, answer engine optimization, AEO, GEO, LLMO, AI Overviews, zero-click search, or how to appear in ChatGPT/Perplexity results. For traditional SEO, see diagnose-seo.
Its SKILL.md is about 4.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Marketing & SEO, covering AI search optimization. It works with OpenAI and Perplexity. The repository describes itself as: The open-source brain for physical agentic devices, powered by Cloudflare Workers. The licence is MIT.
10 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit c7605d6. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
seojuice.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Optimize For AI loads about 4.3k tokens when it runs. Until then it costs about 92 tokens; SKILL.md has 2,197 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from galfrevn/apollo at commit c7605d6, republished under its MIT licence (© galfrevn). 2,197 words, ~4,320 tokens.
.claude/skills/optimize-for-ai/SKILL.md (or your agent's skills folder).Optimize for AI search engines (ChatGPT, Perplexity, Claude, Gemini, Google AI Overviews) using citation architecture, E-E-A-T signals, and brand entity building.
Traditional SEO gets you ranked in a list of results. AI SEO gets you cited as a source in AI-generated answers. The difference matters:
AI systems extract information from content. The easier it is to extract, the more likely it gets cited:
Definitions and clear statements
Structured data
Original insights
Comprehensive coverage
| Format | Why It Works |
|---|---|
| Comparison articles | AI frequently answers "X vs Y" and "best X" queries — structured comparisons are easy to extract |
| Definitive guides | Comprehensive coverage signals authority to AI systems |
| Original research | Unique data that no one else has — AI systems prefer primary sources |
| How-to tutorials | Step-by-step structure maps directly to AI response format |
| Expert roundups | Multiple expert voices increase perceived authority |
Different content types get cited differently. Optimize based on what you're writing:
Score each page across 5 dimensions. For each item: Pass (meets criteria fully), Partial (partly meets), or Fail (does not meet).
Can AI systems pull a useful answer from this content?
| Item | Pass | Fail |
|---|---|---|
| Core answer in first 150 words after the heading | Answer appears immediately | Answer buried in background |
| Self-contained statements (make sense without context) | Key claims stand alone | Claims require surrounding text |
| Structured data (tables, lists) for comparisons/data | Data in tables or lists | Data in prose paragraphs |
| TL;DR or summary box at the top | Present | Missing |
Does the content contain statements worth citing?
| Item | Pass | Fail |
|---|---|---|
| Specific claims with numbers and units | "Response time improved 40% (from 500ms to 300ms)" | "Response time improved significantly" |
| Named sources on all statistics | Source and date cited | Unsourced numbers |
| Clear definitions using "X is Y" structure | Present for key terms | Key terms undefined or vague |
Does the content signal expertise?
| Item | Pass | Fail |
|---|---|---|
| Author identified with relevant credentials | Name, title, experience visible | Anonymous or no bio |
| Expert quotes with named sources | At least 1 named expert quoted | No external voices |
| References to primary sources (not just other blogs) | Links to research, docs, official data | Only cites other blog posts |
Is the content current?
| Item | Pass | Fail |
|---|---|---|
| Published or updated date visible on page | Date present and within 18 months | No date or older than 18 months |
| Data and examples are current | Statistics from last 2 years | Outdated numbers or deprecated tools |
Can AI systems identify what entity this content is about?
| Item | Pass | Fail |
|---|---|---|
| Subject entity named in full in opening paragraph | "SEOJuice is an SEO intelligence platform..." | Pronoun or abbreviated reference |
Organization schema with sameAs links | JSON-LD present | Missing |
| Consistent brand name across platforms | Same name on site, GBP, LinkedIn, etc. | Variations or inconsistencies |
Veto: If AI crawlers (GPTBot, ClaudeBot, PerplexityBot) are blocked in robots.txt, the AI visibility score is 0 regardless of content quality. Check this first.
Score each dimension: Pass = 10, Partial = 5, Fail = 0. Average items per dimension.
| Dimension | Score | Assessment |
|---|---|---|
| Extractability | [x]/10 | ... |
| Quotability | [x]/10 | ... |
| Authority | [x]/10 | ... |
| Freshness | [x]/10 | ... |
| Entity Clarity | [x]/10 | ... |
| AI Citation Score | [avg]/10 | ... |
AI systems cite content they can extract cleanly. Here are before/after examples showing how to transform weak content into citable content:
Before (score: 1/10): "SEO is really important and there are many things to consider."
After (score: 9/10): "Search engine optimization (SEO) is the practice of improving a website's visibility in organic search results through technical configuration, content relevance, and link authority. According to BrightEdge, 53% of all website traffic originates from organic search."
Fix: Name the term, classify it, list its components, add a sourced statistic.
Before (score: 2/10): "Email marketing is pretty effective for most businesses."
After (score: 9/10): "Email marketing generates an average return of $42 for every $1 spent (Litmus, 2023), making it the highest-ROI digital marketing channel — outperforming social media (average $5.20 per $1) and paid search (average $8 per $1)."
Fix: Replace adjectives with numbers, name the source, add comparison context.
Before (score: 2/10): "Think about your keywords and try to optimize your content."
After (score: 8/10): "To optimize a page for a target keyword: (1) place the keyword in the title tag and H1, (2) use it in the first 100 words, (3) add 2-3 semantic variations in H2 subheadings, (4) maintain 0.5-2.5% keyword density, and (5) include it in the meta description. Use tools like Google Search Console to verify indexing within 48 hours."
Fix: Number the steps, make each action specific, add tool and time reference.
Score each content section against these 10 questions (8+ = highly quotable, 5-7 = needs work, <5 = major rewrite):
Check who AI systems currently cite for your target topics:
AI systems understand brands as entities. To strengthen your brand entity:
sameAs links to all official profilesAI systems recognize brands as entities. Use this prioritized checklist to strengthen your entity:
Priority 1 — Foundation (must-have):
name, url, logo, descriptionsameAs property links to all authoritative profiles (LinkedIn, Wikipedia, Wikidata, social)Priority 2 — Authority (should-have):
Priority 3 — AI-Specific (must-have for AI visibility):
| Current State | Focus Area | Timeline |
|---|---|---|
| Most Priority 1 missing | Priority 1 only | 2-4 weeks |
| Priority 1 done, Priority 2 mixed | Priority 2 authority | 1-2 months |
| Priority 1-2 done | Priority 3 AI-specific | 2-3 months |
| All tiers done | Maintenance + quarterly re-audit | Ongoing |
Different AI systems have distinct citation behaviors. Optimize for all, but understand the differences:
| Factor | Google AI Overviews | ChatGPT | Perplexity | Claude |
|---|---|---|---|---|
| Freshness bias | High | Medium | Very High | N/A (training data) |
| Authority weight | Very High | High | High | High |
| Structure importance | High | Medium | Very High | Medium |
| Typical citations per answer | 3-8 | 1-6 | 5-10 | N/A |
| Domain trust weight | Very High | High | Medium | High |
| Factual density preference | High | High | Very High | Very High |
Track your AI presence across platforms:
Current AI Presence
Optimization Priorities
| Priority | Action | Pages Affected | Expected Impact |
|---|---|---|---|
| 1 | ... | ... | ... |
Content Optimization Plan For each key page/topic:
Brand Entity Checklist
Pro Tip: Try the free AI Visibility Checker to see how your brand appears in AI search results, the AI Crawler Inspector to verify bot access, and the GEO Content Analyzer to score content for AI citation readiness. SEOJuice MCP users can run
/seojuice:aiso-reportfor AISO scores across visibility, sentiment, position, and coverage — with monthly trends.
© galfrevn, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/optimize-for-ai of galfrevn/apollo.
Open the folder on GitHubat commit c7605d6
Optimize For AI next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Optimize For AI this skillgalfrevn/apollo | 237 | — | ~4.3k | Automated safety check: Pass | MIT | |
| Geo Fundamentalswasp-lang/wasp | 19k | 9 repos | ~861 | Automated safety check: Pass | MIT | |
| SEO GeoReScienceLab/opc-skills | 1.8k | 4 repos | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| GEO-First SEO Audit Toolzubair-trabzada/geo-seo-claude | 11k | — | ~2.8k | Automated safety check: Notes | MIT | |
| Fire Your SEO Agencyleopard627/fire-your-seo-agency | 708 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Marketing OsYuzzyuk/marketing-os | 538 | — | ~2.5k | Automated safety check: Pass | MIT |
wasp-lang/wasp
Generative Engine Optimization for AI search engines (ChatGPT, Claude, Perplexity).
ReScienceLab/opc-skills
SEO & GEO (Generative Engine Optimization) for websites. An agent skill from ReScienceLab/opc-skills.
zubair-trabzada/geo-seo-claude
Audits a website for AI search visibility across ChatGPT, Claude, Perplexity and Google AI Overviews while checking traditional SEO, schema and E-E-A-T content quality.
leopard627/fire-your-seo-agency
SEO·AEO·GEO·LLMO·NEO(네이버) 다섯 레인을 진단하고 직접 구현하며, 인용되는 콘텐츠를 계속 생산하는 서브 블로그·콘텐츠 운영 파이프라인까지 세팅하는 스킬.
Yuzzyuk/marketing-os
A complete marketing department in one skill. An agent skill from Yuzzyuk/marketing-os.
Ryze-AI-Adgent/open-seo-mcp-skills
Measure real AI-engine visibility — traffic from ChatGPT, Perplexity, Claude, Gemini and which pages they cite — from actual GA4 referral data, not prompt sampling.
galfrevn/apollo
A skill your agent uses when building, running, testing, or bundling JavaScript/TypeScript applications.
galfrevn/apollo
Runs the Greptile CLI on the current local branch, fixes what the review finds, and reviews again, until the review comes back 5/5 with zero comments.
galfrevn/apollo
Structured diagnostic for technical SEO problems. An agent skill from galfrevn/apollo.
Works with
Categories
Optimize content for AI search engines — ChatGPT, Perplexity, Claude, Gemini, Google AI Overviews. Optimize For AI is an agent skill from galfrevn/apollo. Optimize content for AI search engines — ChatGPT, Perplexity, Claude, Gemini, Google AI Overviews.
Optimize For AI fits situations like: the user asks about AI SEO; getting cited by AI; appearing in AI answers; answer engine optimization.
Run `npx skills add galfrevn/apollo --skill optimize-for-ai -a claude-code`. Or copy the skill folder (.claude/skills/optimize-for-ai in galfrevn/apollo) into .claude/skills/optimize-for-ai in your project. Claude Code loads it when a task matches its description.
Run `npx skills add galfrevn/apollo --skill optimize-for-ai -a codex`. Or copy the skill folder (.claude/skills/optimize-for-ai in galfrevn/apollo) into .agents/skills/optimize-for-ai in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add galfrevn/apollo --skill optimize-for-ai -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/optimize-for-ai, .gemini/skills/optimize-for-ai, .github/skills/optimize-for-ai and .opencode/skills/optimize-for-ai in your project.
SKILL.md names no scripts, command-line tools or credentials: Optimize For AI is instructions for the agent only.
SKILL.md names 1 domain. As links in the text: seojuice.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Optimize For AI is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.3k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Optimize For AI: Geo Fundamentals (wasp-lang/wasp, 19k stars), SEO Geo (ReScienceLab/opc-skills, 1.8k stars), GEO-First SEO Audit Tool (zubair-trabzada/geo-seo-claude, 11k stars) and Fire Your SEO Agency (leopard627/fire-your-seo-agency, 708 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
galfrevn (a GitHub user) maintains it in galfrevn/apollo, which has 237 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on August 17, 2026.
Source: galfrevn/apollo on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.