v0.6.0 · MIT · бесплатно · без облака

Проверка сайта на риски персональных данных до и после деплоя

legitAgent читает HTML, JSX, TSX, Vue, Svelte и Astro и ищет типичные дыры: формы без согласия, метрика без opt-in, cookie-баннер, иностранные трекеры, неполная политика, реклама без erid, витрина без оферты. Живой scan-url смотрит тот же каталог по DOM, плюс cookie до согласия. В Cursor — MCP и /check; в Claude и Kimi — те же tools; в CI — GitHub Action. Платного тарифа нет. При каждом запуске IDE подтягивается актуальный пакет с npm.

Эвристическая проверка кода, не юридическое заключение.

Cursor Claude Kimi React / Next.js Vue · Svelte · Astro npm MIT

Автопоиск в исходниках

Пятнадцать детекторов по коду. Каждая находка — с id правила, статьёй закона и подсказкой, как исправить.

Форма без согласия

PDN.FORM.NO_CONSENT

Email, телефон или имя в форме — но нет чекбокса согласия на обработку ПДн.

high · ст. 9

Метрика без opt-in

PDN.TRACKER.NO_CONSENT

Метрика, gtag, GA, Meta Pixel или VK.Retargeting стартуют сразу, без проверки согласия.

high · ст. 6

Нет политики

PDN.POLICY.NO_LINK

В проекте не найдена ссылка на политику обработки персональных данных.

high · ст. 18.1

Предзаполненный чекбокс

PDN.FORM.PRECHECKED_CONSENT

Галочка согласия уже стоит — такое «согласие» не считается полученным.

high · ст. 9

Баннер без отказа

PDN.COOKIE.NO_REJECT

Cookie-баннер предлагает только «Принять», без реальной кнопки отказа.

medium · ст. 9

Иностранный трекер

PDN.TRANSFER.FOREIGN_TRACKER

GA, Meta Pixel и аналоги могут означать трансграничную передачу ПДн.

medium · ст. 6

Пятнадцать правил, один каталог

Все детекторы активны: формы и согласие, политика, метрики, cookie, иностранные трекеры, локализация и уведомление РКН (только если есть форма с ПДн, серьёзность low), ERID, оферта / реквизиты / возврат. scan-url прогоняет тот же набор по HTML живой страницы, ждёт гидрацию SPA и проверяет cookie до и после отказа. Полный список: каталог правил и сломанный демо-сайт.

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

MCP — для агентов

Cursor, Claude Code, Kimi и другие клиенты с MCP. В Cursor ещё скиллы /check, /scan, /scan-url.

{
  "mcpServers": {
    "legitagent": {
      "command": "npx",
      "args": ["-y", "--prefer-online", "@legit-agent/mcp@latest"]
    }
  }
}

В Cursor кнопка Add to Cursor пишет в ~/.cursor/mcp.json (User, все проекты). Файл .cursor/mcp.json в репозитории — только этот проект. При каждом запуске IDE — актуальный пакет с npm (@latest). Инструменты: scan, scan_url, list_rules, explain_rule, generate_policy, get_law

CLI — для терминала и CI

Node.js 20+, без установки:

npx @legit-agent/cli@latest scan
npx @legit-agent/cli@latest scan ./my-site --json --sarif --lang en
npx @legit-agent/cli@latest scan-url https://example.com
npx @legit-agent/cli@latest init-policy --operator "ООО Пример"

В CI лучше пин @0.6.0. Код выхода 1 при находках high. GitHub Action: legitagent-scan@v0.6.0.

Как это работает

  1. 1 Сканер обходит .html, .jsx, .tsx, .vue, .svelte, .astro — или открывает URL в Chromium
  2. 2 Сверяет код с YAML-каталогом правил и выдержками статей
  3. 3 Возвращает находки: файл, строка, норма, как исправить
  4. 4 Агент или разработчик принимает решение