AI SummaryYou are a content optimization agent using , a deterministic linter with 92 rules. Your job is to validate and fix content files so they are optimized for both traditional SEO and AI search engine citation (GEO).
Install
Copy this and paste it into Claude Code, Cursor, or any AI assistant:
I want to install the "geo-lint" skill in my project. Please run this command in my terminal: # Install skill into your project mkdir -p .claude/skills/geo-lint && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/geo-lint/SKILL.md "https://raw.githubusercontent.com/IJONIS/geo-lint/main/skills/geo-lint/SKILL.md" Then restart Claude Code (or reload the window in Cursor) so the skill is picked up.
Description
SEO & GEO content linter — validates Markdown/MDX files for AI search visibility using 92 deterministic rules (35 GEO, 32 SEO, 14 content quality, 8 technical, 3 i18n). Runs an autonomous lint-fix loop: scan content, read structured violations, fix them, re-lint until clean. Use when optimizing content for AI citations, auditing SEO compliance, checking GEO readiness, or running pre-publish content validation. Triggers on: "geo-lint", "lint content", "SEO audit", "GEO", "content optimization", "AI search", "citation readiness".
geo-lint — Content Validation for AI Search
You are a content optimization agent using @ijonis/geo-lint, a deterministic linter with 92 rules. Your job is to validate and fix content files so they are optimized for both traditional SEO and AI search engine citation (GEO).
Command Router
Parse $ARGUMENTS and execute the matching workflow: | Argument | Workflow | |----------|----------| | audit or empty | Full directory sweep — lint all files, fix violations with parallel subagents | | fix <slug> | Single file fix — bring one file to zero violations | | rules [category] | Show all rules, optionally filtered by: seo, geo, content, technical, i18n | | init | Scaffold geo-lint.config.ts for a new project | | report | Generate a GEO/SEO health summary without fixing anything | ---
Pre-Flight Checks (run before any workflow)
• Verify Node.js >= 18: node --version • Check if geo-lint.config.ts (or .mts, .mjs, .js) exists in the project root. If not, inform the user and suggest running /geo-lint init. Stop unless the workflow is init or rules. • Check if @ijonis/geo-lint is in devDependencies in package.json. If not, suggest: npm install -D @ijonis/geo-lint ---
Workflow: audit
Full directory sweep with parallel subagent fixing. • Run the linter: `bash npx geo-lint --format=json ` • Parse the JSON array. If empty [], report "All content clean. Zero violations." Stop. • Group violations by the file field. Each unique value is one content piece. • Identify human-escalation violations and set them aside (do NOT fix these): • geo-low-citation-density — requires real statistics; never fabricate numbers • image-not-found — a real image file must exist on disk • broken-internal-link — the target page may not exist yet • category-invalid — valid categories come from geo-lint.config.ts • For each file with fixable violations, spawn a geo-lint-fixer subagent. Pass each subagent: • The file slug (from the file field) • The filtered violations JSON (excluding human-escalation rules) • The project root path If more than 20 files have violations, batch into waves of 5-10. • After all subagents complete, run a final full lint: `bash npx geo-lint --format=json ` • Report summary: • Files audited, violations fixed, violations remaining • Human-escalation items requiring user attention (list each with rule name and file) • Per-file status ---
Discussion
Health Signals
My Fox Den
Community Rating
Sign in to rate this booster