Humanizer Staging Instead of Stating Patterns: 5 AI Tells to Remove from Your Writing
Humanizer's "Staging Instead of Stating" (I‑S) patterns identify five common AI-generated rhetorical habits—including "not X but Y" constructions, dramatic fragments, pseudo-profound sayings, staged run-ups, and arguments with no one—that add filler without information and should be removed on first sight.
The blader/humanizer repository defines a strict hierarchy of edits to transform AI-generated prose into natural human writing. At the top of this hierarchy sits the "Staging Instead of Stating" (I‑S) section documented in SKILL.md, which catalogs the strongest tells that a text was written by a large language model rather than a human author. These patterns appear at the top of Humanizer’s edit hierarchy because they represent "strong" tells that should be removed on first sight.
What Are Staging Instead of Stating Patterns?
According to the source code in SKILL.md, Staging Instead of Stating patterns capture the most common AI-generated "telling" habits. These constructions add weight, drama, or filler without contributing new information. Each pattern functions as a strong signal of synthetic prose because the writer signals a moment of emphasis or candor instead of delivering the claim directly.
The five patterns are ordered by frequency and severity, with each representing a specific rhetorical crutch that models use to pad sentences for perceived emphasis.
The 5 Staging Instead of Stating Patterns
Pattern 1: Not X But Y
What to look for: Phrases like "not X but Y," "it’s not X, it’s Y," "X rather than Y," split-sentence contrasts, or clipped negatives ("…, no guessing").
Why it’s a problem: The negative half states something no one claimed, so the positive half sounds over-emphasized without adding a new fact. The construction creates a false dichotomy to manufacture drama.
Typical fix: Restate the point directly; keep the contrast only if the negative half corrects a real belief. As documented in SKILL.md under the "Not X But Y" section, this pattern should be eliminated unless the negation serves a specific corrective purpose.
Pattern 2: One-Line Closers and Dramatic Fragments
What to look for: Single-sentence paragraphs that repeat the previous idea, generic "That is the real win" style lines, rows of short fragments ("No aesthetic prior. No nostalgia."), or ALL-CAPS/period-separated words.
Why it’s a problem: These lines ask the reader to pause rather than advancing the argument. They function as theatrical punctuation that consumes vertical space without adding semantic content.
Typical fix: Remove the redundant closer or merge fragments into a single sentence that adds a concrete claim. The Humanizer source specifies that dramatic fragments should be integrated into preceding sentences or deleted entirely.
Pattern 3: Sayings That Sound Deep
What to look for: Stock aphorisms like "the real question is…," "X is the Y of Z," "the deeper issue," or "X becomes a trap."
Why it’s a problem: An ordinary point is dressed up as a hidden truth, adding no detail. These phrases signal profundity where none exists, creating a "deepity" that sounds meaningful but carries no additional information.
Typical fix: Replace the saying with the specific claim it hides. According to SKILL.md, the editor should unpack the aphorism into its underlying concrete assertion.
Pattern 4: Staged Run-Up Before the Point
What to look for: Introductory phrases like "Let’s dive in," "Here’s what you need to know," "Honestly?," or "The thing is…"
Why it’s a problem: The writer signals a moment of candor instead of delivering the claim directly. These meta-commentaries stage the reader for an important revelation that often fails to materialize, creating a mismatch between setup and content.
Typical fix: Strip the run-up and state the point plainly. The Humanizer implementation removes these throat-clearing phrases to achieve immediate entry into the subject matter.
Pattern 5: Arguing With No One
What to look for: Defensive language like "This isn’t mainly about…," "I’m not saying…," or "A tempting approach would be…," or answering an objection that never appears in the text.
Why it’s a problem: The tell introduces a nonexistent debate, inflating the prose with preemptive defenses against claims no one made. This creates a strawman dynamic that distracts from the actual argument.
Typical fix: Remove the defense; if a real claim exists, state it directly. As defined in SKILL.md, this pattern represents unnecessary hedging that should be excised unless responding to a specific, stated counterargument.
Before and After Code Examples
The Humanizer repository provides concrete transformations showing how each pattern is corrected. Here is the canonical example demonstrating all five patterns and their fixes:
# Example input containing the five I‑S patterns
input_text = """
It's not just about the beat riding under the vocals; it's part of the aggression and atmosphere.
Then AlphaEvolve arrived. It had no preference for symmetry. No aesthetic prior. No nostalgia.
The real question is whether teams can adapt. At its core, what really matters is organizational readiness.
Let's dive into how caching works in Next.js. Here's what you need to know.
This isn't mainly about prompt length, and I'm not arguing that documentation doesn't matter.
"""
# Humanizer would produce:
output_text = """
The heavy beat adds to the aggressive tone.
AlphaEvolve changed the search because it did not favor symmetry or human‑looking designs.
The question is whether teams can adapt; that mostly depends on organizational readiness.
Next.js caches data at multiple layers, including request memoization, the data cache, and the router cache.
The issue is whether the agent can use the instruction when it acts.
"""
Each transformation maps to a specific pattern:
- Not X But Y: "It’s not just about the beat …; it’s part of the aggression …" becomes "The heavy beat adds to the aggressive tone."
- One-line closers: "No aesthetic prior. No nostalgia." merges into the preceding sentence.
- Deep sayings: "The real question is … At its core, what really matters …" becomes "The question is … that mostly depends on …"
- Staged run-up: "Let’s dive into … Here’s what you need to know" becomes the immediate fact: "Next.js caches data at multiple layers …"
- Arguing with no one: "This isn’t mainly about … I’m not arguing …" becomes the direct claim: "The issue is whether the agent can use the instruction …"
How Humanizer Implements These Patterns
The complete specification for these edits resides in SKILL.md at the repository root (github.com/blader/humanizer/blob/main/SKILL.md). This file contains the master definition of all Humanizer patterns, including the I‑S section under the anchor #a-staging-instead-of-stating.
Each pattern includes specific regex-like descriptions of what to match and concrete rewrite instructions. The AGENTS.md file describes how these skills are loaded by different agent implementations, while README.md provides user-facing documentation on applying these transformations to your own writing.
Summary
- Staging Instead of Stating patterns represent the highest-priority edits in the Humanizer hierarchy because they indicate AI-generated filler.
- The five patterns are: Not X But Y, One-Line Closers, Sayings That Sound Deep, Staged Run-Up, and Arguing With No One.
- Each pattern creates false emphasis, theatrical pauses, or defensive hedging without adding information.
- The canonical fix for all five is direct statement: remove the staging and state the fact.
- Implementation details are documented in
SKILL.mdwith specific before/after examples for each pattern.
Frequently Asked Questions
What makes Staging Instead of Stating patterns the highest priority in Humanizer?
These patterns are classified as "strong" tells that appear at the top of Humanizer’s hierarchy because they add zero informational content while consuming significant reader attention. According to SKILL.md, they should be removed on first sight, whereas other patterns might require contextual judgment.
Can "Not X But Y" constructions ever be appropriate in human writing?
Yes, but only when the negative half corrects a real belief that the audience actually holds. If the negation addresses a strawman or states the obvious, Humanizer removes it. The source code specifies keeping the contrast only if the negative half serves a genuine corrective function.
How does Humanizer handle multiple I‑S patterns in the same sentence?
The implementation processes these patterns iteratively, with each transformation potentially revealing underlying issues in subsequent passes. The SKILL.md documentation emphasizes that dramatic fragments often cluster with staged run-ups, requiring multiple editing passes to fully de-AI the text.
Where can I find the complete list of patterns beyond the I‑S section?
The full taxonomy of Humanizer edits is documented in SKILL.md in the repository root. This file contains additional sections beyond Staging Instead of Stating, covering other classes of AI tells such as excessive hedging, corporate jargon, and structural predictability patterns.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →