Об этом проекте

ClaudeMark — это локальный форензик-инструментарий, не отправляющий данные вовне, предназначенный для исследования и санитизации водяных знаков ИИ и данных о происхождении в тексте и файлах, которыми вы владеете. Он реализован на Python (версии 3.10+, с использованием стандартной библиотеки), работает автономно, и его основные операции не выполняют исходящих сетевых запросов. Проект распространяется под лицензией MIT. Обнаружение и санитизация организованы по уровням. Уровень A — детерминированная обработка текста: сканирование невидимых носителей Unicode, таких как пробел нулевой ширины, ZWNJ, ZWJ, соединитель слов, BOM, монгольский разделитель гласных, теги Unicode, селекторы вариаций, переопределения двунаправленного текста, экзотические пробелы и омоглифы, с возможностью отображения скрытых маркеров в виде читаемых тегов (например, ZWSP, BOM, RLO) для инспекции. Уровень B — статистический: README описывает детекторы для эвристики исследований Claude, смещения списков red/green класса Kirchenbauer, детектор в стиле SynthID и универсальный детектор, а также попытку переписывания или разрушения водяного знака с оценкой «до/после» и отчетом о различиях в виде HTML-таблицы. Для файлов и контейнеров инструмент инспектирует и удаляет манифесты C2PA/JUMBF, EXIF, XMP, IPTC, метаданные XML документов и сигнатуры генераторов. Документированная поддержка форматов включает PNG, JPEG, WebP, SVG, AVIF, HEIC, PDF, DOCX, ODT, HTML и Markdown, а также обработку тегов MP4/MOV/M4A и MP3, указанную в таблице форматов. Очистка записывает выходные данные атомарно. При наличии используются дополнительные инструменты хоста — c2patool для проверки C2PA, exiftool для вторичной инспекции метаданных и qpdf для структурной пересборки объектов PDF. Включен сканер защиты от атак, охватывающий бомбы декомпрессии (лимит коэффициента сжатия 100x и предел несжатого размера 100 МБ), вредоносные действия PDF, такие как /JavaScript, /JS, /Launch, /EmbeddedFiles и /SubmitForm, встроенные проекты макросов VBA, а также защиту от обхода путей и использования зарезервированных имен устройств Windows. Текстовые команды проверяют сигнатуры файлов и распределение управляющих символов, чтобы отказываться от бинарного ввода, а не повреждать файлы. Инструментарий предоставляет несколько интерфейсов. CLI предлагает подкоманды analyze, unicode inspect/visualize/clean, rewrite, evaluate, diff, inspect, clean, audit, evidence, schema, c2pa inspect, security scan, agent list/exec, serve, doctor и benchmark, включая режим dry-run для очистки каталогов. HTTP-сервис на стандартной библиотеке предоставляет веб-панель управления и документированный REST API (health, capabilities, спецификация OpenAPI, inspect, clean, analyze, unicode analyze/visualize, rewrite, evaluate, diff, security scan, agent tools/exec) с опциональной аутентификацией по bearer-токену через переменную окружения. MCP stdio-сервер (claudemark-mcp) предоставляет те же локальные инструменты через initialize, tools/list и tools/call. Файлы навыков и правил могут быть установлены для Claude, Cursor, Antigravity, Grok и Codex через скрипт установки. Интеграции автоматизации включают генерацию вывода OASIS SARIF 2.1.0 для сканирования кода GitHub (с опцией --fail-on), официальные хуки pre-commit для очистки Unicode и аудита репозитория, а также упаковку Docker Compose, работающую с корневой файловой системой только для чтения и от имени непривилегированного пользователя. Пакеты доказательств представляют собой ZIP-файлы, содержащие канонический JSON-отчет и манифест SHA-256; включение исходного файла является опциональным, а режим проверки контролирует хеш отчета и, при наличии, хеш встроенного исходного файла. В документации отмечается, что пакет доказательств подтверждает целостность своего содержимого, но не является криптографической подписью или утверждением об авторстве. Ограничения области применения явно указаны. Статистические сигналы не доказывают авторство ИИ; проект не заявляет о доступе к проприетарным весам моделей, приватным ключам водяных знаков вендоров или недокументированным API обнаружения вендоров; статистическое разрушение является попыткой, и более низкий балл не гарантирует стирание или другую классификацию в других системах; отсутствие метаданных не доказывает, что контент создан человеком или не имеет данных о происхождении. Адаптеры водяных знаков в пиксельном домене (SynthID-Image, CtrlRegen, MarkDiffusion, Tree-Ring, Stable Signature, StegaStamp) являются исследовательскими интерфейсами, а не включенными моделями, и сообщают о недоступности до настройки контрольных точек. Также описаны точки интеграции с оценочным стендом MarkLLM для контролируемых экспериментов.