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.3 --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.3

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.3
File Size Uploaded
humanizer_ru-3.36.3.tar.gz 223.6 kB Details

Built distribution (wheel)

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

Total release size: 377.9 kB

Release files / humanizer_ru-3.36.3.tar.gz

Download URL humanizer_ru-3.36.3.tar.gz
Size 223.6 kB
Tags Source
SHA-256 checksum
How to use checksums
6994731dc6cd79182dad46f677445bf340c39f15d861fa515f48dae7f582efd7
BLAKE2b-256 checksum
How to use checksums
a746733e3ce89a826f338e7ce34046f3d9eb8a971a70eade7a80cba538655def
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.3-py3-none-any.whl

Download URL humanizer_ru-3.36.3-py3-none-any.whl
Size 154.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
585a55139bb5b17dcb9ef69f6285c66a7c2fc0c927c073914236c3f609209de9
BLAKE2b-256 checksum
How to use checksums
8c99e3db253d869e3beea6bc70335a8f129070922621819d0415f51020f611ec
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