avoid-ai-writing is a free, open source ai development platforms project written in JavaScript and released under MIT. It has 4,450 GitHub stars, 393 forks and 52 open issues, and was last pushed 28 hours ago. On this registry it ranks #90 of 116 tracked projects in AI Development Platforms, with 5 head-to-head comparisons available.

What is avoid-ai-writing?

A portable writing skill for Claude Code, OpenClaw, Hermes, and any other agentskills.io-compatible agent that audits and rewrites prose to remove AI writing patterns, aimed at writers, editors, and engineers who want machine-drafted text to stop reading like machine-drafted text.

What it is

avoid-ai-writing is an agent skill that inspects content for "AI-isms" and rewrites it to remove them. It ships as a skill directory rather than a standalone application, which means it runs inside a host agent: Claude Code, Claude Cowork, OpenClaw, Cursor, Hermes, and OpenAI Codex are all supported, along with any other agent that follows the agentskills.io convention. A companion detector, published to npm as avoid-ai-writing-detector, scores a file or piped text from the command line so the same pattern set can be checked without an agent in the loop.

The concrete problem it solves is that generated prose carries recognizable tics, and prompting an agent to "fix it" tends to trade one set of tics for another. The skill replaces that ad hoc prompting with a structured pattern reference and a controlled editing budget. Its pattern catalogue spans Content, Language, Structure, Communication, and Meta patterns, and it has been extended over several versions with Structural Detection in v3.4, AI-tool fingerprints through v3.5 to v3.8, conversational-register patterns in v3.15, share-post framing in v3.20, narrated candor in v3.21, and unnecessary hyphenation in v3.24.

Key capabilities

  • Rewrite mode, the default, flags AI patterns, applies up to two editing passes, verifies the result where possible, and returns a single final version.
  • Detect mode flags AI patterns without rewriting anything, and separates flags that are real problems from those that are judgment calls.
  • Edit mode changes a prose file in place through the Edit tool, using minimal targeted edits and preserving passages that already read as human.
  • Edit mode refuses source code, configuration files, and generated data, because prose rewrites can corrupt structured content, and returns an edits-made plus verification report instead of the full file.
  • --iterate 1|2 sets the editing-pass ceiling, where 1 permits the initial rewrite only and 2 is the default maximum of an initial rewrite plus one correction or preservation repair, with early exit when no justified in-scope edit remains.
  • Voice profiles of casual, professional, technical, warm, and blunt control how the prose should sound, independently of the audience context profile.
  • The avoid-ai-writing-detector package scores a file or piped text from the command line, and the repository runs that detector through a GitHub Actions workflow, detector-test.yml.

Who uses it and how

  • Claude Code users install the complete skill directory into their skill path and trigger it during a writing or editing session.
  • Claude Cowork users install the same skill as a plugin rather than as a directory.
  • OpenClaw, Cursor, Hermes, and OpenAI Codex users run the skill through those agents, with a native ChatGPT and Codex plugin package provided for that route.
  • Anyone working in an agentskills.io-compatible agent can install the skill directory and get the same three modes without agent-specific setup.
  • Teams that want the pattern check outside an agent score files or piped text with the npm detector, which also backs the repository's own detector test workflow.

Getting started

Install the complete skill directory into the target agent, or install it as a plugin for Claude Cowork and the native ChatGPT and Codex package; install avoid-ai-writing-detector from npm when only the command-line scorer is needed.

How it compares

No comparable tool is named in the facts, so this skill stands alone in this registry rather than sitting alongside a set of alternatives. It is also a skill rather than an application: it has no hosted service, and its behaviour depends on the host agent that executes it.

When to use it — and when not to

Nothing has to be self-hosted here, because the project is a skill directory plus an npm package with no database, storage, or mail service to operate, and its MIT licence keeps reuse straightforward. It is the wrong choice for anyone who needs deterministic, build-blocking lint rules over source code, since it deliberately refuses source, configuration, and generated data and treats part of its own output as judgment calls rather than verdicts. The repository shows 52 open issues and heavy pattern growth across many versions, so expect the pattern set to keep shifting under you.

