Papertowel Linter Removes AI Code Fingerprints

Communities shun AI-touched code, even when it shines. Enter papertowel, the linter that erases those damning fingerprints. Genius? Or just the dev world's latest arms race?

Papertowel: The Linter Wiping AI Slop From Your Code — theAIcatchup

Key Takeaways

  • Papertowel scrubs AI fingerprints like slop vocab and cookie-cutter docs to bypass biased reviewers.
  • Built with ironic AI assistance, it highlights dev community hypocrisy on code provenance.
  • Expect an arms race: detectors vs. scrubbers, echoing early compiler skepticism.

Everyone figured AI-assisted code would get a fair shake if it worked—ship it, iterate, done. Right? Wrong. Corners of the dev world turned provenance into a purity test, nuking solid patches because they ‘look AI-generated.’

Papertowel flips the script. Built by a dev fed up with the hypocrisy, it’s a linter that hunts down and erases those dead giveaways: the slop words, the over-commented obviousness, the identical README skeletons popping up like weeds.

Here’s the thing—this isn’t just a gimmick. It’s a scalpel slicing through the architectural rot in how we judge code. Not by function, but by forensic fantasy.

Some communities have decided that how code was written matters more than whether it works.

That line from the tool’s creator nails it. Stack Overflow copy-pastes? Fine. Half-baked blog rips? Welcome. But LLM output? Heresy.

How Papertowel Spots the AI Slop

Short version: scan, scrub, ship.

Run papertowel scan . and it flags the fingerprints—words like “strong,” “use,” “utilize” clustering like guilty confetti. Comments restating the obvious, e.g., // Helper function to calculate the sum of two integers above a function called add. READMEs with emoji headers, checkmark lists, that relentless “Getting Started → Prerequisites → Installation” march.

Even metadata sins: perfect CONTRIBUTING.md and SECURITY.md in commit zero. It’s pattern-matching via TOML rules—regex with replacements, file-type scoped. No Rust wizardry needed to tweak.

[[rules]]
name = "slop-utilize"
pattern = '\butilize\b'
replacement = "use"
applies_to = ["*.rs", "*.go", "*.ts"]
severity = "medium"

Then papertowel scrub . --dry-run to peek before committing. Wringer mode for git history comes later—humanizing commits without the trace.

But why does this work? LLMs don’t invent; they regurgitate the median of training data. That median? Product-manager-speak, boilerplate bliss. Papertowel’s recipes (open for PRs) evolve as detectors do.

A dense dive: imagine the stylistic graph. Human code sprawls—idiosyncratic vars, terse comments, quirky READMEs reflecting the dev’s mood. AI? A bell curve of bland. The linter shifts your code off that curve, injecting variability without touching logic.

It’s architectural judo. Not hiding flaws, but neutralizing bias.

Why Do Dev Communities Obsess Over AI Provenance?

Look. We’ve been here before—90s code style wars, where tabs vs spaces became tribal markers. K&R braces? Exile. Now it’s AI detectors as the new flamewars.

The creator calls it out: “The failure mode isn’t ‘a robot touched it.’ It’s ‘the human didn’t understand or verify what they shipped.’” Spot on. Yet forums devolve into detector demos, ignoring if the patch fixes the bug.

My unique angle? This echoes the Vim vs Emacs schism, but weaponized. Early open source thrived on style guides enforcing consistency—now inconsistency proves ‘humanity.’ Papertowel exploits that: by randomizing style, it forces reviewers back to semantics. Bold prediction: within a year, top projects quietly integrate scrubbers, sparking a contribution boom as AI lowers barriers for non-elites.

Corporate PR spin? Nah, this is indie—cargo install papertowel, no VC fluff. Irony drips: AI built the AI-hider. “The recursive self-reference is the point,” says the maker. Leaning in hard.

Is Papertowel Cheating—or Evolution?

Cheating? Only if you think tools are taboo. GCC ‘cheats’ by compiling; git ‘cheats’ history. This is tool use, full stop.

Dig deeper: detectors fail on quality anyway. They flag style, not bugs. A human pasting SO slop flies; AI version gets torched. Papertowel equalizes—verify, understand, ship.

One punchy caveat. Over-scrub, and you risk homogenizing toward anti-AI patterns. But recipes stay open-source; community tunes it.

And the git wringer? Teases commit messages that sound less robotic—less “Implemented comprehensive solution,” more “Fixed the damn thing.”

Why Does Papertowel Matter for Open Source?

Gatekept projects starve for contribs. Newbies, time-strapped maintainers—they hit AI, polish, submit. Rejected on ‘smell.’

This changes the game. Stealth assistance means more eyes on code, faster fixes. Architectural shift: provenance fades, quality reigns.

Critique time—the maker’s right, but underplays arms race. Detectors evolve (hello, GitHub Copilot flags). Scrubbers counter. Winners? Projects that review code, not origins.

Try it. cargo install papertowel. Scan your repo. Grin at the slop unearthed.

**


🧬 Related Insights

Frequently Asked Questions**

What is papertowel and how does it work? Papertowel is a command-line linter that scans code for AI stylistic fingerprints—like buzzwords and boilerplate—then replaces them via configurable rules. Run scan to detect, scrub to fix.

Does papertowel hide bad AI code? No—it only cleans style. You still verify logic and quality; it’s no excuse for untested slop.

Can I contribute new AI detection rules? Yes, via PRs to recipes in TOML. No Rust needed—pure pattern files.

James Kowalski
Written by

Investigative tech reporter focused on AI ethics, regulation, and societal impact.

Frequently asked questions

What is papertowel and how does it work?
Papertowel is a command-line linter that scans code for AI stylistic fingerprints—like buzzwords and boilerplate—then replaces them via configurable rules. Run scan to detect, scrub to fix.
Does papertowel hide bad AI code?
No—it only cleans style. You still verify logic and quality; it's no excuse for untested slop.
Can I contribute new AI detection rules?
Yes, via PRs to recipes in TOML. No Rust needed—pure pattern files.

Worth sharing?

Get the best AI stories of the week in your inbox — no noise, no spam.

Originally reported by Dev.to

Stay in the loop

The week's most important stories from theAIcatchup, delivered once a week.