Humanize AI Text
Comprehensive CLI for detecting and transforming AI-generated text to bypass detectors. Based on Wikipedia's Signs of AI Writing.
Quick Start
# Detect AI patterns
python scripts/detect.py text.txt
# Transform to human-like
python scripts/transform.py text.txt -o clean.txt
# Compare before/after
python scripts/compare.py text.txt -o clean.txt
Detection Categories
The analyzer checks for 16 pattern categories from Wikipedia's guide:
Critical (Immediate AI Detection)
| Category |
Examples |
| Citation Bugs |
oaicite, turn0search, contentReference |
| Knowledge Cutoff |
"as of my last training", "based on available information" |
| Chatbot Artifacts |
"I hope this helps", "Great question!", "As an AI" |
| Markdown |
**bold**, ## headers, code blocks |
High Signal
| Category |
Examples |
| AI Vocabulary |
delve, tapestry, landscape, pivotal, underscore, foster |
| Significance Inflation |
"serves as a testament", "pivotal moment", "indelible mark" |
| Promotional Language |
vibrant, groundbreaking, nestled, breathtaking |
| Copula Avoidance |
"serves as" instead of "is", "boasts" instead of "has" |
Medium Signal
| Category |
Examples |
| Superficial -ing |
"highlighting the importance", "fostering collaboration" |
| Filler Phrases |
"in order to", "due to the fact that", "Additionally," |
| Vague Attributions |
"experts believe", "industry reports suggest" |
| Challenges Formula |
"Despite these challenges", "Future outlook" |
Style Signal
| Category |
Examples |
| Curly Quotes |
"" instead of "" (ChatGPT signature) |
| Em Dash Overuse |
Excessive use of — for emphasis |
| Negative Parallelisms |
"Not only... but also", "It's not just... it's" |
| Rule of Three |
Forced triplets like "innovation, inspiration, and insight" |
Scripts
detect.py — Scan for AI Patterns
python scripts/detect.py essay.txt
python scripts/detect.py essay.txt -j # JSON output
python scripts/detect.py essay.txt -s # score only
echo "text" | python scripts/detect.py
Output:
- Issue count and word count
- AI probability (low/medium/high/very high)
- Breakdown by category
- Auto-fixable patterns marked
transform.py — Rewrite Text
python scripts/transform.py essay.txt
python scripts/transform.py essay.txt -o output.txt
python scripts/transform.py essay.txt -a # aggressive
python scripts/transform.py essay.txt -q # quiet
Auto-fixes:
- Citation bugs (oaicite, turn0search)
- Markdown (**, ##, ```)
- Chatbot sentences
- Copula avoidance → "is/has"
- Filler phrases → simpler forms
- Curly → straight quotes
Aggressive (-a):
- Simplifies -ing clauses
- Reduces em dashes
compare.py — Before/After Analysis
python scripts/compare.py essay.txt
python scripts/compare.py essay.txt -a -o clean.txt
Shows side-by-side detection scores before and after transformation
Workflow
Scan for detection risk:
python scripts/detect.py document.txt
Transform with comparison:
python scripts/compare.py document.txt -o document_v2.txt
Verify improvement:
python scripts/detect.py document_v2.txt -s
Manual review for AI vocabulary and promotional language (requires judgment)
AI Probability Scoring
| Rating |
Criteria |
| Very High |
Citation bugs, knowledge cutoff, or chatbot artifacts present |
| High |
>30 issues OR >5% issue density |
| Medium |
>15 issues OR >2% issue density |
| Low |
<15 issues AND <2% density |
Customizing Patterns
Edit scripts/patterns.json to add/modify:
ai_vocabulary — words to flag
significance_inflation — puffery phrases
promotional_language — marketing speak
copula_avoidance — phrase → replacement
filler_replacements — phrase → simpler form
chatbot_artifacts — phrases triggering sentence removal
Batch Processing
# Scan all files
for f in *.txt; do
echo "=== $f ==="
python scripts/detect.py "$f" -s
done
# Transform all markdown
for f in *.md; do
python scripts/transform.py "$f" -a -o "${f%.md}_clean.md" -q
done
Reference
Based on Wikipedia's Signs of AI Writing, maintained by WikiProject AI Cleanup. Patterns documented from thousands of AI-generated text examples.
Key insight: "LLMs use statistical algorithms to guess what should come next. The result tends toward the most statistically likely result that applies to the widest variety of cases."
1---2name: humanize-ai-text-23description: Humanize AI-generated text to bypass detection. This humanizer rewrites ChatGPT, Claude, and GPT content to sound natural and pass AI detectors like GPTZero, Turnitin, and Originality.ai. Based on Wikipedia's comprehensive "Signs of AI Writing" guide. Makes robotic AI writing undetectable and human-like.4---56# Humanize AI Text78Comprehensive CLI for detecting and transforming AI-generated text to bypass detectors. Based on [Wikipedia's Signs of AI Writing](https://en.wikipedia.org/wiki/Wikipedia:Signs_of_AI_writing).910## Quick Start1112```bash13# Detect AI patterns14python scripts/detect.py text.txt1516# Transform to human-like17python scripts/transform.py text.txt -o clean.txt1819# Compare before/after20python scripts/compare.py text.txt -o clean.txt21```2223---2425## Detection Categories2627The analyzer checks for **16 pattern categories** from Wikipedia's guide:2829### Critical (Immediate AI Detection)30| Category | Examples |31|----------|----------|32| Citation Bugs | `oaicite`, `turn0search`, `contentReference` |33| Knowledge Cutoff | "as of my last training", "based on available information" |34| Chatbot Artifacts | "I hope this helps", "Great question!", "As an AI" |35| Markdown | `**bold**`, `## headers`, ``` code blocks ``` |3637### High Signal38| Category | Examples |39|----------|----------|40| AI Vocabulary | delve, tapestry, landscape, pivotal, underscore, foster |41| Significance Inflation | "serves as a testament", "pivotal moment", "indelible mark" |42| Promotional Language | vibrant, groundbreaking, nestled, breathtaking |43| Copula Avoidance | "serves as" instead of "is", "boasts" instead of "has" |4445### Medium Signal46| Category | Examples |47|----------|----------|48| Superficial -ing | "highlighting the importance", "fostering collaboration" |49| Filler Phrases | "in order to", "due to the fact that", "Additionally," |50| Vague Attributions | "experts believe", "industry reports suggest" |51| Challenges Formula | "Despite these challenges", "Future outlook" |5253### Style Signal54| Category | Examples |55|----------|----------|56| Curly Quotes | "" instead of "" (ChatGPT signature) |57| Em Dash Overuse | Excessive use of — for emphasis |58| Negative Parallelisms | "Not only... but also", "It's not just... it's" |59| Rule of Three | Forced triplets like "innovation, inspiration, and insight" |6061---6263## Scripts6465### detect.py — Scan for AI Patterns6667```bash68python scripts/detect.py essay.txt69python scripts/detect.py essay.txt -j # JSON output70python scripts/detect.py essay.txt -s # score only71echo "text" | python scripts/detect.py72```7374**Output:**75- Issue count and word count76- AI probability (low/medium/high/very high)77- Breakdown by category78- Auto-fixable patterns marked7980### transform.py — Rewrite Text8182```bash83python scripts/transform.py essay.txt84python scripts/transform.py essay.txt -o output.txt85python scripts/transform.py essay.txt -a # aggressive86python scripts/transform.py essay.txt -q # quiet87```8889**Auto-fixes:**90- Citation bugs (oaicite, turn0search)91- Markdown (**, ##, ```)92- Chatbot sentences93- Copula avoidance → "is/has"94- Filler phrases → simpler forms95- Curly → straight quotes9697**Aggressive (-a):**98- Simplifies -ing clauses99- Reduces em dashes100101### compare.py — Before/After Analysis102103```bash104python scripts/compare.py essay.txt105python scripts/compare.py essay.txt -a -o clean.txt106```107108Shows side-by-side detection scores before and after transformation109110---111112## Workflow1131141. **Scan** for detection risk:115 ```bash116 python scripts/detect.py document.txt117 ```1181192. **Transform** with comparison:120 ```bash121 python scripts/compare.py document.txt -o document_v2.txt122 ```1231243. **Verify** improvement:125 ```bash126 python scripts/detect.py document_v2.txt -s127 ```1281294. **Manual review** for AI vocabulary and promotional language (requires judgment)130131---132133## AI Probability Scoring134135| Rating | Criteria |136|--------|----------|137| Very High | Citation bugs, knowledge cutoff, or chatbot artifacts present |138| High | >30 issues OR >5% issue density |139| Medium | >15 issues OR >2% issue density |140| Low | <15 issues AND <2% density |141142---143144## Customizing Patterns145146Edit `scripts/patterns.json` to add/modify:147- `ai_vocabulary` — words to flag148- `significance_inflation` — puffery phrases149- `promotional_language` — marketing speak150- `copula_avoidance` — phrase → replacement151- `filler_replacements` — phrase → simpler form152- `chatbot_artifacts` — phrases triggering sentence removal153154---155156## Batch Processing157158```bash159# Scan all files160for f in *.txt; do161 echo "=== $f ==="162 python scripts/detect.py "$f" -s163done164165# Transform all markdown166for f in *.md; do167 python scripts/transform.py "$f" -a -o "${f%.md}_clean.md" -q168done169```170171---172173## Reference174175Based on Wikipedia's [Signs of AI Writing](https://en.wikipedia.org/wiki/Wikipedia:Signs_of_AI_writing), maintained by WikiProject AI Cleanup. Patterns documented from thousands of AI-generated text examples.176177Key insight: "LLMs use statistical algorithms to guess what should come next. The result tends toward the most statistically likely result that applies to the widest variety of cases."