unslop
Skill0 starsChanged 2 months agoMITView on GitHub
Use this skill to strip the AI tells out of any prose — "unslop this", "this reads like AI wrote it", "make it sound human" — and before shipping a README, a doc, a wiki note, a PR description or a commit message. A catalog of the patterns that mark machine-written text, what to replace each with, and the wikilink hazards that make editing a wiki note different from editing a file.
197 other projects use a version of this, 142 of them edited.
Adopted by
Most recently taken up by
- alastairlundy/skillsedited, first seen Nov 8, 2026
- sanjaibalajee/skillstheir own version, first seen Nov 8, 2026
- ku5ic/claude-kittheir own version, first seen Nov 8, 2026
- augchan42/inkstoneedited, first seen Nov 8, 2026
- caidanw/skillsedited, first seen Nov 8, 2026
- runkids/my-skillstheir own version, first seen Nov 8, 2026
Used with
Projects with it also use principle-never-block-on-the-human, greploop-apps and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
jaydubya818Skillprinciple-never-block-on-the-human
Apply when safe reversible implementation details can proceed inside scope.
Also in 45 projects that use this
jaydubya818Skillgreploop-apps
Run greploop through @greptile-apps when the normal trigger rejects a large PR. Use only with the companion greploop skill.
Also in 5 projects that use this
ianclearySkillprinciple-explain-the-number
Apply before you trust, report, or act on a number you measured: a speedup, a regression, a throughput, a latency, or an eval result. Find what limits it, and rule out that it measured something other than the work you think.
Also in 30 projects that use this
bnemaSkillsetup-pstack
Configure which Pi models pstack uses per role. Detects available provider/model specs and writes pstack's user configuration. Use for /setup-pstack, "configure pstack models", or changing pstack model choices.
Also in 26 projects that use this
ianclearySkillpoteto-help
Guides users through pstack setup, /poteto-mode, and picking the skill, playbook, or principle for a task. Type /poteto-help with a question.
Also in 15 projects that use this
- +7 more from jaydubya818
Other versions197 projects use a version of this.
Word for word · 0
None found.
Edited · 142
- tester-army/e2e★ 13k43% same
- jaredpalmer/kev★ 9.8k37% same
- backnotprop/pstack★ 3.8k36% same
- michaelshimeles/rstack★ 1.4k42% same
- michaelshimeles/skills★ 1.4k42% same
- VladSez/easy-invoice-pdf★ 1.1k37% same
- moeru-ai/xsai★ 66736% same
- chinmay-sawant/gopdfsuit★ 60740% same
- open-telemetry/semantic-conventions-genai★ 52843% same
- pnpm/pnpm.io★ 31443% same
132 more not listed
Wrote their own version · 55
- heydamir/unslop★ 12ksame name
- Silo-Server/silo-server★ 899same name
- nodetool-ai/nodetool★ 615same name
- mshumer/unslop★ 551same name
- mxyhi/ok-skills★ 511same name
- theclaymethod/unslop★ 412same name
- savannahfeder/agentbox★ 376same name
- Sma1lboy/rove★ 184same name
- MohamedAbdallah-14/unslop★ 182same name
- asavvin-pixel/unslop★ 61same name
45 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository5 other files it gives its agents.
- broSkill
- campaign-deliverySkill
- grill-with-wikiSkill
- mission-commandSkill
- technical-writingSkill
The file
We split this skill into the rules it gives an agent
11 rules. 4 are common, 5 are distinctive, and 2 are very specific to this project.
4
Common
Most of the 193 edited versions we read keep these.
5
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 24
Add voice (next section).
- Distinctive: line 26
If the target is a wiki note, run the wiki checks before and after.
- Distinctive: line 64
If not, cut it and state the true half plainly: "X is what solving this properly looks like."
- Common: line 95
Boldface overuse: Don't bold every proper noun or acronym.
- Common: line 101
Title case headings: Use sentence case.
- Common: line 102
Decorative emojis: Remove from headings and bullets.
- Distinctive: line 130
When you retire a new one, add it to this list with its replacement.
- Distinctive: line 137
Ask what the sentence tells the reader to do or know, then write that.
- Common: line 140
Shorten or split dense sentences: If the reader has to backtrack to parse it, break it in two or drop a clause.
- Very specific: line 178
Do not hand-fix tables, escaping or curly quotes in a wiki: run awt fmt (see wiki-docs).
- Very specific: line 179
After a bulk pass, verify the graph rather than the text — foam lint and a grep -c '\[\[' count before and after.
“Common” is measured: kept by at least 6 in 10 of the 193 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Unslop
Edit text to remove the patterns that mark it as machine-written, and put a voice back in.
This skill owns the slop catalog. Other skills point here rather than restating it —
technical-writing owns document structure and sentence craft and defers to this file for the
pattern list.
This skill runs forked (context: fork). It has no view of the conversation that invoked it —
only the catalog below and whatever the invocation names. Point it at a specific file or paste the
text; do not rely on it inferring "what we were just discussing."
Process
- Scan for the patterns below.
- Rewrite. Preserve meaning, match the intended tone.
- Add voice (next section).
- Self-audit: "what makes this obviously AI generated?" Fix what is left.
- If the target is a wiki note, run the wiki checks before and after.
Adding voice
Removing patterns is half the job. Sterile, voiceless writing is just as obvious as flowery writing.
- Have opinions. React to the facts instead of listing pros and cons at equal weight.
- Vary rhythm. Short sentences. Then longer ones that take their time and carry a fact with its condition attached. Mix them on purpose.
- Acknowledge complexity. "Impressive, and also kind of unsettling" beats "impressive".
- Use "I" when it fits. First person is not unprofessional.
- Let some mess in. Perfect structure looks machine-made.
- Be specific. Not "this is concerning" but "there is something unsettling about agents churning away at 3am".
Voice is mode-dependent. A reference table, an API listing or a wiki note carrying
type: referencestays dry on purpose: describe, do not persuade. The voice rules apply to prose that explains, argues, or introduces. Applying them to a lookup table is its own kind of slop.
Patterns to detect and fix
Content
- Puffery. "pivotal moment", "testament to", "evolving landscape", "setting the stage for", "indelible mark", "deeply rooted". Cut it, state what happened.
- Name-dropping. Listing outlets, companies or tools without context. Pick one, say what it did.
- Superficial -ing phrases. "highlighting…", "ensuring…", "reflecting…", "showcasing…", "fostering…". Delete, or expand into a real claim with a source.
- Promotional language. "nestled", "vibrant", "breathtaking", "groundbreaking", "renowned", "stunning", "must-visit". Describe neutrally.
- Vague attributions. "Experts believe", "Industry reports suggest", "Some critics argue". Name the source or delete the sentence.
- Formulaic challenges. "Despite challenges, X continues to thrive." Replace with the facts.
- False-contrast correction. "X is not a compromise; it is what solving this properly looks like." Posing a wrong reading nobody held, then correcting it, so an ordinary claim gets the shape of a reveal. Same move causally: "not because it is hard, but because it has not been argued." The tell is that the strawman costs nothing to assert — check whether anyone would actually have thought the denied half, whichever grammar it takes ("is not A", "not because A"). If not, cut it and state the true half plainly: "X is what solving this properly looks like."
- Parallel-absolute cadence. "Every note answers one of three questions. None of them is a status update." Universal quantifiers (every / none / all) reached for because the rhythm is punchy, not because the claim is universal. If the "every" or "none" is not load-bearing — the sentence says the same thing without it — drop the quantifier and state the one true fact.
- Self-congratulatory tag. "...which is the point." Tacked on to frame an observation as a small triumph of the design, regardless of whether the observation is actually surprising. State why it matters, if it does, or drop the tag.
Language
- AI vocabulary. Additionally, crucial, delve, enduring, enhance, fostering, garner, interplay, intricate, landscape (abstract), pivotal, showcase, tapestry (abstract), testament, underscore, vibrant. Use the plain word.
- Fancy ways to say "is". "serves as", "stands as", "boasts", "features". Say "is" or "has".
- "Not just X, but Y." State the point directly.
- Rule of three. Forcing ideas into groups of three. Use the number there actually is.
- Synonym cycling. Protagonist, main character, central figure, hero in one paragraph. Pick one and repeat it. In technical prose this is worse than repetitive — two names read as two things.
- False ranges. "from X to Y" where X and Y sit on no shared scale. List the items.
Style
- Em dash discipline. An em dash per paragraph is voice. Three is a tell, and a dash joining two independent clauses is usually a sentence that wanted to end. Never swap one for parentheses to dodge the rule — that trades one tell for another. Do not convert dashes wholesale across a document you are only lightly editing; the churn is bigger than the fix.
- Colon overuse. A colon before a list or an example is fine. As a mid-sentence connector it adds nothing: "If you're coming from traditional automation: instead of registering handlers, you describe conditions" says more without the comparison framing — "Describing when the scheduler should fire works best as plain English."
- Boldface overuse. Don't bold every proper noun or acronym. Bold marks the claim of a paragraph, not its nouns.
- Inline-header lists. The tell is a bold label and colon that restates the line: "Performance: Performance improved…". Convert those to prose. A bold lead-in that ends in a period, names the item, and is followed by genuinely new detail ("Schema in TypeScript. Tables live in one file.") is fine, and is the house pattern.
- Title case headings. Use sentence case.
- Decorative emojis. Remove from headings and bullets.
- Curly quotes. Replace with straight quotes. Watch for smart-quote substitution sneaking back in through copy-paste.
Communication artifacts
- Chatbot phrases. "I hope this helps!", "Let me know if…", "Of course!", "Certainly!", "Found the smoking gun!" Remove.
- Cutoff disclaimers. "While specific details are limited…" Find the source or drop the claim.
- Sycophantic tone. "Great question! You're absolutely right!" Respond directly.
Filler
- Filler phrases. "In order to" is "To". "Due to the fact that" is "Because". "It is important to note that" is nothing.
- Excessive hedging. "could potentially possibly be argued that it might" is "may".
- Generic conclusions. "The future looks bright." State the specific plan, or stop.
Jargon
Abstract metaphor nouns. Substrate, wedge, vector, locus, vantage, nexus, primitive (as a noun), harness (as a metaphor), surface (as in "API surface"), bedrock, scaffolding (as a metaphor), modality, paradigm, gold-plating, ratchet (as a metaphor), evacuate (for moving code), endgame, north star, flywheel. Each has a plainer concrete word: "substrate" is "base", "wedge in" is "add", "vector" is "way", "gold-plating" is "more than the job needs", "ratchet" is the mechanism's real name or "a limit that only tightens", "evacuate" is "move out", "endgame" is "the last phase". Pick the concrete word.
When you retire a new one, add it to this list with its replacement. This catalog is the record.
Plain speech
- Say what it does, not how it feels. "the database stays close at hand", "SQL you can read",
"types that follow your schema" all name a feeling. The fix names the mechanism or a number:
"
.toSQL()returns the exact string sent to the database", "a column rename fails the build". Ask what the sentence tells the reader to do or know, then write that. If you cannot restate it as an instruction, a fact or a number, cut it. One more check: a sentence that could appear unchanged in another project's docs says nothing about this one. - Shorten or split dense sentences. If the reader has to backtrack to parse it, break it in two or drop a clause. One idea per sentence.
- Active voice. Catch "is/are/was/were + past participle" and name the actor: "queries are validated" becomes "the compiler validates queries". Passive is fine when the actor is unknown or genuinely beside the point.
- Cut adverbs, or use a stronger verb. "runs quickly" is "is fast", or the number. "significantly improves" is the measured delta. An adverb propping up a weak verb means the verb is wrong.
- Prefer the plain word. "utilize" is "use", "leverage" is "use", "facilitate" is "help", "numerous" is "many", "in the event that" is "if". The fancier synonym is rarely clearer.
Editing a wiki note
A wiki note is a node in a link graph, not a document. Load wiki-docs before editing one — it
owns the storage mechanics and the wikilink rules, and the wiki's own meta/conventions.md wins
wherever it disagrees with this file. Five hazards belong to this skill, because they are caused by
rewriting prose:
Cutting a sentence can cut an edge. Rule 26 says delete the sentence that does no work. If that sentence carries the only
[[wikilink]]to a note, the deletion removes a graph edge — a backlink disappears, or a note becomes an orphan — and the text diff looks like a tidy-up. Before deleting any sentence containing[[…]], check whether that link exists elsewhere in the note. If it does not, keep the link and rewrite around it.
- Never rewrite inside
[[ ]]. The stem is an identifier, not prose. A stem that reads badly is amove_resourcejob, never an edit — renaming it by hand breaks every inbound link silently. - Never reach for
[[stem|label]]to fix grammar. Labels are banned inwiki-docsbecause a rename rewrites the target and keeps the stale label. Put the phrase in prose and the link beside it:Dashboards are tier 2 ([[two-tier-state]]). - Leave cross-wiki links alone.
[conventions](otherwiki:meta/conventions.md)is deliberate and looks broken. Converting one to a[[wikilink]]poisons the placeholder list permanently. - Front matter is prose too.
titleanddescriptioncollect slop like any sentence — "This note explores the evolving landscape of…".descriptionis one sentence saying what the note is about;titlematches the H1 exactly, so change both or neither. - Recorded uncertainty is not hedging. Rule 27 kills "could potentially possibly". It does not touch "these two sources disagree; unverified", which is a fact about the state of knowledge and is what a wiki is for. Cut the hedge, keep the open question.
Do not hand-fix tables, escaping or curly quotes in a wiki: run awt fmt (see wiki-docs).
After a bulk pass, verify the graph rather than the text — foam lint and a grep -c '\[\[' count
before and after. wiki-docs has the commands.
Lineage
Adapted from the unslop skill in pstack, by poteto (Lauren Tan) — MIT, cloned from
Benjamin-Connelly/cursor-plugins. Changed
here: the blanket em-dash ban became rule 16's discipline, since em dashes are house voice; voice is
scoped by document mode; and the wiki section is new.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

