Vibe coding и GDPR: почему сайт, собранный ИИ, нарушает закон
Агенты-кодеры вроде Claude Code и Codex поднимают рабочий сайт за пару часов, но попутно тихо добавляют нарушения GDPR, о которых вы не просили: куки до согласия, персональные данные хранятся вечно, удалить их пользователю нечем. Разбираем, почему так происходит у любого агента, во что это может обойтись и какой бесплатный навык Claude Code сканирует проект на проблемы с GDPR и сам их чинит.
Вы описываете приложение агенту-кодеру, он пишет код, вы деплоите, и через пару часов у вас в сети настоящий продукт. В этом и есть обещание vibe coding, и почти всегда оно сбывается. Сайт грузится, регистрация работает, дашборд выглядит аккуратно. Всё, что вы видите, в порядке.
Проблема в том, чего вы не видите. Пока агент подключал ваши фичи, он заодно принял десятки мелких решений про куки, трекинг, хранение данных и права пользователей. Думать о законе его никто не просил, поэтому он и не подумал. К моменту релиза ваш новенький сайт, возможно, уже стоит на куче нарушений GDPR, а вы об этом даже не догадываетесь.
Это не проблема Claude и не проблема Codex. Это структурное свойство того, как вообще работают агенты-кодеры, и оно касается каждого из них. Давайте разберём по шагам, что именно идёт не так, во что это может обойтись и какой бесплатный навык Claude Code находит и чинит эти проблемы раньше, чем до них доберётся регулятор.
Что агент-кодер тихо делает не так
Агент-кодер оптимизирует одну-единственную вещь: чтобы фича заработала. Попросите аналитику: он вставит скрипт трекинга. Попросите форму обратной связи: он сложит каждое отправление в таблицу. Попросите вход: он будет хранить записи пользователей бесконечно. По отдельности каждый выбор разумен. Вместе они складываются в хрестоматийный список нарушений, которые регуляторы карают чаще всего.
Вот что проскальзывает на типичном сайте, собранном через vibe coding:
- Куки и трекеры срабатывают до согласия. Аналитика, встроенные карты, шрифты, соцсетевые пиксели и инструменты сессий грузятся в момент открытия страницы. По GDPR и правилам ePrivacy неэссенциальные куки требуют предварительного, свободно данного согласия. Сайт, который ставит их при первой отрисовке, уже не соответствует требованиям, и баннер про куки, который появляется уже после срабатывания трекера, этого не исправляет.
- Персональные данные хранятся вечно. Агент создаёт таблицу
users, таблицуsubmissions, таблицуlogsи ни разу не добавляет политику хранения. GDPR требует хранить персональные данные только столько, сколько они вам реально нужны. «Вечно, на всякий случай»: ровно то нарушение принципа ограничения хранения, ради которого закон и писался. - Удалить свои данные невозможно. У пользователей есть право на удаление, то самое право быть забытым. Почти ни одно приложение, собранное через vibe coding, не выходит с потоком «удалить мой аккаунт» или с задокументированной процедурой исполнения запроса на удаление. Данные заходят внутрь, а двери с табличкой «выход» нет.
- Нет пути для доступа и переносимости. Человек может запросить копию всего, что вы о нём храните. Если единственный ваш ответ сводится к ручному запросу к базе, который вы ни разу не проверяли, обязанности по доступу и переносимости вы не выполняете.
- Данные третьих сторон тихо покидают ЕС. Тот скрипт аналитики или хостящийся шрифт, что вы добавили за две секунды, может отправлять IP-адреса и идентификаторы на серверы за пределами ЕС без всякого законного механизма передачи.
- Нет учёта того, что вы собираете. GDPR ожидает, что вы знаете и документируете свои операции обработки. Приложение, чьи потоки данных живут только в забытой истории чата агента, не имеет реестра вообще.
Ничего из этого не всплывает в демо. Приложение работает идеально. Юридического слоя просто нет, и он остаётся отсутствующим, пока кто-нибудь не пожалуется или регулятор не постучится в дверь.
Левую колонку агент заполняет безупречно. А правую колонку никто не просил его строить, поэтому она остаётся пустой.
Почему так делает каждый агент, а не только Claude
Заманчиво обвинить один инструмент, но причина лежит глубже. Агенты-кодеры учатся на публичном коде, а большая часть публичного кода никогда не писалась с оглядкой на GDPR. Когда модель видела десять тысяч примеров «добавить Google Analytics», где скрипт вставляется прямо в <head>, именно этот шаблон она и воспроизводит. Обучающие данные кодируют дурную привычку, и вывод её наследует.
По более широкой версии этой проблемы есть жёсткие цифры. В отчёте Veracode 2025 года по безопасности кода, сгенерированного ИИ, протестировали вывод более чем 100 больших языковых моделей на десятках задач и обнаружили, что 45% сгенерированного ИИ кода содержали уязвимость безопасности. То же исследование показало, что код, написанный ИИ, нёс в 2,74 раза больше уязвимостей, чем код, написанный людьми, и, что показательно, более новые и крупные модели справлялись не лучше. Это структурно, а не баг, который залатает следующий релиз.
Соответствие требованиям приватности имеет ровно ту же форму, что и безопасность. И то, и другое представляет собой невидимые требования, мимо которых цель «сделай, чтобы работало» проходит, не останавливаясь. Так что управляете ли вы Claude Code или Codex, Antigravity CLI, Cursor или любым другим агентом, вы подвержены одному и тому же слепому пятну. Инструмент меняется, провал остаётся.
Во что реально может обойтись нарушение GDPR
Вот здесь это перестаёт быть абстракцией. Штрафы по GDPR ограничены большей из двух величин: 20 млн евро или 4% от мирового годового оборота, и регуляторы начали бить по верхней границе этого диапазона.
Только за 2025 год французский орган по защите данных, CNIL, вынес штрафов на 486 млн евро, почти в десять раз больше, чем его итог за 2024 год. Бóльшую часть составили два решения, вынесенные в один день в сентябре: 325 млн евро против Google за нарушения по куки и прозрачности рекламы и 150 млн евро против Shein за трекеры, поставленные без согласия. Те самые категории ошибок, которые ИИ-агент выдаёт по умолчанию, и есть те категории, за которые выписывают штрафы в девять цифр.
Легко прочитать эти суммы и решить, что регуляторы гоняются только за гигантами. Это не так. У CNIL есть упрощённая процедура, заточенная как раз под мелкие, фактические дела: несоответствующий баннер куки, проигнорированный запрос на доступ, слабая парольная политика. Для малого бизнеса это повседневные находки, и это ровно то, что сайт на vibe coding делает не так. Размер вашей компании меняет размер штрафа, а не то, могут ли вас оштрафовать.
Громкие штрафы бьют по крупным компаниям, но за ними стоят те же нарушения, куки без согласия и нехватка прозрачности, которые агент-кодер по умолчанию выдаёт на маленьком сайте.
Что GDPR на самом деле требует (простыми словами)
Чтобы закрыть бóльшую часть разрыва, юристом становиться не нужно. Основная масса повседневного соответствия сводится к горстке конкретных моделей поведения, которые ваш код либо реализует, либо нет:
- Согласие до неэссенциальных куки. Ничто, что отслеживает, профилирует или измеряет, не должно запускаться, пока пользователь активно не согласился. Строго необходимые куки остаются единственным исключением.
- Правовое основание для каждого кусочка собираемых данных. Согласие, договор или законный интерес, выбранные до того, как вы что-либо сохраните, а не после.
- Минимизация данных. Собирайте только то, что фиче действительно нужно. Инстинкт агента логировать всё подряд прямо этому противоречит.
- Лимиты хранения. Каждой категории персональных данных нужен заданный срок жизни и способ удалить их по его истечении.
- Права субъектов данных. Доступу, исправлению, удалению и переносимости нужен реальный рабочий путь, а не обещание в политике конфиденциальности.
- Понятное уведомление о приватности и реестр обработки. Люди должны видеть, что вы собираете и зачем, а вы должны уметь это доказать.
Перечитайте этот список рядом с разделом про то, что агенты делают не так, и совпадение почти идеальное. Хорошая новость в том, что раз это конкретные модели поведения на уровне кода, инструмент может их просканировать.
Решение: бесплатный навык Claude Code, который сканирует и чинит
Вот то, чего ручной чек-лист вам дать не может: автоматический проход по вашему реальному коду. Разработчик по имени Jeremy Longshore выпустил бесплатный навык Claude Code с открытым исходным кодом под названием scanning-for-gdpr-compliance (в некоторых каталогах он значится как GDPR Compliance Scanner), который делает именно это. Он живёт в репозитории claude-code-plugins-plus и работает целиком внутри Claude Code, так что регистрироваться в отдельном сервисе не нужно.
Навык читает ваш проект так, как это делал бы аудитор приватности. Он изучает потоки данных, места хранения, операции обработки, механизмы согласия, политики хранения, контроль доступа и то, как вы обрабатываете права субъектов данных. Затем он делает три вещи, которые важны:
- Он обнаруживает. Проверки на основе правил отмечают шаблоны выше: трекеры, срабатывающие до согласия, персональные данные без лимита хранения, отсутствующие пути удаления, недокументированную обработку.
- Он классифицирует по серьёзности. Находки возвращаются с оценкой и приоритетом, так что трекер, утекающий идентификаторы, идёт впереди недостающей строки в уведомлении о приватности. Сначала вы чините опасное, а не тонете в плоском списке.
- Он исправляет в вашем коде. Поскольку он работает внутри агента, он не просто выдаёт отчёт, по которому вам потом надо действовать. Он может внести рекомендованные изменения напрямую, превращая «у вас тут проблема» в реальную правку за тот же проход.
Установка занимает одну строку. Через маркетплейс плагинов вы добавляете источник и ставите навык:
/plugin marketplace add jeremylongshore/claude-code-plugins-plus
Затем запускаете скан обычным языком. Навык реагирует на фразы вроде:
scan GDPR compliance
check data privacy
validate GDPR
Его можно установить и иначе: положить папку навыка в каталог .claude/skills/ вашего проекта, стандартный способ, которым Claude Code обнаруживает навыки. В любом случае скан идёт по вашему настоящему репозиторию, а не по абстрактному чек-листу.
Код на входе, приоритизированные находки посередине, реальные правки кода на выходе. Тот же цикл, что вы уже используете для фич, наведённый на соответствие требованиям.
Честное предупреждение, потому что доверие строится именно здесь: скан не равен юридическому добру. Навык ловит механические нарушения на уровне кода, из которых складывается основная часть повседневного риска (куки, хранение, отсутствующий путь удаления), и за минуты ощутимо приближает вас к соответствию. Он не заменяет юриста по защите данных в чувствительных вопросах, оценку воздействия на защиту данных (DPIA) или обработку медицинских данных. Относитесь к нему как к первому техническому проходу, который убирает очевидные нарушения, а затем подключайте человеческую проверку для пограничных случаев.
Почему это усложняется, когда у вас целый флот агентов
У одного разработчика с одним агентом один код, который надо держать честным. Как только вы запускаете несколько агентов параллельно, и каждый поставляет фичи в один и тот же продукт, площадь для тихих нарушений умножается. Один агент добавляет скрипт аналитики, другой поднимает таблицу логов, третий встраивает сторонний виджет, и ни один человек ни разу не пересмотрел последствия для приватности по всему целому.
Это та же причина, по которой контекст и согласованность тяжело даются на масштабе. К этой теме мы всё время возвращаемся, идёт ли речь о запуске агентов-кодеров параллельно или о vibe coding без того, чтобы утонуть. Решение той же формы: сделать стандарт частью общей настройки, а не чем-то, что вы вспоминаете проверить в конце.
В AgentsRoom, кокпите для нескольких агентов, навыки и правила, которые вы настраиваете один раз, применяются к каждому агенту в комнате, по всем Claude Code, Codex и другим провайдерам, которыми вы управляете из одного места. Встройте проход по соответствию в свой рабочий процесс один раз, и каждый агент его унаследует, вместо того чтобы надеяться, что каждый по отдельности вспомнит правило, которому его никто не учил. Та дисциплина, что держит чистой одну сессию, и удерживает весь флот подальше от регуляторных неприятностей.
Практический чек-лист соответствия для сайтов, собранных ИИ
Прежде чем считать любой сайт, собранный ИИ, готовым, прогоните его по этому списку. Бóльшую часть поймает сканер, но понимание того, что вы ищете, делает отчёт читаемым:
- Ни один неэссенциальный куки или трекер не срабатывает до согласия пользователя.
- У каждого хранилища персональных данных есть заданный срок хранения и механизм удаления.
- Пользователи могут запросить и получить копию своих данных.
- Пользователи могут удалить аккаунт и добиться стирания своих данных.
- Уведомление о приватности объясняет, что вы собираете, зачем и на каком правовом основании.
- У сторонних скриптов и передач данных за пределы ЕС есть законный механизм.
- Вы можете предъявить реестр своих операций обработки, если вас попросят.
Если вы не можете поставить галочку у каждого пункта, ваш сайт, собранный ИИ, несёт риск по GDPR, и одной-единственной жалобы хватит, чтобы он всплыл.
Вывод
Vibe coding по-настоящему быстр, и эта скорость и есть ловушка. Агент заполняет всё, что вы видите, и пропускает всё, что вы не видите, а это ровно там, где живёт GDPR. Куки до согласия, данные, хранящиеся вечно, никакого способа их удалить: это не экзотические пограничные случаи, это вывод по умолчанию любого агента-кодера, и это те же провалы, которые регуляторы оштрафовали на сотни миллионов евро в 2025 году.
Решение не в том, чтобы перестать пользоваться агентами. Оно в том, чтобы добавить недостающий проход. Прогоните бесплатный навык scanning-for-gdpr-compliance по своему проекту, дайте ему классифицировать и починить очевидные нарушения, а затем дайте человеку пересмотреть то, что осталось. Несколько минут скана обходятся куда дешевле, чем обнаружить разрыв из письма регулятора.
Строите больше чем с одним агентом? Скачайте AgentsRoom, чтобы управлять Claude Code, Codex и другими из единого кокпита, посмотрите, что поддерживает каждый, в матрице совместимости провайдеров, и прочитайте, как держать темп, в vibe coding без того, чтобы утонуть.
Скачать AgentsRoom
Запускай агентов Claude на всех проектах из одного окна.
Приложение-компаньон: следите за агентами на ходу
Используйте Claude, Codex, Antigravity CLI или другого поставщика AI.
Отправляйте баги и запросы прямо в ваш публичный бэклог.
Взгляд на AgentsRoom в действии.