152-FZ personal data audit
152fz-data-audit-skill
A 152-FZ personal data audit skill: where the database lives, what leaves Russia, who really has access and what never gets deleted
Install
git clone https://github.com/imnadsa/152fz-data-audit-skill.git
cp -r 152fz-data-audit-skill/skills/data-privacy-audit ~/.claude/skills/For a single project copy into .claude/skills/.
This is third-party code. Review the repository files before installing.
What it does
The skill gives the agent a 12-point procedure for checking a project against Russian personal data law. The agent determines whose data is processed, finds the hosting country of the database, storage and backups, maps personal data fields and collects every external URL in the code with its jurisdiction. It then compares UI permissions with database permissions and checks channel encryption, retention, logs, backups and whether the site's privacy policy matches the code. The core rule is that compliance can be claimed only after a live system check. It ships SQL queries for Postgres and Supabase, a code scan script and a report template.
Who it is for. For developers and SaaS owners preparing a project for 152-FZ and wanting precise facts for their lawyer.
Good fit when
- You need to know which personal data flows to foreign services
- You need to check whether data leaks past the UI without authorization
- You need to verify that data deletion jobs actually run
Not a fit when
- You need legal documents: Roskomnadzor notices, policies, contracts
- You only have source code without access to the database or environment
Example request
Run the personal data audit skill and map cross-border data flowsLimitations
The skill covers the technical side and does not replace a lawyer. The bundled SQL targets Postgres and Supabase; other databases need adapted checks. Live checks require access to the production database and project API.
How to disable. Delete the data-privacy-audit folder from ~/.claude/skills or the project's .claude/skills.
Security check
- The procedure queries the production database holding personal data and its system catalogs
- Runs a shell scan of the code, including a secrets search
- Calls the project API from outside to test access
README in short
The README frames four questions the audit answers: what data exists, where it goes, who can access it and what gets deleted. It explains how a typical SaaS quietly sends data abroad through analytics, monitoring, AI and messengers. It covers global and per-project install for Claude Code, a table of check areas and the file layout, and ends with a note on the skill's limits. MIT licensed.
SKILL.md
--- name: data-privacy-audit description: Аудит персональных данных в проекте по 152-ФЗ — найти, куда данные уходят за границу, кто имеет к ним доступ на самом деле, что хранится вечно и совпадает ли политика с кодом. Use when the user asks about personal data compliance, 152-ФЗ, ПДн, GDPR-like audit, «персональные данные», «трансграничная передача», «утекают ли данные», «проверь доступы», «сроки хранения», «локализация базы», data protection review. --- # Аудит персональных данных: 12 точек Задача — не пересказать закон, а найти в конкретном проекте места, где данные людей уходят туда, куда не должны, живут дольше, чем нужно, или доступны тем, кому не положено. ## Правило номер один: проверять по факту, а не по коду Код описывает намерение, а не состояние системы. Расхождения, которые обязан проверить агент: - задача очистки написана верно — убедиться, что её запуски завершаются успешно; - политика доступа написана — убедиться, что объект не отдаётся без авторизации; - витрина фильтрует по владельцу — убедиться, что она не выполняется с правами создателя в обход политик; - интерфейс скрывает раздел — убедиться, что прямой запрос к API его тоже не отдаёт. Каждая проверка ниже имеет живой вариант: запрос к базе, обращение к API снаружи, чтение журнала выполнения. Порядок и правила — `references/verify-live.md`. --- ## Шаг 0. Определить роль и состав данных Спросите у владельца проекта и запишите: 1. **Чьи данные обрабатываются**: пользователи сервиса, их сотрудники, их клиенты, контрагенты-физлица. Это разные субъекты и разные основания — согласие владельца аккаунта не является согласием его сотрудников. 2. **Роль продукта**: сам оператор (свои пользователи, оплаты, поддержка) или обработчик по поручению (данные, загруженные клиентом о его людях). Обычно и то, и другое одновременно — тогда нужны оба комплекта документов. 3. **Есть ли специальные категории**: здоровье, биометрия, судимость, политические и религиозные взгляды. Требования к ним кратно строже.
FAQ
Why not just check the code?
Code shows intent, not system state. Scheduled deletion is verified by job logs, and access by calling the API without authorization.
Does it work outside Claude Code?
Yes, SKILL.md is self-contained and can be given to Cursor, Codex or a custom agent as instructions.
Related
NVIDIA's open stack for running OpenClaw, Hermes and LangChain Deep Agents in OpenShell sandboxes with network policy and managed inference
Static code analysis with rules that look like source code, plus a built-in MCP server for AI agents
Trail of Bits skills
Trail of Bits Skills Marketplace
Trail of Bits plugin marketplace for security work: smart contracts, C/C++ and Rust review, Semgrep, CodeQL and fuzzing
Nine skills that let an agent run Strix pentests, fix validated findings and add security scanning to CI