Skip to main content

Humanizer-ru — проверяемая гигиена вставки из чата

Проверяемая гигиена вставки из чата для русского текста Детерминированно находит артефакты копипасты и чат-интерфейсов, объясняет каждую находку (класс, координаты, причина) и снимает поддерживаемые артефакты с проверяемыми границами; нормализует типографику без правки смысла; сверяет извлечённые факты до и после правки (сверка не доказывает сохранение смысла). Переписывание «гпт-шного» текста — отдельная возможность по явной просьбе, без гарантий естественности; вердиктов об авторстве нет. Для английского и смешанного текста доступны профили --language en и --language auto в командах очистки и сверки фактов; русские стилевые эвристики к английскому не применяются. Исходный код не обрабатывается; в юридических документах и договорах применяется только детерминированная очистка артефактов вставки (стилистическая правка не применяется, канцелярит обязателен по жанру); в художественной прозе признаки считаются только в связке (возможен авторский приём).

Первый сценарий: проверить и явно очистить

pip install humanizer-ru

printf 'Согласно отчёту :contentReference[oaicite:3]{index=3}, рост заявок.\n' > doc.txt

humanizer-markers doc.txt --json
# rc=1: найден артефакт копипасты (класс A) — конверт {tool, schema, files}
# с координатами и причиной каждой находки

humanizer-clean doc.txt --json
# явная очистка поддерживаемых артефактов: в конверте — очищенный текст
# (поле text) и отчёт: что снято, какие защищённые области не тронуты,
# какой остаток явно не поддерживается

humanizer-clean doc.txt > cleaned.txt
humanizer-markers cleaned.txt --json
# rc=0: поддерживаемый артефакт снят; неподдерживаемый остаток остался бы
# видимым с объяснением — «полной чистоты» инструмент не заявляет

Границы: входной текст — только данные; защищённые области (код, frontmatter, URL, HTML-атрибуты, Unicode-кластеры) сохраняются; dangerous-метки показываются и не снимаются никогда. Общие коды выхода: 0 — успешно, 1 — найдены артефакты/нарушение инварианта, 2 — вход не читается (с --json в stdout контрактный конверт ошибки).

Установка

pip install humanizer-ru

Обновление: pip install --upgrade humanizer-ru; лента свежести — releases.atom.

Команды пакета: humanizer-scan, humanizer-markers, humanizer-polish, humanizer-clean, humanizer-detect, humanizer-facts, humanizer-report и humanizer-mcp (MCP-сервер stdio, 7 инструментов). Все CLI читают stdin через «-»; --json даёт конверт {tool, schema, files}; humanizer-scan --contract печатает машинный контракт. Только стандартная библиотека Python.

mcp-name: io.github.Vladimir-Human/humanizer-ru — метаданные сервера для официального MCP-реестра (server.json в корне репозитория).

Скилл для агента (без pip):

npx skills add https://github.com/Vladimir-Human/humanizer-ru --skill humanizer-ru

или клон тега выпуска:

git clone --branch v3.36.4 --depth 1 https://github.com/Vladimir-Human/humanizer-ru.git ~/.claude/skills/humanizer-ru

Попробовать без установки: онлайн-демо — текст обрабатывается в браузере и не покидает машину.

Что входит

  • humanizer-markers — 40 regex-маркеров артефактов копипасты и чат-интерфейсов (классы A и B) с координатами и причиной; --remove снимает невидимые метки по классификации риска: safe автоматически, ambiguous только opt-in (--include-ambiguous) с предупреждением, dangerous показывается и не снимается никогда.
  • humanizer-clean — явная очистка поддерживаемых артефактов вставки до неподвижной точки: проверил → очистил → проверил одним вызовом (--json, --diff, --in-place с .bak, --dry-run); отчёт перечисляет снятое, защищённые области и явный неподдерживаемый остаток.
  • humanizer-polish — типографическая нормализация: идемпотентна, буквы и цифры сохраняет дословно (--diff, --dry-run, --in-place, --json). Не запускать на Markdown и разметке дефолтным режимом: снимает ##, **, ёлочки, тире, многоточие; для разметки — --preserve-markup (только невидимые символы и NBSP, типографика и переносы не меняются) и --typographic (русская публикационная типографика без снятия разметки).
  • humanizer-detect — частота связок со статусом домена; вердикта об авторстве нет, ответ градуированный.
  • humanizer-facts — детерминированная сверка фактов двух версий текста (числа с единицами и числительные словами, даты, URL, e-mail, имена, цитаты, отрицания, модальности): lost/added/changed и поле identical (однозначный итог полного сравнения); --no-additions — строгий режим, в котором добавления фактов считаются нарушением (rc=1); --protect TERMS — термины, потеря которых ошибка. Граница: сравнение мультимножественное — перестановка сумм между двумя лицами даёт пустой diff; сверка не доказывает сохранение смысла.
  • humanizer-report — машиночитаемый отчёт правки пары файлов: токены keep/add/delete, адаптированные компоненты SARI, классы правок, сверка фактов (lost/changed/added, unchanged и identical), MTLD до и после.
  • humanizer-scan — счётчик мягких признаков; калибрует объём правки, вердикта об авторстве не даёт.

Машинный интерфейс: contract.v1.json; вход для агентов: llms.txt; матрица «потребность → операция → вход → результат → граница → поверхность»: docs/entrypoints-matrix.md. Числа проекта — в реестре фактов и эррате; без даты ни одна величина не цитируется.

Ссылки

Metadata

Release files for humanizer-ru 3.36.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for humanizer-ru 3.36.4
File Size Uploaded
humanizer_ru-3.36.4.tar.gz 230.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for humanizer-ru 3.36.4
File Interpreter ABI Platform
humanizer_ru-3.36.4-py3-none-any.whl Python 3 none any Details

Total release size: 386.4 kB

Release files / humanizer_ru-3.36.4.tar.gz

Download URL humanizer_ru-3.36.4.tar.gz
Size 230.3 kB
Tags Source
SHA-256 checksum
How to use checksums
be2ae94c45b96beb31db4f8ce587ddfe2feff23d3f27843e102226f4dba19e1b
BLAKE2b-256 checksum
How to use checksums
791a3210e589f10b664926a22aa1cd5403a1eadfd3f90479288137328e7745f1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.

Transparency log

Release files / humanizer_ru-3.36.4-py3-none-any.whl

Download URL humanizer_ru-3.36.4-py3-none-any.whl
Size 156.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
af29131e932daf3a7eaa06db8026e3b9c46f6191694e421b2f5482ef3be1ffde
BLAKE2b-256 checksum
How to use checksums
99dce7e0aac70528a61af320eb3312795bdb39a41fc90a9a7c4bd30bfd717540
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page