avoid-ai-writing README

The project's README from github.com/conorbronsdon/avoid-ai-writing. As one markdown file: README.md.

avoid-ai-writing

Audit & rewrite content to remove AI writing patterns. A practical skill for any AI agent. Supports detect-only and edit-in-place modes, plus voice profiles.

GitHub stars License: MIT X

The bundled detector engine flagging 13 AI-writing patterns by category in a sample paragraph, then scoring the clean rewrite 0/100

A portable writing skill for Claude Code, OpenClaw, Hermes, and any other agentskills.io-compatible agent. Audits and rewrites content to remove AI writing patterns ("AI-isms").

Three modes:

An optional voice profile (casual / professional / technical / warm / blunt) sets how the prose should sound, independent of the audience context profile.

Quick demo

Input:

Certainly! Acme Analytics, a vibrant startup nestled in the heart of Boulder's thriving tech ecosystem, has secured $40M in Series B funding — marking a watershed moment for the observability landscape. The platform serves as a unified hub, featuring real-time dashboards, boasting sub-second queries, and presenting a seamless integration layer. Moreover, experts believe Acme is poised to disrupt the market. In conclusion, the future looks bright!

Output:

Acme Analytics raised a $40M Series B led by Sequoia. The Boulder-based startup makes an observability platform that runs queries in under a second and plugs into existing monitoring stacks without custom integration work.

What it caught: chatbot opener ("Certainly!"), promotional language ("vibrant," "nestled," "thriving"), significance inflation ("watershed moment"), copula avoidance ("serves as," "featuring," "boasting"), 4 word replacements, vague attribution ("experts believe"), filler ("Moreover"), generic conclusion ("the future looks bright"), over-polished uniformity. 15+ AI tells in one paragraph.

Why a skill, not just a prompt

A one-shot "make this sound human" prompt catches the obvious stuff. This skill is different:

Installation & Usage

Install the complete skill directory

Use the plugin install below or clone the repository into your agent's skills directory. Keep SKILL.md with references/patterns.md: the entry file loads the catalog before auditing. The bundled scripts/, detector/, and examples/ provide optional mechanical verification.

For a single-file rules field, use dist/avoid-ai-writing.md. It includes every rule and profile, with manual fallbacks for commands unavailable outside the bundle. Do not copy the slim entry file alone. Older installers that fetch only root SKILL.md omit its required reference; use a directory install instead.

Claude Code

Option 1: Clone into skills directory

git clone https://github.com/conorbronsdon/avoid-ai-writing ~/.claude/skills/avoid-ai-writing

Option 2: Copy a self-contained file

Download dist/avoid-ai-writing.md and place it in any directory that Claude Code can read. Reference it in your CLAUDE.md:

- Editing for AI patterns → read `path/to/avoid-ai-writing.md`

Option 3: Use as a slash command

Create a command file (e.g., ~/.claude/commands/clean-ai-writing.md):

---
description: Audit and rewrite content to remove AI writing patterns
---

$ARGUMENTS

Read and follow the instructions in ~/.claude/skills/avoid-ai-writing/SKILL.md

Then use /clean-ai-writing <your text> in Claude Code.

Claude Cowork — install as a plugin

Cowork loads skills only from installed plugins — it doesn't scan ~/.claude/skills/, so a bare clone (the Claude Code steps above) won't be discovered there. This repo doubles as a single-plugin marketplace, so install it as a plugin instead:

/plugin marketplace add conorbronsdon/avoid-ai-writing
/plugin install avoid-ai-writing@conorbronsdon-skills
/reload-plugins   # or restart the session, to activate the skill

In the Cowork desktop app, do the same from Customize → Plugins → Add marketplace from GitHub (conorbronsdon/avoid-ai-writing), then install avoid-ai-writing. The skill auto-triggers from phrases like "remove AI-isms." New releases arrive when the plugin's version is bumped — run /plugin marketplace update to pull them.

The same plugin install works in Claude Code if you'd rather have a versioned, updatable plugin than the file clone above.

