Skip to main content
  • Work
  • Labs
  • Experience
  • About
Get in touch
  1. Labs/
  2. humanizer
View on GitHub
AI2026

humanizer

Rust-backed AI-writing humanizer skill. Detects 37 AI patterns, computes burstiness, and rebuilds text with voice. Zero-dep Rust scanner + agent skill for Claude Code, OpenCode, Cursor, Codex.

h

humanizer

A Rust-backed AI skill that strips AI-generated patterns from writing and rebuilds it with rhythm and voice.

Ships as a folder containing SKILL.md plus a zero-dependency Rust Cargo project for deterministic pattern detection. Works with Claude Code, OpenCode, Cursor, Codex, or any agent harness that can shell out.


Why Rust

Counting em dashes and measuring sentence-length variance are cheap compute but expensive tokens. The Rust scanner runs in milliseconds and emits exact offsets, so the LLM only spends tokens on the part only it can do: rebuilding voice.

Zero external crates. Stdlib only. Compiles on any Rust ≥ 1.70.


Install

Claude Code / OpenCode

# clone or copy the skill folder into your skills directory
cp -r humanizer ~/.claude/skills/

# one-time build
cd ~/.claude/skills/humanizer/scripts && cargo build --release

Any other agent

Drop the humanizer/ folder anywhere on disk. Point your agent at humanizer/SKILL.md. Build the binaries once:

cd humanizer/scripts && cargo build --release

This produces:

  • humanizer/scripts/target/release/humanize-detect
  • humanizer/scripts/target/release/humanize-metrics

Usage

Inside an agent

/humanizer "your AI-sounding paragraph here"
/humanizer --file draft.md --voice blunt
/humanizer --file draft.md --mode detect
/humanizer --file draft.md --mode edit --aggressive

Standalone CLI (no LLM)

echo "Let us delve into the intricate tapestry of modern web development." \
  | ./scripts/target/release/humanize-detect --pretty

Output:

# AI Pattern Report

Found 4 flagged spans. Verdict: em_dashes_present

## P7 — ai_vocab (3 hits)
  [7..12] "delve"
  [24..33] "intricate"
  [34..41] "tapestry"

## Metrics
  words:              12
  sentences:          1
  avg sentence len:   12.0 words
  stdev:              0.0
  burstiness:         0.000   (target >= 0.35)
  em dashes:          0       (target 0)
  ai_vocab_hits:      3       (target 0)
  passive ratio:      0.0%    (target < 25%)
  rule-of-three runs: 0

JSON for pipelines

./scripts/target/release/humanize-detect --file draft.md --json

Returns a machine-readable report you can feed back into an agent or CI.


What the scanner catches

Surface patterns (deterministic):

  • P7 — 80+ AI vocabulary words (delve, foster, leverage, realm, etc.)
  • P13 — any em dash (U+2014)
  • P1 — significance-inflation phrases (stands as a testament, etc.)
  • P3 — superficial -ing analyses (highlighting the importance of…)
  • P4 — promotional adjectives (renowned, cutting-edge, world-class)
  • P5 — vague attribution (many experts believe, studies have shown)
  • P22 — negative-parallelism constructions (not just X, but Y)
  • Metrics: burstiness, passive-voice ratio, rule-of-three runs, sentence-length distribution

What the LLM handles (semantic — see references/patterns.md):

  • notability name-dropping, hollow callbacks, balanced conclusions, hallucinated citations, perfect symmetry, grandiose scope claims, and 30+ more.

Project layout

humanizer/
├── SKILL.md                   # entry point for agents
├── README.md                  # this file
├── LICENSE
├── package.sh                 # build .skill archive
├── scripts/
│   ├── Cargo.toml
│   └── src/bin/
│       ├── detect.rs          # pattern scanner + metrics
│       └── metrics.rs         # sentence-length histograms
├── references/
│   ├── patterns.md            # all 37 patterns
│   ├── voices.md              # five voice profiles
│   └── vocabulary.md          # blacklist + replacements
└── assets/
    └── examples.md            # before/after rewrites

Packaging as .skill

./package.sh
# → humanizer-1.0.0.skill

A .skill file is a plain tarball of the folder. Extract anywhere.


Credit

Patterns catalog draws on:

  • Wikipedia's Signs of AI writing (via blader/humanizer)
  • Burstiness / perplexity rewrite framework (via Aboudjem/humanizer-skill)

This skill packages those concepts behind a Rust-based scanner for speed and determinism.


License

MIT. See LICENSE.

Previous

Tokamak

Tokamak screenshot

Next

Hadron

Hadron screenshot

© 2026 Michael Wong

Made with care in New York.

AboutGitHubLinkedIn