agentsclimarketplace

Scrub

Skill charliemarketplace/plainlang/skills/scrub

Rewrites any prose, in any domain, into Plain Language: marketing copy, tech docs, support replies, executive summaries, general writing. First it removes AI-isms and hollow filler (delve, it's worth noting, moreover, robust, seamless, leverage, unlock, empower, paradigm shift, "it's not X, it's Y" frames, hollow openers, the em dash). Then it enforces short sentences, active voice, one idea per sentence, and jargon defined on first use. It never touches code, data values, identifiers, or quoted material. Use whenever the user runs /scrub (or /plainlang:scrub), asks to "de-AI this", "plain language pass", "remove the AI-isms", or pastes text for a style cleanup. Two modes: REVIEW (flag issues, wait for confirmation) and AUTO (flag + immediately rewrite, triggered by an <auto> tag before the input).From its SKILL.md

Install
npx -y skills add charliemarketplace/plainlang --skill scrub

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

5.7 KB, as published. Nobody here has run it

/scrub, a generic Plain Language pass

Rewrites prose so a busy reader can read it once and get it. Domain-agnostic: the same rules apply to a landing page, a support reply, an executive summary, or a lab explainer. The rules live in references/plain_voice.md and the AI-ism list in references/aiisms.md. Read both before the first rewrite.

Two things happen on every run, in order:

  1. Remove AI-isms and hollow filler.
  2. Rewrite the surviving prose in Plain Language.

Two modes

DEFAULT: REVIEW mode

Read the whole input. Return a flagged list (categories A and B below), each item with the rule it breaks and a proposed rewrite. Do NOT rewrite the full piece yet. Wait for the user to confirm.

For a file input, also list each in-scope prose block by section heading and a short verbatim quote, so the user can approve or exclude blocks first.

AUTO mode

Triggered by <auto> before the input text or file path.

  1. Complete the REVIEW step and print the flagged list.
  2. Print in all caps: {{{ AUTO MODE INITIATED - THE REVIEW ABOVE IS APPLIED BELOW }}}
  3. Pasted text: print the full rewrite. File input: apply edits with the Edit tool per the scope guard below, then print a before/after list per block.
  4. Print the readability snapshot (format below).

Scope guard (always run first, including in REVIEW mode)

Protected: never rewrite, reword, or reformat

  • Code in any form: fenced blocks, inline spans, shell commands, config, SQL, anything inside <script> or <style>.
  • Every number, percentage, amount, date, unit, version string, and measurement. Rewrite the words around a value; never the value.
  • Identifiers: file paths, URLs, email addresses, hashes, IDs, API names, flag names, product SKUs. Never edit, never truncate.
  • Quoted material: blockquotes, direct quotations, citations, error messages, anything attributed to a person or a source. A quote stays byte-for-byte, even if it violates every rule.
  • Proper nouns exactly as written: product, company, person, and place names.
  • Template tokens ({{...}}, ${...}, %s) and placeholders.

If a block is ambiguous, treat it as protected. Leave it alone and flag it instead of guessing.

File edit safety

  • Use Edit, never Write, on an existing file. One prose block per edit.
  • Keep inline markup (<strong>, **bold**, links) attached to the words it wraps.

What to flag in review

A. AI-isms and hollow filler

See references/aiisms.md for the full list with replacements. Headlines: delve into, it's worth noting, moreover, furthermore, robust, seamless, leverage (verb), underscores (verb), unlock, empower, paradigm shift, navigating (metaphorical), game-changer, cutting-edge, deep dive, a testament to, tapestry, synergy, holistic. Hollow openers ("Great question", "Here's what's interesting", "In recent years", "In today's fast-paced world", "Let's dive in", "When it comes to"). The "it's not X, it's Y" contrast frame in all its variants. Passive voice used to dodge a claim.

B. Plain Language violations

  • Sentence over 25 words: quote it, give the word count, propose a split.
  • Two ideas in one sentence (watch for "but", "while", "although", a semicolon).
  • Passive voice with a known actor.
  • Noun cluster (3+ stacked nouns), e.g. "customer retention optimization strategy".
  • Nominalization: "make a determination" → decide.
  • Undefined jargon on first use, or an unexpanded acronym.
  • Synonym-swapping: the same concept called two different names anywhere.
  • Enumerable or comparative information trapped in a sentence instead of a list or table.
  • Paragraph over 6 sentences.
  • Rhetorical questions, direct reader address (outside genuine instructions), exclamation points, humor doing the job of substance.
  • A closer that reaches for a broad observation instead of stating the last fact.

Fidelity rules

The rewrite changes the words, never the claims.

  • Never change, round, or reorder a number, date, or name.
  • Never sharpen a hedge into a precise claim, or soften a claim into a hedge.
  • Never drop a caveat because it made the sentence long. Give it its own sentence.
  • Never add causation, evidence, or specifics the source didn't state.
  • If a source sentence is too tangled to tell what it claims, do not guess. Flag it as UNRESOLVED and ask.

Output format

REVIEW: one item per flag:

[A: filler "leverage"] paragraph 2
> "<quoted sentence>"
Why: <rule broken>
Fix: <proposed rewrite>

AUTO: flagged list → banner → rewrite → readability snapshot.

Readability snapshot (always, in AUTO):

CheckBeforeAfter
Word count
Average sentence length
Longest sentence (words)
AI-ism / filler hits
Passive constructions (named actor)

Where a mechanical count is possible, run the repo's own engine instead of estimating: node <repo>/eval/score.js --text <file> prints the same metrics the Stop hook uses.

Keep looking

Skills are one crate of 626,045. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.