Install
$ agentstack add mcp-vladimir-human-humanizer-ru ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
humanizer-ru
Проверяемая гигиена вставки из чата для русского текста
40 regex-маркеров артефактов вставки из чат-интерфейсов, у 38 из них полная запись доказательств. Ложных срабатываний класса A на 12314 текстах-неносителях ноль, класса B — 8, то есть 0.00065 (Wilson 95% CI от 0.0003 до 0.0013; замер 04.09.2026 по замороженной предрегистрации). Каждое число с датой и командой воспроизведения — в разделе [«Цифры проекта»](#цифры-проекта).
Очистка артефактов вставки и сверка фактов доступны и для английского текста: добавьте --language en к humanizer-clean, humanizer-polish, humanizer-facts или humanizer-report (либо --language auto). Это не включает русские стилевые эвристики и не даёт вердиктов об авторстве; профиль сохраняет код, URL, Markdown и проверяемые факты. Русский профиль остаётся значением по умолчанию для совместимости.
[](LICENSE) [](https://pypi.org/project/humanizer-ru/) [](https://github.com/Vladimir-Human/humanizer-ru/actions/workflows/regex-check.yml?query=branch%3Amain)
Кому это нужно
- Редактору и преподавателю: проверить текст перед публикацией:
humanizer-markers --scan файл.md. - Разработчику и CI: гейт вставки из чат-интерфейсов: [action и контракт](contract.v1.json).
- Пользователю ИИ-ассистента: та же проверка внутри агентной среды: [MCP одной конфигурацией](#mcp-одной-конфигурацией) или демо.
Попробовать за 30 секунд
- Демо в браузере: ничего не устанавливать, текст не покидает браузер.
- Сообщить о проблеме или опыте использования: issue в репозитории; пользовательский текст не передаётся автоматически ни демо, ни сборщиком обратной связи.
- Проверка конкретной вставки:
Самый короткий путь «нашёл → убрал → проверил»:
pip install humanizer-ru
humanizer-markers --scan input.txt # найти следы (rc=1 = находка)
humanizer-clean --in-place input.txt # снять поддержанные артефакты
humanizer-markers --scan input.txt # убедиться, что остатка нет (rc=0)
Для английского входа добавьте --language en; для смешанного — --language auto. Очистка не переписывает стиль и смысл: проверьте результат вручную и используйте humanizer-facts diff до.txt после.txt --no-additions после редакторской правки.
python -c "open('primer.txt','w',encoding='utf-8').write('Согласно отчёту :contentReference[oaicite:3]{index=3}, рост заявок.\n')"
humanizer-markers --scan primer.txt; echo "rc=$?"
primer.txt:1 [contentReference] Согласно отчёту :contentReference[oaicite:3]{index=3}, рост заявок.
Найдено маркеров: 1.
rc=1
rc=1 означает «найдены маркеры» — это ожидаемый результат проверки на образце со следом вставки, а не ошибка; rc=0 — следов нет, rc=2 — вход не читается (с --json конверт ошибки печатается в stdout).
MCP одной конфигурацией
{
"mcpServers": {
"humanizer-ru": {
"command": "uvx",
"args": ["--from", "humanizer-ru==3.36.0", "humanizer-mcp"]
}
}
}
Форма uvx устанавливает закреплённый выпуск PyPI и запускает stdio-сервер. При локальной установке эквивалентны pip install humanizer-ru и запуск humanizer-mcp.
Матрица проверенных возможностей и границ
Без заявлений о лидерстве: сопоставимого внешнего исследования в нише на дату записи нет (см. LEADERBOARD.md). Строки — что фактически проверено гейтами и тестами цикла; границы — что поверхность не делает.
| Поверхность | Проверка известных артефактов | Безопасная очистка | Сверка фактов | Машинный конверт | Граница | |---|---|---|---|---|---| | CLI (humanizer-markers, -polish, -facts, -report) | да, с координатами и классами A/B | режимы strip / --preserve-markup / --typographic с инвариантами сохранения | humanizer-facts (категории фактов) | --json, коды возврата по контракту | семантику не проверяет; вердиктов об авторстве нет | | MCP (humanizer-mcp, набор инструментов contract.v1.json) | те же команды через stdio | те же режимы через humanizerpolish | humanizerfacts | JSON-RPC конверты, isError по контракту | текст не покидает процесс | | Демо на Pages | да, подсветка исходных диапазонов в браузере | нет (только проверка и отчёт) | нет | копирование отчёта из одного результата | офлайн в браузере, без установки | | GitHub Action | гейт вставки + автофикс текстового пути (класс A) | action_fix вне fenced/кода | нет | rc гейта | фикс не трогает защищённые области | | Текстовый скилл (SKILL.md) | процедуры агента по references | стилевая правка только по явной просьбе | нет | нет (проза скилла) | гарантий естественности и сохранности смысла нет |
Что это НЕ делает
- Переписанный текст: теоретический потолок детекции при парафразе [bib:sadasivan2023]; парафраз обнуляет детекторы [bib:dipper2023].
- Нативно-гладкий машинный текст без артефактов: документная граница там же [bib:sadasivan2023]; популяционная детекция возможна только на больших выборках [bib:chakraborty2023], вердикт по документу не заявляется.
- Короткий текст: сигналов меньше, чем слов, водяной знак и статистика требуют длины [bib:anthropic2026wm], [bib:synthid2024].
- Водяные знаки без ключа: distortion-free знак не виден стороннему наблюдателю по построению [bib:kuditipudi2023]; криптографическая неотличимость без ключа [bib:cgz2023]; детектор SynthID-Text требует ключ разработчика [bib:synthid2024]; Anthropic подтверждает: без ключа знак не проверяется, детектор-API в закрытом preview [bib:anthropic2026wm].
- Ключи [bib:…] раскрыты в [research/BIBLIOGRAPHY.md](research/BIBLIOGRAPHY.md).
- polish не запускать на Markdown и разметке: снимает ##, **, ёлочки, тире; для разметки — режим --preserve-markup.
Почему можно доверять
- [Методология и бенчмарк: числа с доверительными интервалами](research/F8-UMBRELLA-2026.md).
- [Публичный бенчмарк: таблица с CI, командами воспроизведения и колонкой «где мы хуже»](demo/benchmark/index.html).
- [Модель угроз и границы детектора](docs/THREAT-MODEL.md).
- [Парити-гейт Python и JS правил](.github/workflows/regex-check.yml).
- [Самоаудит: числа, статусы и эррата](eval/facts/self-audit.v1.json).
- Статус последнего успешного прогона и деплоя: status.json на Pages (генерируется деплой-артефактом из точного SHA; обновляется только зелёным прогоном).
Установка скилла в браузерные клиенты
- Демо работает без установки: https://vladimir-human.github.io/humanizer-ru/ — текст не покидает браузер.
- Claude.ai и Claude Code: добавьте скилл из каталога
dsh/skills/humanizer-ruпо инструкции установки в [docs/USAGE.md](docs/USAGE.md#установка-за-30-секунд). - Агентные клиенты с поддержкой agentskills.io (opencode, DeepSeek Harness): распакуйте текстовый бандл из архива релиза.
- Браузерное расширение отклонено: новый поверхностный контур (permissions, store review) не окупается; очередь идей — [research/BACKLOG.md](research/BACKLOG.md).
Каталоги: Glama MCP · skills.sh.
Одноимённые проекты
На GitHub есть скиллы с тем же именем и другим содержанием. Снимок 2026-09-11 (проверка: gh repo view /humanizer-ru --json stargazerCount):
- ilyautov/humanizer-ru — 333 звезды: позиционирование «убирает признаки нейросети», публичного реестра чисел нет; приглашён к совместному публичному бенчмарку (issue 220).
- smixs/humanizer-ru — 154 звезды: детерминированный линтер; единственный тёзка, включённый в [LEADERBOARD.md](LEADERBOARD.md) как кандидат (парный прогон 2026-09-03).
- Этот проект — проверяемая гигиена вставки из чат-интерфейсов: каждое число из детерминированных снимков и [реестра фактов](eval/facts/facts.v1.json), границы — в [THREAT-MODEL](docs/THREAT-MODEL.md), ложные срабатывания — в [бенчмарке](demo/benchmark/index.html).
Пришли по имени — выбирайте по способу проверки, а не по звёздам.
Цифры проекта
- 58 паттернов машинного письма и 40 regex-маркеров (классы A и B).
- Записи доказательств: 38 из 40 маркеров (реестр research/fixtures/marker-sources.json).
- Гейты: 156 гейтов полного checkall (145 в --quick); фикстуры в tests/fixtures/, документация сверяется checkdocs.py, персона описана в PERSONA.md.
Почему так называется: имя унаследовано от первой функции, снимавшей слой копипасты после чат-бота и возвращавшей тексту человеческий вид. Вторая функция продукта: диагностика, подсветить машинные следы и объяснить причину каждого флага, без вердиктов об авторстве. Обе функции работают офлайн, текст не покидает вашу машину.
Классовая разбивка FP, exploratory, вне предрега F16: класс A: 0 случаев на 12314 текстов-неносителей; класс B: 8 случаев на 12314, то есть 0.00065, Wilson 95% CI от 0.0003 до 0.0013; контрольный набор 40 текстов: флагов 0; тяжёлый домен S4 legal и official, n=381, дефицит объёма зафиксирован в предреге: 18 случаев на 381, то есть 0.0472, Wilson 95% CI от 0.0301 до 0.0734; знаменатели: 12354 полный корпус F16, 12314 validation-страта.
Подробнее
- [Что ему давать и как переписывать](docs/USAGE.md#что-ему-давать)
- [Установка вручную и использование](docs/USAGE.md#использование)
- [Архитектура и паттерны](docs/USAGE.md#архитектура)
- [Безопасность и отличия версий](docs/USAGE.md#безопасность)
- [Источники](docs/USAGE.md#источники)
Regex-маркеры: классы A и B
Класс A — жёсткие артефакты копипасты: служебные ссылки и метки цитирования чат-интерфейсов. Класс B — контекстные индикаторы: невидимые символы, скрытая раскладка, placeholder-поля; одного совпадения B недостаточно. Класс маркеров — copypaste_artifacts; ретайр маркера возможен только по провалу на своём классе, статусы и даты — в markers.v1.json.
История изменений
История изменений — в [CHANGELOG.md](CHANGELOG.md) и на GitHub Releases.
Лицензия
MIT
Статус проекта
[](https://github.com/Vladimir-Human/humanizer-ru/releases) [](https://www.skills.sh/vladimir-human/humanizer-ru/humanizer-ru) [](https://github.com/Vladimir-Human/humanizer-ru/blob/main/eval/facts/self-audit.v1.json)
Догфудинг — проект проверяет собственные тексты собственными правилами: порог маркеров стиля в файлах поставки сверяется гейтом scripts/check_own_style.py (текущий максимум выводится в его запуске).
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Vladimir-Human
- Source: Vladimir-Human/humanizer-ru
- License: MIT
- Homepage: https://vladimir-human.github.io/humanizer-ru/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.