Prefer not to install a plugin? Copy dist/avoid-ai-writing.md into a folder connected to your Cowork session and tell the agent to follow ./avoid-ai-writing.md — works as a one-off, no auto-trigger.

OpenClaw

Option 1: Install from ClawHub

clawhub install avoid-ai-writing

Option 2: Clone into skills directory

git clone https://github.com/conorbronsdon/avoid-ai-writing ~/.openclaw/skills/avoid-ai-writing

Cursor

Drop the ported rule into your project's .cursor/rules/:

mkdir -p .cursor/rules
curl -o .cursor/rules/avoid-ai-writing.mdc \
  https://raw.githubusercontent.com/conorbronsdon/avoid-ai-writing/main/cursor-rules/avoid-ai-writing.mdc

See cursor-rules/README.md for activation globs and trigger phrases. Functionally identical to the Claude Code skill — same tier vocabulary, same context profiles, same modes.

Hermes

Drop the skill into Hermes's skills directory — it then appears automatically as /avoid-ai-writing, no registration needed:

git clone https://github.com/conorbronsdon/avoid-ai-writing ~/.hermes/skills/writing/avoid-ai-writing

OpenAI Codex

Codex reads Agent Skills in the same SKILL.md format. Put it in .agents/skills/ at the repo root, or ~/.agents/skills/ to use it across all your projects:

git clone https://github.com/conorbronsdon/avoid-ai-writing .agents/skills/avoid-ai-writing

Native ChatGPT and Codex plugin package

Published in the OpenAI Plugins Directory; install it there for ChatGPT or Codex.

The plugin package keeps the canonical SKILL.md as its editorial authority and provides seven focused Skills:

Build and validate the package with:

python3 scripts/package-openai-plugin.py . /tmp/avoid-ai-writing.zip --json
python3 scripts/validate-openai-plugin.py . --json

Other agents

The generated dist/avoid-ai-writing.md (or the Cursor .mdc port) drops into most tools' rules/skills location:

Tool Where to put it
Windsurf .windsurf/rules/avoid-ai-writing.md
Cline .clinerules/avoid-ai-writing.md
GitHub Copilot (VS Code) paste into .github/copilot-instructions.md
Claude.ai Projects paste dist/avoid-ai-writing.md into the project's custom instructions
ChatGPT Custom GPTs paste dist/avoid-ai-writing.md into the GPT's Instructions field

Triggering the skill

Once installed, ask your assistant to clean up AI writing:

In rewrite mode (default), the skill returns four sections:

  1. Issues found — every AI-ism identified, with the text quoted
  2. Rewritten version — clean version with all AI-isms removed
  3. What changed — summary of the major edits
  4. Second-pass audit — re-reads the rewrite and catches any surviving tells

In detect mode, the skill returns two sections:

  1. Issues found — every AI-ism identified, grouped by severity (P0/P1/P2)
  2. Assessment — which flags are clear problems vs. patterns that may be intentional or effective in context

Trigger detect mode with: "detect," "flag only," "audit only," "just flag," "scan," or similar.

Pattern reference

