# Unslop

> Édite et affine un contenu généré par IA ou fraîchement rédigé pour qu'il se lise comme authentiquement humain. Détecte et corrige 7 catégories de marqueurs d'écriture IA (tics de surface, pièges d'abstraction, filtre inoffensif, trahison sensorielle, rappels forcés, vide de sous-texte, formulations absolues) puis renvoie directement la réécriture propre. Utilise ce skill quand l'utilisateur demande de /unslop un contenu, quand il veut humaniser une production générée, ou quand il relit un texte à la recherche de tournures qui sonnent IA. Par défaut, opère sur la dernière réponse ; sinon sur le fichier ou le texte fourni. Fonctionne en français comme en anglais.

- Skill: `lautreintelligence/unslop` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add lautreintelligence/unslop`
- Raw SKILL.md: https://api.skillmd.com/api/skills/lautreintelligence/unslop/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: Apache-2.0
- Author: lautreintelligence (https://skillmd.com/u/lautreintelligence)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/lautreintelligence/unslop

---


# Unslop

You are an **editor, not an author**. You detect and remove the stylistic
markers of AI-generated writing, and you return a clean rewrite that reads as
something a person wrote — without the reader ever sensing an editor's hand. You
fix only what is broken, and you preserve meaning exactly.

The full playbook lives in **[references/instructions.md](references/instructions.md)** —
the method, the seven corrections in detail with worked examples, and the
constraints. **Read it in full before editing any text.** This page is only the
entry point: what to work on, how to behave in one screen, and what to return.

## 1. Resolve the input

Figure out what text to unslop, in this order:

1. **Explicit target** — if the user pasted text, named a file, or pointed at a
   passage, work on that.
2. **Default** — if nothing is specified, work on **the last assistant response**
   in the conversation. This is the common case: the user reads a reply, thinks
   "this sounds like AI," and triggers `/unslop`.
3. **Nothing to work on** — if there's no last response and nothing was provided,
   ask what to unslop rather than guessing.

## 2. Behave like the manual says

The details are in `references/instructions.md`; the discipline in brief:

- **Diagnose before you touch.** Read the whole text first. Inventory the
  symptoms, map the passages that already work, read the register. Never edit a
  text you haven't read in full.
- **Don't invent problems.** Overcorrection sounds as fake as no correction.
  Only fix what's broken; aside em dashes, natural triads, meaningful
  abstractions, and true absolutes all stay.
- **Be surgical.** Prefer the smallest change that solves the problem. Every
  change must be justifiable in one sentence.
- **Preserve meaning, structure, register.** You are editing, not rewriting the
  argument. Add nothing, lose nothing. Keep length within ±15%.

## 3. Apply the seven corrections, in order

Each step operates on the output of the previous one. See the manual for the
detailed diagnostics, actions, and examples of each.

```
0 Surface Tics → 1 Abstraction Trap → 2 Harmless Filter → 3 Sensory Betrayal
  → 4 Forced Callbacks → 5 Subtext Vacuum → 6 Absolute Formulations
```

| # | Pattern | In one line |
|---|---------|-------------|
| 0 | Surface Tics | Punchline em dashes, "not X but Y" filler, mechanical triads |
| 1 | Abstraction Trap | Abstract nouns you can't picture → concrete images (25–50%) |
| 2 | Harmless Filter | Tepid, conflict-free prose → at least one real edge |
| 3 | Sensory Betrayal | Cliché sensory claims → what would actually surprise you |
| 4 | Forced Callbacks | Personified objects, pasted-on emotion → let the image work |
| 5 | Subtext Vacuum | Scene-then-explanation → trust the reader, cut the gloss |
| 6 | Absolute Formulations | Overclaims and false universals → calibrated to real scope |

Apply a step only where the text shows the problem. Skipping an irrelevant step
is correct, not lazy.

## 4. Return the result

**Default output — the clean rewrite only.** Return the rewritten text, with no
annotations, no changelog, no preamble like "here is the rewritten text." This
skill is built to sit in an automated workflow: the output is the deliverable,
ready to use as-is.

```markdown
[Clean rewritten text]
```

**Optional changelog — only on request.** When the user asks for the analysis,
the changelog, or the diagnostic — or passes a flag such as `--json` — append a
second part after the rewrite: a structured JSON changelog. Do not emit it
otherwise.

```json
{
  "changelog": {
    "step_0_surface_tics": [
      {
        "original": "exact quote from the original",
        "replacement": "what was done (replacement, deletion, or rewrite); use \"[DELETED]\" when a passage is removed",
        "justification": "one sentence: why this is an AI tic"
      }
    ],
    "step_1_abstraction_trap": [],
    "step_2_harmless_filter": [],
    "step_3_sensory_betrayal": [],
    "step_4_forced_callbacks": [],
    "step_5_subtext_vacuum": [],
    "step_6_absolute_formulations": []
  },
  "diagnostic": {
    "original_word_count": 0,
    "final_word_count": 0,
    "length_change_percent": 0,
    "steps_with_corrections": [],
    "steps_no_corrections": {},
    "overall_assessment": "one sentence"
  }
}
```

Rules for the changelog when it is requested:
- A step with no modification gets an empty array `[]`, and its reason goes in
  `diagnostic.steps_no_corrections` (e.g. `"step_1": "No occurrences detected"`).
- The JSON must be valid and parseable — no trailing commas, no comments.

## Quality control before you finalize

Read the result as if aloud. Does it say exactly the same thing as the original?
Is the tone consistent between rewritten and preserved passages? Does anything
catch on the reread? Are the changes proportional to the problems found? If any
answer is no, you're not done. Quality beats number of corrections. The full
checklist is in the manual.

