YaGEO: optimizing for Yandex EPOS and Alice
YaGEO
A Claude Code skill scoring a site against Yandex's EPOS criteria (expertise, usefulness, originality, substance) and Alice AI visibility
Low risk
We rate an entry low when it mostly gives the agent instructions and reference material.
Why this level
- Only reads and analyzes public site pages, with no changes made
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add skills/yageoDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
Run in a terminal in the project folder
npx skills add theyahia/yageo --skill yageo-epos -a claude-code -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit c1d05e8
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/theyahia/yageo.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /yageo/
git -C "$tmp" checkout c1d05e85b7ec996ca58d821f3e0304c9769d25b7
mkdir -p .claude/skills
cp -R "$tmp/yageo" .claude/skills/yageo-eposCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
npx skills add theyahia/yageo --skill yageo-epos -a cursor -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit c1d05e8
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/theyahia/yageo.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /yageo/
git -C "$tmp" checkout c1d05e85b7ec996ca58d821f3e0304c9769d25b7
mkdir -p .agents/skills
cp -R "$tmp/yageo" .agents/skills/yageo-eposCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
npx skills add theyahia/yageo --skill yageo-epos -a github-copilot -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit c1d05e8
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/theyahia/yageo.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /yageo/
git -C "$tmp" checkout c1d05e85b7ec996ca58d821f3e0304c9769d25b7
mkdir -p .github/skills
cp -R "$tmp/yageo" .github/skills/yageo-eposCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
npx skills add theyahia/yageo --skill yageo-epos -a codex -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit c1d05e8
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/theyahia/yageo.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /yageo/
git -C "$tmp" checkout c1d05e85b7ec996ca58d821f3e0304c9769d25b7
mkdir -p .agents/skills
cp -R "$tmp/yageo" .agents/skills/yageo-eposCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
npx skills add theyahia/yageo --skill yageo-epos -a gemini-cli -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit c1d05e8
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/theyahia/yageo.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /yageo/
git -C "$tmp" checkout c1d05e85b7ec996ca58d821f3e0304c9769d25b7
mkdir -p .agents/skills
cp -R "$tmp/yageo" .agents/skills/yageo-eposCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/theyahia/yageo.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /yageo/
git -C "$tmp" checkout c1d05e85b7ec996ca58d821f3e0304c9769d25b7
mkdir -p .devin/skills
cp -R "$tmp/yageo" .devin/skills/yageo-eposCommands for macOS and Linux, on Windows run them in Git Bash.
Formerly Windsurf.
Run in a terminal in the project folder
npx skills add theyahia/yageo --skill yageo-epos -a cline -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit c1d05e8
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/theyahia/yageo.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /yageo/
git -C "$tmp" checkout c1d05e85b7ec996ca58d821f3e0304c9769d25b7
mkdir -p .cline/skills
cp -R "$tmp/yageo" .cline/skills/yageo-eposCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
npx skills add theyahia/yageo --skill yageo-epos -a roo -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit c1d05e8
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/theyahia/yageo.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /yageo/
git -C "$tmp" checkout c1d05e85b7ec996ca58d821f3e0304c9769d25b7
mkdir -p .roo/skills
cp -R "$tmp/yageo" .roo/skills/yageo-eposCommands for macOS and Linux, on Windows run them in Git Bash.
A fork of Roo Code, same .roo folders.
Run in a terminal in the project folder
npx skills add theyahia/yageo --skill yageo-epos -a opencode -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit c1d05e8
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/theyahia/yageo.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /yageo/
git -C "$tmp" checkout c1d05e85b7ec996ca58d821f3e0304c9769d25b7
mkdir -p .agents/skills
cp -R "$tmp/yageo" .agents/skills/yageo-eposCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/theyahia/yageo.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /yageo/
git -C "$tmp" checkout c1d05e85b7ec996ca58d821f3e0304c9769d25b7
mkdir -p .agents/skills
cp -R "$tmp/yageo" .agents/skills/yageo-eposCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/theyahia/yageo.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /yageo/
git -C "$tmp" checkout c1d05e85b7ec996ca58d821f3e0304c9769d25b7
mkdir -p .agents/skills
cp -R "$tmp/yageo" .agents/skills/yageo-eposCommands for macOS and Linux, on Windows run them in Git Bash.
Clone theYahia/YaGEO, run bash install.sh (or install-win.sh on Windows), activate the virtual environment, and run yageo-audit https://example.com/ --report for a full audit with a Markdown report.
Other ways from the author
git clone https://github.com/theyahia/YaGEO.git && cd YaGEO && bash install.shInstalls on macOS and Linux; on Windows use install-win.sh in Git Bash.
This is third-party code. Review the repository files before installing.
What it does
The skill scores pages against Yandex's official EPOS criteria: expertise via Author markup, named-entity density and numeric facts; usefulness via HTTPS, viewport, H1 and an answer-first opening; originality via n-gram uniqueness and sentence-length variance; substance via word count, heading structure, FAQ and lists. Each criterion gets a 0-100 score, with a target threshold of 70+ for Alice AI citability. Separate commands check YandexBot accessibility, robots.txt, sitemap and canonical tags, validate and generate Russian-language JSON-LD templates (Organization, Person, FAQ, LocalBusiness, SoftwareApp), run a whole-site audit via sitemap.xml exported to CSV, and produce Markdown or PDF reports. NLP analysis runs on the roughly 77MB Natasha model and works offline on CPU with no GPU, needing internet only to fetch the page being checked.
Who it is for. For SEO specialists and content teams preparing a site to appear in Yandex's generative answers and Alice.
Good fit when
- You want a page scored against Yandex's official EPOS criteria with concrete recommendations
- You want to check YandexBot accessibility and validate JSON-LD markup
- You want a bulk site audit via sitemap.xml exported to CSV
Not a fit when
- You want optimization for Google AI Overviews or other AI search engines: the skill is tuned for Yandex and Alice
- Your agent environment lacks Python 3.12 or newer
Example request
Score this page against the EPOS criteria and tell me what to fix for Alice visibilityLimitations
You need Python 3.12 or newer, and for PDF reports the reportlab package via pip install -e ".[pdf]". The project is at version 0.1.0 with one author. The Natasha model works offline, but fetching the page being checked needs internet. The EPOS scoring is based on the author's research and Yandex's public materials, not an official content-scoring API, since Yandex does not publish its algorithm's exact weights.
How to disable. Deactivate the virtual environment and delete the YaGEO folder or the yageo skill from the Claude Code skills directory.
Security check
- Only reads and analyzes public site pages, with no changes made
README in short
The README describes YaGEO as an open source Claude Code skill for Yandex's EPOS criteria and the Webmaster tool for Alice AI visibility. It lists seven commands: EPOS scoring, crawler checks, content depth, schema validation, a full audit, a PDF report and a sitemap batch audit. It explains the EPOS system letter by letter with a 70+ citability threshold, shows installation via install.sh scripts, the repository layout, and requirements: Python 3.12+, the offline Natasha NLP model with no GPU needed.
FAQ
What is EPOS?
Yandex's official criteria system for ranking content in generative answers and Alice: expertise, usefulness, originality and substance.
Is a GPU required?
No, the Natasha NLP model runs offline on CPU.
Related
Official DataLens (Yandex) skills for Claude Code, Codex and OpenCode: SDK, HTML reports and RLS resolution
A Yandex Metrika MCP server generated from the API spec: 108 methods, 10 tools declared by default, transparent filters and response metadata
An open MCP server and agent skill set for SEO: keyword research, competitors, backlinks and site audits powered by DataForSEO
A Claude Code plugin for SEO audits: technical SEO, E-E-A-T, schema, local and AI search via parallel subagents