Сайт сделан вайбкодингом? Узнайте, в каком ИИ-конструкторе его собрали
Вставьте адрес. Если мы найдём надёжный признак Lovable, Bolt.new, Base44, v0, Replit, Bubble, Softgen, Same.new, Anything (Create.xyz), Tempo Labs или Firebase Studio, мы назовём конструктор и покажем этот признак. Слабых следов нам мало, поэтому на части сайтов мы промолчим: лучше без названия, чем с неверным. Затем проверим то, что на таких сайтах обычно не так: утёкшие ключи, недостающие заголовки безопасности, страницу, которую поисковики видят пустой. Бесплатно, без регистрации.
Бесплатно, без регистрации. Базовая проверка делает только те запросы, которые выполняет обычный браузер.
Что скажет один адрес
- СправочноБесплатная проверка
Конструктор — и признак, который его выдал
Адрес на lovable.app, скрипт значка Bolt, тег generator от v0, шаблонное описание Replit, заголовки ответа Bubble: если мы находим надёжный признак — такой, что больше ниоткуда взяться не может, или два независимых, — мы называем конструктор и показываем признак, который увидели. Слабых следов по отдельности нам мало, поэтому мы можем промолчать там, где вы вручную заметили бы намёк. Мы не гадаем.
- КритичноБесплатная проверка
Секретный ключ в публичном JavaScript
В конструкторе легко вызвать OpenAI, Stripe или Supabase прямо со страницы — и так же легко отправить вместе с вызовом секретный ключ. Мы ищем известные форматы ключей в странице и её скриптах и показываем найденное в замаскированном виде, с указанием файла.
- КритичноPro
Таблицы Supabase, которые может прочитать кто угодно
Большинство приложений Lovable и многие приложения Bolt работают на Supabase, где таблицы закрывает Row Level Security. На домене, который вы подтвердили как свой, мы считаем, сколько строк каждая таблица отдаёт по публичному ключу, — никогда не читая их содержимое.
- СреднийБесплатная проверка
Заголовки безопасности, которые никто не добавил
Большинство сайтов, сделанных с ИИ, работают с тем, что хостинг отдаёт по умолчанию. Мы перечисляем, какой защиты не хватает: Content-Security-Policy, HSTS, защиты от кликджекинга.
- НизкийБесплатная проверка
Поисковики получают пустую оболочку
Многие конструкторы собирают одностраничное приложение: пустой <div id="root">, пока не выполнится JavaScript. Мы проверяем title, description и превью ссылки и в исходном HTML, и на странице, отрисованной настоящим браузером.
Проверьте сами
Это следы, которые можно поискать вручную; сканер называет конструктор только по признаку, который больше ниоткуда взяться не может, или по двум независимым, поэтому может промолчать там, где вы след нашли.
Прочитайте исходный код страницы
Поставьте view-source: перед адресом и поищите на странице (Cmd/Ctrl + F) эти строки — они приходят из собственных шаблонов, скриптов и значков конструкторов. Подсказка и сам адрес: *.lovable.app, *.bolt.host, *.base44.app, *.replit.app, *.bubbleapps.io и *.created.app принадлежат самим конструкторам. У Firebase Studio и Anything шаблонные заголовок и описание считаются только вместе: сканер назовёт конструктор, если не тронуты оба, а по одному описанию — нет. Шаблонная картинка превью Bolt — подсказка только для вас: сослаться на неё может любая страница, и сканер по ней Bolt не называет.
view-source:https://example.com Lovable /__l5e/ Lovable gpt-engineer-file-uploads Bolt bolt.new/badge.js Bolt bolt.new/static/og_default.png v0 name="generator" content="v0.app" Replit replit-dev-banner.js Replit replit-pill Base44 base44_access_token Bubble bubble_session_uid Firebase <title>Firebase Studio App</title> Firebase Generated by Firebase Studio Anything <title>Anything App</title> Anything Created with Anything Softgen cdn.softgen.ai/script.js Same same-runtime Tempo tempo-public-assets/error-handling.js
Посмотрите на заголовки ответа
Некоторые конструкторы подписывают свои ответы. Bolt добавляет x-powered-by: Bolt.new на адресах bolt.host; Bubble отдаёт x-bubble-perf и x-bubble-capacity-* даже на собственных доменах клиентов. Заголовок cache-tag, оканчивающийся на :studio, указывает на бэкенд Firebase App Hosting с именем studio — тот, что создаёт Firebase Studio, — но это подсказка только для вас: сканер по нему конструктор не называет. Vercel, Netlify или Cloudflare в заголовках называют хостинг, а не конструктор.
curl -sI https://example.com | grep -iE '^(x-powered-by|x-bubble|cache-tag)'
Проверьте DNS домена вручную
Подключение своего домена оставляет записи. TXT-запись на _lovable.<домен> или адрес 185.158.133.1 указывают на Lovable; TXT-запись replit-verify= — на Replit; CNAME на base44.onrender.com — на Base44. Сам сканер называет Lovable по адресу 185.158.133.1, а Replit — только когда replit-verify стоит вместе с адресом Replit 34.111.179.208. TXT-запись на _lovable и CNAME на Base44 — подсказки только для вас: запись может пережить сайт, ради которого её завели, поэтому сверяйте её с самой страницей.
dig +short TXT _lovable.example.com dig +short A example.com dig +short TXT example.com | grep replit-verify dig +short CNAME www.example.com
Поищите в скриптах самого приложения
DevTools → Sources, перезагрузите страницу и ищите сразу по всем загруженным файлам (Cmd/Ctrl + Option/Alt + F). Эти строки лежат в собственном бандле приложения, поэтому часто переживают и свой домен, и даже переезд на другой хостинг. Строка Lovable встречается только в приложениях на Supabase или Lovable Cloud. Бандл блога может процитировать эти строки в статье, поэтому Lovable и Base44 сканер называет по ним только вместе со вторым признаком, а у Tempo ищет код, который объявляет TempoDevtools, а не само слово.
Lovable lovable-preview-auth Base44 base44SharedInstances Tempo TempoDevtools
Ничего не нашли? Это ничего не доказывает
Значок можно скрыть, шаблонный текст — исправить, проект — выгрузить на любой хостинг, а код, написанный в Cursor, Claude Code или Copilot, вообще не оставляет следов платформы. После сборки для продакшена код, написанный человеком и ИИ, выглядит одинаково — честно различить их не может ни один инструмент.
Исправления — обратно в конструктор
Каждый отчёт заканчивается промптом для ИИ-конструктора: что не так, где это и как проверить, что исправление сработало. Вставьте его в Lovable, Bolt, v0 или Replit Agent — или в Cursor.
Исправь эти проблемы на myapp.bolt.host. Прежде чем что-то менять, найди каждую. 1. Ключ OpenAI API (sk-proj-…7fQ2) лежит в assets/index-5b0c.js. Отзови его в панели OpenAI, перенеси вызов в серверную функцию и читай ключ там из переменной окружения. 2. В исходном HTML нет meta description. Добавь описание и теги Open Graph в index.html, чтобы они были на странице ещё до выполнения JavaScript. Когда закончишь, проверь заново: https://scanyoursite.app/ru?check=myapp.bolt.host
Каждый промпт — новый деплой
ИИ-конструктор может за один раз переписать половину приложения. На Pro мы замечаем каждую новую версию, проверяем её за несколько минут и пишем, только когда сломалось что-то новое, — в Telegram, на почту, в Slack или Discord.
Посмотреть тарифыВопросы
Можете ли вы сказать, написан ли код ИИ?
Нет — и честно сделать это снаружи не может никто. После сборки и минификации для продакшена код, написанный человеком и ИИ, выглядит одинаково. Мы не выдаём «вероятность ИИ». Мы называем конструктор только по надёжному признаку и показываем, по какому именно.
Конструктор не найден — значит, сайт сделан вручную?
Не обязательно. Сайт может быть сделан с ИИ и не нести никаких следов: значок скрыли, шаблонный текст исправили, проект выгрузили на другой хостинг или код написали в Cursor, Claude Code или Copilot — они ничего не оставляют на сайте. Нет названия — значит только, что мы не нашли надёжного признака.
Какие конструкторы вы узнаёте?
Lovable, Bolt.new, Base44, v0, Replit, Bubble, Softgen, Same.new, Anything (Create.xyz), Tempo Labs и Firebase Studio. Одни признаки сохраняются на своём домене, другие видны только на адресе самого конструктора, например *.bolt.host. Для Bubble и Replit признак доказывает платформу, а не то, что приложение написал её ИИ.
Можно ли проверить чужой сайт?
Да. Бесплатная проверка пассивная: она запрашивает страницу, её скрипты, robots.txt, карту сайта, DNS и сертификат — то же, что браузер или поисковый робот, — и представляется как ScanYourSiteBot. Более глубокие пробы, например проверка таблиц Supabase, выполняются только на доменах, владелец которых их подтвердил.
Это мой сайт, и я не хочу, чтобы его проверяли.
Введите домен на scanyoursite.app/bot. Это действует сразу и не требует аккаунта; на той же странице перечислено, что запрашивает наш бот и какой User-Agent он отправляет.
Сколько это стоит?
Проверка бесплатная, без регистрации. Наблюдение с проверкой после каждого деплоя — от $19 / €19 в месяц за три сайта.
Вставьте адрес. Список будет примерно через минуту.
К каждой находке — что она значит для вас и как её исправить. Или промпт, который применит ваш ИИ-инструмент для кода.
Бесплатно, без регистрации. Базовая проверка делает только те запросы, которые выполняет обычный браузер.