Разработка 4 мин чтения

Код в чат-бота без ключей и паролей: что чистит DevProjex

Как студии отдавать код проекта нейросети и не отдавать ключи, пароли и клиентские данные. Разбор DevProjex по репозиторию: что вычёркивает, чего не находит и какой нужен регламент.

безопасность ИИразработкасекреты в кодеMCP
Коротко. DevProjex (лицензия Apache-2.0, один автор, 31 звезда на GitHub на 12 октября 2026) собирает из папки проекта контекст для чат-бота или ИИ-агента. Он прячет мусорные папки, вычёркивает найденные ключи и пароли, по желанию ещё почту, IP и международные телефоны, и сжимает код примерно втрое. Всё работает локально. Вычёркивание идёт по шаблонам, поэтому нестандартный пароль или российский ИНН оно пропустит. Это страховка поверх правила «что можно отправлять ИИ», а не его замена.
Нужен чат-бот для вашего бизнеса?

Сделаю под ключ: разберу задачу, назову срок и цену. Чтобы начать, напишите в Telegram одной фразой.

Безопасность: проверка репозиториев и правила работы с ИИ

Как ключи попадают в чат

Разработчик хочет, чтобы нейросеть разобралась в проекте. Он открывает папку и копирует файлы в чат один за другим. Или подключает агента к каталогу, и тот читает всё подряд. В какой-то момент в контекст уезжает .env с боевым ключом платёжного сервиса, строка подключения к базе или тестовая выгрузка клиентов из папки fixtures.

Автор DevProjex описывает это прямо: агент с обычным доступом к файлам читает .env так же легко, как исходник. Раньше я разбирал, что спрашивать у подрядчика, который пишет код с ИИ-ассистентом. Здесь вопрос с другой стороны: как сама студия готовит код к отправке.

Что за проект и насколько он зрелый

Репозиторий Avazbek22/DevProjex создан 30 июня 2025. Последний коммит от 8 октября 2026, релиз 5.2 вышел 1 октября, до него 5.1 в сентябре и 5.0 в августе. Звёзд 31, форков 7, открытых обращений 22. Почти 3960 коммитов у владельца, ещё четыре человека внесли по одному.

Один разработчик, быстрый темп. Если он пропадёт, поддерживать придётся самим, и лицензия Apache-2.0 из файла LICENSE это разрешает.

Написан на C# (.NET 10), интерфейс на Avalonia. Работает на Windows, macOS 14 и новее и Linux. Ставится из Microsoft Store, через winget или готовым файлом с GitHub. Консольная часть и MCP-сервер запускаются без установки: npx devprojex (нужен Node.js 20) или dnx devprojex (нужен .NET SDK 10).

Что вычёркивается и как

