/humanize
Strip AI writing patterns from user-facing text. Takes a file or pasted text and rewrites it to read like a human wrote it, without losing meaning or structure.
Why this exists
LLM output has recognizable tells — em dashes, stock phrases, promotional inflation, performed authenticity. Readers (and Google) notice. This skill catches those patterns and rewrites them.
When to use
- After
/content-gen, /landing-gen, /video-promo — polish the output
- Before publishing any user-facing prose (blog posts, landing pages, emails)
- When editing CLAUDE.md or docs that will be read by humans
- Standalone:
/humanize path/to/file.md
Input
- File path from
$ARGUMENTS — reads and rewrites in place
- No argument — asks to paste text, outputs cleaned version
- Works on
.md, .txt, and text content in .tsx/.html (string literals only)
Pattern Catalog
1. Em Dash Overuse (—)
The most obvious AI tell. Replace with commas, periods, colons, or restructure the sentence.
| Before |
After |
| "The tool — which is free — works great" |
"The tool (which is free) works great" |
| "Three features — speed, security, simplicity" |
"Three features: speed, security, simplicity" |
| "We built this — and it changed everything" |
"We built this. It changed everything." |
Rule: Max 1 em dash per 500 words. Zero is better.
2. Stock Phrases
Phrases that signal "AI wrote this." Remove or replace with specific language.
Filler phrases (delete entirely):
- "it's worth noting that" → (just state the thing)
- "at the end of the day" → (cut)
- "in today's world" / "in the modern landscape" → (cut)
- "without further ado" → (cut)
- "let's dive in" / "let's explore" → (cut)
Promotional inflation (replace with specifics):
- "game-changer" → what specifically changed?
- "revolutionary" → what's actually new?
- "cutting-edge" → describe the technology
- "seamless" → "works without configuration" (or whatever it actually does)
- "leverage" → "use"
- "robust" → "handles X edge cases" (specific)
- "streamline" → "cut steps from N to M"
- "empower" → what can the user now do?
- "unlock" → what's the actual capability?
Performed authenticity (rewrite):
- "to be honest" → (if you need to say this, the rest wasn't honest?)
- "let me be frank" → (just be frank)
- "I have to say" → (just say it)
- "honestly" → (cut)
- "the truth is" → (cut, state the truth directly)
3. Rule of Three
AI loves triplets: "fast, secure, and scalable." Real writing varies list length.
| Before |
After |
| "Fast, secure, and scalable" |
"Fast and secure" (if scalable isn't proven) |
| "Build, deploy, and iterate" |
"Build and ship" (if that's what you mean) |
| Three bullet points that all say the same thing |
One clear bullet |
Rule: If you find 3+ triplet lists in one document, break at least half of them.
4. Structural Patterns
Every section has the same shape:
AI tends to write: heading → one-sentence intro → 3 bullets → transition sentence. Real writing varies section length and structure.
Hedging sandwich:
"While X has limitations, it offers Y, making it Z." → Pick a side. State it.
False balance:
"On one hand X, on the other hand Y." → If one side is clearly better, say so.
5. Sycophantic Openers
- "Great question!" → (cut)
- "That's a fantastic idea!" → (cut, or say what's specifically good about it)
- "Absolutely!" → (cut if not genuine agreement)
- "I'd be happy to help!" → (just help)
6. Passive Voice / Weak Verbs
- "It should be noted that" → (cut, just note it)
- "There are several factors that" → name the factors
- "It is important to" → say why
- "This can be achieved by" → "Do X"
Process
Read the input — file path or pasted text.
Scan for patterns — check each category above. Count violations per category.
Rewrite — fix each violation while preserving:
- Technical accuracy (don't change code, commands, or technical terms)
- Structure (headings, lists, code blocks stay)
- Tone intent (if the original was casual, keep it casual)
- Length (aim for same or shorter, never longer)
Report what changed:
Humanized: {file or "pasted text"}
Changes:
Em dashes: {N} removed
Stock phrases: {N} replaced
Inflation: {N} deflated
Triplets: {N} broken
Sycophancy: {N} cut
Total: {N} patterns fixed
Before: {word count}
After: {word count}
If file path: write the cleaned version back. Show a diff summary.
If pasted text: output the cleaned version directly.
What NOT to change
- Code blocks and inline code
- Technical terms, library names, CLI commands
- Quotes from other people (attributed quotes stay verbatim)
- Numbers, dates, URLs
- Headings structure (don't merge or split sections)
- Content meaning — only rephrase, never add or remove ideas
Edge Cases
- Short text (<50 words): just apply stock phrase filter, skip structural analysis
- Already clean: report "No AI patterns found. Text looks human."
- Code-heavy docs: skip code blocks entirely, only process prose sections
- Non-English text: apply em dash and structural rules (they're universal), skip English stock phrases
1---2name: solo-humanize3description: Strip AI writing patterns from text — em dashes, stock phrases, promotional inflation, performed authenticity, rule-of-three lists. Use when user says "humanize this", "make it sound human", "strip AI patterns", "clean up the copy", or after /content-gen or /landing-gen produces output.4license: MIT5---6
7# /humanize
8
9Strip AI writing patterns from user-facing text. Takes a file or pasted text and rewrites it to read like a human wrote it, without losing meaning or structure.
10
11## Why this exists
12
13LLM output has recognizable tells — em dashes, stock phrases, promotional inflation, performed authenticity. Readers (and Google) notice. This skill catches those patterns and rewrites them.
14
15## When to use
16
17- After `/content-gen`, `/landing-gen`, `/video-promo` — polish the output
18- Before publishing any user-facing prose (blog posts, landing pages, emails)
19- When editing CLAUDE.md or docs that will be read by humans
20- Standalone: `/humanize path/to/file.md`
21
22## Input
23
24- **File path** from `$ARGUMENTS` — reads and rewrites in place
25- **No argument** — asks to paste text, outputs cleaned version
26- Works on `.md`, `.txt`, and text content in `.tsx`/`.html` (string literals only)
27
28## Pattern Catalog
29
30### 1. Em Dash Overuse (—)
31
32The most obvious AI tell. Replace with commas, periods, colons, or restructure the sentence.
33
34| Before | After |
35|--------|-------|
36| "The tool — which is free — works great" | "The tool (which is free) works great" |
37| "Three features — speed, security, simplicity" | "Three features: speed, security, simplicity" |
38| "We built this — and it changed everything" | "We built this. It changed everything." |
39
40**Rule:** Max 1 em dash per 500 words. Zero is better.
41
42### 2. Stock Phrases
43
44Phrases that signal "AI wrote this." Remove or replace with specific language.
45
46**Filler phrases (delete entirely):**
47- "it's worth noting that" → (just state the thing)
48- "at the end of the day" → (cut)
49- "in today's world" / "in the modern landscape" → (cut)
50- "without further ado" → (cut)
51- "let's dive in" / "let's explore" → (cut)
52
53**Promotional inflation (replace with specifics):**
54- "game-changer" → what specifically changed?
55- "revolutionary" → what's actually new?
56- "cutting-edge" → describe the technology
57- "seamless" → "works without configuration" (or whatever it actually does)
58- "leverage" → "use"
59- "robust" → "handles X edge cases" (specific)
60- "streamline" → "cut steps from N to M"
61- "empower" → what can the user now do?
62- "unlock" → what's the actual capability?
63
64**Performed authenticity (rewrite):**
65- "to be honest" → (if you need to say this, the rest wasn't honest?)
66- "let me be frank" → (just be frank)
67- "I have to say" → (just say it)
68- "honestly" → (cut)
69- "the truth is" → (cut, state the truth directly)
70
71### 3. Rule of Three
72
73AI loves triplets: "fast, secure, and scalable." Real writing varies list length.
74
75| Before | After |
76|--------|-------|
77| "Fast, secure, and scalable" | "Fast and secure" (if scalable isn't proven) |
78| "Build, deploy, and iterate" | "Build and ship" (if that's what you mean) |
79| Three bullet points that all say the same thing | One clear bullet |
80
81**Rule:** If you find 3+ triplet lists in one document, break at least half of them.
82
83### 4. Structural Patterns
84
85**Every section has the same shape:**
86AI tends to write: heading → one-sentence intro → 3 bullets → transition sentence. Real writing varies section length and structure.
87
88**Hedging sandwich:**
89"While X has limitations, it offers Y, making it Z." → Pick a side. State it.
90
91**False balance:**
92"On one hand X, on the other hand Y." → If one side is clearly better, say so.
93
94### 5. Sycophantic Openers
95
96- "Great question!" → (cut)
97- "That's a fantastic idea!" → (cut, or say what's specifically good about it)
98- "Absolutely!" → (cut if not genuine agreement)
99- "I'd be happy to help!" → (just help)
100
101### 6. Passive Voice / Weak Verbs
102
103- "It should be noted that" → (cut, just note it)
104- "There are several factors that" → name the factors
105- "It is important to" → say why
106- "This can be achieved by" → "Do X"
107
108## Process
109
1101. **Read the input** — file path or pasted text.
111
1122. **Scan for patterns** — check each category above. Count violations per category.
113
1143. **Rewrite** — fix each violation while preserving:
115 - Technical accuracy (don't change code, commands, or technical terms)
116 - Structure (headings, lists, code blocks stay)
117 - Tone intent (if the original was casual, keep it casual)
118 - Length (aim for same or shorter, never longer)
119
1204. **Report what changed:**
121 ```
122 Humanized: {file or "pasted text"}
123
124 Changes:
125 Em dashes: {N} removed
126 Stock phrases: {N} replaced
127 Inflation: {N} deflated
128 Triplets: {N} broken
129 Sycophancy: {N} cut
130 Total: {N} patterns fixed
131
132 Before: {word count}
133 After: {word count}
134 ```
135
1365. **If file path:** write the cleaned version back. Show a diff summary.
137 **If pasted text:** output the cleaned version directly.
138
139## What NOT to change
140
141- Code blocks and inline code
142- Technical terms, library names, CLI commands
143- Quotes from other people (attributed quotes stay verbatim)
144- Numbers, dates, URLs
145- Headings structure (don't merge or split sections)
146- Content meaning — only rephrase, never add or remove ideas
147
148## Edge Cases
149
150- **Short text (<50 words):** just apply stock phrase filter, skip structural analysis
151- **Already clean:** report "No AI patterns found. Text looks human."
152- **Code-heavy docs:** skip code blocks entirely, only process prose sections
153- **Non-English text:** apply em dash and structural rules (they're universal), skip English stock phrases