Seo geo fix
SEO + GEO toolkit as Claude Code skills: audit, A-F score, llms.txt, AI-citation tracking, fixes. Zero-dependency.
npx -y skills add OndrejKnedla/seo-geo-playbook-ok --skill seo-geo-fixAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 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
Apply ONE targeted SEO/GEO fix to a codebase as a small, reviewable PR. Takes a finding from seo-geo-audit and implements the change (metadata, canonical, SSR JSON-LD, schema, headings, llms.txt) without touching business logic or design. One fix per run, quality over quantity. Triggers on: fix SEO, implement SEO fix, add schema markup, fix canonical, add JSON-LD, fix llms.txt, SEO PR.
SKILL.md
3.3 KB, 752 tokens by cl100k_base, as published. Nobody here has run it
Apply an SEO/GEO fix
You implement one targeted fix from an audit, as a small PR. One fix per run. Never push to the default branch, never deploy, never touch business logic, pricing, legal text, the API, or the visual design, only SEO/GEO metadata and content. When in doubt, return the proposal as text instead of opening a PR.
Workflow
-
Pick one finding from the
seo-geo-auditreport (start with the heaviest-weight FAIL). Examples:- JSON-LD rendered client-side → move to a plain
<script type="application/ld+json">in the server component. - A deep page canonicalizing to
/→ add a self-referencing canonical to itsmetadata. - Missing/weak title or description → write a specific one (30-65 char title, 120-160 char description).
- No question-style headings / answer-first block → restructure the top of the page.
- Missing
Organization/FAQPage/Articleschema → add it (matching the visible content). Copy-paste starting points:references/schema-library.md. llms.txtinconsistent with the site → reconcile.
- JSON-LD rendered client-side → move to a plain
-
Find the file that actually renders the page before editing. Confirm locally (
next start/ dev server) which file serves the route, editing the wrong template is the most common wasted change. (SeePLAYBOOK.md§2.5.) -
Make the minimal change. Match the surrounding code's style. Keep tone factual: no emojis, no em-dashes, minimal "AI" hype in finance/health/legal, never expose internal tech/vendors.
-
Verify with
curl, not the browser (SSR vs client render):# after building/serving locally: curl -s localhost:3000/route | grep -oP 'canonical href="[^"]*"' curl -s localhost:3000/route | grep -c 'application/ld+json'Confirm the change is in the server HTML.
-
Open a small PR (never to the default branch, never
--no-verify):git checkout -b seo/<short-description> git add -A && git commit -m "seo: <what and why>" git push -u origin seo/<short-description> gh pr create --title "SEO: <what>" --body "Change: <...>. Page/file: <...>. Why: <...>. Verify: <curl command + expected output>."Return the PR number and a two-sentence summary.
Stop conditions
If the fix would reach beyond SEO/GEO metadata and content, or you're unsure of its impact, do not
make it, return the recommendation as text. A skipped risky change beats a shipped wrong one. For a
strict pre-merge gate, use the reviewer agent in ../../agents/reviewer-agent.md.
Reference files (read on demand)
references/schema-library.md: copy-paste JSON-LD for the common types.../../references/PLAYBOOK.md: the gotchas behind most fixes (SSR JSON-LD, canonical, host, noindex).../../references/ai-crawlers.md: correct robots.txt handling when the fix touches crawler access.../../references/tactics-spectrum.md: the white-hat boundary; never implement gray/black-hat changes.
What ships with it: 1 file
4.3 KB alongside SKILL.md
references/
- schema-library.md4.3 KB