Секреты ищет набор правил, перенесённый из Gitleaks версии 8.30.1: 221 правило для ключей известных сервисов. Сверху слой для конфигов: .env, строки подключения к PostgreSQL, MySQL, MongoDB и Redis, docker-compose, Dockerfile, .npmrc. Найденное значение заменяется на метку вроде DEVPROJEX_REDACTED[telegram-bot-api-token#1], а файл и окружающий код остаются. В строке подключения скрывается только пароль, хост и имя базы видны.

Результат видно до отправки: в предпросмотре подсвечены все найденные места, рядом число находок и оценка токенов. Ложное срабатывание снимается на конкретном месте до закрытия программы. В сборочной линии --findings --fail-on-findings перечисляет правило, файл и строку без значений и валит сборку, если что-то нашлось.

Обратной подстановки в документации я не нашёл. В выдаче значений нет вообще, настоящий ключ потом подставляют руками.

Второй слой называется «скрыть личные данные» и по умолчанию выключен. Он ищет адреса почты, публичные IPv4 и IPv6, MAC-адреса, имена пользователей в путях вроде C:\Users\имя\ и международные телефоны: плюс и от 8 до 15 цифр. По описанию правила российский номер в виде «+7 900 000-00-00» под него подходит, а «8 900…» нет. На реальных данных я это не проверял.

Документация сама перечисляет, чего слой не ищет: национальные форматы телефонов без плюса, имена, адреса, государственные идентификаторы и любой свободный текст о человеке. Правил под ИНН, СНИЛС и паспорт в описании нет, так что тестовая выгрузка клиентов с ФИО и паспортами пройдёт насквозь.

Сжатие, исключения и MCP только для чтения

Умное исключение прячет node_modules, bin, obj, виртуальные окружения и кэши, но только внутри проекта, которому они принадлежат. Если признаков сборочного мусора нет, папка остаётся видна. Есть и режимы Git: только изменённые файлы или разница между ветками.

Сжатие кода оставляет объявления и сигнатуры, а тела функций опустошает. На собственных исходниках проекта контекст стал меньше примерно на 69%, то есть втрое. На смешанном репозитории выигрыш скромнее. Модель увидит форму кода, а не его логику.

MCP-сервер даёт агенту восемь инструментов: список проектов, дерево, анализ, поиск, связанные файлы, чтение файла, сборку контекста под лимит токенов и чтение сохранённой сборки. Он только читает, привязан к одной папке, а маскирование секретов в нём выключить нельзя. Файлы приходят в обёртке «недоверенные данные», чтобы команда внутри файла не сошла за указание. Та же логика у нашего разбора доступа ИИ-агента к базе только на чтение.

Про данные: телеметрии, по заявлению автора, нет, содержимое проекта никуда не уходит, а сеть в режиме MCP выключена, пока не включить удалённые Git-адреса. Журнал сеансов лежит на вашей машине и хранит пути и счётчики, но не тексты файлов. Я читал документацию, сетевой трафик не проверял.

Где это не сработает

Автор сам пишет, что не называет результат безопасным: ноль находок означает лишь, что правила ничего не нашли. Бинарные файлы не сканируются, текст больше 16 МиБ в контекст не попадает. Пароль, записанный в исходнике обычной переменной вроде var password = "test123", останется на месте: слой конфигов на обычный код не распространяется.

Сравнение с Repomix, которое приводит автор (973 тысячи токенов против 1,17 миллиона), сделано им самим на задачах, которые он сам написал. Имена файлов и папок попадают в контекст как есть. И политика остаётся вашей: если договор с клиентом запрещает передавать код третьим лицам, чистка контекста его не отменяет. Про персональные данные и 152-ФЗ в таком контуре есть отдельный разбор.

Что можно сделать уже сейчас

Первое. Запустите на старом репозитории проверку без отправки: devprojex analyze . --hide-secrets --findings. Увидите, сколько ключей и паролей там лежит, не открывая значений.

Второе. Прогоните тестовые данные и логи, куда попадают реальные клиенты, и посмотрите, остались ли в выдаче ФИО, паспорта, ИНН. Пропущенное закрывайте своим правилом или обезличиванием выгрузки.

Третье. Если агенты в команде уже работают, подключите MCP-сервер вместо прямого доступа к папке и просматривайте журнал сеансов. А ключи из репозитория лучше убрать, например в зашифрованное хранилище.

Четвёртое. Напишите на одной странице, какие репозитории можно отправлять какой модели. Если такую проверку и правила хочется отдать, это входит в услугу по кибербезопасности, ориентиры по стоимости есть в прайсе.

Частые вопросы

Можно ли поставить его в команде без администратора?

Консольная часть запускается через npx или готовым файлом без установки, права администратора для этого не нужны.

Заменит ли он корпоративный тариф нейросети?

Нет. Он чистит то, что вы отправляете. Что провайдер делает с отправленным, зависит от договора и тарифа.

Что если модель вернёт код с метками вместо ключей?

Метки стоят на месте значения, поэтому код читается, но не запустится. Настоящие значения подставляйте вручную, а лучше берите из переменных окружения.

Коротко о главном

DevProjex убирает из отправки типовые секреты, часть технических личных данных и лишние файлы, и делает это локально. Проект молодой, держится на одном авторе, а вычёркивание ищет только знакомые форматы. Российские идентификаторы и свободный текст о людях он не находит.

Хотите, чтобы команда пользовалась ИИ без утечек: правила отправки, настройка такой чистки, проверка репозиториев? Напишите мне в Telegram слово «КОНТЕКСТ». Посмотрим на ваши репозитории и соберём порядок работы под вашу команду.

Обсудим вашу задачу

Что я делаю для бизнеса

Напишите одной фразой, что нужно. Отвечу, что подойдёт, сколько займёт и сколько стоит. Сообщение уже подготовлено.

  • Боты в Telegram, MAX, VK
  • Автоматизация процессов и CRM
  • Аналитика и дашборды
  • Сайты и лендинги под ключ

Бесплатно: чек-лист «Готов ли ваш бизнес к 152-ФЗ»

12 пунктов, которые проверяют готовность за час: данные, согласия, уведомление в РКН, локализация, защита. Отметьте, что уже сделано, и увидите дыры, за которые сейчас штрафуют.

Пишу о разработке, ИИ и законах для бизнеса

Разборы, кейсы и практика — без воды. Выходит регулярно, читать 3–5 минут.

Готовые решения под ключTurnkey solutionsSoluciones llave en mano交钥匙解决方案Түлхүүр гардуулах шийдэл 451 готовых IT-решений для бизнеса451 ready-made IT solutions for business451 soluciones IT listas para empresas451 个面向企业的现成 IT 解决方案Бизнест зориулсан 451 бэлэн IT шийдэл Автоматизация, боты, AI, 152-ФЗ и платформы · бесплатная консультацияAutomation, bots, AI, data privacy and platforms · free consultationAutomatización, bots, IA, privacidad de datos y plataformas · consulta gratis自动化、机器人、AI、数据合规与平台 · 免费咨询Автоматжуулалт, бот, AI, өгөгдлийн хамгаалалт ба платформ · үнэгүй зөвлөгөө Смотреть каталогView catalogVer catálogo查看目录Каталог үзэх