Representative examples from the catalog — not the exhaustive list (that's SKILL.md). The skill's human-facing prose catalog and the detector engine use different counts on purpose: the engine implements 54 type categories because it splits the vocabulary tiers and adds stylometric/fingerprint signals (punctuation distribution, function-word entropy, bypass-trick detection) that work as math over a document rather than as a rule you'd look up. The two are mapped in detector/CATEGORIES.md; don't "fix" one count to match the other.

Content Patterns

# Pattern Before After
1 Significance inflation "marking a pivotal moment in the evolution of..." "was founded in 2019 to solve X"
2 Notability name-dropping "cited in NYT, BBC, and Wired" "In a 2024 NYT interview, she argued..."
3 Superficial -ing analyses "symbolizing... reflecting... showcasing..." Replace with specific facts or cut
4 Promotional language "nestled within the breathtaking region" "is a town in the Gonder region"
5 Vague attributions "Experts believe it plays a crucial role" "according to a 2019 survey by Gartner"
6 Formulaic challenges "Despite challenges... continues to thrive" Name the challenge and the response
7 Novelty inflation "He introduced a term I hadn't heard before" "He walked through how X works in practice"

Language Patterns

# Pattern Before After
8 Word/phrase replacements (3 tiers) "leverage... robust... seamless... utilize" "use... reliable... smooth... use"
9 Copula avoidance "serves as... features... boasts" "is... has"
10 Synonym cycling "developers... engineers... practitioners... builders" "developers" (repeat the clear word)
11 Template phrases "a [adj] step towards [adj] infrastructure" Describe the specific outcome
12 Filler phrases "In order to," "Due to the fact that" "To," "Because"
13 False ranges "from the Big Bang to dark matter" List the actual topics
14 Parenthetical hedging "tools (like X and Y)" Name them directly or cut

Structure Patterns

# Pattern Before After
15 Formatting Em dashes (— and --), bold overuse, emoji headers, bullet-heavy Commas/periods, prose paragraphs
16 Sentence structure "It's not X, it's Y" + hollow intensifiers + hedging Direct positive statements
17 Structural issues Uniform paragraphs, formulaic openings, too-clean grammar Varied length, lead with the point
18 Transition phrases "Moreover," "Furthermore," "In today's [X]" "and," "also," or restructure
19 Inline-header lists "Speed: Speed improved by..." Write the point directly
20 Title case headings "Strategic Negotiations And Partnerships" "Strategic negotiations and partnerships"
21 Numbered list inflation "Here are 7 reasons why..." Cut to the 2-3 that matter
22 False concession "While X has limitations, it's still remarkable" State the real tradeoff
23 Rhetorical question openers "What if there were a better way to...?" Lead with the claim

Communication Patterns

# Pattern Before After
24 Chatbot artifacts "I hope this helps! Let me know if..." Remove entirely
25 "Let's" constructions "Let's explore," "Let's break this down" Just start with the point
26 Cutoff disclaimers "While details are limited in available sources..." Find sources or remove
27 Generic conclusions "The future looks bright," "Only time will tell" Specific closing thought or cut
28 Emotional flatline "What surprised me most," "I was fascinated to discover" Earn the emotion or cut the claim
29 Reasoning chain artifacts "Let me think step by step," "Breaking this down" State conclusion, then evidence
30 Sycophantic tone "Great question!", "You're absolutely right!" Remove entirely
31 Acknowledgment loops "You're asking about," "To answer your question" Just answer directly
32 Confidence calibration "It's worth noting," "Interestingly," "Surprisingly" Let the fact speak for itself

Meta Patterns

# Pattern Before After
33 Excessive structure 5 headers in 200 words, "Overview:", "Key Points:" Merge sections, use specific headers
34 Rhythm and uniformity All sentences 15–25 words, all paragraphs same length Mix short/long, fragments, questions
35 Over-polishing Every irregularity sanded away, perfectly uniform prose Keep natural disfluency, varied rhythm
36 Rewrite-vs-patch threshold 5+ vocabulary flags + 3+ pattern categories + uniform rhythm Advise full rewrite, not patching

Structural Detection (v3.4)

Added in v3.4 to catch LLM output that sidesteps the vocabulary tables by substituting synonyms but still leans on structural shapes detectors can identify. Crypto/web3/AI-infra content is where these patterns concentrate most heavily, but the rules generalize to any social-length post.

# Pattern Before After
37 Tier 3 phrases (multi-word boilerplate) "the integration of," "decentralized compute," "community-driven," "long-term sustainability" stacked across a piece Replace the repeated phrase with a specific claim, or vary genuinely. Flagged per-phrase at ≥2 hits, or as a cluster when ≥3 distinct phrases appear
38 Future-narrative closers "may become one of the most important narratives of the next market cycle" Pick the falsifiable version. "X may exceed Y by 2027" is a prediction; the template form is not
39 Hedge-stacked predictions "could potentially create," "may eventually unlock" Pick one. Each hedge cancels the next
40 "Real/actual" adjective inflation "real on-chain tokenomics," "actual reward sustainability" Drop the empty intensifier and add the specific claim. Carve-out: "real on-chain settlement, not bridged IOUs" is honest contrastive writing — the AI tell is the unsaid contrast
41 Hashtag stuffing 15-tag trailing block: #AI #Crypto #Web3 #Innovation #FutureTech… 2-3 specific tags max, or none. Empirical threshold: 6+ tags is near-universal in LLM social output, rare in thoughtful human posts
42 Bullet lists of bare noun phrases * Stable mining efficiency / Reliable pool connectivity / Optimized RandomX performance / Low failed share rates / Effective hardware utilization / Consistent thermal stability Convert to prose, or rewrite each item as a full claim with a verb and a number. Carve-out: genuine list content (changelogs, parameter docs, ingredient lists) where bare NPs are correct

AI-tool fingerprints & later additions (v3.5–3.8)

# Pattern Before After
43 Unfilled placeholders [Your Name], [INSERT SOURCE], 2025-XX-XX Fill in with real content or delete — shipped placeholders are a near-definitive tell
44 Chatbot citation markup citeturn0search0, oai_citation, contentReference[oaicite:0] Strip the markup token entirely
45 AI-tool URL parameters utm_source=chatgpt.com, utm_source=copilot.com Strip the tracking parameter; keep the URL if the link matters
46 Speculative gap-filling "maintains a low profile," "likely began his career" Cut the guess, or replace with a sourced fact
47 Hyphenated modifier stacking "a high-quality, well-architected, future-proof solution" Cut to the modifier that matters; the individual hyphens may be correct
48 Infomercial engagement hooks "T

avoid-ai-writing (conorbronsdon/avoid-ai-writing)

Searching Database…

Что это такое?Переносимый навык для письма, который проверяет текст на «паттерны письма ИИ» (штампы вроде слов-паразитов, избегание связки «быть», рекламные формулировки) и переписывает его так, чтобы он звучал по-человечески, или только отмечает проблемы, ничего не меняя.
Это промпт, плагин или что-то другое?Это навык агента в виде каталога (SKILL.md, справочник паттернов и скрипты), а не разовый промпт. Он работает у любого агента, совместимого с agentskills.io, как навык, плагин или перенесённый файл правил.
Как мне это установить и использовать?Склонируйте репозиторий в каталог навыков вашего агента (например, в папку skills Claude Code) или используйте отдельный файл dist/avoid-ai-writing.md для инструментов, которые не поддерживают навыки в виде каталогов. Claude Cowork, OpenClaw, Cursor, Hermes и Codex имеют свой способ установки, описанный в README.
Какие агенты для программирования поддерживаются?Claude Code, Claude Cowork (как плагин), OpenClaw, Cursor (как перенесённое правило), Hermes, OpenAI Codex, а также Windsurf, Cline, GitHub Copilot, Claude.ai Projects и ChatGPT Custom GPTs через сгенерированный файл.
Работает ли это с любыми файлами, например с кодом?Нет — исходный код, конфигурации и сгенерированные данные не обрабатываются, потому что переписывание прозы может повредить структурированное содержимое; навык трогает только текстовые файлы.
Кому это нужно?Всем, кто пишет с помощью ИИ-ассистента и хочет, чтобы текст читался как написанный человеком: блогерам, маркетологам, разработчикам, пишущим документацию, или тем, кто правит черновики, сгенерированные ИИ.
В чём разница между режимами rewrite, detect и edit?Rewrite (по умолчанию) отмечает и исправляет ИИ-паттерны, а затем проходит текст второй раз, чтобы поймать оставшиеся. Detect только отмечает паттерны, не меняя текст; это полезно, когда отмеченный оборот может быть намеренным. Edit правит текстовый файл на месте через инструмент Edit, вносит точечные минимальные изменения и возвращает отчёт вместо всего файла.
Size
5.7 MB
Stars
5.1K
Age
7mo
Commits · 90 Days