Skip to content
Back to skills

Dw Unslop

ASecurity

Cut the AI tells out of text a human will read — a PR body, a commit body, a release note — without flattening it into something voiceless. Refuses agent-facing artifacts by name. Explicit-invoke only.

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 19, 2026
ai-agentsgosqlgitdatabase

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 19, 2026

npx -y skills add dominikwozniak/dw-solo-skills --skill dw-unslop --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Dw Unslop?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Dw Unslop
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/dominikwozniak-dw-unslop/badge)](https://www.skillsdirectory.com/skills/dominikwozniak-dw-unslop)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: dw-unslop
description: >-
  Cut the AI tells out of text a human will read — a PR body, a commit body, a release note — without
  flattening it into something voiceless. Refuses agent-facing artifacts by name. Explicit-invoke only.
argument-hint: "bare takes the change's PR and commit bodies · a path or pasted text narrows it"
disable-model-invocation: true
---

# dw-unslop — the last pass before a human reads it

The only skill here that edits wording. Everything else in the lane writes for an agent, where density
is the point; this one runs over the few things a person actually reads, where the patterns that mark
text as machine-written spend the reader's attention before the content gets any.

Two failures, not one. The obvious one is slop — puffery, hedging, the vocabulary. The other is
over-correction: prose sanded down until it has no opinion and no rhythm, which reads as generated just
as fast. Step 3 is there for the second one.

## What it reads and writes

Reads whatever the argument names: empty takes the open change's PR body and the commit bodies on its
branch, a path takes that file, pasted text takes itself. Writes the rewritten text — into a tracked
file only after you have seen the diff — and **no `.ai/` artifact of its own**.

**It refuses, by name:** any `SKILL.md`, `AGENTS.md` / `CLAUDE.md`, `docs/agents/*`,
`docs/decisions/*`, `CONTEXT.md`, `CHANGE.md`, `HANDOFF.md`, `.ai/backlog/*`, and any `## Gotchas`
block. Every one of those is written for an agent rather than a person — some loaded every session,
some only when a router points at them — so a sentence trimmed out of one is an instruction a later
session no longer gets, and nothing is watching to notice. Name the file, give the reason in one line,
stop — never counter-offer a lighter touch on the same file.

## Workflow

### 1. Scan

Read the text against `references/patterns.md`: 31 numbered rules in seven groups, each written as an
edit rather than a flag. Note which numbers fire — step 4 reports them.

### 2. Rewrite

Preserve the meaning and match the register the text was aiming at. A PR body is not an essay: the fix
for puffery there is the fact the puffery stood in for, not livelier puffery. Where a rule fires but
the rewrite would change what the sentence **claims**, leave it and say so. The claim is the author's.

### 3. Don't flatten it

Cutting patterns is half the job. Sterile is its own tell, so the pass has to put something back:

- **Keep the opinion.** A sentence that judges beats a sentence that lists. "The generator is not worth
  two skills" carries more than "there are trade-offs here."
- **Vary the rhythm.** One short sentence. Then one that takes its time, because the thought it is
  carrying actually needs the room. Uniform sentence length is the most reliable machine tell there is.
- **Keep a specific detail.** A number, a filename, a `file:line`. Specificity is what slop cannot fake.
- **Let some structure stay uneven.** Perfect parallelism looks generated — three bullets over material
  that has four things in it is rule 10 firing.

**This step is what stops the skill becoming a length optimiser.** An agent told to tighten prose
optimises for length, because length is the one property it can measure — and it pays for the shorter
file out of whatever it could not: a flag dropped from a command that still reads like a command, the
"why" cut from under a rule that kept its "what". No format check sees that bill. Shorter is not the
goal. Less slop is.

### 4. Report what fired

Show the rewritten text and name the rules by number, one line each. On a tracked file, **stop for
approval before writing** — the diff is the part worth reading, and a wording pass applied unseen is
how a claim quietly changes owner.

## The two tests

The catalog is patterns to recognise. These two are the algorithm, and they catch the sentences no list
will — apply them first, because both are deletions and a deleted sentence needs no rewrite:

- **The restatement test.** Try to restate the sentence as a concrete instruction, a fact or a number.
  If you cannot, it names a feeling rather than a thing, so cut it. "The database stays close at hand"
  fails; "`.toSQL()` returns the exact string sent to the database" passes.
- **The portability test.** If the sentence would read identically in another project's docs, it says
  nothing about this one. Cut it. This is the test that kills the well-formed paragraph a reader nods
  along to and learns nothing from.

## References

- `references/patterns.md` — the numbered catalog, kept at its upstream numbers so "rule 16" means the
  same thing in a review here and in the plugin it came from. Two rules are deliberately softened
  there, each with the reason on its own line.

**Next:** `dw-land`, which owns the PR body; a commit body about to be written follows `## Git conventions`.

$ARGUMENTS

Files in this skill

  • SKILL.md4.8 KB
  • references/patterns.md6.9 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.