CMS-интеграция, GEO Scout и откат — полное руководство
Как GEO Engine подключается к сайту: разведка перед интеграцией, способы подключения, политика метаданных, снапшоты и безопасный откат при окончании подписки.
Где это находится
Всё управление интеграцией — внутри проекта пользователя: Проекты → ваш проект → SEO → вкладка «CMS». Админ-панель не требуется — интеграция настраивается владельцем проекта. Администраторы видят результат через задачи агентов и журнал изменений.
GEO Scout — разведка перед интеграцией
GEO Scout сканирует публичные страницы сайта до любого подключения и выдаёт Integration Report. Сканирование полностью безопасно: читается только публичный HTML, никаких изменений на сайте не происходит.
- 1. Откройте вкладку «CMS» и найдите блок «GEO Scout — разведка перед интеграцией».
- 2. Введите домен сайта (по умолчанию подставляется домен проекта) и нажмите «Сканировать сайт».
- 3. Через несколько секунд появится отчёт — он сохраняется в проекте и доступен повторно.
Что показывает отчёт:
- CMS — распознанная платформа (WordPress, 1C-Bitrix, Joomla, OpenCart, MODX, Tilda, Wix, Shopify, Webflow или «самописный») с уровнем уверенности.
- SEO-модули — найденные плагины (Yoast, RankMath, AIOSEO, SEOPress) или пометка «штатные поля/шаблон».
- JSON-LD — количество блоков Schema.org, все найденные @type и дубли типов (главный источник конфликтов).
- Заполненность мета-полей — процент страниц, где уже заполнены title, description, canonical, OG, Twitter.
- Конфликты и риски — дубли схем, плагины, которые регенерируют мета, закрытые платформы.
- Рекомендация — какой коннектор подходит и какую seo_policy выбрать.
Способы подключения
Плагины и модули CMS
WordPress, Joomla, 1C-Bitrix, OpenCart, MODX — скачайте модуль в разделе «Доступные модули», установите на сайт и зарегистрируйте агента. Агент получает задачи от GEO Engine и применяет SEO/GEO-изменения внутри CMS.
Bridge / Direct API (самописные сайты)
Для сайтов без CMS на стороне сайта поднимается bridge-эндпоинт по спецификации (docs/AI_AGENT_INTEGRATION_MANUAL.md). GEO Engine пишет мета напрямую через PUT /pages/{id}. Так подключён linkrf.ru — GEO Engine там единственный владелец SEO/GEO.
Webhook
Универсальный вариант: GEO Engine отправляет задачи на ваш webhook-URL, ваш код применяет их. Подходит для нестандартных стеков.
FTP / SFTP
Загрузка SEO-файлов (robots.txt, llms.txt, sitemap) напрямую на сервер. Мета-теги через FTP не применяются — только файлы.
Tilda и закрытые платформы
Через API доступно только чтение — GEO Engine готовит мета, а применяете их вручную в настройках страниц Tilda.
InSales (SaaS-магазин)
Полный Admin API: GEO Engine пишет html_title и meta keywords/description для страниц, товаров и категорий, публикует статьи блога. OG-теги и schema рендерит шаблон темы — через API не меняются.
Политика метаданных (seo_policy)
Если на сайте уже есть SEO-модуль или вшитые мета — политика решает, кто выигрывает при конфликте.
Перезаписывать (override)
Значения GEO Engine всегда выигрывают на рендере. Выбирайте, когда GEO Engine становится единственным владельцем SEO (самописные сайты, bridge).
Только пустые (fill_empty)
Записываются только поля, пустые на живом сайте. Существующие мета не трогаются. Безопасный старт для сайтов с заполненным SEO.
Перезаписать + отслеживать (track)
Применяется всё, но каждое поле, где мы перезаписали существующее значение сайта, отмечается как drift — видно в результатах публикации.
Снапшоты — защита перед первой записью
При первой публикации на каждую страницу GEO Engine снимает её живое состояние мета (title, description, canonical, OG, JSON-LD) и сохраняет в журнал изменений как «pre-integration snapshot». Снапшот снимается один раз и никогда не перезаписывается — это эталон «до GEO Engine», к которому откатывает off-boarding.
Откат интеграции (off-boarding)
Кнопка «Откатить интеграцию» в блоке GEO Scout возвращает сайт к состоянию до подключения GEO Engine.
- Сначала показывается dry-run превью: сколько агентов получат задачу отката и сколько снапшотов будет восстановлено, со списком страниц.
- При подтверждении агентам CMS отправляется задача seo_rollback — агент проигрывает свою историю изменений от новых к старым, восстанавливая оригинальные значения, и снимает runtime-override.
- Для bridge-проектов снапшоты пушатся обратно через коннектор, затем страницы перезапрашиваются — верификация сравнивает живые мета со снапшотом.
- Проект помечается seo_managed=false, политика переводится в track — тихих перезаписей больше не будет.
- Откат идемпотентен: повторный запуск продолжает с места остановки, уже восстановленные страницы пропускаются.
Off-boarding запускается автоматически при истечении подписки (ежедневная задача), при ручной отмене подписки и при переходе на бесплатный тариф. Сайт возвращается в исходное состояние — ничего не «застревает».
Для администратора
- Аудит изменений — таблица cms_change_logs: каждая запись хранит before_state/after_state, diff и статус (applied / rolled_back / failed).
- Задачи агентов — таблица cms_tasks: seo_rollback виден рядом с обычными задачами, результат агента пишется в task.result.
- Статус отката — project.settings.offboarding: status (running / agent_pending / partial / completed), agent_results, verification.
- API: POST /api/v1/scout/scan, GET /api/v1/scout/report, POST /api/v1/projects/{id}/offboard?dry_run=true.
- Если статус partial — bridge_failed в деталях покажет страницы, которые не восстановились; повторный вызов endpoint'а продолжит с них.
Частые вопросы
Scout определил Yoast на WordPress — его надо удалять?
Нет. Оставьте плагин и выберите политику override — наши значения выигрывают на рендере, а при откате Yoast снова работает как раньше. Полное удаление оправдано только для вшитой в шаблон разметки на самописных сайтах.
В отчёте дубли JSON-LD — что делать?
После подключения оставьте источником схем bridge/GEO Engine — статическая разметка должна глушиться при наличии bridge-типа (как реализовано на linkrf.ru). Иначе получите дубли в Rich Results.
Безопасно ли нажимать «Откатить интеграцию»?
Да: сначала показывается превью без изменений, подтверждение явное. Восстанавливаются только записанные нами значения; если страницу после нас правили вручную, снапшот содержит состояние до первой записи GEO Engine.
Сайт самописный, без CMS — подключится?
Да — это сценарий «Интеграция под ключ»: на сайте поднимается bridge по спецификации, Scout покажет «самописный/неизвестный» и порекомендует direct_api.