anti-ai-writing
Skill91 starsChanged 5 months agoMITView on GitHub
Use when writing or auditing any written content — captions, carousels, newsletters, threads, LinkedIn posts, long-form — and as the FINAL filter on every piece. Reach for it whenever text feels generic, fluent-but-hollow, over-formatted, or "sounds like AI." Strongest on written prose; lighter on spoken reels.
10 other projects use a version of this.
Adopted by
Most recently taken up by
- rhowardstone/AI-Job-Coachtheir own version, first seen Nov 15, 2026
- f9xr/articlestheir own version, first seen Nov 8, 2026
- avectats7/anti-ai-writingtheir own version, first seen Nov 1, 2026
- Cheukcoding/claude-skillstheir own version, first seen Nov 1, 2026
- francoisdp/skillstheir own version, first seen Oct 22, 2026
- TylerAkins/ai-agent-skillstheir own version, first seen Oct 15, 2026
Other versions10 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 10
- han69611/math-modeling-skills★ 10same name
- avectats7/anti-ai-writing★ 6same name
- rhowardstone/AI-Job-Coach★ 4same name
- francoisdp/skills★ 2same name
- f9xr/articles★ 1same name
- TylerAkins/ai-agent-skills★ 1same name
- yasijay13/pm-claude-skills★ 1same name
- Cheukcoding/claude-skills★ 0same name
- kierstenicy452/anti-ai-writing★ 0same name
- mrdaioff/baby-brain★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository3 other files it gives its agents.
- dumbifySkill
- storytellingSkill
- viral-hooksSkill
The file
We split this skill into the rules it gives an agent
7 rules. 0 are common, 7 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 8 edited versions we read keep these.
7
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 20
The split can live inside a single piece: When you produce a reel, the *script* is spoken (subset), but the *caption* that ships with it is …
- Distinctive: line 34
Accurate > Clear > Specific > Voiced > Stylish: Never sacrifice accuracy for style.
- Distinctive: line 59
The fix: delete the rejected half, then rewrite the positive half as a direct claim with specifics.
- Distinctive: line 73
Default: write literally. Most business/tech analogies make weak thinking sound vivid — they help the writer feel clever, not the reader …
- Distinctive: line 106
Write the draft normally first — don't compose against the blocklist, that produces stilted output.
- Distinctive: line 110
Run on the draft; flag each hit with the exact offending line, then rewrite:
- Distinctive: line 118
Read aloud → flag any sentence the same length as the one before → vary it.
“Common” is measured: kept by at least 6 in 10 of the 8 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Anti-AI Writing
The goal is not "don't sound like AI." That framing loses — blocklists rot, and chasing a negative gives you a beige voice. The goal is: sound like a specific person who has thought about the thing and has something to say. Specificity is the moat. Voice is the moat. Everything below serves those two.
Apply with judgment. Spirit beats letter. If a rule makes the sentence worse, break it.
Where this runs
This skill matters most on written content — text a reader's eye scans. Run the full pass there: captions, carousels, newsletters, threads, LinkedIn, long-form, DMs, landing copy. It's the last filter on every written piece.
On spoken content (reel and video scripts — the words get said aloud), run the spoken subset only:
- Apply: specificity (Level 3+), kill hollow reframes that don't pay off, cut borrowed-authority / thinkfluencer filler, cut significance inflation. These hurt out loud too.
- Skip: the formatting tells (em dashes, bullets, hashtags don't exist in speech), and go light on the vocab blocklist — spoken cadence forgives, and your voice plus the viral-hooks and storytelling skills are already doing the heavy de-AI-ing. Over-applying prose rules to a script makes it sound stilted, not human.
The split can live inside a single piece. When you produce a reel, the script is spoken (subset), but the caption that ships with it is written (full pass). Apply the right intensity to each part of the output, not one blanket pass.
The 5 diseases (diagnose before you fix)
Most AI writing fails for one of five reasons. Name the disease and the fix is obvious. If you can't name it, read the line aloud — the disease becomes audible.
- Vagueness compression — describes a category, not a thing. "Users were frustrated" → "users clicked export six times because nothing loaded."
- Significance inflation — treats normal facts like turning points. "This marks a pivotal shift in onboarding" → state the fact, let the reader weigh it.
- Hedged confidence — has a position but won't commit. "It could be argued that…" → take the position or cut the sentence.
- Rhythmic flatness — every sentence the same length, every paragraph three sentences. → break the meter.
- Borrowed authority — sounds like a McKinsey deck or a LinkedIn thinkfluencer. No fingerprint. → write it the way you'd say it to one person.
Rule priority (when rules collide)
Accurate > Clear > Specific > Voiced > Stylish. Never sacrifice accuracy for style. A boring true sentence beats an elegant vague one.
Specificity — the whole game
The single highest-leverage rule. Specific beats polished, every time. The ladder:
| Level | Example |
| Vague | "The company faced challenges." |
| Specific | "The company had cashflow issues." |
| Concrete | "The company missed payroll twice in six months." |
| Lived | "Payroll bounced in March and again in August. The CFO found out from Slack." |
Aim for level 3 minimum, level 4 if you have it. Replace categories with instances, adjectives with numbers, "users" with "the kind of user who [does specific thing]." If you don't have the specific, get it before writing — or admit it plainly ("I don't know the exact number, but it felt like roughly half"). Pull real specifics from your own notes and lived experience; never invent numbers or events.
The negative parallelism ban (the #1 tell)
The biggest single tell of AI writing. The pattern:
"It's not X. It's Y."
…and every variation that knocks down a frame to sound insightful: Not X. Y. / Less X, more Y. / Stop thinking X, start thinking Y. / The real question isn't X, it's Y. / It was never about X, it was always about Y. Plus the softer forms: Most people think X, but… / On the surface X, but really Y. / X gets all the attention, but…
The pivot words that signal it when they follow a rejected frame: but, actually, really, instead, rather, ultimately, the truth is, what matters is, the real, the hidden, the overlooked. These words are everywhere in good prose — only count one as a hit when it follows a rejected frame, never on sight. The reframe also crosses sentence boundaries ("Most teams think they have a hiring problem. They have a standards problem.") and hides in rhetorical questions ("Is this a productivity problem? No. It's an attention problem.") — but the boundary-crossing form is banned only when B is hollow; a concrete B across a boundary is fine (see the reconciliation test below).
The fix: delete the rejected half, then rewrite the positive half as a direct claim with specifics.
"It's not about the prompt. It's about the context." → "It's about the context." → "The model performs 3× better when you paste the prior chat into the system prompt."
The reframe was hiding the fact that the writer didn't have a point. The final version has a number and a mechanism — the actual point.
Reconciliation with viral-hooks (important — these skills must not fight): hooks deliberately use A-vs-B contrast as a curiosity mechanic, and that's allowed. The line is hollow vs earned:
- Banned (hollow): B is vague significance that hides the absence of a point — "it's not about tactics, it's about mindset." Cut it.
- Allowed (earned): B is concrete and the content delivers it — "Most people meal prep Sunday. The most consistent clients I know prep nothing and cook one thing daily." The contrast opens a loop the piece actually pays off.
- Test (two parts): (1) Is B concrete — Level 3+ on the specificity ladder above (an instance, number, or mechanism, not a category like "mindset" or "systems")? (2) Does the body deliver it? At hook stage the body doesn't exist yet — so judge B on part (1) alone, keep it provisionally, and re-check delivery on the post-draft pass. A vague-significance B fails part (1) and gets cut immediately. In spoken hooks the bar is looser (contrast is a format convention); in written prose, hold the line hard.
Analogy & metaphor control
Default: write literally. Most business/tech analogies make weak thinking sound vivid — they help the writer feel clever, not the reader understand.
Use an analogy only if all five are true: (1) the subject is genuinely unfamiliar/abstract, (2) it makes understanding easier not just prettier, (3) it's shorter than the literal explanation, (4) it's exact enough not to mislead, (5) it sounds normal aloud. Any test fails → write literally. Frequency: under 800 words, zero by default; ~one per 1,500 words after.
Banned metaphor families for abstract work: journeys, battlefields, machines-for-people, ecosystems, engine/fuel, North star, flywheel, DNA, scaffolding, plumbing, iceberg, bridge, chess, sports. Banned metaphor verbs: baked in, bolted on, woven, layered, distilled, unpacked, crystallized, surfaced, amplified, threaded, sculpted, anchored, framed. Replace with literal verbs: cut, added, removed, caused, showed, reduced, fixed, named, chose.
"Your onboarding is a leaky bucket." → "Users leave during onboarding." → "42% drop on step 2 because the form asks for billing before showing the product."
Blocklists (starting points — the principle outlives the list)
The principle: any word doing PR for an idea instead of describing it goes. If a word makes something sound impressive without specifying how, cut it.
- Vocab tells: delve, realm, harness, unlock, tapestry, leverage, synergy, seamless, robust, elevate, streamline, supercharge, game-changer, cutting-edge, revolutionize, transformative, intricate, crucial, pivotal, testament, foster, empower, holistic, frictionless, unparalleled, groundbreaking, data-driven, scalable, intuitive, disruptive.
- Bloated verbs (dodging "is/has"): serves as, stands as, marks a, represents a, boasts a, plays a role in, helps to, aims to, seeks to. → use: is, has, uses, gives, shows, causes.
- Dead openings: "In today's…", "It's important to note…", "Let's dive in / explore / unpack", "At the end of the day", "Nobody is talking about", "Most people don't realize", "In this post I'll…".
- Dead transitions: Furthermore, Additionally, Moreover, That said, With that in mind. → use a transition that does logical work, or none.
- Engagement bait: "Let that sink in", "Read that again", "This changes everything", "What's your…? 👇". Insults the reader.
- Hype: "10x your anything", "supercharge", "future-proof". If the claim is real, the number tells it; if you don't have the number, lower the claim.
- Formatting tells: em dashes (use periods, commas, colons, parens instead), emoji-and-hashtag spam, over-formatting into walls of bullets to look thorough, the rule-of-three numbered list when the real count is 2 or 4.
AI tells (generic even when no single rule is broken)
- Rule of three reflex — every list has three items, every claim three supports. Real thinking has uneven counts.
- False ranges — "from ancient traditions to modern innovation." Sweep with no middle. Cut.
- Elegant variation — Sarah → the seasoned operator → the executive. Use the name again.
- Participle fake-depth — "…highlighting its importance, …paving the way for." If the analysis matters, give it its own sentence with a real claim.
- Significance inflation — "key, crucial, pivotal, transformative" on normal facts.
- Throat-clearing first sentence — cut the first sentence and reread; if the piece still works, it was throat-clearing.
- Symmetric parallelism — "We build bold, we ship fast, we win loud." Sounds great, says nothing.
- "In a world where…" opener — no.
Writing mode
Write the draft normally first — don't compose against the blocklist, that produces stilted output. Then run the final pass below to remove the machine-made parts. Then check what's left actually says something.
Audit mode (the final pass)
Run on the draft; flag each hit with the exact offending line, then rewrite:
- Cut the first sentence if it's throat-clearing.
- Replace every category noun with an instance.
- Cut every adjective with no number, name, or comparison behind it.
- Find every "not X but Y" reframe → rewrite as a direct claim (apply the hollow-vs-earned test).
- Find every analogy → apply the five-test → delete failures; replace banned metaphor verbs with literal ones.
- Cut every dead opening, transition, bait phrase, and hype word.
- Read aloud → flag any sentence the same length as the one before → vary it.
- Cover the byline: could ten other creators have written this? If yes, find the one line only this person would write, and lead with it.
- Cut the ending if it only repeats the point.
Audit output format:
ANTI-AI AUDIT:
Negative parallelism: FLAG — "They're not just employees. They're the DNA of everything."
Metaphor: FLAG — "DNA of everything" (banned family) — say what they actually shape
Engagement bait: FLAG — "What's the best early hire you made? 👇"
Specificity: FLAG — no numbers, names, or lived detail anywhere
Rewrite: [direct, specific version in your voice]Anti-overfitting
This describes taste; it doesn't replace judgment. Don't force fragments. Don't make every paragraph one sentence to seem punchy. Don't avoid a banned word that's the exact right word with no clean substitute. Don't turn the output into a checklist of avoided mistakes.
The test: does this sound like something you would actually write, or an AI trying hard to imitate you? If it feels forced, simplify. If it feels generic, find the specific you skipped. If it feels hollow, you didn't have the point yet — go get it before the next draft.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

