From humanizer
Removes AI-generation patterns from English or Russian text with auto-detection by Cyrillic ratio. Supports explicit language overrides and mixed-language handling.
How this skill is triggered — by the user, by Claude, or both
Slash command
/humanizer:humanizerThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Remove AI-generation patterns from text. This skill bundles two MIT-licensed
references/humanizer-en.LICENSEreferences/humanizer-en.mdreferences/humanizer-ru.LICENSEreferences/humanizer-ru.mdscripts/humanizer_metrics/__init__.pyscripts/humanizer_metrics/burstiness.pyscripts/humanizer_metrics/markers.pyscripts/humanizer_metrics/morphology.pyscripts/humanizer_metrics/score.pyscripts/humanizer_metrics/structure.pyscripts/scan.pyRemove AI-generation patterns from text. This skill bundles two MIT-licensed upstream rulesets and routes the input to the right one based on language.
This file is a router. The actual humanization rules live in
references/humanizer-en.md and references/humanizer-ru.md and are
authoritative. Do not paraphrase, summarise, or "improve" them — load and follow.
Accept the text to humanize as: a pasted block, a file path (use Read), or the
current selection. If the input is unclear, ask the user once.
Scan the user's request (case-insensitive) for an explicit language directive:
as english, english only,
humanize in english, на английском, обработай как английский.as russian, russian only,
humanize in russian, на русском, обработай как русский.If an override is present, skip step 3 and jump to step 4 with the chosen language.
Count letters in the input (ignore digits, punctuation, whitespace):
cyr = number of letters matching [А-Яа-яЁё]lat = number of letters matching [A-Za-z]total = cyr + latDecide:
total < 20 (input too short to classify reliably) → use AskUserQuestion
with options "English", "Russian".cyr / total >= 0.6 → Russian.cyr / total <= 0.1 → English.AskUserQuestion with options
"Apply Russian rules", "Apply English rules", "Run both passes (RU then EN)".Read references/humanizer-en.mdRead references/humanizer-ru.mdThe loaded file is authoritative. Treat its instructions as if they were yours.
The Russian ruleset ships a deterministic scanner and tells you to run it before
auditing. It refers to that scanner as <папка скилла>/scripts/scan.py. In this
plugin the path is scripts/scan.py relative to this file — not relative to
references/. Resolve it that way and otherwise follow the ruleset verbatim,
including its fallbacks when Python or the packages are missing.
There is no English counterpart; upstream does not ship one. Skip this step for EN.
Apply the diagnostic, rewrite, and audit process described in the loaded reference verbatim. Do not skip the audit pass. Do not invent new rules.
If the user provided a writing sample for voice calibration, pass it through to the chosen ruleset's voice-calibration section as-is, regardless of sample language.
Use the output format specified by the loaded reference (typically: draft → audit → final → list of changes). Do not change the format.
scripts/. Both are vendored verbatim;
refresh from upstream is a separate procedure documented in ../../../README.md.This skill bundles MIT-licensed work by
blader (English ruleset) and
ilyautov (Russian ruleset).
See ../../../NOTICE for full attribution and pinned upstream commits.
Guides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.
Dispatches multiple subagents concurrently for independent tasks without shared state. Use when facing 2+ unrelated failures or subsystems that can be investigated in parallel.
npx claudepluginhub dmitriyyukhanov/claude-plugins --plugin humanizer