Claude Humanizer Skill: Make German AI Text Sound Human
Free Claude Code and Codex skill that makes German AI text sound more human. No Python required, with 66 writing patterns and factual safeguards.
German AI text is rarely completely wrong. It just sounds too smooth. Every paragraph is the same length, every transition feels preselected, and the conclusion arrives whether anyone asked for one or not. The draft is tidy. It still does not feel written.
Humanizer (Deutsch) is a free, open-source skill for Claude Code and Codex. It reviews German drafts for language-specific AI-writing patterns and edits the passages that need work. Numbers, names, sources, quotations, and claim direction stay protected.
The base skill needs no Python, spaCy, or other add-on software. Install it, name the audience and tone, then review the result. Farther down this page you will also find the complete 66-pattern catalog.
Try it
Open Humanizer (Deutsch) on GitHub — free, MIT licensed, and available for Claude Code and Codex.
New to skills? Jump straight to installation. It includes the recommended route, a Windows note, and a prompt that lets your AI assistant handle the setup.
How the Humanizer Makes German AI Text Sound Human
The skill does more than swap words. It reviews language, structure, rhythm, evidence, and register together.
| Before | After |
|---|---|
| „Darüber hinaus ist es von entscheidender Bedeutung, innovative Lösungen nahtlos zu implementieren.“ | „Außerdem müssen wir neue Lösungen reibungslos einführen.“ |
The revision is shorter and more direct without adding a new claim. That boundary matters: the Humanizer edits a useful draft. It does not invent the substance that the draft is missing.
Its 66 documented German patterns cover mechanical transitions, uniform sentence rhythm, vague authorities, broken source formats, and fabricated first-person experience. A counter-check protects passages that are already clean. If the text needs only two small edits, it should receive only two small edits.
Three modes adapt the edit to the text:
| Mode | Best for | Editing approach |
|---|---|---|
| Casual | Blog posts, social media, newsletters | more personality and a livelier rhythm |
| Neutral | Emails, websites, product copy | remove AI patterns while keeping a neutral tone |
| Formal | Academic, legal, and technical writing | edit conservatively and protect the structure |
If you do not specify a mode, the skill uses Neutral. Casual is often the better starting point for a blog post.
You typically receive:
- the selected mode
- the main patterns found
- the edited text
- a short check of tone, quality, and factual stability
When you provide a file and ask for changes, the skill can edit that file directly and summarize what changed.
Install the Humanizer Skill
The base skill does not require Python or spaCy. Installation adds instructions, references, and optional local checking scripts. Those files do not run by themselves and do not install other software.
My Recommendation as the Author
The Humanizer works without Python. For the best results, I still recommend the full setup with the optional checking tools. They make rhythm, register, Unicode, and edge-case checks more precise and reproducible. In that configuration, Humanizer (Deutsch) is the best free tool for German AI text that I know.
Claude Code
Enter these three commands in a running Claude Code session, not in a regular terminal:
/plugin marketplace add marmbiz/humanizer-de
/plugin install humanizer-de@humanizer-de
/reload-plugins
The first command adds the marketplace, the second installs the Humanizer, and the third loads it into the current session. Restarting Claude Code works too.
The same commands work on native Windows once Claude Code itself is running. The plugin route does not require WSL, a Python setup, or spaCy.
Codex
Run this in your terminal:
codex plugin marketplace add marmbiz/humanizer-de
Then open /plugins in Codex, select the Humanizer DE marketplace, and install humanizer-de. Start a new session before using the bundled skill.
Let your AI assistant install it
Paste this into Claude Code or Codex:
Install Humanizer (Deutsch) from
https://github.com/marmbiz/humanizer-de.
Use the recommended plugin route for my platform.
Do not install add-on software or Python packages without asking me first.
Then use the README test to verify that the skill is actually active
and explain briefly what was installed.
The GitHub README covers manual installation and updates. For most new users, the plugin is simpler.
How to Use the Humanizer
After installation, a normal instruction is enough. You do not need a special slash command:
Humanize this German text in Neutral mode:
[paste text]
For a blog post, add the audience and context:
Edit this German blog post with Humanizer (Deutsch) in Casual mode.
Audience: people without a technical background.
Keep every fact, link, and quotation unchanged:
[paste text]
You can use the same workflow for a draft created in ChatGPT. Copy it into Claude Code or Codex and specify the audience, text type, and tone. Those three details reduce guesswork.
Your Rules, Never Your Texts
The Humanizer can store recurring style rules in a readable .humanizer/profile.json file inside your project. It might record that your sentences should stay short or that a particular phrase should be avoided.
The file stores rules and measurement ranges, not excerpts from your writing. It is optional, local, and easy to delete or disable.
Why German AI Text Is Different
English and German expose different weaknesses in LLM drafts. A model can produce fluent English and still carry structures into German that feel translated or mechanically assembled.
Take these examples:
- Participle-I constructions like "gewährleistend" or "hervorhebend" (ensuring, highlighting). In English, "-ing" forms are common. In German, these constructions can feel translated.
- Overused transition phrases like "Darüber hinaus" (furthermore) appearing several times in a paragraph. A single occurrence is fine; repetition creates the mechanical effect.
- Clusters of em dashes doing work that a period, comma, or colon would handle more naturally in German.
- Vague authorities like "Experten sagen" (experts say) with no sources attached.
- Symbolic overload like "steht als Zeugnis für" (stands as testimony to) where a concrete statement would say more.
- Promotional tone with "atemberaubend" (breathtaking) in contexts where it doesn't belong.
- Chatbot artifacts like "Stand Januar 2024" (as of January 2024) appearing in articles written months later.
Before (LLM):
Die atemberaubende Stadt mit ihrem reichen kulturellen Erbe steht als Zeugnis für die künstlerische Brillanz vergangener Generationen.
"The breathtaking city with its rich cultural heritage stands as testimony to the artistic brilliance of past generations."
After (human):
Die Stadt hat eine lange Geschichte. Ihre Denkmäler zeigen die Handwerkskunst des Mittelalters.
"The city has a long history. Its monuments show medieval craftsmanship."
Less decoration, more substance.
66 Patterns in 10 Categories
The Humanizer uses pattern checks across ten categories. Severity describes the finding, not who wrote the entire text: HIGH findings need close review, MEDIUM findings depend on context, and LOW findings matter mainly when they cluster.
1. Language & Tone (18 patterns, mostly HIGH)
Symbolic overload, promotional language, editorial comments, mechanical conjunctions, section summaries, participle-I constructions, vague authorities, forced conclusions, negative parallelisms (now including clipped negation fragments like "kein Raten.", "keine Kompromisse."), tricolon overuse, false extensions, misplaced "Fazit" sections, abstract-noun stacking ("verschiedene Maßnahmen" instead of the concrete thing), synonym rotation for the same entity ("die Hansestadt", "die Elbmetropole"), modal-particle anomalies (close-register German with zero "ja", "eben", "wohl" — or far too many), AI marker vocabulary ("beleuchten", "eintauchen", "spannend", "die digitale Landschaft" — the German counterparts to "delve" and "tapestry"), copula avoidance ("fungiert als", "verfügt über" instead of plain "ist"/"hat"), and the fake-analysis appendix ("…was X unterstreicht" — a pseudo-analytical relative clause that adds no information).
2. Style (4 patterns, MEDIUM/LOW)
Excessive bold text, false lists, emojis before headings, em-dash overuse (now with a replacement hierarchy: period > comma > colon > semicolon > parentheses > rephrase, plus detection of paired inserts and dash variants).
3. Communication (6 patterns, all HIGH)
Letter-style writing, collaborative chatbot phrases ("I hope this helps!"), knowledge cutoff references, prompt refusals, placeholder text, links to search queries.
4. Markup (6 patterns, mostly MEDIUM)
Markdown instead of wikitext, broken wikitext and AI tool artifacts (oaicite tags, contentReference spans, turn0search0 references), dead links, full citation fabrication (HIGH: hallucinated publications, non-existent journals, utm_source parameters), incorrect reference formats, wrong categories.
5. Miscellaneous (3 patterns, LOW/MEDIUM)
Abrupt cutoffs, style shifts mid-text, first-person edit summaries.
6. Rhetoric & Structure (11 patterns)
| Pattern | Severity | Example |
|---|---|---|
| Persuasive authority phrases | MEDIUM | "Im Kern" (at its core), "In Wirklichkeit" (in reality) |
| Signposting | MEDIUM | "Schauen wir uns an" (let's look at), "Here's what you need to know" |
| Fragmented headings | LOW | Generic one-liner immediately after a heading |
| Rhetorical questions as fake engagement | MEDIUM | "Aber was bedeutet das?" (But what does this mean?) |
| Universal human experience opener | MEDIUM | "Seit jeher" (since time immemorial), "Seit Anbeginn der Zivilisation" |
| "In today's X world" framing | MEDIUM | "In der heutigen digitalen Welt" (in today's digital world) |
| Aspirational corporate closing | MEDIUM | "bestens aufgestellt" (well-positioned), "die Möglichkeiten sind grenzenlos" |
| Diff-anchored writing | MEDIUM | "wurde jetzt ergänzt" (has now been added) when the text should describe the current state |
| Aphorism formulas | MEDIUM | "X ist die Sprache des Y" (X is the language of Y), "X wird zur Falle" — a nice-sounding empty formula replacing a concrete claim |
| Isometric document | MEDIUM | Every paragraph 3–5 sentences, every section the same length, every aspect weighted equally |
| Markerless closure compulsion | MEDIUM | Every paragraph ends on an evaluative wrap-up sentence that adds nothing ("Damit ist die Grundlage gelegt.") |
7. Argumentation & Evidence (5 patterns)
| Pattern | Severity | Example |
|---|---|---|
| Passive constructions and subjectless fragments | MEDIUM | "wurde durchgeführt" (was carried out), "Keine Konfiguration nötig." (No configuration needed.) — hides the actor |
| Conditional stacking | MEDIUM | Piled-up "wenn/falls/sofern" (if/in case/provided that) clauses instead of stating what the analysis found |
| Miscalibrated epistemic confidence | MEDIUM | Swings between over-assertion ("grundlegend verändert", "zweifellos") and over-hedging ("scheint möglicherweise", "könnte eventuell") |
| Speculative gap-filling | HIGH | "hält sich bedeckt" (keeps a low profile), "vermutlich" (likely), despite missing sources |
| Fabricated first-person experience | HIGH | "Als ich letzte Woche mit einem Kunden sprach..." (When I talked to a client last week...) — an anecdote with no real owner |
LLMs hide the actor behind passive voice and subjectless sentences. They stack conditionals where a direct statement would do. Most telling: the swing between over-assertion ("revolutionary", "without doubt") and over-hedging ("seems possibly", "could perhaps") within the same paragraph. When sources are missing, they often add another tell: plausible filler where the text should simply say the point is not documented.
Fabricated first-person experience is the second-order tell: it often appears precisely when someone tries to make AI text sound "more human." Staged anecdotes and forced casualness ("Ehrlich gesagt", "Keine Sorge") are fabrication, not style. That's why the Humanizer never invents experience when rewriting — voice comes only from your writing sample or facts you explicitly provide.
8. Additions (4 patterns)
Four patterns drawn from the German Wikipedia's Erkennung KI-Einsatz guideline and its Schnelltest KI companion:
| Pattern | Severity | Example |
|---|---|---|
| Source incongruence | HIGH | Source exists but doesn't support the claim |
| Hidden Unicode characters | HIGH | Zero-Width Space (U+200B), Soft Hyphen, BOM, bidi controls |
| Standard chapters without substance | MEDIUM | "Future perspectives" + unsourced filler; don't shorten — concretize/integrate |
| Anglicism structures | MEDIUM | Hard calques & false friends: "am Ende des Tages", "eventuell" = "eventually/finally" (not "possibly"), "aktuell" = "actually" (not "currently") |
Source incongruence is particularly tricky: the source exists, the DOI validates, the author did publish — only the paper doesn't actually support the claim. A classic LLM hallucination pattern that simple fact-checking tools miss. False friends like "eventuell" (eventually = finally, not "maybe") are corrected regardless of mode because they are semantic errors.
9. Typography & Format (7 patterns)
This category covers texts that are convincing in substance but become conspicuous through typographic anglicisms or decorative formatting.
| Pattern | Severity | Example |
|---|---|---|
| Incorrect German quotation marks | HIGH | German opener with U+201D/ASCII close instead of U+201C |
| English title-case capitalization | MEDIUM | "Die Zukunft Der Digitalen Transformation" |
| English decimal/date formats | LOW | "3.5 Prozent", "May 12, 2026" |
| English genitive apostrophe | MEDIUM | "Martin's Profil" instead of "Martins Profil" |
| Bullet-point punctuation | LOW | Periods on bare keywords, inconsistent lists |
| Obsessive parataxis | MEDIUM | 4+ same-shape main clauses without subordination |
| Markdown structure artifacts | MEDIUM | Single-row tables, skipped heading levels (H2→H4), thematic break --- right before a heading |
The quotation-mark problem is unusually stubborn: Claude picks the wrong closing German quote systematically, and prompting alone won't reliably fix it. The Humanizer flags those spots — the actual fix belongs in a post-processor or linter. Not every odd quote is a tell, though: the only hard AI signal is the asymmetry — a German opening quote (U+201E) paired with a wrong or straight closing mark instead of the correct U+201C. Consistently straight quotes, by contrast, are usually a CMS or editor artifact, not an AI tell; consistently English curly quotes are a weak signal at best. Treating every straight quote as AI just manufactures false positives.
Obsessive parataxis is the opposite kind of tell: subtle. Each individual sentence is correct, readability scores fine — but the monotony betrays the machine. The fix isn't "rewrite everything", it's turning every third sentence into a complex sentence with subordination. Exception: if staccato is the intended style (advertising, manifestos), the "don't touch" rule for soft-pattern clustering applies.
Before (LLM):
Das Team Analysierte Die Daten. Die Ergebnisse waren eindeutig. Die Conversion stieg um 3.5 Prozent. Das Projekt wurde im Budget abgeschlossen.
After (human):
Das Team analysierte die Daten und kam zu einem eindeutigen Ergebnis: Die Conversion stieg um 3,5 Prozent, obwohl das Projekt im Budget blieb.
10. Title & Sentence Structure (2 patterns)
Two patterns that only stand out when they cluster — and the only ones in this catalog that statistical detectors also measure (more on that below).
| Pattern | Severity | Example |
|---|---|---|
| Colon-title scheme | MEDIUM | Repeated "Keyword: explanatory tail" across titles and subheadings |
| Uniform sentence rhythm | MEDIUM | Sentences nearly all the same length, always subject-first |
What Should Stay Stable
The Humanizer has a guardrail against over-editing. Not every polished or formally correct piece of writing is a problem.
These signals should stay untouched on their own:
- perfect grammar and consistent style
- one dash or curly quotes
- dry prose without specific patterns
- one transition word such as "allerdings" or "zudem"
- unsourced claims without additional source or speculation patterns
The skill also preserves positive human signals: concrete details, unresolved tension, era-bound references, genuine asides, self-corrections, and varied sentence length. The point is to improve the text without flattening the author.
What About AI Detectors?
AI detectors can be a useful signal, especially when they point to visible writing problems: monotonous rhythm, generic phrasing, empty transitions, or copy that feels too evenly polished.
But a detector score is not the same as quality.
Many tools estimate two statistical quantities:
- Perplexity — how predictable the next word is. Precise, smooth technical prose is highly predictable and scores low perplexity.
- Burstiness — how much sentence length and structure vary. Uniform sentences produce low burstiness.
The pretty labels such tools attach — "mechanical precision," "impersonal tone," "robotic formality" — are often translations of those numbers. A German text can score badly and still be accurate, useful, and appropriate. It can also score well and still sound generic, vague, or unconvincing.
That is why Humanizer (Deutsch) does not treat detector context as an automatic error. The better question is editorial: does the text work for real readers? Does it keep the facts stable? Does the register fit? Does the voice sound credible? Are the claims supported?
If detector feedback reveals a real writing problem, the Humanizer can help fix the writing problem:
- Colon-title scheme: When the H1, the caption, and several subheadings all follow the "Keyword: explanatory tail" shape, the result is a mechanical rhythm. A single colon title is perfectly fine — the clustering is the signal.
- Uniform sentence rhythm: When nearly every sentence is the same length and starts with the subject, the text turns monotone. The fix is not to insert errors but to deliberately spread sentence length — a short sentence next to a long, structured one.
- Abstract-noun stacking: "Verschiedene Maßnahmen zur Verbesserung der Verkehrssituation" ("various measures to improve the traffic situation") becomes stronger when the text names the concrete measures.
This stance is built into the workflow: detector feedback is context, not an instruction. The second revision round keeps improving only where real quality problems remain, and stops when additional edits would make the text weaker.
Why I Created the German Humanizer
I found Siqi Chen's original Humanizer and saw the gap immediately. It was built around English AI-writing patterns, while German drafts had a different set of problems. Applying an English checklist to German was like using an English spell-checker on a German document: useful in places, blind in others.
The German Wikipedia maintains its own guide to AI-generated content indicators, alongside the English Wikipedia guide. I used both as foundations and adapted the workflow around German phrasing, evidence, typography, rhythm, and register.
The project now has its own versioning, deterministic checking scripts, and test suite. Roughly half of the 66 patterns have no direct counterpart in the English original.
Working with English content? Use Siqi Chen's original Humanizer.
Working with German content? Use Humanizer (Deutsch).
Who Needs This
The skill is designed for:
- German content creators who use AI but still want the text to sound like them
- marketing teams editing German landing pages, social posts, help content, newsletters, or product copy
- teams working with factual German text where claims, sources, tone, and register must remain stable
- editors reviewing German submissions for recurring AI-writing patterns
- bilingual teams whose English-speaking editors need to understand German-specific problems
It will not replace research or rescue a false claim. The useful starting point is a draft with real substance that still needs editorial judgment.
Credits and Open Source
Humanizer (Deutsch) is free, open source, and MIT licensed. It builds on the German Wikipedia guide, the English Wikipedia guide, and the original Humanizer by blader.
The current version, technical documentation, and complete release history live in the GitHub repository.
Frequently Asked Questions
How do I make German AI text sound more human with Claude?
Install the plugin as described above, then give Claude Code a normal instruction such as: "Humanize this German text in Neutral mode." The skill checks the draft against its 66 German patterns and edits only the passages that need work.
Can I humanize a draft created in ChatGPT?
Yes. Copy the German draft into Claude Code or Codex, then specify the audience, text type, and tone. The skill is not installed inside ChatGPT; it edits the ChatGPT draft in a supported environment.
Do I need Python, spaCy, or other add-on tools?
No. The base skill works without Python and does not install extra software. Python, spaCy, LanguageTool, and similar tools are optional and only support additional local checks.
Does installation work on Windows?
Yes, once Claude Code or Codex is running on your Windows machine. The recommended plugin commands are the same. You do not need WSL, Python, or spaCy for the base skill.
Can my AI assistant install the skill for me?
Yes. Use the installation prompt above. It tells the assistant not to install add-on software without permission and to verify that the skill is active afterward.
Does it work with Codex or Gemini?
Codex is supported through its own plugin. There is no tested Gemini installation route. The pattern catalog is plain Markdown, so it can still be used as reference material in other systems.
Can it detect whether a text was written by AI?
Not reliably, and it does not claim to. The Humanizer finds writing traces such as repeated formulas, uniform rhythm, typographic artifacts, or vague evidence. A finding means that the passage deserves editorial review, not that a machine certainly wrote it.
More from the lab
- AI Overviews steal clicks: How GEO works: what AI answers do to content visibility.
- Control AI understanding with Schema and llms.txt: how machines read a website and what publishers can influence.
- Profile: who is behind this lab.
This post was written with AI assistance and reviewed with language-specific awareness. The final editorial decisions were human.