Skip to content

Anti-slop

Out of the box, an assistant writes like an assistant. Anti-slop is a fixed set of rules you hand it so the tells go away.

Those tells are easy to spot once you know them: em-dashes, filler like robust and seamless, openers like it's worth noting that, the negate-then-affirm rhythm (this isn't X, it's Y). The rules ban them across every bit of prose the assistant produces, whether a vault note, a doc, a message, or a deliverable.

Default voice
With anti-slop

The tool is robust — seamless, even.

The tool holds up under load.

It's worth noting that this matters.

This matters.

This isn't a feature, it's a philosophy.

This is a philosophy.

What it bans

A behavior plugin: a fixed page of rules you wire into the assistant’s standing instructions, so it loads with every session. No code, no commands, no data, and it never touches the vault. The rules fall into four categories.

Punctuation

Typography that screams machine.

— em-dash
Words

Filler that pads instead of saying anything.

"robust"
Phrases

Throat-clearing openers and stock transitions.

"it's worth noting"
Rhetoric

Patterns and cadences that read as ChatGPT.

"not X, it's Y"

Install

Wire the rules at one of two scopes. Project scope reaches this repo only. User scope reaches every imp session in any directory, while plain claude stays untouched. The user-scope add promotes the copy the project add installed, so run the project add first (or pass --from <dir>). The matching remove is the off switch.

Project - this repo only edits CLAUDE.local.md
add imprnt plugin add anti-slop remove imprnt plugin rm anti-slop
User - every imp session, anywhere promotes the project copy to ~/.claude/imprnt/
add imprnt plugin add anti-slopimprnt global add anti-slop remove imprnt global rm anti-slop

Make the rules your own

To run your own register and banned words on top, copy the rules file into the private _personal/ folder, extend it, and wire that copy instead. The _ prefix keeps it out of the public gallery (and add plugins/_personal/ to .gitignore if you ever git-init the project).