A standalone, pure-prompt skill that rewrites AI-sounding prose so it reads as
genuinely human, and rewrites in a specific writer's voice when a sample or
style profile is available. It is just instructions: SKILL.md plus a few
reference files. No scripts, no dependencies, no network access.
This skill was built from the voice-preservation logic that powers Scriveno (formerly Scriven), an AI-native longform writing system whose core promise is narrow and high-stakes: drafted prose should sound like the writer, not like AI. Scriveno is a spec-driven creative-writing, publishing, and translation pipeline for AI coding agents. It profiles a writer's voice, loads that Voice DNA into every drafting step, keeps each unit on fresh context, and runs a Polish pass (editor review, line and copy edit, voice check, originality check) so prose stays specific to the project instead of collapsing into generic machine output.
humanizer lifts the part of that pipeline that finds and removes AI writing
tells while protecting a writer's authentic voice, and packages it as a
standalone, tool-agnostic skill: the same de-slop, restraint, and
voice-matching philosophy Scriveno applies across a full manuscript, usable
on any prose in any supported tool. If you want the whole writing,
publishing, and translation pipeline rather than just this de-slop layer, see
Scriveno: https://github.com/aihxp/scriveno (npm package: scriveno-cli).
- Faithfulness over liveliness. A three-layer guard plus a mandatory meaning check stop the most common humanizer failure: inventing plausible facts, causes, or quotes to make a rewrite "sound concrete."
- Restraint by design. A density pre-check scales effort to evidence, and an explicit do-not-flag reference protects already-human writing instead of laundering it into smooth, average prose.
- Variance, not synonym-swapping. It targets the real signature of machine text (uniform rhythm) rather than relocating it with a thesaurus.
- Voice-first. When a writing sample or a
VOICE.md/STYLE-GUIDE.mdis present, it rewrites in that author's cadence and stance, not generic neutral prose. - Opt-in edge. A stance mode adds opinion and punch on explicit request, hard-blocked from inventing content.
A 32-pattern catalog in six families, each with detect / why / before-after / restraint notes: inflated significance, promotional and evasive language, formulaic structure, lexical tics, syntactic tics, and formatting artifacts, including chat-UI contamination, debunking-pose headings, and diff-anchored writing.
| Tool | File it reads | Install |
|---|---|---|
| Claude Code | SKILL.md |
cp -r this repo to ~/.claude/skills/humanizer/, or use the repo in-project |
| Cursor | .cursor/rules/humanizer.mdc |
Open this repo in Cursor, or copy .cursor/rules/humanizer.mdc + SKILL.md + references/ into your project |
| Codex | AGENTS.md |
Clone this repo into (or beside) your project; Codex reads AGENTS.md |
| Antigravity | AGENTS.md |
Same as Codex: keep AGENTS.md + SKILL.md + references/ in the workspace |
| Gemini CLI | GEMINI.md |
Keep GEMINI.md + SKILL.md + references/ in the project Gemini runs in |
| Pi Coder | AGENTS.md |
Point Pi Coder at this repo / its AGENTS.md |
| OpenCode | AGENTS.md or SKILL.md |
Copy the skill into OpenCode's skills directory, or keep AGENTS.md in the project |
| GitHub Copilot | .github/copilot-instructions.md |
Copy .github/copilot-instructions.md + SKILL.md + references/ into the target repository |
| Windsurf | .windsurfrules |
Keep .windsurfrules + SKILL.md + references/ in the project Windsurf opens |
| Cline | .clinerules |
Keep .clinerules + SKILL.md + references/ in the workspace Cline runs in |
| Continue | .continue/rules/humanizer.md |
Keep .continue/rules/humanizer.md + SKILL.md + references/ in the project |
| Zed | AGENTS.md or .continue/rules/humanizer.md |
Zed reads AGENTS.md (already present); the Continue rule also applies if used |
| Aider | CONVENTIONS.md |
aider --read CONVENTIONS.md, or set read: CONVENTIONS.md in .aider.conf.yml; keep SKILL.md + references/ in the repo |
Every adapter points the agent at the same SKILL.md and references/, so
the workflow is identical across tools. The simplest universal install is to
clone this repository into (or alongside) the project you are writing in.
Ask, in plain language, to humanize, de-slop, or fix prose that "reads like AI," "sounds corporate," or is "too generic," or to make a draft sound like you or a named author. You do not need to say the word "humanize."
For voice-matched output, do one of:
- paste a sample of the target writing,
- name a well-known author, or
- keep a
VOICE.md(schema inreferences/voice-matching.md) or aSTYLE-GUIDE.mdin the project; it is discovered automatically.
Every run returns the rewritten text plus a short report: what changed, what was deliberately left alone, a meaning check, and a next step.
This skill improves prose quality and authentic voice. It is not designed or tuned to defeat plagiarism checkers or AI-detection systems, and it names no detector. Requests framed as passing AI work off as a person's own for a graded or contractual assessment are reframed toward the quality-and-voice use the skill actually serves.
SKILL.md orchestrator: workflow, guardrails, output contract
AGENTS.md cross-tool entry point (Codex, Antigravity, OpenCode, Pi Coder)
GEMINI.md Gemini CLI context
.cursor/rules/humanizer.mdc Cursor project rule
.github/copilot-instructions.md GitHub Copilot instructions
.windsurfrules Windsurf rules
.clinerules Cline rules
.continue/rules/humanizer.md Continue / Zed rule
CONVENTIONS.md Aider conventions
references/tell-patterns.md the 32-pattern catalog (read in Pass 2)
references/do-not-flag.md false positives, human markers, stop conditions
references/voice-matching.md voice discovery and application
references/examples.md four worked end-to-end runs
evals/evals.json verification cases (not part of the runtime skill)
MIT. See LICENSE.