Blog...
A blog post is loading...
Jan 1, 2025
Loading…
A blog post is loading...
Jan 1, 2025
Loading…
The raw skill file, plus what it is actually for and the kind of cleanup it is meant to force before commit.
Apr 9, 2026
I posted a screenshot of my current deslop skill on X, and a few people asked for the exact file. The original post is here.
So this post is simple: the raw skill, unchanged, and then a short explanation of what I actually use it for.
This is the exact file as of April 9, 2026.
I use deslop at one very specific moment: after the change works and before I let it become durable in git.
It is not a planning tool. It is not there to help discover the solution. It is not a generic "clean this up" pass. It is the pass I run when the code is basically done and I want pressure on the last 10% of the diff.
What I want from it is pretty specific:
If deslop is finding product work, I used it too early. If it is deleting ceremony, restoring source of truth, and tightening the final story the PR tells, it is doing its job.
I also do not want one grand final reviewer. The whole point is parallel specialization. The current skill fixes that shape at 3 reviewers: rules and docs conformance, type safety and source of truth, and overengineering and simplification. While they run, the parent agent also runs pnpm -w lint:slop:delta locally.
The synthesis step is the important part. I do not want the most aggressive reviewer to win by default. I want a balanced read on what to keep, what to ignore, and what is actually worth changing before the commit text and PR text get updated.
The code usually works already. That is the point.
deslop is not there to save a broken implementation. It is there to pressure the shape of a nearly-finished one.
In the better traces, the mechanics are pretty consistent: same path-heavy context bundle to 3 fixed reviewers, each looking through a different lens, while the parent agent runs pnpm -w lint:slop:delta and waits to synthesize. The output I care about is not "more feedback." It is a smaller final diff.
More concretely, I want it asking:
That is why the traces should show sloppy code first. If the code is already clean, the tool has nothing to do.
The smallest kind of deslop fix is deleting a helper that only exists to make the code look more designed than it is.
Before:
After:
Same behavior. One less fake seam.
The other kind is more important: kill the custom protocol.
Before:
After:
Same capability. Less weirdness. Bootstrap stays local. The runtime goes back to boring.
That is what I want this skill doing before every commit. Not refactor theater. Not beautification. Just catching the parts of a diff that still feel invented, then stripping them out before they harden into the repo.