vkusvill.ru
Автоматическое сканирование по открытой шкале 1.1 · 7,9 с · группа «Товары» (определена автоматически)
Может ли ИИ купить у вас?
Найдёт компанию, но не сравнит товары и цены.
Если тип определён неверно
Разметка
Синяя ступень — сейчас. Пунктир — цель после работ.
# vkusvill.ru — уровень 1 из 4 «Разметка» Сканирование на готовность к ИИ-агентам, 24.10.2026 11:42 UTC. Группа сайта: «Товары». Отчёт: https://agentreadyscan.ru/check/?url=vkusvill.ru · шкала: https://agentreadyscan.ru/metodika/ **Может ли ИИ купить у вас?** Нет — Найдёт компанию, но не сравнит товары и цены. Замечаний: критичных 3, важных 6, на доводку 7. В порядке: 30 из 46. ## Что мешает уровню 2 - **sitemap.xml с реальными датами lastmod.** Индекс карт: 17, с lastmod: 0. Дат изменения нет. Как исправить: Добавьте <lastmod> с реальной датой правки каждой страницы. ## Остальные замечания - **Файл /llms-full.txt.** Не найден (404). Как исправить: Выложите полный Markdown-каталог: линейки, характеристики, применение. - **Инструкция для агентов /AGENTS.md.** Не найдена (404). Как исправить: Опишите точки входа, как получить цену, единицы измерения и оговорки о достоверности. - **Markdown-карта сайта /sitemap.md.** Не найдена (404). Как исправить: Выложите карту сайта в Markdown для агентов. - **Товарный фид YML для Яндекс Товаров.** По стандартным адресам фид YML не найден. Если он загружен в Яндекс Товары по другому адресу — пункт выполнен. Как исправить: Выгрузите каталог в YML и загрузите в Яндекс Товары: без этого товары не попадут в ответы Алисы с кнопкой «Купить в 1 клик». Сошлитесь на фид из llms.txt. - **Уникальный <title> до ~60 символов.** «ВкусВилл — интернет-магазин продуктов для здорового питания с доставкой на дом | Москва и » — 100 симв. Как исправить: Сократите: длинный заголовок обрезается. - **meta description 120–160 символов.** 289 симв. Как исправить: Опишите страницу в 120–160 символах. - **Иерархия h2–h3 (не меньше 3).** Заголовков h2–h3: 1. Как исправить: Разбейте содержание на разделы с заголовками. - **Доля текста в HTML больше 15%.** Текст — 2,5% от объёма HTML. Как исправить: Страница — в основном код. Проверьте, что содержание есть в HTML, а не подгружается скриптами. - **Характеристики: additionalProperty с unitCode.** Характеристики не размечены. Как исправить: Каждый параметр — PropertyValue: полное имя, число в value, unitCode по UN/CEFACT (MMT, KGM, CEL…). - **Срок действия цены priceValidUntil.** Не указан. Как исправить: Добавьте priceValidUntil. - **Условия возврата и доставки в разметке.** Возврат: нет, доставка: нет. Как исправить: Добавьте hasMerchantReturnPolicy и shippingDetails. - **Markdown-зеркало страницы (link rel="alternate").** Ссылки на Markdown-версию нет. Как исправить: Добавьте <link rel="alternate" type="text/markdown" href="…">. - **Ответ в Markdown по Accept: text/markdown.** На запрос с Accept: text/markdown сервер ответил text/html; charset=utf-8. Как исправить: Отдавайте Markdown-версию по заголовку Accept (content negotiation). - **Описание API (OpenAPI).** Открытого API с описанием OpenAPI не найдено. Как исправить: Опубликуйте JSON-API товаров и цены с OpenAPI-схемой и сошлитесь на неё из AGENTS.md. - **Реквизиты юрлица: ИНН и ОГРН.** ИНН: есть, ОГРН: нет (на главной и в разметке). Как исправить: Покажите полное наименование, ИНН, ОГРН и юридический адрес — хотя бы в подвале. Для англоязычного сайта подойдут метки INN и OGRN либо поля taxID и identifier в разметке Organization. ## Объём главной страницы для агента - Исходный HTML: примерно 123 514 токенов - То же содержание текстом: примерно 2 586 токенов - Лишнее (вёрстка, скрипты, стили): 98% Оценка: у каждой модели свой токенизатор, точное число отличается примерно на пятую часть. ## Справочная смета исправлений (прайс AI-D2C) - Базовый слой для агентов — 20 000 ₽, срок 1 неделя - Разметка типа страницы — 15 000 ₽, срок 2–3 дня на тип - Фиды YML и Google — 7 500 ₽, срок 2–3 дня - **Итого с НДС: 44 625 ₽** Цена одна для всех, исполнителя вы выбираете сами. Оферта: https://aid2c.ru/oferta/ --- Оценка по внешним признакам на дату сканирования: сайт запрашивается по HTTP без выполнения JavaScript. Это не сертификат. Сервис делает ООО «САРМАТЕХ», которое под маркой AI-D2C выполняет и работы по подготовке сайтов, поэтому проверка не независима.
Что нужно сделать, чтобы подняться на уровень 2
Отмечайте сделанное, так проще не потерять нить. Когда закончите, просканируйте сайт заново.
Задача: поднять сайт vkusvill.ru до уровня 2 готовности к ИИ-агентам Проверка: https://agentreadyscan.ru/check/?url=vkusvill.ru — шкала и требования открыты: https://agentreadyscan.ru/metodika/ Сканер читает исходный HTML без выполнения JavaScript. Всё, что появляется только после скриптов, он считает отсутствующим. Ниже 1 пункт. Их нужно закрыть все: уровень присваивается, только когда выполнены все требования. ———————————————————————————————————————————————————————————— ПУНКТ 1 из 1 Задача: sitemap.xml с реальными датами lastmod — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Индекс карт: 17, с lastmod: 0. Дат изменения нет. Что нужно сделать: Добавьте <lastmod> с реальной датой правки каждой страницы. Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «sitemap.xml с реальными датами lastmod» закрыт.
sitemap.xml с реальными датами lastmod
Индекс карт: 17, с lastmod: 0. Дат изменения нет.
Задача: sitemap.xml с реальными датами lastmod — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Индекс карт: 17, с lastmod: 0. Дат изменения нет. Что нужно сделать: Добавьте <lastmod> с реальной датой правки каждой страницы. Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «sitemap.xml с реальными датами lastmod» закрыт.
Можно поправить за час, без разработчика
Не влияет на уровень, но агентам станет понятнее.
Файл /llms-full.txt
Не найден (404).
Полный текст ключевых страниц одним файлом. Собирается скриптом при публикации: заголовок страницы, адрес, текст без вёрстки.
Положите файл в корень сайта: https://ваш-сайт.ru/имя-файла. Кодировка UTF-8, тип ответа text/plain (для .md — text/markdown).
# Полные тексты страниц vkusvill.ru
## Доставка
https://vkusvill.ru/dostavka/
Текст страницы без вёрстки.
## Оплата
https://vkusvill.ru/oplata/
Текст страницы без вёрстки.Положите файл в корень сайта, рядом с index.php. Если корень закрыт правилами в .htaccess, добавьте исключение для этого имени.
# Полные тексты страниц vkusvill.ru
## Доставка
https://vkusvill.ru/dostavka/
Текст страницы без вёрстки.
## Оплата
https://vkusvill.ru/oplata/
Текст страницы без вёрстки.Положите файл в корень сайта, рядом с wp-config.php. Плагины кэширования файл не трогают, очищать кэш не нужно.
# Полные тексты страниц vkusvill.ru
## Доставка
https://vkusvill.ru/dostavka/
Текст страницы без вёрстки.
## Оплата
https://vkusvill.ru/oplata/
Текст страницы без вёрстки.Tilda не даёт класть свои файлы в корень. Варианты: перенести сайт на своё размещение, поставить перед Tilda обратный прокси (Nginx, Cloudflare Workers) и отдавать файл с него, либо опубликовать файл на поддомене и сослаться на него из robots.txt.
# Полные тексты страниц vkusvill.ru
## Доставка
https://vkusvill.ru/dostavka/
Текст страницы без вёрстки.
## Оплата
https://vkusvill.ru/oplata/
Текст страницы без вёрстки.Задача: Файл /llms-full.txt — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Не найден (404). Что нужно сделать: Выложите полный Markdown-каталог: линейки, характеристики, применение. Ориентир по коду (Файл llms-full.txt). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта. ```markdown # Полные тексты страниц vkusvill.ru ## Доставка https://vkusvill.ru/dostavka/ Текст страницы без вёрстки. ## Оплата https://vkusvill.ru/oplata/ Текст страницы без вёрстки. ``` Требования к правке: - Файл должен открываться по прямому адресу и отдаваться с кодом 200, без редиректа. - Кодировка UTF-8, перевод строки — обычный, без BOM. - Адреса внутри файла — полные, с https:// и доменом. - Файл не должен быть закрыт от роботов правилами robots.txt или защитой сайта. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Файл /llms-full.txt» закрыт.
Инструкция для агентов /AGENTS.md
Не найдена (404).
Инструкция для агентов: где брать данные машинно и чего делать не нужно. Имя файла пишется прописными буквами.
Положите файл в корень сайта: https://ваш-сайт.ru/имя-файла. Кодировка UTF-8, тип ответа text/plain (для .md — text/markdown).
# AGENTS.md
Инструкция для ИИ-агентов, работающих с сайтом vkusvill.ru.
## Что здесь есть
Коротко: чем занимается компания и что можно найти на сайте.
## Машиночитаемые источники
- Карта сайта: https://vkusvill.ru/sitemap.xml
- Краткая выжимка: https://vkusvill.ru/llms.txt
- Описание API: https://vkusvill.ru/openapi.json
- Товарный фид (YML): https://vkusvill.ru/feed.yml
## Как пользоваться данными
- Цены и наличие берите из JSON-LD на странице товары: они обновляются вместе с каталогом.
- Срок действия цены указан в priceValidUntil. После этой даты цену нужно запросить заново.
- Ссылайтесь на страницу товары, а не на каталог целиком.
## Чего делать не нужно
- Не оформляйте заказ без подтверждения человека.
- Не используйте фотографии отдельно от описания товары.
## Контакт для вопросов
info@vkusvill.ruПоложите файл в корень сайта, рядом с index.php. Если корень закрыт правилами в .htaccess, добавьте исключение для этого имени.
# AGENTS.md
Инструкция для ИИ-агентов, работающих с сайтом vkusvill.ru.
## Что здесь есть
Коротко: чем занимается компания и что можно найти на сайте.
## Машиночитаемые источники
- Карта сайта: https://vkusvill.ru/sitemap.xml
- Краткая выжимка: https://vkusvill.ru/llms.txt
- Описание API: https://vkusvill.ru/openapi.json
- Товарный фид (YML): https://vkusvill.ru/feed.yml
## Как пользоваться данными
- Цены и наличие берите из JSON-LD на странице товары: они обновляются вместе с каталогом.
- Срок действия цены указан в priceValidUntil. После этой даты цену нужно запросить заново.
- Ссылайтесь на страницу товары, а не на каталог целиком.
## Чего делать не нужно
- Не оформляйте заказ без подтверждения человека.
- Не используйте фотографии отдельно от описания товары.
## Контакт для вопросов
info@vkusvill.ruПоложите файл в корень сайта, рядом с wp-config.php. Плагины кэширования файл не трогают, очищать кэш не нужно.
# AGENTS.md
Инструкция для ИИ-агентов, работающих с сайтом vkusvill.ru.
## Что здесь есть
Коротко: чем занимается компания и что можно найти на сайте.
## Машиночитаемые источники
- Карта сайта: https://vkusvill.ru/sitemap.xml
- Краткая выжимка: https://vkusvill.ru/llms.txt
- Описание API: https://vkusvill.ru/openapi.json
- Товарный фид (YML): https://vkusvill.ru/feed.yml
## Как пользоваться данными
- Цены и наличие берите из JSON-LD на странице товары: они обновляются вместе с каталогом.
- Срок действия цены указан в priceValidUntil. После этой даты цену нужно запросить заново.
- Ссылайтесь на страницу товары, а не на каталог целиком.
## Чего делать не нужно
- Не оформляйте заказ без подтверждения человека.
- Не используйте фотографии отдельно от описания товары.
## Контакт для вопросов
info@vkusvill.ruTilda не даёт класть свои файлы в корень. Варианты: перенести сайт на своё размещение, поставить перед Tilda обратный прокси (Nginx, Cloudflare Workers) и отдавать файл с него, либо опубликовать файл на поддомене и сослаться на него из robots.txt.
# AGENTS.md
Инструкция для ИИ-агентов, работающих с сайтом vkusvill.ru.
## Что здесь есть
Коротко: чем занимается компания и что можно найти на сайте.
## Машиночитаемые источники
- Карта сайта: https://vkusvill.ru/sitemap.xml
- Краткая выжимка: https://vkusvill.ru/llms.txt
- Описание API: https://vkusvill.ru/openapi.json
- Товарный фид (YML): https://vkusvill.ru/feed.yml
## Как пользоваться данными
- Цены и наличие берите из JSON-LD на странице товары: они обновляются вместе с каталогом.
- Срок действия цены указан в priceValidUntil. После этой даты цену нужно запросить заново.
- Ссылайтесь на страницу товары, а не на каталог целиком.
## Чего делать не нужно
- Не оформляйте заказ без подтверждения человека.
- Не используйте фотографии отдельно от описания товары.
## Контакт для вопросов
info@vkusvill.ruЗадача: Инструкция для агентов /AGENTS.md — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Не найдена (404). Что нужно сделать: Опишите точки входа, как получить цену, единицы измерения и оговорки о достоверности. Ориентир по коду (Файл AGENTS.md). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта. ```markdown # AGENTS.md Инструкция для ИИ-агентов, работающих с сайтом vkusvill.ru. ## Что здесь есть Коротко: чем занимается компания и что можно найти на сайте. ## Машиночитаемые источники - Карта сайта: https://vkusvill.ru/sitemap.xml - Краткая выжимка: https://vkusvill.ru/llms.txt - Описание API: https://vkusvill.ru/openapi.json - Товарный фид (YML): https://vkusvill.ru/feed.yml ## Как пользоваться данными - Цены и наличие берите из JSON-LD на странице товары: они обновляются вместе с каталогом. - Срок действия цены указан в priceValidUntil. После этой даты цену нужно запросить заново. - Ссылайтесь на страницу товары, а не на каталог целиком. ## Чего делать не нужно - Не оформляйте заказ без подтверждения человека. - Не используйте фотографии отдельно от описания товары. ## Контакт для вопросов info@vkusvill.ru ``` Требования к правке: - Файл должен открываться по прямому адресу и отдаваться с кодом 200, без редиректа. - Кодировка UTF-8, перевод строки — обычный, без BOM. - Адреса внутри файла — полные, с https:// и доменом. - Файл не должен быть закрыт от роботов правилами robots.txt или защитой сайта. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Инструкция для агентов /AGENTS.md» закрыт.
Markdown-карта сайта /sitemap.md
Не найдена (404).
Карта сайта для чтения, а не для поисковых систем: только важные страницы с пояснениями.
Положите файл в корень сайта: https://ваш-сайт.ru/имя-файла. Кодировка UTF-8, тип ответа text/plain (для .md — text/markdown).
# Карта сайта vkusvill.ru
- [Главная](https://vkusvill.ru/) — чем занимается компания
- [Каталог](https://vkusvill.ru/catalog/) — все разделы
- [Доставка](https://vkusvill.ru/dostavka/) — сроки и стоимость
- [Контакты](https://vkusvill.ru/kontakty/) — адрес, телефон, реквизитыПоложите файл в корень сайта, рядом с index.php. Если корень закрыт правилами в .htaccess, добавьте исключение для этого имени.
# Карта сайта vkusvill.ru
- [Главная](https://vkusvill.ru/) — чем занимается компания
- [Каталог](https://vkusvill.ru/catalog/) — все разделы
- [Доставка](https://vkusvill.ru/dostavka/) — сроки и стоимость
- [Контакты](https://vkusvill.ru/kontakty/) — адрес, телефон, реквизитыПоложите файл в корень сайта, рядом с wp-config.php. Плагины кэширования файл не трогают, очищать кэш не нужно.
# Карта сайта vkusvill.ru
- [Главная](https://vkusvill.ru/) — чем занимается компания
- [Каталог](https://vkusvill.ru/catalog/) — все разделы
- [Доставка](https://vkusvill.ru/dostavka/) — сроки и стоимость
- [Контакты](https://vkusvill.ru/kontakty/) — адрес, телефон, реквизитыTilda не даёт класть свои файлы в корень. Варианты: перенести сайт на своё размещение, поставить перед Tilda обратный прокси (Nginx, Cloudflare Workers) и отдавать файл с него, либо опубликовать файл на поддомене и сослаться на него из robots.txt.
# Карта сайта vkusvill.ru
- [Главная](https://vkusvill.ru/) — чем занимается компания
- [Каталог](https://vkusvill.ru/catalog/) — все разделы
- [Доставка](https://vkusvill.ru/dostavka/) — сроки и стоимость
- [Контакты](https://vkusvill.ru/kontakty/) — адрес, телефон, реквизитыЗадача: Markdown-карта сайта /sitemap.md — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Не найдена (404). Что нужно сделать: Выложите карту сайта в Markdown для агентов. Ориентир по коду (Файл sitemap.md). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта. ```markdown # Карта сайта vkusvill.ru - [Главная](https://vkusvill.ru/) — чем занимается компания - [Каталог](https://vkusvill.ru/catalog/) — все разделы - [Доставка](https://vkusvill.ru/dostavka/) — сроки и стоимость - [Контакты](https://vkusvill.ru/kontakty/) — адрес, телефон, реквизиты ``` Требования к правке: - Файл должен открываться по прямому адресу и отдаваться с кодом 200, без редиректа. - Кодировка UTF-8, перевод строки — обычный, без BOM. - Адреса внутри файла — полные, с https:// и доменом. - Файл не должен быть закрыт от роботов правилами robots.txt или защитой сайта. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Markdown-карта сайта /sitemap.md» закрыт.
Уникальный <title> до ~60 символов
«ВкусВилл — интернет-магазин продуктов для здорового питания с доставкой на дом | Москва и » — 100 симв.
Задача: Уникальный <title> до ~60 символов — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: «ВкусВилл — интернет-магазин продуктов для здорового питания с доставкой на дом | Москва и » — 100 симв. Что нужно сделать: Сократите: длинный заголовок обрезается. Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Уникальный <title> до ~60 символов» закрыт.
meta description 120–160 символов
289 симв.
Описание страницы длиной 120–160 символов, своё на каждой странице.
Вставляется в <head> страницы, до закрывающего </head>.
<meta name="description" content="Что это за страница и что на ней можно сделать. Одно-два предложения длиной 120–160 символов.">Для страниц товаров тот же вызов ставится в шаблоне карточки, чтобы данные подставлялись из свойств элемента.
<?php
// В шаблоне сайта: local/templates/ВАШ_ШАБЛОН/header.php, до вызова ShowHead()
$APPLICATION->AddHeadString(<<<'HTML'
<meta name="description" content="Что это за страница и что на ней можно сделать. Одно-два предложения длиной 120–160 символов.">
HTML, true);
Данные подставляются из полей записи; хардкодить значения в functions.php не нужно.
<?php
// В functions.php активной темы (лучше — дочерней) или в своём плагине
add_action('wp_head', function () {
echo <<<'HTML'
<meta name="description" content="Что это за страница и что на ней можно сделать. Одно-два предложения длиной 120–160 символов.">
HTML;
}, 20);
В Tilda блок вставляется вручную, поэтому значения на каждой странице свои. Для большого каталога это не работает — нужен свой движок.
<!-- Настройки сайта → Ещё → HTML-код для вставки внутрь HEAD.
Для одной страницы: Настройки страницы → Дополнительно → HTML-код в HEAD. -->
<meta name="description" content="Что это за страница и что на ней можно сделать. Одно-два предложения длиной 120–160 символов.">
Задача: meta description 120–160 символов — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: 289 симв. Что нужно сделать: Опишите страницу в 120–160 символах. Ориентир по коду (Чистый HTML). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта. ```html <meta name="description" content="Что это за страница и что на ней можно сделать. Одно-два предложения длиной 120–160 символов."> ``` Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «meta description 120–160 символов» закрыт.
Реквизиты юрлица: ИНН и ОГРН
ИНН: есть, ОГРН: нет (на главной и в разметке).
Реквизиты в разметке — не замена подвалу, а дополнение к нему: агент берёт их отсюда, человек из подвала.
Вставляется в <head> страницы, до закрывающего </head>.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://vkusvill.ru/#org",
"name": "ООО «Название»",
"url": "https://vkusvill.ru/",
"email": "info@vkusvill.ru",
"telephone": "+7 000 000-00-00",
"taxID": "0000000000",
"identifier": [
{"@type": "PropertyValue", "name": "ИНН", "value": "0000000000"},
{"@type": "PropertyValue", "name": "КПП", "value": "000000000"},
{"@type": "PropertyValue", "name": "ОГРН", "value": "0000000000000"}
],
"address": {
"@type": "PostalAddress",
"addressCountry": "RU",
"postalCode": "000000",
"addressRegion": "Область",
"addressLocality": "Город",
"streetAddress": "ул. Примерная, 1"
}
}
</script>Для страниц товаров тот же вызов ставится в шаблоне карточки, чтобы данные подставлялись из свойств элемента.
<?php
// В шаблоне сайта: local/templates/ВАШ_ШАБЛОН/header.php, до вызова ShowHead()
$APPLICATION->AddHeadString(<<<'HTML'
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://vkusvill.ru/#org",
"name": "ООО «Название»",
"url": "https://vkusvill.ru/",
"email": "info@vkusvill.ru",
"telephone": "+7 000 000-00-00",
"taxID": "0000000000",
"identifier": [
{"@type": "PropertyValue", "name": "ИНН", "value": "0000000000"},
{"@type": "PropertyValue", "name": "КПП", "value": "000000000"},
{"@type": "PropertyValue", "name": "ОГРН", "value": "0000000000000"}
],
"address": {
"@type": "PostalAddress",
"addressCountry": "RU",
"postalCode": "000000",
"addressRegion": "Область",
"addressLocality": "Город",
"streetAddress": "ул. Примерная, 1"
}
}
</script>
HTML, true);
Данные подставляются из полей записи; хардкодить значения в functions.php не нужно.
<?php
// В functions.php активной темы (лучше — дочерней) или в своём плагине
add_action('wp_head', function () {
echo <<<'HTML'
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://vkusvill.ru/#org",
"name": "ООО «Название»",
"url": "https://vkusvill.ru/",
"email": "info@vkusvill.ru",
"telephone": "+7 000 000-00-00",
"taxID": "0000000000",
"identifier": [
{"@type": "PropertyValue", "name": "ИНН", "value": "0000000000"},
{"@type": "PropertyValue", "name": "КПП", "value": "000000000"},
{"@type": "PropertyValue", "name": "ОГРН", "value": "0000000000000"}
],
"address": {
"@type": "PostalAddress",
"addressCountry": "RU",
"postalCode": "000000",
"addressRegion": "Область",
"addressLocality": "Город",
"streetAddress": "ул. Примерная, 1"
}
}
</script>
HTML;
}, 20);
В Tilda блок вставляется вручную, поэтому значения на каждой странице свои. Для большого каталога это не работает — нужен свой движок.
<!-- Настройки сайта → Ещё → HTML-код для вставки внутрь HEAD.
Для одной страницы: Настройки страницы → Дополнительно → HTML-код в HEAD. -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://vkusvill.ru/#org",
"name": "ООО «Название»",
"url": "https://vkusvill.ru/",
"email": "info@vkusvill.ru",
"telephone": "+7 000 000-00-00",
"taxID": "0000000000",
"identifier": [
{"@type": "PropertyValue", "name": "ИНН", "value": "0000000000"},
{"@type": "PropertyValue", "name": "КПП", "value": "000000000"},
{"@type": "PropertyValue", "name": "ОГРН", "value": "0000000000000"}
],
"address": {
"@type": "PostalAddress",
"addressCountry": "RU",
"postalCode": "000000",
"addressRegion": "Область",
"addressLocality": "Город",
"streetAddress": "ул. Примерная, 1"
}
}
</script>
Задача: Реквизиты юрлица: ИНН и ОГРН — сайт vkusvill.ru
Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует.
Что нашёл сканер: ИНН: есть, ОГРН: нет (на главной и в разметке).
Что нужно сделать: Покажите полное наименование, ИНН, ОГРН и юридический адрес — хотя бы в подвале. Для англоязычного сайта подойдут метки INN и OGRN либо поля taxID и identifier в разметке Organization.
Ориентир по коду (Чистый HTML). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта.
```html
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://vkusvill.ru/#org",
"name": "ООО «Название»",
"url": "https://vkusvill.ru/",
"email": "info@vkusvill.ru",
"telephone": "+7 000 000-00-00",
"taxID": "0000000000",
"identifier": [
{"@type": "PropertyValue", "name": "ИНН", "value": "0000000000"},
{"@type": "PropertyValue", "name": "КПП", "value": "000000000"},
{"@type": "PropertyValue", "name": "ОГРН", "value": "0000000000000"}
],
"address": {
"@type": "PostalAddress",
"addressCountry": "RU",
"postalCode": "000000",
"addressRegion": "Область",
"addressLocality": "Город",
"streetAddress": "ул. Примерная, 1"
}
}
</script>
```
Требования к правке:
- Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера.
- Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной.
- Не менять вёрстку и внешний вид страницы.
- Не трогать остальные теги и разметку, которые уже есть.
Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Реквизиты юрлица: ИНН и ОГРН» закрыт.Из чего складывается цена
| Позиция прайса | Объём | Сумма |
|---|---|---|
| Базовый слой для агентовсрок: 1 неделяrobots.txt для ИИ-ботов, sitemap с датами, llms.txt, AGENTS.md, Markdown-версии страниц, разметка компании с ИНН и ОГРН.Закрывает в отчёте: sitemap.xml с реальными датами lastmod; Файл /llms-full.txt; Инструкция для агентов /AGENTS.md; Markdown-карта сайта /sitemap.md; Markdown-зеркало страницы (link rel="alternate"); Ответ в Markdown по Accept: text/markdown и ещё 1 | 1 × 20 000 ₽ | 20 000 ₽ |
| Разметка типа страницысрок: 2–3 дня на типJSON-LD и таблица характеристик для одного типа страниц: карточка товара, категория, статья.Закрывает в отчёте: Уникальный <title> до ~60 символов; meta description 120–160 символов; Иерархия h2–h3 (не меньше 3); Характеристики: additionalProperty с unitCode; Срок действия цены priceValidUntil; Условия возврата и доставки в разметке | 2 × 7 500 ₽ | 15 000 ₽ |
| Фиды YML и Googleсрок: 2–3 дняФид YML для Яндекс Товаров и фид Google, собираются из файла данных автоматически.Закрывает в отчёте: Товарный фид YML для Яндекс Товаров | 1 × 7 500 ₽ | 7 500 ₽ |
| API расчёта цены · по желаниюНужно для уровня 3, если цена зависит от размера или опций. | — | 10 000 ₽ + 5 000 ₽ за параметр |
| Подключение к «Купить в 1 клик» в Алисе AI (YCP) · по желаниюДля уровня 4 в рознице. Для B2B вместо этого — документированный запрос расчёта. | — | 60 000 ₽ (по API) |
| Без НДС | 42 500 ₽ | |
| НДС 5% | 2 125 ₽ | |
| Итого | 44 625 ₽ | |
По умолчанию работы оплачиваются одним объёмом. По согласованию до начала работ проект можно разбить на этапы: первым этапом идёт Базовый слой для агентов, 20 000 ₽ без НДС, срок 1 неделя.
Оценка по отчёту: движок и число товаров определены автоматически, часы на проблемы сервера — средние. Точная сумма фиксируется в договоре по формуле прайс-листа после подтверждения объёмов. Строки «по желанию» в итог не входят. Цена одна для всех, исполнителя выбираете вы.
Оставить заявку на исправление ↗ОплатитьУточнить объёмы в калькуляторе ↗Публичная оферта ↗
Как это работает: 1) заявка, бесплатно и без договора; 2) смета на почту по этому прайсу; 3) счёт по согласованной смете. Договор заключается, когда вы подтверждаете смету письмом или оплачиваете счёт (оферта, п. 3.3). Кнопка «Оплатить» ведёт на страницу об оплате: онлайн-оплата в разработке, сейчас оплата по счёту.
Что дальше
Исправить самому
Часть пунктов закрывается за час без разработчика. У каждого пункта написано, как исправить.
Передать студии или разработчику
Отчёт и шкала открыты: любой исполнитель увидит те же требования. После правок просканируйте сайт заново.
Заявка в AI-D2C
Работы по смете, цена по публичному прайсу. Смета придёт на почту, оплата только после вашего согласия. Оставить заявку ↗
Вы веб-студия и работаете по этой методике? Напишите нам: будем рекомендовать вас в отчётах, когда запустим список партнёров.
Что видит агент
Столько агент тратит на одно обращение к вашей главной странице. 98% этого объёма — вёрстка и скрипты, в которых нет содержания: агент платит за них так же, как за текст. Markdown-версия страницы (пункты «Markdown-зеркало» и «Ответ по Accept» в расшифровке) убирает эту разницу: человек получает обычную страницу, агент — только текст.
Оценка: у каждой модели свой токенизатор, точное число отличается примерно на пятую часть. Считается по главной странице, остальные страницы сканер целиком не загружает.
Машинные точки входа: 0 из 7
Адреса, по которым агент ищет машинный вход на сайт, не разбирая страницы. На уровень они не влияют: ни один из этих форматов пока не обязателен, и большинству сайтов нужны не все. Панель показывает, что принято в отрасли сейчас — и что из этого у вас уже есть.
| нет | Карточка MCP-сервера/.well-known/mcp.json | Говорит агенту, что у сайта есть MCP-сервер и какие у него инструменты. Черновик SEP-1649. |
| нет | Карточка агента A2A/.well-known/agent.json | Описание собственного агента сайта для протокола agent-to-agent (A2A v1.0). |
| нет | OAuth Discovery (RFC 8414)/.well-known/oauth-authorization-server | Где агенту получать токен доступа, если часть данных закрыта. |
| нет | OAuth Protected Resource (RFC 9728)/.well-known/oauth-protected-resource | Какой сервер авторизации защищает ваш API (RFC 9728). |
| нет | Каталог API (RFC 9727)/.well-known/api-catalog | Один адрес со списком всех ваших API — агенту не нужно их угадывать. |
| нет | Профиль UCP/.well-known/ucp | Описание сценария покупки или заявки для агента. Один из способов закрыть уровень 4. |
| нет | Описание API (OpenAPI)/openapi.json | Машинное описание API: агент понимает, какие запросы можно делать. Входит в требования уровня 3. |
Подробная расшифровка проверок
Для тех, кто хочет разобраться или передать разработчику.
Сервер и доступ ✓ 8
Замечаний нет.
В порядке: Сайт работает по HTTPS; Главная отвечает 200; Не больше одного редиректа, только 301; Нет запрета индексации (noindex); Файрвол не блокирует ИИ-ботов; Несуществующая страница отвечает 404; Content-Type text/html и UTF-8; Время до первого байта до 600 мс.
Файлы сайта ✓ 5⚠ 5не нужно 2
sitemap.xml с реальными датами lastmod
Индекс карт: 17, с lastmod: 0. Дат изменения нет.
Задача: sitemap.xml с реальными датами lastmod — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Индекс карт: 17, с lastmod: 0. Дат изменения нет. Что нужно сделать: Добавьте <lastmod> с реальной датой правки каждой страницы. Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «sitemap.xml с реальными датами lastmod» закрыт.
Файл /llms-full.txt
Не найден (404).
Полный текст ключевых страниц одним файлом. Собирается скриптом при публикации: заголовок страницы, адрес, текст без вёрстки.
Положите файл в корень сайта: https://ваш-сайт.ru/имя-файла. Кодировка UTF-8, тип ответа text/plain (для .md — text/markdown).
# Полные тексты страниц vkusvill.ru
## Доставка
https://vkusvill.ru/dostavka/
Текст страницы без вёрстки.
## Оплата
https://vkusvill.ru/oplata/
Текст страницы без вёрстки.Положите файл в корень сайта, рядом с index.php. Если корень закрыт правилами в .htaccess, добавьте исключение для этого имени.
# Полные тексты страниц vkusvill.ru
## Доставка
https://vkusvill.ru/dostavka/
Текст страницы без вёрстки.
## Оплата
https://vkusvill.ru/oplata/
Текст страницы без вёрстки.Положите файл в корень сайта, рядом с wp-config.php. Плагины кэширования файл не трогают, очищать кэш не нужно.
# Полные тексты страниц vkusvill.ru
## Доставка
https://vkusvill.ru/dostavka/
Текст страницы без вёрстки.
## Оплата
https://vkusvill.ru/oplata/
Текст страницы без вёрстки.Tilda не даёт класть свои файлы в корень. Варианты: перенести сайт на своё размещение, поставить перед Tilda обратный прокси (Nginx, Cloudflare Workers) и отдавать файл с него, либо опубликовать файл на поддомене и сослаться на него из robots.txt.
# Полные тексты страниц vkusvill.ru
## Доставка
https://vkusvill.ru/dostavka/
Текст страницы без вёрстки.
## Оплата
https://vkusvill.ru/oplata/
Текст страницы без вёрстки.Задача: Файл /llms-full.txt — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Не найден (404). Что нужно сделать: Выложите полный Markdown-каталог: линейки, характеристики, применение. Ориентир по коду (Файл llms-full.txt). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта. ```markdown # Полные тексты страниц vkusvill.ru ## Доставка https://vkusvill.ru/dostavka/ Текст страницы без вёрстки. ## Оплата https://vkusvill.ru/oplata/ Текст страницы без вёрстки. ``` Требования к правке: - Файл должен открываться по прямому адресу и отдаваться с кодом 200, без редиректа. - Кодировка UTF-8, перевод строки — обычный, без BOM. - Адреса внутри файла — полные, с https:// и доменом. - Файл не должен быть закрыт от роботов правилами robots.txt или защитой сайта. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Файл /llms-full.txt» закрыт.
Инструкция для агентов /AGENTS.md
Не найдена (404).
Инструкция для агентов: где брать данные машинно и чего делать не нужно. Имя файла пишется прописными буквами.
Положите файл в корень сайта: https://ваш-сайт.ru/имя-файла. Кодировка UTF-8, тип ответа text/plain (для .md — text/markdown).
# AGENTS.md
Инструкция для ИИ-агентов, работающих с сайтом vkusvill.ru.
## Что здесь есть
Коротко: чем занимается компания и что можно найти на сайте.
## Машиночитаемые источники
- Карта сайта: https://vkusvill.ru/sitemap.xml
- Краткая выжимка: https://vkusvill.ru/llms.txt
- Описание API: https://vkusvill.ru/openapi.json
- Товарный фид (YML): https://vkusvill.ru/feed.yml
## Как пользоваться данными
- Цены и наличие берите из JSON-LD на странице товары: они обновляются вместе с каталогом.
- Срок действия цены указан в priceValidUntil. После этой даты цену нужно запросить заново.
- Ссылайтесь на страницу товары, а не на каталог целиком.
## Чего делать не нужно
- Не оформляйте заказ без подтверждения человека.
- Не используйте фотографии отдельно от описания товары.
## Контакт для вопросов
info@vkusvill.ruПоложите файл в корень сайта, рядом с index.php. Если корень закрыт правилами в .htaccess, добавьте исключение для этого имени.
# AGENTS.md
Инструкция для ИИ-агентов, работающих с сайтом vkusvill.ru.
## Что здесь есть
Коротко: чем занимается компания и что можно найти на сайте.
## Машиночитаемые источники
- Карта сайта: https://vkusvill.ru/sitemap.xml
- Краткая выжимка: https://vkusvill.ru/llms.txt
- Описание API: https://vkusvill.ru/openapi.json
- Товарный фид (YML): https://vkusvill.ru/feed.yml
## Как пользоваться данными
- Цены и наличие берите из JSON-LD на странице товары: они обновляются вместе с каталогом.
- Срок действия цены указан в priceValidUntil. После этой даты цену нужно запросить заново.
- Ссылайтесь на страницу товары, а не на каталог целиком.
## Чего делать не нужно
- Не оформляйте заказ без подтверждения человека.
- Не используйте фотографии отдельно от описания товары.
## Контакт для вопросов
info@vkusvill.ruПоложите файл в корень сайта, рядом с wp-config.php. Плагины кэширования файл не трогают, очищать кэш не нужно.
# AGENTS.md
Инструкция для ИИ-агентов, работающих с сайтом vkusvill.ru.
## Что здесь есть
Коротко: чем занимается компания и что можно найти на сайте.
## Машиночитаемые источники
- Карта сайта: https://vkusvill.ru/sitemap.xml
- Краткая выжимка: https://vkusvill.ru/llms.txt
- Описание API: https://vkusvill.ru/openapi.json
- Товарный фид (YML): https://vkusvill.ru/feed.yml
## Как пользоваться данными
- Цены и наличие берите из JSON-LD на странице товары: они обновляются вместе с каталогом.
- Срок действия цены указан в priceValidUntil. После этой даты цену нужно запросить заново.
- Ссылайтесь на страницу товары, а не на каталог целиком.
## Чего делать не нужно
- Не оформляйте заказ без подтверждения человека.
- Не используйте фотографии отдельно от описания товары.
## Контакт для вопросов
info@vkusvill.ruTilda не даёт класть свои файлы в корень. Варианты: перенести сайт на своё размещение, поставить перед Tilda обратный прокси (Nginx, Cloudflare Workers) и отдавать файл с него, либо опубликовать файл на поддомене и сослаться на него из robots.txt.
# AGENTS.md
Инструкция для ИИ-агентов, работающих с сайтом vkusvill.ru.
## Что здесь есть
Коротко: чем занимается компания и что можно найти на сайте.
## Машиночитаемые источники
- Карта сайта: https://vkusvill.ru/sitemap.xml
- Краткая выжимка: https://vkusvill.ru/llms.txt
- Описание API: https://vkusvill.ru/openapi.json
- Товарный фид (YML): https://vkusvill.ru/feed.yml
## Как пользоваться данными
- Цены и наличие берите из JSON-LD на странице товары: они обновляются вместе с каталогом.
- Срок действия цены указан в priceValidUntil. После этой даты цену нужно запросить заново.
- Ссылайтесь на страницу товары, а не на каталог целиком.
## Чего делать не нужно
- Не оформляйте заказ без подтверждения человека.
- Не используйте фотографии отдельно от описания товары.
## Контакт для вопросов
info@vkusvill.ruЗадача: Инструкция для агентов /AGENTS.md — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Не найдена (404). Что нужно сделать: Опишите точки входа, как получить цену, единицы измерения и оговорки о достоверности. Ориентир по коду (Файл AGENTS.md). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта. ```markdown # AGENTS.md Инструкция для ИИ-агентов, работающих с сайтом vkusvill.ru. ## Что здесь есть Коротко: чем занимается компания и что можно найти на сайте. ## Машиночитаемые источники - Карта сайта: https://vkusvill.ru/sitemap.xml - Краткая выжимка: https://vkusvill.ru/llms.txt - Описание API: https://vkusvill.ru/openapi.json - Товарный фид (YML): https://vkusvill.ru/feed.yml ## Как пользоваться данными - Цены и наличие берите из JSON-LD на странице товары: они обновляются вместе с каталогом. - Срок действия цены указан в priceValidUntil. После этой даты цену нужно запросить заново. - Ссылайтесь на страницу товары, а не на каталог целиком. ## Чего делать не нужно - Не оформляйте заказ без подтверждения человека. - Не используйте фотографии отдельно от описания товары. ## Контакт для вопросов info@vkusvill.ru ``` Требования к правке: - Файл должен открываться по прямому адресу и отдаваться с кодом 200, без редиректа. - Кодировка UTF-8, перевод строки — обычный, без BOM. - Адреса внутри файла — полные, с https:// и доменом. - Файл не должен быть закрыт от роботов правилами robots.txt или защитой сайта. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Инструкция для агентов /AGENTS.md» закрыт.
Markdown-карта сайта /sitemap.md
Не найдена (404).
Карта сайта для чтения, а не для поисковых систем: только важные страницы с пояснениями.
Положите файл в корень сайта: https://ваш-сайт.ru/имя-файла. Кодировка UTF-8, тип ответа text/plain (для .md — text/markdown).
# Карта сайта vkusvill.ru
- [Главная](https://vkusvill.ru/) — чем занимается компания
- [Каталог](https://vkusvill.ru/catalog/) — все разделы
- [Доставка](https://vkusvill.ru/dostavka/) — сроки и стоимость
- [Контакты](https://vkusvill.ru/kontakty/) — адрес, телефон, реквизитыПоложите файл в корень сайта, рядом с index.php. Если корень закрыт правилами в .htaccess, добавьте исключение для этого имени.
# Карта сайта vkusvill.ru
- [Главная](https://vkusvill.ru/) — чем занимается компания
- [Каталог](https://vkusvill.ru/catalog/) — все разделы
- [Доставка](https://vkusvill.ru/dostavka/) — сроки и стоимость
- [Контакты](https://vkusvill.ru/kontakty/) — адрес, телефон, реквизитыПоложите файл в корень сайта, рядом с wp-config.php. Плагины кэширования файл не трогают, очищать кэш не нужно.
# Карта сайта vkusvill.ru
- [Главная](https://vkusvill.ru/) — чем занимается компания
- [Каталог](https://vkusvill.ru/catalog/) — все разделы
- [Доставка](https://vkusvill.ru/dostavka/) — сроки и стоимость
- [Контакты](https://vkusvill.ru/kontakty/) — адрес, телефон, реквизитыTilda не даёт класть свои файлы в корень. Варианты: перенести сайт на своё размещение, поставить перед Tilda обратный прокси (Nginx, Cloudflare Workers) и отдавать файл с него, либо опубликовать файл на поддомене и сослаться на него из robots.txt.
# Карта сайта vkusvill.ru
- [Главная](https://vkusvill.ru/) — чем занимается компания
- [Каталог](https://vkusvill.ru/catalog/) — все разделы
- [Доставка](https://vkusvill.ru/dostavka/) — сроки и стоимость
- [Контакты](https://vkusvill.ru/kontakty/) — адрес, телефон, реквизитыЗадача: Markdown-карта сайта /sitemap.md — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Не найдена (404). Что нужно сделать: Выложите карту сайта в Markdown для агентов. Ориентир по коду (Файл sitemap.md). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта. ```markdown # Карта сайта vkusvill.ru - [Главная](https://vkusvill.ru/) — чем занимается компания - [Каталог](https://vkusvill.ru/catalog/) — все разделы - [Доставка](https://vkusvill.ru/dostavka/) — сроки и стоимость - [Контакты](https://vkusvill.ru/kontakty/) — адрес, телефон, реквизиты ``` Требования к правке: - Файл должен открываться по прямому адресу и отдаваться с кодом 200, без редиректа. - Кодировка UTF-8, перевод строки — обычный, без BOM. - Адреса внутри файла — полные, с https:// и доменом. - Файл не должен быть закрыт от роботов правилами robots.txt или защитой сайта. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Markdown-карта сайта /sitemap.md» закрыт.
Товарный фид YML для Яндекс Товаров
По стандартным адресам фид YML не найден. Если он загружен в Яндекс Товары по другому адресу — пункт выполнен.
Задача: Товарный фид YML для Яндекс Товаров — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: По стандартным адресам фид YML не найден. Если он загружен в Яндекс Товары по другому адресу — пункт выполнен. Что нужно сделать: Выгрузите каталог в YML и загрузите в Яндекс Товары: без этого товары не попадут в ответы Алисы с кнопкой «Купить в 1 клик». Сошлитесь на фид из llms.txt. Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Товарный фид YML для Яндекс Товаров» закрыт.
В порядке: Файл robots.txt; robots.txt пускает ИИ-ботов; robots.txt пускает YandexBot и YandexAdditional; В robots.txt есть строка Sitemap; Файл /llms.txt.
HTML-разметка ✓ 6⚠ 4
Уникальный <title> до ~60 символов
«ВкусВилл — интернет-магазин продуктов для здорового питания с доставкой на дом | Москва и » — 100 симв.
Задача: Уникальный <title> до ~60 символов — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: «ВкусВилл — интернет-магазин продуктов для здорового питания с доставкой на дом | Москва и » — 100 симв. Что нужно сделать: Сократите: длинный заголовок обрезается. Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Уникальный <title> до ~60 символов» закрыт.
meta description 120–160 символов
289 симв.
Описание страницы длиной 120–160 символов, своё на каждой странице.
Вставляется в <head> страницы, до закрывающего </head>.
<meta name="description" content="Что это за страница и что на ней можно сделать. Одно-два предложения длиной 120–160 символов.">Для страниц товаров тот же вызов ставится в шаблоне карточки, чтобы данные подставлялись из свойств элемента.
<?php
// В шаблоне сайта: local/templates/ВАШ_ШАБЛОН/header.php, до вызова ShowHead()
$APPLICATION->AddHeadString(<<<'HTML'
<meta name="description" content="Что это за страница и что на ней можно сделать. Одно-два предложения длиной 120–160 символов.">
HTML, true);
Данные подставляются из полей записи; хардкодить значения в functions.php не нужно.
<?php
// В functions.php активной темы (лучше — дочерней) или в своём плагине
add_action('wp_head', function () {
echo <<<'HTML'
<meta name="description" content="Что это за страница и что на ней можно сделать. Одно-два предложения длиной 120–160 символов.">
HTML;
}, 20);
В Tilda блок вставляется вручную, поэтому значения на каждой странице свои. Для большого каталога это не работает — нужен свой движок.
<!-- Настройки сайта → Ещё → HTML-код для вставки внутрь HEAD.
Для одной страницы: Настройки страницы → Дополнительно → HTML-код в HEAD. -->
<meta name="description" content="Что это за страница и что на ней можно сделать. Одно-два предложения длиной 120–160 символов.">
Задача: meta description 120–160 символов — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: 289 симв. Что нужно сделать: Опишите страницу в 120–160 символах. Ориентир по коду (Чистый HTML). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта. ```html <meta name="description" content="Что это за страница и что на ней можно сделать. Одно-два предложения длиной 120–160 символов."> ``` Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «meta description 120–160 символов» закрыт.
Иерархия h2–h3 (не меньше 3)
Заголовков h2–h3: 1.
Задача: Иерархия h2–h3 (не меньше 3) — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Заголовков h2–h3: 1. Что нужно сделать: Разбейте содержание на разделы с заголовками. Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Иерархия h2–h3 (не меньше 3)» закрыт.
Доля текста в HTML больше 15%
Текст — 2,5% от объёма HTML.
Задача: Доля текста в HTML больше 15% — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Текст — 2,5% от объёма HTML. Что нужно сделать: Страница — в основном код. Проверьте, что содержание есть в HTML, а не подгружается скриптами. Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Доля текста в HTML больше 15%» закрыт.
В порядке: Атрибут lang у <html>; rel="canonical"; Open Graph: 6 основных тегов; Ровно один <h1>; Семантические теги main, header, nav, footer; У изображений есть alt.
Структурированные данные JSON-LD ✓ 9⚠ 3не нужно 3
Характеристики: additionalProperty с unitCode
Характеристики не размечены.
Характеристики через additionalProperty с кодом единицы измерения по UN/ECE Rec 20: MMT — миллиметр, KGM — килограмм, MTK — квадратный метр, CMT — сантиметр.
Вставляется в <head> страницы, до закрывающего </head>.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://vkusvill.ru/catalog/tovar/#product",
"name": "Название товара",
"sku": "ART-001",
"mpn": "ART-001",
"brand": {"@type": "Brand", "name": "Марка"},
"description": "Одно-два предложения о товаре.",
"image": ["https://vkusvill.ru/upload/tovar.jpg"],
"additionalProperty": [
{"@type": "PropertyValue", "name": "Длина", "value": 3050, "unitCode": "MMT"},
{"@type": "PropertyValue", "name": "Масса", "value": 48, "unitCode": "KGM"}
],
"offers": {
"@type": "Offer",
"url": "https://vkusvill.ru/catalog/tovar/",
"price": "12500.00",
"priceCurrency": "RUB",
"priceValidUntil": "2027-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {"@id": "https://vkusvill.ru/#org"}
}
}
</script>Для страниц товаров тот же вызов ставится в шаблоне карточки, чтобы данные подставлялись из свойств элемента.
<?php
// В шаблоне сайта: local/templates/ВАШ_ШАБЛОН/header.php, до вызова ShowHead()
$APPLICATION->AddHeadString(<<<'HTML'
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://vkusvill.ru/catalog/tovar/#product",
"name": "Название товара",
"sku": "ART-001",
"mpn": "ART-001",
"brand": {"@type": "Brand", "name": "Марка"},
"description": "Одно-два предложения о товаре.",
"image": ["https://vkusvill.ru/upload/tovar.jpg"],
"additionalProperty": [
{"@type": "PropertyValue", "name": "Длина", "value": 3050, "unitCode": "MMT"},
{"@type": "PropertyValue", "name": "Масса", "value": 48, "unitCode": "KGM"}
],
"offers": {
"@type": "Offer",
"url": "https://vkusvill.ru/catalog/tovar/",
"price": "12500.00",
"priceCurrency": "RUB",
"priceValidUntil": "2027-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {"@id": "https://vkusvill.ru/#org"}
}
}
</script>
HTML, true);
Данные подставляются из полей записи; хардкодить значения в functions.php не нужно.
<?php
// В functions.php активной темы (лучше — дочерней) или в своём плагине
add_action('wp_head', function () {
echo <<<'HTML'
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://vkusvill.ru/catalog/tovar/#product",
"name": "Название товара",
"sku": "ART-001",
"mpn": "ART-001",
"brand": {"@type": "Brand", "name": "Марка"},
"description": "Одно-два предложения о товаре.",
"image": ["https://vkusvill.ru/upload/tovar.jpg"],
"additionalProperty": [
{"@type": "PropertyValue", "name": "Длина", "value": 3050, "unitCode": "MMT"},
{"@type": "PropertyValue", "name": "Масса", "value": 48, "unitCode": "KGM"}
],
"offers": {
"@type": "Offer",
"url": "https://vkusvill.ru/catalog/tovar/",
"price": "12500.00",
"priceCurrency": "RUB",
"priceValidUntil": "2027-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {"@id": "https://vkusvill.ru/#org"}
}
}
</script>
HTML;
}, 20);
В Tilda блок вставляется вручную, поэтому значения на каждой странице свои. Для большого каталога это не работает — нужен свой движок.
<!-- Настройки сайта → Ещё → HTML-код для вставки внутрь HEAD.
Для одной страницы: Настройки страницы → Дополнительно → HTML-код в HEAD. -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://vkusvill.ru/catalog/tovar/#product",
"name": "Название товара",
"sku": "ART-001",
"mpn": "ART-001",
"brand": {"@type": "Brand", "name": "Марка"},
"description": "Одно-два предложения о товаре.",
"image": ["https://vkusvill.ru/upload/tovar.jpg"],
"additionalProperty": [
{"@type": "PropertyValue", "name": "Длина", "value": 3050, "unitCode": "MMT"},
{"@type": "PropertyValue", "name": "Масса", "value": 48, "unitCode": "KGM"}
],
"offers": {
"@type": "Offer",
"url": "https://vkusvill.ru/catalog/tovar/",
"price": "12500.00",
"priceCurrency": "RUB",
"priceValidUntil": "2027-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {"@id": "https://vkusvill.ru/#org"}
}
}
</script>
Задача: Характеристики: additionalProperty с unitCode — сайт vkusvill.ru
Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует.
Что нашёл сканер: Характеристики не размечены.
Что нужно сделать: Каждый параметр — PropertyValue: полное имя, число в value, unitCode по UN/CEFACT (MMT, KGM, CEL…).
Ориентир по коду (Чистый HTML). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта.
```html
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://vkusvill.ru/catalog/tovar/#product",
"name": "Название товара",
"sku": "ART-001",
"mpn": "ART-001",
"brand": {"@type": "Brand", "name": "Марка"},
"description": "Одно-два предложения о товаре.",
"image": ["https://vkusvill.ru/upload/tovar.jpg"],
"additionalProperty": [
{"@type": "PropertyValue", "name": "Длина", "value": 3050, "unitCode": "MMT"},
{"@type": "PropertyValue", "name": "Масса", "value": 48, "unitCode": "KGM"}
],
"offers": {
"@type": "Offer",
"url": "https://vkusvill.ru/catalog/tovar/",
"price": "12500.00",
"priceCurrency": "RUB",
"priceValidUntil": "2027-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {"@id": "https://vkusvill.ru/#org"}
}
}
</script>
```
Требования к правке:
- Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера.
- Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной.
- Не менять вёрстку и внешний вид страницы.
- Не трогать остальные теги и разметку, которые уже есть.
Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Характеристики: additionalProperty с unitCode» закрыт.Срок действия цены priceValidUntil
Не указан.
priceValidUntil в формате ГГГГ-ММ-ДД. Дата в прошлом хуже её отсутствия: агент считает цену недействительной.
Вставляется в <head> страницы, до закрывающего </head>.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://vkusvill.ru/catalog/tovar/#product",
"name": "Название товара",
"sku": "ART-001",
"mpn": "ART-001",
"brand": {"@type": "Brand", "name": "Марка"},
"description": "Одно-два предложения о товаре.",
"image": ["https://vkusvill.ru/upload/tovar.jpg"],
"additionalProperty": [
{"@type": "PropertyValue", "name": "Длина", "value": 3050, "unitCode": "MMT"},
{"@type": "PropertyValue", "name": "Масса", "value": 48, "unitCode": "KGM"}
],
"offers": {
"@type": "Offer",
"url": "https://vkusvill.ru/catalog/tovar/",
"price": "12500.00",
"priceCurrency": "RUB",
"priceValidUntil": "2027-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {"@id": "https://vkusvill.ru/#org"}
}
}
</script>Для страниц товаров тот же вызов ставится в шаблоне карточки, чтобы данные подставлялись из свойств элемента.
<?php
// В шаблоне сайта: local/templates/ВАШ_ШАБЛОН/header.php, до вызова ShowHead()
$APPLICATION->AddHeadString(<<<'HTML'
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://vkusvill.ru/catalog/tovar/#product",
"name": "Название товара",
"sku": "ART-001",
"mpn": "ART-001",
"brand": {"@type": "Brand", "name": "Марка"},
"description": "Одно-два предложения о товаре.",
"image": ["https://vkusvill.ru/upload/tovar.jpg"],
"additionalProperty": [
{"@type": "PropertyValue", "name": "Длина", "value": 3050, "unitCode": "MMT"},
{"@type": "PropertyValue", "name": "Масса", "value": 48, "unitCode": "KGM"}
],
"offers": {
"@type": "Offer",
"url": "https://vkusvill.ru/catalog/tovar/",
"price": "12500.00",
"priceCurrency": "RUB",
"priceValidUntil": "2027-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {"@id": "https://vkusvill.ru/#org"}
}
}
</script>
HTML, true);
Данные подставляются из полей записи; хардкодить значения в functions.php не нужно.
<?php
// В functions.php активной темы (лучше — дочерней) или в своём плагине
add_action('wp_head', function () {
echo <<<'HTML'
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://vkusvill.ru/catalog/tovar/#product",
"name": "Название товара",
"sku": "ART-001",
"mpn": "ART-001",
"brand": {"@type": "Brand", "name": "Марка"},
"description": "Одно-два предложения о товаре.",
"image": ["https://vkusvill.ru/upload/tovar.jpg"],
"additionalProperty": [
{"@type": "PropertyValue", "name": "Длина", "value": 3050, "unitCode": "MMT"},
{"@type": "PropertyValue", "name": "Масса", "value": 48, "unitCode": "KGM"}
],
"offers": {
"@type": "Offer",
"url": "https://vkusvill.ru/catalog/tovar/",
"price": "12500.00",
"priceCurrency": "RUB",
"priceValidUntil": "2027-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {"@id": "https://vkusvill.ru/#org"}
}
}
</script>
HTML;
}, 20);
В Tilda блок вставляется вручную, поэтому значения на каждой странице свои. Для большого каталога это не работает — нужен свой движок.
<!-- Настройки сайта → Ещё → HTML-код для вставки внутрь HEAD.
Для одной страницы: Настройки страницы → Дополнительно → HTML-код в HEAD. -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://vkusvill.ru/catalog/tovar/#product",
"name": "Название товара",
"sku": "ART-001",
"mpn": "ART-001",
"brand": {"@type": "Brand", "name": "Марка"},
"description": "Одно-два предложения о товаре.",
"image": ["https://vkusvill.ru/upload/tovar.jpg"],
"additionalProperty": [
{"@type": "PropertyValue", "name": "Длина", "value": 3050, "unitCode": "MMT"},
{"@type": "PropertyValue", "name": "Масса", "value": 48, "unitCode": "KGM"}
],
"offers": {
"@type": "Offer",
"url": "https://vkusvill.ru/catalog/tovar/",
"price": "12500.00",
"priceCurrency": "RUB",
"priceValidUntil": "2027-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {"@id": "https://vkusvill.ru/#org"}
}
}
</script>
Задача: Срок действия цены priceValidUntil — сайт vkusvill.ru
Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует.
Что нашёл сканер: Не указан.
Что нужно сделать: Добавьте priceValidUntil.
Ориентир по коду (Чистый HTML). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта.
```html
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://vkusvill.ru/catalog/tovar/#product",
"name": "Название товара",
"sku": "ART-001",
"mpn": "ART-001",
"brand": {"@type": "Brand", "name": "Марка"},
"description": "Одно-два предложения о товаре.",
"image": ["https://vkusvill.ru/upload/tovar.jpg"],
"additionalProperty": [
{"@type": "PropertyValue", "name": "Длина", "value": 3050, "unitCode": "MMT"},
{"@type": "PropertyValue", "name": "Масса", "value": 48, "unitCode": "KGM"}
],
"offers": {
"@type": "Offer",
"url": "https://vkusvill.ru/catalog/tovar/",
"price": "12500.00",
"priceCurrency": "RUB",
"priceValidUntil": "2027-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {"@id": "https://vkusvill.ru/#org"}
}
}
</script>
```
Требования к правке:
- Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера.
- Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной.
- Не менять вёрстку и внешний вид страницы.
- Не трогать остальные теги и разметку, которые уже есть.
Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Срок действия цены priceValidUntil» закрыт.Условия возврата и доставки в разметке
Возврат: нет, доставка: нет.
Задача: Условия возврата и доставки в разметке — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Возврат: нет, доставка: нет. Что нужно сделать: Добавьте hasMerchantReturnPolicy и shippingDetails. Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Условия возврата и доставки в разметке» закрыт.
В порядке: JSON-LD есть в исходном HTML; Только JSON-LD, без Microdata и RDFa; Organization с реквизитами; Связный граф через @id; Товары или услуги размечены (Product / Service); Цена в Offer, без нулевых цен; Наличие через availability; potentialAction: что агент может сделать; FAQ, глоссарий или инструкции размечены.
Машинный доступ ✓ 0⚠ 3
Markdown-зеркало страницы (link rel="alternate")
Ссылки на Markdown-версию нет.
Ссылка на Markdown-версию страницы. Ставится в head каждой страницы, у которой такая версия есть.
Вставляется в <head> страницы, до закрывающего </head>.
<link rel="alternate" type="text/markdown" href="https://vkusvill.ru/stranica.md" title="Markdown-версия страницы">Для страниц товаров тот же вызов ставится в шаблоне карточки, чтобы данные подставлялись из свойств элемента.
<?php
// В шаблоне сайта: local/templates/ВАШ_ШАБЛОН/header.php, до вызова ShowHead()
$APPLICATION->AddHeadString(<<<'HTML'
<link rel="alternate" type="text/markdown" href="https://vkusvill.ru/stranica.md" title="Markdown-версия страницы">
HTML, true);
Данные подставляются из полей записи; хардкодить значения в functions.php не нужно.
<?php
// В functions.php активной темы (лучше — дочерней) или в своём плагине
add_action('wp_head', function () {
echo <<<'HTML'
<link rel="alternate" type="text/markdown" href="https://vkusvill.ru/stranica.md" title="Markdown-версия страницы">
HTML;
}, 20);
В Tilda блок вставляется вручную, поэтому значения на каждой странице свои. Для большого каталога это не работает — нужен свой движок.
<!-- Настройки сайта → Ещё → HTML-код для вставки внутрь HEAD.
Для одной страницы: Настройки страницы → Дополнительно → HTML-код в HEAD. -->
<link rel="alternate" type="text/markdown" href="https://vkusvill.ru/stranica.md" title="Markdown-версия страницы">
Задача: Markdown-зеркало страницы (link rel="alternate") — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Ссылки на Markdown-версию нет. Что нужно сделать: Добавьте <link rel="alternate" type="text/markdown" href="…">. Ориентир по коду (Чистый HTML). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта. ```html <link rel="alternate" type="text/markdown" href="https://vkusvill.ru/stranica.md" title="Markdown-версия страницы"> ``` Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Markdown-зеркало страницы (link rel="alternate")» закрыт.
Ответ в Markdown по Accept: text/markdown
На запрос с Accept: text/markdown сервер ответил text/html; charset=utf-8.
Один адрес отдаёт HTML человеку и Markdown агенту — по заголовку Accept. Markdown-версии страниц при этом должны уже существовать.
# В server {} — отдавать .md тем, кто просит Markdown
map $http_accept $md_suffix {
default "";
"~*text/markdown" ".md";
}
server {
location / {
add_header Vary Accept;
if (-f $document_root$uri$md_suffix) {
rewrite ^(.*)$ $1$md_suffix last;
}
try_files $uri $uri/ /index.php?$args;
}
location ~ \.md$ {
default_type text/markdown;
charset utf-8;
add_header Vary Accept;
add_header X-Robots-Tag noindex;
}
}# .htaccess в корне сайта
AddType text/markdown .md
<IfModule mod_headers.c>
<FilesMatch "\.(html|md)$">
Header append Vary "Accept"
</FilesMatch>
<FilesMatch "\.md$">
Header set X-Robots-Tag "noindex"
</FilesMatch>
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_ACCEPT} text/markdown [NC]
RewriteCond %{DOCUMENT_ROOT}/$1index.md -f
RewriteRule ^(.*/)?$ /$1index.md [L]
</IfModule><?php
// В самом начале обработки страницы, до любого вывода
$accept = $_SERVER['HTTP_ACCEPT'] ?? '';
header('Vary: Accept');
if (stripos($accept, 'text/markdown') !== false) {
$md = __DIR__ . '/index.md';
if (is_file($md)) {
header('Content-Type: text/markdown; charset=utf-8');
header('X-Robots-Tag: noindex');
readfile($md);
exit;
}
}
Задача: Ответ в Markdown по Accept: text/markdown — сайт vkusvill.ru
Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует.
Что нашёл сканер: На запрос с Accept: text/markdown сервер ответил text/html; charset=utf-8.
Что нужно сделать: Отдавайте Markdown-версию по заголовку Accept (content negotiation).
Ориентир по коду (Nginx). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта.
```nginx
# В server {} — отдавать .md тем, кто просит Markdown
map $http_accept $md_suffix {
default "";
"~*text/markdown" ".md";
}
server {
location / {
add_header Vary Accept;
if (-f $document_root$uri$md_suffix) {
rewrite ^(.*)$ $1$md_suffix last;
}
try_files $uri $uri/ /index.php?$args;
}
location ~ \.md$ {
default_type text/markdown;
charset utf-8;
add_header Vary Accept;
add_header X-Robots-Tag noindex;
}
}
```
Требования к правке:
- Правка делается на уровне сервера, а не скриптом в браузере.
- Остальные адреса сайта должны продолжать работать как раньше: проверьте главную, карточку и страницу поиска.
- После правки перезапустите сервер и убедитесь, что конфигурация прошла проверку.
Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Ответ в Markdown по Accept: text/markdown» закрыт.Описание API (OpenAPI)
Открытого API с описанием OpenAPI не найдено.
Задача: Описание API (OpenAPI) — сайт vkusvill.ru Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует. Что нашёл сканер: Открытого API с описанием OpenAPI не найдено. Что нужно сделать: Опубликуйте JSON-API товаров и цены с OpenAPI-схемой и сошлитесь на неё из AGENTS.md. Требования к правке: - Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера. - Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной. - Не менять вёрстку и внешний вид страницы. - Не трогать остальные теги и разметку, которые уже есть. Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Описание API (OpenAPI)» закрыт.
Правовое и доверие ✓ 2⚠ 1
Реквизиты юрлица: ИНН и ОГРН
ИНН: есть, ОГРН: нет (на главной и в разметке).
Реквизиты в разметке — не замена подвалу, а дополнение к нему: агент берёт их отсюда, человек из подвала.
Вставляется в <head> страницы, до закрывающего </head>.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://vkusvill.ru/#org",
"name": "ООО «Название»",
"url": "https://vkusvill.ru/",
"email": "info@vkusvill.ru",
"telephone": "+7 000 000-00-00",
"taxID": "0000000000",
"identifier": [
{"@type": "PropertyValue", "name": "ИНН", "value": "0000000000"},
{"@type": "PropertyValue", "name": "КПП", "value": "000000000"},
{"@type": "PropertyValue", "name": "ОГРН", "value": "0000000000000"}
],
"address": {
"@type": "PostalAddress",
"addressCountry": "RU",
"postalCode": "000000",
"addressRegion": "Область",
"addressLocality": "Город",
"streetAddress": "ул. Примерная, 1"
}
}
</script>Для страниц товаров тот же вызов ставится в шаблоне карточки, чтобы данные подставлялись из свойств элемента.
<?php
// В шаблоне сайта: local/templates/ВАШ_ШАБЛОН/header.php, до вызова ShowHead()
$APPLICATION->AddHeadString(<<<'HTML'
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://vkusvill.ru/#org",
"name": "ООО «Название»",
"url": "https://vkusvill.ru/",
"email": "info@vkusvill.ru",
"telephone": "+7 000 000-00-00",
"taxID": "0000000000",
"identifier": [
{"@type": "PropertyValue", "name": "ИНН", "value": "0000000000"},
{"@type": "PropertyValue", "name": "КПП", "value": "000000000"},
{"@type": "PropertyValue", "name": "ОГРН", "value": "0000000000000"}
],
"address": {
"@type": "PostalAddress",
"addressCountry": "RU",
"postalCode": "000000",
"addressRegion": "Область",
"addressLocality": "Город",
"streetAddress": "ул. Примерная, 1"
}
}
</script>
HTML, true);
Данные подставляются из полей записи; хардкодить значения в functions.php не нужно.
<?php
// В functions.php активной темы (лучше — дочерней) или в своём плагине
add_action('wp_head', function () {
echo <<<'HTML'
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://vkusvill.ru/#org",
"name": "ООО «Название»",
"url": "https://vkusvill.ru/",
"email": "info@vkusvill.ru",
"telephone": "+7 000 000-00-00",
"taxID": "0000000000",
"identifier": [
{"@type": "PropertyValue", "name": "ИНН", "value": "0000000000"},
{"@type": "PropertyValue", "name": "КПП", "value": "000000000"},
{"@type": "PropertyValue", "name": "ОГРН", "value": "0000000000000"}
],
"address": {
"@type": "PostalAddress",
"addressCountry": "RU",
"postalCode": "000000",
"addressRegion": "Область",
"addressLocality": "Город",
"streetAddress": "ул. Примерная, 1"
}
}
</script>
HTML;
}, 20);
В Tilda блок вставляется вручную, поэтому значения на каждой странице свои. Для большого каталога это не работает — нужен свой движок.
<!-- Настройки сайта → Ещё → HTML-код для вставки внутрь HEAD.
Для одной страницы: Настройки страницы → Дополнительно → HTML-код в HEAD. -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://vkusvill.ru/#org",
"name": "ООО «Название»",
"url": "https://vkusvill.ru/",
"email": "info@vkusvill.ru",
"telephone": "+7 000 000-00-00",
"taxID": "0000000000",
"identifier": [
{"@type": "PropertyValue", "name": "ИНН", "value": "0000000000"},
{"@type": "PropertyValue", "name": "КПП", "value": "000000000"},
{"@type": "PropertyValue", "name": "ОГРН", "value": "0000000000000"}
],
"address": {
"@type": "PostalAddress",
"addressCountry": "RU",
"postalCode": "000000",
"addressRegion": "Область",
"addressLocality": "Город",
"streetAddress": "ул. Примерная, 1"
}
}
</script>
Задача: Реквизиты юрлица: ИНН и ОГРН — сайт vkusvill.ru
Контекст. Сайт vkusvill.ru проверен сканером готовности к ИИ-агентам agentreadyscan.ru. Сканер читает исходный HTML без выполнения JavaScript — так же, как это делает большинство ИИ-агентов. Поэтому всё, что появляется на странице только после скриптов, для него не существует.
Что нашёл сканер: ИНН: есть, ОГРН: нет (на главной и в разметке).
Что нужно сделать: Покажите полное наименование, ИНН, ОГРН и юридический адрес — хотя бы в подвале. Для англоязычного сайта подойдут метки INN и OGRN либо поля taxID и identifier в разметке Organization.
Ориентир по коду (Чистый HTML). Это образец, а не готовая правка: подставьте реальные значения и впишите в структуру проекта.
```html
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://vkusvill.ru/#org",
"name": "ООО «Название»",
"url": "https://vkusvill.ru/",
"email": "info@vkusvill.ru",
"telephone": "+7 000 000-00-00",
"taxID": "0000000000",
"identifier": [
{"@type": "PropertyValue", "name": "ИНН", "value": "0000000000"},
{"@type": "PropertyValue", "name": "КПП", "value": "000000000"},
{"@type": "PropertyValue", "name": "ОГРН", "value": "0000000000000"}
],
"address": {
"@type": "PostalAddress",
"addressCountry": "RU",
"postalCode": "000000",
"addressRegion": "Область",
"addressLocality": "Город",
"streetAddress": "ул. Примерная, 1"
}
}
</script>
```
Требования к правке:
- Выводить это в исходном HTML, который отдаёт сервер, а не дорисовывать скриптом на стороне браузера.
- Значения подставлять из данных сайта, а не вписывать строкой: правка должна работать на всех страницах такого типа, а не на одной.
- Не менять вёрстку и внешний вид страницы.
- Не трогать остальные теги и разметку, которые уже есть.
Как проверить, что получилось: открыть https://agentreadyscan.ru/check/?url=vkusvill.ru и убедиться, что пункт «Реквизиты юрлица: ИНН и ОГРН» закрыт.В порядке: Политика обработки персональных данных; Контакты: e-mail или телефон ссылкой.
Ограничения метода. Отчёт отражает внешние признаки на дату сканирования. Он не подтверждает, что данные на сайте верны, и не прогнозирует ответы ИИ-ассистентов. Сканер читает исходный HTML без выполнения скриптов; то, что появляется после них, считается отсутствующим.
Сформирован автоматически по открытой шкале. Это не сертификат.agentreadyscan.ru · ООО «САРМАТЕХ» · ИНН 4725011864
