Skip to content
Back to skills

Unslop

ASecurity

Cut AI tells from prose, in French or English. Use for docs, READMEs, MR descriptions, tickets, Slack messages, blog posts, any non-code text that should read like a person wrote it. Triggers: "unslop", "humanize", "dé-IA ce texte", "ça sonne IA", "rends ça naturel", "make this sound human", "clean up this writing". Applies while drafting as well as to existing text.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 11, 2026
developmentgogitapiperformance

Works with

  • cursor
  • cli
  • api

Security analysis

A100/100

Scanned October 11, 2026

npx -y skills add Greg-Klein/implementation-factory --skill unslop --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Unslop?

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

Security grade badge for Unslop
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/greg-klein-unslop/badge)](https://www.skillsdirectory.com/skills/greg-klein-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: unslop
description: >-
  Cut AI tells from prose, in French or English. Use for docs, READMEs, MR descriptions, tickets,
  Slack messages, blog posts, any non-code text that should read like a person wrote it.
  Triggers: "unslop", "humanize", "dé-IA ce texte", "ça sonne IA", "rends ça naturel", "make this
  sound human", "clean up this writing". Applies while drafting as well as to existing text.
---

# Unslop

Edit text to remove AI patterns. Adapted from poteto's `unslop` (cursor/plugins, pstack), extended
to French and to the house rules below.

When a contract fixes the output format (headings, table columns, JSON keys, verdict tokens, commit
prefixes, required language), keep that format exactly and apply these rules to the sentences.

## Process

1. Identify the register: technical (ticket, MR, doc), conversational (Slack), editorial (blog,
   thread).
2. Scan for the house rules, then the patterns below.
3. Rewrite. Preserve meaning, facts, links, code identifiers, the language of the source and its
   intended tone. Never add a claim, a number or an opinion the source does not support.
4. Self-audit: "What still makes this obviously AI generated?" Fix the remaining tells.
5. Return the rewritten text. List the main changes only if asked.

Rule numbers are stable ids. A removed rule leaves a gap.

## House rules (non-negotiable)

- **H1. No em-dash (`—`) or en-dash (`–`).** Use a full stop, a comma, parentheses, or a colon
  before a list. A Markdown bullet `-` is fine.
- **H2. No counterbalancing.** Never « ce n'est pas X, c'est Y », « il ne s'agit pas de X mais
  de Y », « moins X que Y », « non pas X, plutôt Y », "not just X, but Y". State Y directly.
- **H3. No inclusive writing in French.** No middle dot, no « celles et ceux », no doublets.
  Generic masculine or a neutral wording.
- **H4. Quotes.** Guillemets « » with spaces in French text, straight quotes in English text and
  in code. No curly quotes.

## Patterns to detect and fix

### Content

3. **Superficial participle tails.** « ..., permettant ainsi de », « ..., garantissant »,
   « ..., offrant », "highlighting...", "ensuring...", "showcasing...". Delete, or turn it into a
   sentence with a real consequence.
4. **Significance inflation and promotion.** « joue un rôle clé », « au cœur de », « s'inscrit
   dans une démarche », « robuste », « fluide », « intuitif », « de pointe », "pivotal moment",
   "testament to", "seamless". State what happened, with a measurable description.
5. **Vague attributions.** « Les experts s'accordent », « de nombreux utilisateurs », "Experts
   believe". Name the source or delete.

### Language

7. **AI vocabulary.**
   - FR: crucial, essentiel, primordial, optimiser, levier, enjeu, écosystème (abstrait), paysage
     (abstrait), véritable, incontournable, fluidifier, booster, plonger dans, « en termes de »,
     « au niveau de » (non spatial).
   - EN: additionally, crucial, delve, enduring, enhance, foster, garner, interplay, intricate,
     landscape, pivotal, showcase, tapestry, testament, underscore, vibrant.
   Replace with plain words.
8. **Fancy ways to say "is".** « se positionne comme », « constitue », « fait office de »,
   « représente », "serves as", "stands as", "boasts". Write « est » / « a », "is" / "has".
10. **Rule of three.** Forcing ideas into groups of three. Use the natural number.
11. **Synonym cycling.** « le composant / l'élément / le module » for the same thing. Pick one term
    and repeat it.
12. **False ranges.** « de X à Y » where X and Y are not on a scale. List the items.
34. **Nominalisation.** « procéder à la mise en place de » becomes « mettre en place »,
    « effectuer une vérification » becomes « vérifier ». Prefer the verb.
35. **Connector stacking.** « De plus, », « Par ailleurs, », « En outre, », « Ainsi, »,
    « En effet, » opening sentence after sentence. Delete most of them, the order carries the
    logic.

### Style

14. **Colon overuse.** Fine before a list or an example. Not as a mid-sentence hinge or a fake
    reveal (« Le résultat : une app plus rapide. »). Write the sentence.
15. **Boldface overuse.** Don't bold every term. Bold at most what the reader must not miss.
16. **Inline-header lists.** The tell is a bold label and colon that restates the line:
    « **Performance :** la performance s'améliore... ». Convert to prose. A bold lead-in that ends
    in a period, names the item and is followed by new detail is fine.
17. **Title case headings.** Use sentence case.
18. **Decorative emojis.** Remove from headings and bullets.
36. **Over-structuring.** Headers and bullets around three sentences of content. Make it a
    paragraph.

### Communication artifacts

20. **Chatbot phrases.** « Voici », « Bien sûr ! », « N'hésitez pas à », « J'espère que cela vous
    aide », « Vous l'aurez compris », "Let me know if...", "Found the smoking gun!". Remove.
22. **Sycophantic tone.** « Excellente question ! », "You're absolutely right!". Respond directly.

### Filler

23. **Filler phrases.** « afin de » / « dans le but de » become « pour », « du fait que » becomes
    « parce que », « il est important de noter que » and « force est de constater que » get
    deleted. "In order to" becomes "To".
24. **Excessive hedging.** « pourrait potentiellement éventuellement » becomes « peut ». One hedge
    per claim, only when the uncertainty is real.
25. **Generic conclusions.** « En somme », « En définitive », « L'avenir s'annonce prometteur ».
    End on the last fact, decision or next step, or just stop.

### Jargon

26. **Abstract metaphor nouns.** Substrate, vector, paradigm, north star, flywheel, endgame,
    scaffolding (as metaphor), « socle », « brique », « pierre angulaire », « fer de lance »,
    « boussole ». Pick the concrete word: « socle » becomes « base », « brique » becomes
    « composant » or « module ».

### Plain speech

27. **Say what it does, not how it feels.** « une expérience plus fluide » names a feeling. Name
    the mechanism or a number: « la liste se charge en une requête au lieu de douze ». If the
    sentence could appear unchanged in another project's docs, it says nothing about this one.
    Cut it.
28. **Shorten or split dense sentences.** If the reader has to backtrack, split or drop clauses.
    One idea per sentence.
29. **Active voice.** « les requêtes sont validées » becomes « le compilateur valide les
    requêtes ». Passive only when the actor is unknown or irrelevant.
30. **Cut adverbs, or use a stronger verb.** « améliore significativement » becomes the measured
    delta.
31. **Prefer the plain word.** « utiliser » over « exploiter » / « tirer parti de », « aider » over
    « faciliter », « nombreux » over « pléthore de », « si » over « dans l'éventualité où ».
32. **Mannered prose.** Aphorisms, rhetorical fragments for effect, personified code (« le plan le
    porte »), figurative verbs. Say it literally.
33. **Over-compression.** Dropped articles, verbless fragments, arrows and abbreviations the
    reader has to decode. « Date invalide → exit 2, pas d'écriture » becomes « Le parseur rejette
    une date invalide, sort avec le code 2 et n'écrit rien. »

## Example

Before:

> Cette nouvelle fonctionnalité joue un rôle clé dans l'amélioration de l'expérience utilisateur.
> Ce n'est pas seulement un gain de performance — c'est une véritable refonte, permettant ainsi
> une navigation plus fluide et intuitive. En somme, une avancée majeure.

After:

> La liste de conversations se charge maintenant en une requête au lieu de douze.

(If the source has no numbers, do not invent them. Keep the claim plain.)

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.