Claude Info
AI и агенты

geo-lint

IJONIS/geo-lint

Первый open-source GEO-линтер с 92 правилами для SEO, GEO и качества контента. Запускается AI-агентами: сканирует нарушения, исправляет их по полю suggestion и повторяет до чистого результата.

Установка

terminal
bash
npx geo-lint                  # Human-readable output

README

@ijonis/geo-lint

Первый open-source линтер для GEO (Generative Engine Optimization). Проверяет контент на видимость в AI-поиске — и позволяет AI-агенту исправить всё автоматически.

npm version CI License: MIT Claude Code Skill

geo-lint demo


Использование с Claude Code

Установите скилл geo-lint одной командой:

bash
curl -fsSL https://raw.githubusercontent.com/IJONIS/geo-lint/main/install.sh | bash

Затем в любой сессии Claude Code:

/geo-lint audit # Полная проверка — найти и исправить все нарушения /geo-lint fix <slug> # Исправить один файл контента /geo-lint rules # Показать все 97 правил со стратегиями исправления /geo-lint init # Настроить geo-lint.config.ts для нового проекта /geo-lint report # Сформировать сводку по GEO/SEO-здоровью

Скилл запускает автономный цикл lint-fix: сканирует контент, читает структурированные нарушения, исправляет их по полю suggestion каждого нарушения и повторяет проверку до чистого результата. Параллельные субагенты обрабатывают несколько файлов одновременно.

Пайплайн создания контента

При установке также добавляется /content-creator — самонастраивающийся пайплайн, который создаёт SEO- и GEO-оптимизированный контент под ваш проект:

/content-creator setup # Автообнаружение проекта + настройка голоса бренда /content-creator create # Создание контента с исследованием ключевых слов и валидацией /content-creator voice # Анализ и корректировка голоса бренда /content-creator calendar # Планирование ежемесячного контент-календаря /content-creator refresh # Обновление конфига при изменении проекта

При первом запуске скилл сканирует проект: определяет фреймворк, схему контента, категории и авторов. Затем задаёт несколько вопросов о голосе бренда и целевой аудитории. После этого каждый создаваемый материал учитывает контекст проекта и проходит валидацию по 97 правилам geo-lint до чистого результата — без ручного вмешательства в механическую проверку качества.

Или вставьте это в любой AI-агент (Claude Code, Cursor, Windsurf, Copilot):

Run npx geo-lint --format=json, then fix every violation using each violation's suggestion field. Re-run until the output is [].

Зачем это нужно

Я веду несколько контентных сайтов, и у меня не было детерминированного способа проверить, действительно ли контент оптимизирован — не «скорее всего нормально», а проверен по конкретным правилам. SEO-линтеры существуют, но они либо платные SaaS, либо не поддаются автоматизации, либо полностью игнорируют структурные паттерны, которые AI-поисковики используют при выборе источников для цитирования.

Поэтому я написал свой. GEO (Generative Engine Optimization) — это практика структурирования контента так, чтобы его цитировали ChatGPT, Perplexity, Google AI Overviews и Gemini. Традиционный SEO помещает вас в списки результатов поиска. GEO обеспечивает цитирование в AI-сгенерированных ответах. Оба подхода важны — и ни один существующий open-source инструмент не проверяет GEO.

Цель была простой: установить один инструмент, направить на него AI-агента и уйти. Агент запускает линтер, читает JSON-нарушения, исправляет контент, повторяет проверку до чистого результата — по всему сайту, без ручного ввода. Одна команда, SEO и GEO проверены.

97 правил: 36 GEO, 34 SEO, 14 по качеству контента, 10 технических, 3 i18n. Анализ читаемости вдохновлён Yoast SEO. Мы исследовали текущее состояние GEO и AEO, чтобы правила отражали то, что реально влияет на цитируемость контента, а не устаревшие рекомендации.


Быстрый старт

npm install -D @ijonis/geo-lint

Создайте geo-lint.config.ts:

ts
import { defineConfig } from '@ijonis/geo-lint';

export default defineConfig({
  siteUrl: 'https://your-site.com',
  contentPaths: [{
    dir: 'content/blog',
    type: 'blog',
    urlPrefix: '/blog/',
  }],
});

Запустите:

bash
npx geo-lint                  # Читаемый вывод для человека
npx geo-lint --format=json    # Машиночитаемый вывод для AI-агентов

Работает из коробки с файлами .md/.mdx. Для Astro, HTML и других форматов см. Custom Adapters.


GEO на практике

Три примера того, что ловят GEO-правила и как это исправить. См. все 7 ключевых GEO-правил с примерами.

geo-weak-lead-sentences

AI-системы используют первое предложение после заголовка как сниппет для цитирования. Вводные фразы-заглушки пропускаются.

До:

markdown
## What is serverless computing?

In this section, we will take a closer look at serverless computing and
what it means for modern development teams.

После:

markdown
## What is serverless computing?

Serverless computing is a cloud execution model where the provider
dynamically allocates compute resources per request, eliminating the
need to provision or manage servers.

geo-low-citation-density

AI-ответы предпочитают утверждения, подкреплённые цифрами. Расплывчатые формулировки игнорируются.

До:

Adopting TypeScript significantly reduces bugs in large codebases.

После:

markdown
Adopting TypeScript reduces production bugs by 38% in codebases
exceeding 50,000 lines of code, according to a 2023 study by
Microsoft Research.

geo-missing-table

Таблицы хорошо структурированы и однозначны — идеальны для извлечения AI. Контент с таблицами сравнения цитируется значительно чаще, чем аналогичный текст в прозе.

До:

markdown
React is component-based and uses a virtual DOM. Vue is also
component-based but uses a reactivity system. Svelte compiles
components at build time.

После:

markdown
| Framework | Architecture     | Bundle Size | Learning Curve |
|-----------|------------------|-------------|----------------|
| React     | Virtual DOM      | ~42kb       | Medium         |
| Vue       | Reactivity system| ~34kb       | Low            |
| Svelte    | Compiled         | ~1.6kb      | Low            |

Похожие скиллы