Humanizer: Remove AI Writing Patterns
Detect and remove signs of AI-generated text. This skill catalogs the available tools, the 29 canonical AI writing patterns, and how to integrate humanization into the full writing pipeline.
Tool Catalog
Three external tools available. Choose based on need:
1. agentic-humanizer (numen-tech/slopornot) — Interview + Profile + Voice
Repo: https://github.com/numen-tech/slopornot Stars: 38 | Best for: Personalized, repeatable humanization with style learning
The only tool that does the full interview→profile→voice-fingerprint workflow:
- Interview: Asks 5 questions — language/variant, reading level (elementary→graduate), tone (casual/professional/academic), length policy, voice sample
- Profile caching: Saves to
~/.agentic-humanizer/profile.json. Never re-prompts unless detected language changes. - Voice fingerprinting: Paste 200+ words of your writing → extracts stylometric fingerprint (rhythm, register, contractions, sentence shape, concrete phrasing) → caches at
~/.agentic-humanizer/voice-fingerprint.json→ asks "Looks right?" before saving. - 5-pass iterative loop: Pattern surgery → tone alignment → reading-level adjustment → cleanup-aware editing → structural rewrite
- Works standalone: Core mode runs without the Slop or Not detector app
- Multi-agent: Claude Code, Codex, Cursor, Gemini CLI, OpenCode, Hermes (generic harness)
- Multi-language: English, Spanish, German, Italian, Swedish, Danish, Norwegian
Install for Hermes:
git clone https://github.com/numen-tech/slopornot.git /tmp/slopornot
cp /tmp/slopornot/skills/agentic-humanizer/SKILL.md ~/.hermes/skills/agentic-humanizer.md
2. brandonwise/humanizer — CLI + Pattern Detection
Repo: https://github.com/brandonwise/humanizer Stars: 100 | Best for: Quick scoring, CI gating, repo scanning
Standalone Node.js CLI + OpenClaw skill. 29 patterns, 500+ vocabulary terms, statistical analysis (burstiness, type-token ratio, readability).
git clone https://github.com/brandonwise/humanizer.git
cd humanizer && npm install
# Score text (0-100, higher = more AI-like)
echo "text" | node src/cli.js score
# Full analysis
node src/cli.js analyze -f draft.md
# Auto-fix
node src/cli.js humanize --autofix -f article.txt
# Scan repo, fail CI above threshold
node src/cli.js scan docs --fail-above 45
# Compare drafts
node src/cli.js compare --before v1.md --after v2.md
Proven results (2026-07-14): 66/100 AI-slobbered text → 2/100 after manual humanization following its 28-pattern system. The CLI auto-fix alone is minimal — the real power is loading its SKILL.md as rewrite constraints and doing the humanization pass manually against its pattern catalogue.
3. smixs/humanizer-ru — Russian Language
Repo: https://github.com/smixs/humanizer-ru Stars: 73 | Best for: Russian text only
32 patterns for Russian AI text. Universal installer: npx skills add smixs/humanizer-ru
Quality Tier (tested — use in this order)
Tier 1: Manual rewrite (best quality). Load this skill OR the brandonwise/humanizer SKILL.md, then:
- Run
node src/cli.js analyze -f <file>to score and identify patterns - Rewrite manually following the 28 patterns, core principles, and the before/after example below
- Vary sentence rhythm — short fragments next to long meandering sentences
- Add concrete specifics (numbers, names, studies, anecdotes) — never vague claims
- Have opinions. React to facts. Nuance beats boosterism.
- Re-score with CLI to verify improvement
Tier 2: agentic-humanizer auto-loop (mediocre quality — tested and rejected for final output). The 5-pass iterative loop produces passable but flat results. Use only for:
- Batch processing where volume matters more than quality
- First-pass rough de-slophication before manual polish
- The profile/interview system for style caching (valuable) — then do the actual rewrite manually
Tier 3: CLI autofix only. node src/cli.js humanize --autofix removes chatbot artifacts and little else. Use for quick sanitation, not quality.
Quick Decision Guide
| Need | Use |
|---|---|
| Best quality rewrite (recommended) | Load this skill, run CLI for scoring, rewrite manually |
| I want a quick score on some text | brandonwise/humanizer CLI |
| Batch processing / rough first pass | agentic-humanizer auto-loop |
| I want style caching (interview + profile) | agentic-humanizer profile system only |
| I need CI to gate AI-sounding docs | brandonwise/humanizer scan --fail-above 45 |
| Russian text | smixs/humanizer-ru |
The 29 AI Writing Patterns
These are the canonical tells. Every humanization pass should scan for these:
Content Patterns (1-6)
- Significance inflation — "marks a pivotal moment in the evolution of..."
- Notability name-dropping — Listing media outlets without specific claims
- Superficial -ing analyses — "...showcasing... reflecting... highlighting..."
- Promotional language — "nestled", "breathtaking", "stunning", "renowned"
- Vague attributions — "Experts believe", "Studies show", "Industry reports"
- Formulaic challenges — "Despite challenges... continues to thrive"
Language Patterns (7-13)
- AI vocabulary — 500+ words: delve, tapestry, landscape, showcase, seamless, crucial, comprehensive, meticulous, embark, robust, groundbreaking, leverage, synergy, transformative, paramount, multifaceted, myriad, cornerstone, reimagine, empower, catalyst
- Copula avoidance — "serves as", "boasts", "features" instead of "is", "has"
- Negative parallelisms — "It's not just X, it's Y"
- Rule of three — "innovation, inspiration, and insights"
- Synonym cycling — "protagonist... main character... central figure..."
- False ranges — "from the Big Bang to dark matter"
- Em dash overuse — Too many — dashes — everywhere
Style Patterns (14-19)
- Em dash overuse
- Boldface overuse — Mechanical emphasis everywhere
- Inline-header lists — "- Topic: Topic is discussed here"
- Title Case headings — Every Main Word Capitalized
- Emoji overuse — 🚀💡✅ in professional text
- Curly quotes — "smart quotes" instead of "straight quotes"
Communication Patterns (20-28)
- Chatbot artifacts — "I hope this helps!", "Let me know if..."
- Cutoff disclaimers — "As of my last training...", "While details are limited..."
- Sycophantic tone — "Great question!", "You're absolutely right!"
- Filler phrases — "In order to", "Due to the fact that", "At this point in time"
- Excessive hedging — "could potentially possibly", "might arguably perhaps"
- Generic conclusions — "The future looks bright", "Exciting times lie ahead"
- Reasoning chain artifacts — "Let me think...", "Step 1:", "Breaking this down..."
- Excessive structure — Too many headers/bullets for simple content
- Confidence calibration — "I'm confident that...", "It's worth noting..."
- Acknowledgment loops — "You're asking about X...", restating questions
Tier 1 Vocabulary (Dead Giveaways — Never Use)
delve, tapestry, vibrant, crucial, comprehensive, meticulous, embark, robust, seamless, groundbreaking, leverage, synergy, transformative, paramount, multifaceted, myriad, cornerstone, reimagine, empower, catalyst, invaluable, bustling, nestled, realm, unpack, deep dive, actionable, impactful, learnings, bandwidth, net-net, value-add, thought leader
Tier 2 Vocabulary (Suspicious in Density)
furthermore, moreover, paradigm, holistic, utilize, facilitate, nuanced, illuminate, encompasses, catalyze, proactive, ubiquitous, quintessential, cadence, best practices
Banned Phrases
"In today's digital age", "It is worth noting", "plays a crucial role", "serves as a testament", "in the realm of", "delve into", "harness the power of", "embark on a journey", "without further ado", "let's dive in", "circle back", "key takeaways", "paradigm shift", "move the needle", "low-hanging fruit", "pain points", "double-click on"
Statistical Signals
Beyond pattern matching, these metrics differentiate human from AI writing:
| Signal | Human | AI | Meaning |
|---|---|---|---|
| Burstiness | 0.5–1.0 | 0.1–0.3 | Humans vary sentence length; AI is metronomic |
| Type-token ratio | 0.5–0.7 | 0.3–0.5 | Humans use more varied vocabulary |
| Sentence CoV | 0.4–0.8 | 0.15–0.35 | Coefficient of variation — low = robotic |
| Trigram repetition | < 0.05 | > 0.10 | AI reuses 3-word phrases more often |
| Readability (FK) | Varies | 8–12 | AI writes at consistent grade level |
Integration with voice-humanizer
For personalized humanization that matches a specific writing voice, use the
companion voice-humanizer skill. It extracts a stylometric fingerprint from
a writing sample (14 fields: rhythm, register, contractions, idioms, etc.)
and applies it as constraints during the rewrite. Saved voice profiles live at
~/.voice-humanizer/voices/. Current profiles:
luca-voice-hermesprompting— short commands, no fluff, high contractionsluca-email-voice— analytical direct, casual-professional, evidence-first
Workflow: extract voice once → humanize forever with voice-humanizer.
Em dash policy
Hard constraint: zero em dashes (—) or en dashes (–) in final output. Replace with periods, commas, colons, or restructure the sentence. Numeric/date ranges are the only allowed exception, and even those should use "to" or a hyphen when natural. No exceptions.
Quick Anti-AI Rewrite Rules
When no tool is available and you need to humanize inline:
- Use "is" and "has" — "serves as" is pretentious
- One qualifier per claim — don't stack hedges
- Name sources or drop the claim — no "experts say"
- End with something specific — not "the future looks bright"
- Vary sentence rhythm — short. Then longer. Fragment.
- Have opinions — react to facts, don't just report them
- Cut filler: "In order to" → "to", "Due to the fact that" → "because", "It is important to note that" → (just say it)
- Remove chatbot artifacts: "I hope this helps!", "Great question!", "Let me know if..."
- Let some mess in — perfect structure feels algorithmic
- Read aloud — if it sounds like a press release, rewrite it
- Zero em dashes — hard constraint. Replace — with . or , or restructure. No exceptions.
Canonical Example: AI → Human
This is the transformation to aim for. Vague importance inflation → concrete specifics. No-personality boosterism → opinionated, nuanced prose with varied rhythm.
Before (AI-sounding, score ~85):
Great question! Here is an overview of sustainable energy. Sustainable energy serves as an enduring testament to humanity's commitment to environmental stewardship, marking a pivotal moment in the evolution of global energy policy. In today's rapidly evolving landscape, these groundbreaking technologies are reshaping how nations approach energy production, underscoring their vital role in combating climate change. The future looks bright. I hope this helps!
After (human, score ~15) — note what changed:
Solar panel costs dropped 90% between 2010 and 2023, according to IRENA data. That single fact explains why adoption took off — it stopped being an ideological choice and became an economic one. Germany gets 46% of its electricity from renewables now. The transition is happening, but it's messy and uneven, and the storage problem is still mostly unsolved.
What the rewrite did:
- Named a real source (IRENA), real number (90%, 46%), real country (Germany)
- Short punchy opening ("Solar panel costs dropped 90%") instead of chatbot greeting
- "messy and uneven" — opinion and nuance instead of boosterism
- "storage problem is still mostly unsolved" — ends with tension, not "the future looks bright"
- Sentence rhythm: long (26 words) → short (6 words: "The transition is happening") → long
- Zero Tier 1/2 vocabulary. Zero filler. Zero chatbot artifacts.