FZ-009 · БЕЗОПАСНОСТЬ

promptdecode

Находит невидимый текст в код-ревью, который человек-рецензент пропустил бы.

Альфа ВАЛИДАЦИЯ Стек FZПроверка на скрытый текстОткрытый код
Перейти на promptdeco.de Запущено: ЕЩЁ НЕТ
Статус
Альфа
Этап конвейера
ВАЛИДАЦИЯ
Отрасль
БЕЗОПАСНОСТЬ
Цель по автономности
УРОВЕНЬ 4 · САМООПТИМИЗАЦИЯ
Создано на
3 в работе · 1 в планах

Проблема

Скрытый текст в Pull Request или issue может велеть кодовому агенту выполнить слияние, а рецензент его никогда не увидит.

Что он делает

promptdecode расшифровывает скрытый текст Unicode в вашем браузере, ничего не отправляет и показывает, что в нём сказано.

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

  1. Вставьте любой текст, и он покажет скрытые символы и расшифрует их сообщение
  2. Работает целиком в вашем браузере; ничего никуда не отправляется
  3. Сканер конфигурации проверяет ваши рабочие процессы GitHub на шаги с агентами, до которых может добраться недоверенный ввод

Сегодня бесплатно на promptdeco.de.

Поймайте скрытую инструкцию до того, как ваш агент по ней сработает.

СейчасДекодер сегодня работает в браузере. promptdecode-core 0.1.0 есть на crates.io; сканер и GitHub Action ещё не выпущены.

Цели

Автономная работа
Ревью — цель автоматизации. Кодинг-агент с токеном на запись читает pull request, который рецензент-человек уже одобрил, и они читают не один и тот же документ: символы блока тегов, переопределения bidi и селекторы вариантов отображаются как пустота, но токенизируются как обычно. Сканеры должны запускаться в CI на каждом изменении, расшифровывать найденное, а не просто помечать его, и публиковать обычный текст обратно в pull request — без модели в цикле и без утечки данных за пределы раннера.
Интеллект
Намеренно никаких там, где они не нужны. Оба запланированных движка детерминированные: один прослеживает недоверенный ввод рабочего процесса до шага агента с токеном на запись, другой сопоставляет именованные классы Unicode по содержимому репозитория. Детектор, которому нужна модель, чтобы решить, что подозрительно, не может сформулировать собственный охват, а охват, который можно сформулировать, и есть продукт.
Рост
Опора на доказательства, и потому медленнее. Процент заблокированных атак не публикуется, потому что доля обходов на уровне символов слишком сильно зависит от техники, чтобы одно число что-то значило. Публикуется детерминированное покрытие названного списка классов Unicode и полнота при заявленном уровне ложных срабатываний на названном корпусе, причём корпус и обвязка открыты. Рост — это репозитории, сканируемые в неделю, после появления Action.
Технические подробности

Находит текст, невидимый для рецензента-человека и полностью читаемый для языковой модели, и декодирует его. Скрытые инструкции в заголовке pull request, теле задачи или файле репозитория могут велеть кодинг-агенту одобрить, влить или прокомментировать, пока diff не показывает ничего необычного. Сегодня работают две части. Декодер на сайте, который читает три названных класса кодовых точек (блок тегов Unicode, управляющие символы и переопределения bidi, селекторы вариантов), восстанавливает закодированную в них нагрузку и работает целиком в браузере читателя, ничего никуда не отправляя. И сканер конфигурации, который прослеживает недоверенный ввод рабочего процесса до шага агента с токеном на запись и запускается из исходников, релиза пока нет. Остальное спроектировано, но не написано: движок содержимого, декодирующий нагрузки по всему репозиторию, сканер для командной строки, GitHub Action и открытый бенчмарк. Если класса нет в опубликованном списке, он не обнаруживается; список и есть заявление.