Humanizer: AI Writing Humanizer and Detector
Free, open-source skill that detects 55 AI writing patterns, rewrites text in five voice profiles, and scores it 0-100 — all locally, with nothing leaving your machine.
Evidence shows: pure Markdown, least-privilege tool list (Read/Write/Edit/Grep/Glob/AskUserQuestion), declared zero dependencies and no network calls, SECURITY.md discloses threat model (prompt injection) and data flow. Deducted for: --mode edit rewrites user files in place without mandatory explicit confirmation, backup, or rollback path; humanizer-context.md is auto-read from the project root. Not full marks.
Evidence shows: self-consistent flag/mode definitions, evals. covering trigger and no-trigger cases, node --test suites for the CLI. Deducted for: static cap of 10; the submitted SKILL.md text appears truncated at P50, and CI greps for 'Voice Profiles'/'Soul Injection' sections not visible in the provided SKILL.md, raising a self-consistency question; evals are manual-only with no automated trigger harness; rewrite quality and failure feedback depend on the model and were not executed.
Evidence shows: explicit trigger phrases, counter-examples (should_trigger=false), thorough false-positive guardrails (quotes, code, neurodivergent writers, non-native English), local execution with no network. Deducted for: Chinese support is a provisional appendix the author states is unvalidated by a native writer, with burstiness/perplexity explicitly flagged as non-portable to Chinese and ZH13/ZH14 unverified; reproducibility detail of the --score rubric is thin at the skill level.
Evidence shows: layered docs (standalone SKILL.md plus on-demand references), MIT LICENSE, CI-enforced presence of CHANGELOG/FAQ/SECURITY/CONTRIBUTING, cited provenance (Wikipedia, HC3, arXiv), honest known-limitations section. Deducted for: unverified publisher means maintenance responsibility and update path rest on an individual repo; minor inconsistency between CI checks and the provided SKILL.md content.
Evidence shows: 55 patterns with 34 before/after pairs, three full worked examples (technical/blog/LinkedIn), a compare --check-facts check that fails rewrites losing facts, and a no-fabrication principle. Deducted for: static cap of 7; actual rewrite quality and the 0-100 score's behavior were not executed, and no quantified precision/recall evidence for pattern detection exists.
Evidence shows: multiple auditable sources (Wikipedia, arXiv 2301.07597, arXiv 2304.02819, HackerNews threads), a per-pattern coverage mapping against the Wikipedia guide, an Honest limits section disclosing that the source guide itself is contested, and license compliance notes (HC3 CC-BY-SA, no reuse of unlicensed code). Deducted for: static cap of 5; all scientific claims (HC3 statistics, ACL 2026 study) are uncorroborated by independent reproduction, and score behavior is only indirectly pinned by CLI tests, not the skill's rewrite paths.
- --mode edit modifies files in place with no built-in confirmation or rollback; back up files before use.
- The 0-100 score is a heuristic signal, not a verdict: the author's own cited research shows expert humans near coin-flip accuracy, with documented false-positive risk for non-native English and neurodivergent writers. Do not use it to gate or judge individuals' writing automatically.
- The Chinese appendix (ZH1-ZH15) is a provisional, unvalidated draft; Chinese-language effectiveness is not guaranteed, and ZH13/ZH14 are unverified hypotheses.
- Publisher identity is unverified; the pattern catalog will drift as alignment recipes change (the author discloses this), so monitor repository updates.
- This is a static review: nothing was executed; evals are manual and trigger accuracy varies by model.
What does this skill do, and when should you use it?
Humanizer is a pure-Markdown Agent Skill that fixes text which reads like a chatbot wrote it. It scans for 55 documented AI patterns (significance inflation, blacklisted vocabulary, uniform sentence length), reports a 0-100 AI-tell density score, and rewrites the text in one of five voices: casual, professional, technical, warm, or blunt. Strict guardrails prevent fabrication, protect quoted and code content, and preserve genuinely human writing traits. An optional zero-dependency Node CLI adds deterministic metrics, a fact-check on rewrites, and a CI-ready exit code.
Reads pasted text or a Markdown file and runs in one of three modes: detect (scan and report pattern hits plus a 0-100 score, no changes), rewrite (full transform with voice injection, the default), or edit (minimal in-place edits via the Edit tool). Detection covers patterns P1-P55, including tiered AI-vocabulary lists, em-dash overuse, sentence-length burstiness, and Unicode obfuscation. Rewrites can prepend a [Score: NN/100] header, loop with --iterate until convergence, layer --purpose rules (essay/email/marketing/technical), and mask code blocks or quotes with --ignore-code/--ignore-quotes. The CLI's score command breaks the number into four signals (lexical tell density, trigram repetition, burstiness, vocabulary diversity), and compare --check-facts fails a rewrite that lost numbers, URLs, dates, versions, or acronyms.
- Bloggers and technical writers: turn a chatbot-sounding draft into a publishable blog post, README, or LinkedIn note with a real human voice
- Docs maintainers: run --mode edit to clean AI tells from in-repo Markdown in place, preserving code blocks and facts
- Editors and reviewers: use detect mode with --score to quantify AI smell before shipping a piece
- Engineering teams: wire the CLI's score and compare commands into CI or the provided pre-commit hook to gate only staged files
- Brand content teams: drop a humanizer-context.md in the repo root to inject brand samples and banned phrases into every rewrite
- Non-English writers: consult the provisional native-Chinese appendix (patterns.zh.md) for Chinese-language tells
What are this skill's strengths and limitations?
- Zero dependencies, zero network calls, no telemetry — one local Markdown file, fully private
- 55 patterns with a four-tier confidence vocabulary and explicit cluster-based flagging rules to cut false positives
- Guardrails preserve quoted text, code, and hard-to-fake human specifics; no fabrication allowed in rewrites
- CLI delivers a reproducible four-signal score breakdown plus a CI exit code, pinned by 64 tests
- Runs in 70+ agents via one-line skills CLI install; plain Markdown means it works with whatever model your editor uses
- Explicitly acknowledges detector bias against non-native English and low-burstiness writers, with guard clauses against it
- The 0-100 score is a heuristic signal, not a verdict — self-grading in-session inflates it, as the docs themselves warn
- The optional CLI requires Node.js; without it, detection quality depends entirely on the underlying model
- Chinese support is a provisional appendix (patterns.zh.md); the core catalog targets English prose
- Pure prompt engineering, no fine-tuned model, so detection accuracy is bounded by model capability
- Rewrite quality has no automatic fact-check unless you separately run compare --check-facts
How do you install this skill?
Three options: 1) Claude Code plugin marketplace: claude plugin marketplace add Aboudjem/10x then claude plugin install humanizer@10x; 2) For 70+ other agents via the skills CLI: npx skills add Aboudjem/humanizer-skill (append -a <agent> for Cursor, Codex, Copilot, Gemini CLI, and others); 3) Manual curl: create .claude/skills/humanizer/ and download skills/humanizer/SKILL.md into it — swap the folder for .cursor/skills/, .github/skills/ (Copilot), .codex/skills/, .gemini/skills/, etc., or use ~/.claude/skills/ for a global install. Full per-editor paths are in docs/editors.md.
How do you use this skill?
In your editor, invoke the skill with flags, e.g. /humanizer --file draft.md --voice technical (rewrite a file in technical voice); /humanizer "your text" --mode detect --score (report only, with a 0-100 score); /humanizer --file doc.md --mode edit --ignore-code (targeted in-place edits, code masked). Natural-language triggers also work: "humanize this", "make this sound less AI", "remove AI tells". Scoring runs via node cli/index.js score <file>; fact-checking a rewrite via node cli/index.js compare --before <file> --after <file> --check-facts.