project readme (upstream, from github) — read inline

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 npm version detector Podcast X


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:

  • Rewrite (default) — flags AI patterns, applies up to two editing passes, verifies the result when possible, and returns one final version.
  • Detect — flags AI patterns without rewriting. Shows which flags are real problems vs. judgment calls. Useful when patterns might be intentional, when auditing content you don't want altered, or when you just want a quick scan.
  • Edit — edits a prose file in place (via the Edit tool) with minimal, targeted changes, preserving passages that are already human. Source code, configuration, and generated data are refused because prose rewrites can corrupt structured content. Returns an edits-made + verification report, not the full file.

Use --iterate 1|2 to set the editing-pass ceiling. --iterate 1 allows the initial rewrite only. --iterate 2 uses the default maximum of an initial rewrite plus one correction or preservation repair, and stops early when no justified in-scope edit remains. Checks do not consume a pass, but any change they prompt does. The skill reports how many editing passes it used and any intentional, protected, or unresolved finding.

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

Table of contents

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!

Final rewrite:

Acme Analytics, a Boulder-based startup, raised a $40M Series B. Its observability platform has real-time dashboards, runs queries in under a second, and includes an integration layer.

Verification: One editing pass. Review found no further justified in-scope edit; no deterministic preservation check ran in this prose-only demo.

What it caught: the chatbot opener ("Certainly!"), promotional modifiers, inflated significance, roundabout verbs, vague attribution, and the generic conclusion. The rewrite keeps the funding, location, and three product capabilities. It removes the unsupported market prediction without inventing an investor or an integration mechanism.

Why a skill, not just a prompt

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

  • Single final rewrite — completes its audit, correction, and available verification before returning one full version. A short change summary follows when useful; a detailed audit remains available on request without adding a competing draft.
  • Two-pass editing — review can catch patterns that survive the first edit, while one shared limit covers both corrective edits and preservation repairs.
  • 112-entry word replacement table across 3 tiers + 10 Tier 3 phrases — not vibes-based. Every flagged word has a specific, plainer alternative. "Leverage" → "use." "Commence" → "start." Tier 1 matches flag unless a listed exception applies, Tier 2 words flag when they cluster, Tier 3 words flag only at high density. Tier 1 itself splits into 1A frequency markers (delve, tapestry) and 1B clarity edits (in order to, utilize) — same fix, but only 1A is evidence about how a passage was produced, and 1B is weighted lower so a wordiness fix cannot push a document toward an AI classification. Tier 3 phrases (multi-word boilerplate like "the integration of," "decentralized compute") flag on per-phrase repetition or when 3+ distinct phrases stack in one piece — the LLM-self-varies-boilerplate shape.
  • 74 pattern categories — representative examples below, each with before/after. Includes structural detection (hashtag stuffing, bare-NP bullet lists, hedge-stacked predictions), AI-tool fingerprints (placeholders, citation markup, UTM params), rhythm/uniformity checks, conversational-register tells, and writer-side tests. The full catalog lives in references/patterns.md; this count is enforced against it in CI.
  • Detect mode — flag patterns without rewriting. See which flags are real problems vs. judgment calls. Useful when patterns might be intentional or you're auditing content you don't want altered.
  • Works across platforms — a directory-based skill runs in Claude Code, Cowork (as a plugin), OpenClaw, Cursor (as a ported rule), and other directory-aware agents. See the install paths below.

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

**Op

readme truncated — read the full docs on github

Frequently asked questions

Is avoid-ai-writing free to use?

avoid-ai-writing is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does avoid-ai-writing do?

Skill that audits and rewrites content to remove AI writing patterns. Use it with your favorite agents including Claude Code, OpenClaw, Codex, and Hermes.

What is avoid-ai-writing written in?

avoid-ai-writing is primarily written in JavaScript. Its source is publicly available at https://github.com/conorbronsdon/avoid-ai-writing, and it has 4,450 GitHub stars.