Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

De Ai Revise

ASecurity

ALWAYS use when prose needs to stop sounding machine-written — 'de-AI this', 'make it sound less like AI', 'this reads like ChatGPT wrote it', 'remove the AI-isms', 'de-tic this draft', 'humanize the prose', 'fix the AI writing tells', 'less AI-sounding', 'this doesn't sound like me', 'too many em-dashes and tricolons', 'it reads robotic', 'just flag the AI tells in this'. Use as the standard AI-prose pass before any draft ships, even if the user only says 'clean up the writing'. NEGATIVE ROU...

21 stars
0 votes
0 copies
0 views
Added 9/19/2026
researchpythonrustgobashdebugging

Security Analysis

A100/100

Scanned 9/19/2026

Install to Claude Code

$npx -y skills add edwinhu/workflows --skill de-ai-revise --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of De Ai Revise?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for De Ai Revise
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/edwinhu-de-ai-revise/badge)](https://www.skillsdirectory.com/skills/edwinhu-de-ai-revise)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: de-ai-revise
description: "ALWAYS use when prose needs to stop sounding machine-written — 'de-AI this', 'make it sound less like AI', 'this reads like ChatGPT wrote it', 'remove the AI-isms', 'de-tic this draft', 'humanize the prose', 'fix the AI writing tells', 'less AI-sounding', 'this doesn't sound like me', 'too many em-dashes and tricolons', 'it reads robotic', 'just flag the AI tells in this'. Use as the standard AI-prose pass before any draft ships, even if the user only says 'clean up the writing'. NEGATIVE ROUTING: this is the skill that EDITS the draft, and it runs detect-only on the same scorers when asked to scan rather than fix; reading the tic tables or asking what counts as an AI tell is ai-anti-patterns; validating a candidate phrase against the human corpus or adding a linter rule is ai-tic; grading a whole draft against the domain register and prose-quality rules is the writing-reviewer agent; judging whether text WAS AI-written is nobody's job here — this renders no verdict on authorship."
allowed-tools: Read, Edit, Write, Bash, Grep, Glob
---

# de-ai-revise — make prose read less AI-generated

**What this skill carries** — grep `references/` for any subject the names below miss:
!`d=${CLAUDE_SKILL_DIR}; command -v skill-toc >/dev/null 2>&1 && exec skill-toc "$d"; s=$HOME/.claude/skills/plugin-utils/bin/skill-toc; [ -x "$s" ] && exec "$s" "$d"; echo "(skill-toc unavailable: references and scripts are NOT listed here — install the plugin-utils plugin, or start a new session so its bin/ reaches PATH)"`

A writing-**improvement** tool. It audits a draft with three corpus-validated
scorers, then rewrites only the flagged spans so the prose reads less like an LLM
wrote it — plainer diction, burstier rhythm, fewer machine tics — while leaving
already-human passages untouched.

This is the GENERATION side of the AI-writing apparatus, not detection. Detecting
polished AI was proven near-impossible (60%+ false-positive rates on real human
writing); this skill never renders a verdict on authorship. It improves readability
for a human reader. The scorers GUIDE which spans to revise; they are not a target
to maximize.

**This is a BACKSTOP, not the main event.** The primary lever for human-reading prose is the
GENERATION contract upstream — writing-draft now drafts topic-sentence-led and *proportional*
(varied paragraph/sentence length), which is what produces human burstiness in the first place. A
draft generated well needs little here. If de-ai-revise is finding a lot, the fix usually belongs
upstream (the outline's POINTs aren't real topic sentences, or the draft padded uniformly), not in
a heavy span-by-span rewrite here. Use this to catch residue, not to manufacture rhythm a flat draft
never had.

<law>
## The Iron Law of Goodhart

**THE SCORERS GUIDE; THEY DO NOT GRADE. NO EDIT THAT IMPROVES A NUMBER BUT NOT THE
READING. This is not negotiable.**

A human reads the output. Mechanically maxing burstiness (chop every sentence),
nuking every em-dash, or swapping every flagged word degrades prose to win a
composite — that is the failure this skill exists to prevent. Revise a span only
when the rewrite reads better to a person. Leave a flagged span alone when the
author's choice is the right one (see Preserve-Human below).
</law>

## The three scorers (all corpus-gated — do NOT re-derive)

`scripts/de_ai_audit.py` folds them into one line-anchored span list. Every signal
was gated against a 14.3M-sentence law+finance corpus, so flags are AI defaults
real scholars don't write — not generic "fancy word" lint.

The scorers themselves now live in `${CLAUDE_PLUGIN_ROOT}/scripts/prose-audit.py`, the plugin's single deterministic
prose audit, and `de_ai_audit.py` is a thin wrapper over its `--profile de-ai` view. The output
shape below is unchanged and will stay that way — this skill needs the REWRITE view (a worklist of
spans with plain replacements), which is a different shape from the audit's severity-ranked,
id-bearing span list. Use `prose-audit.py` directly for anything that is not a de-AI rewrite: it
also carries the wikipedia AI-tell tables, the domain style guides, and the provenance-leak class
this profile is blind to.

| Scorer | Catches | Remedy |
|--------|---------|--------|
| **Scored AI-tics** (`ai-anti-patterns/constraints/scored-tics-patterns.py`) | phrase/structure tics that passed the ~0-human-rate gate (`sev1-5`) | rewrite the construction; these have no honest use |
| **Tiered diction** (`references/diction.yaml`) | fancy→plain words, tiered by corpus rate | `always_flag` → swap on sight; `cluster` → fix when 2+/para; `density` → vary at saturation; `dropped` → **never touch** (legal-normal) |
| **British spelling** (`BRITISH` in `de_ai_audit.py`) | locale mismatch in US-register prose (`recognise`, `behaviour`, `whilst`, `labelled`) — LLMs emit these into US documents from mixed training corpora | swap for the US form; **drop the check for a UK-register document** |
| **Stylometrics** (`ai-anti-patterns/scripts/style_metrics.py`) | rhythm/structure: `composite_human_likeness` 0-100, em-dash, metronomic runs, opener transitions, nominalization, false precision, burstiness/passive advisories | vary sentence length toward bursty; em-dash → semicolon/period; plainer Latinate→Anglo-Saxon; round a summarising figure to a fraction |

## Modes

| Mode | Trigger | Behavior |
|------|---------|----------|
| **rewrite** (default) | "de-AI this", "make it less AI" | audit → rewrite flagged spans → one corrective 2nd pass → return an edits-made + verification report (NOT the whole file) |
| **detect-only** | "just flag", "scan", "what AI tells are in this", "audit only" | audit only; report flagged spans + composite/tic-density; no edits |
| **edit-in-place** | "fix `draft.md` directly", "clean the file in place" | minimal targeted Edits to the file; preserve already-human paragraphs; re-audit after |

Default to rewrite when unspecified.

## Process (the spec)

```
START
  │
  ├─ Step 1: AUDIT — run de_ai_audit.py --json on the target
  │     uv run --with pyyaml python3 ${CLAUDE_SKILL_DIR}/scripts/de_ai_audit.py --json <file>
  │     Read: composite_human_likeness, tic_density, spans[], advisories[]
  │
  ├─ detect-only? → report spans + signals, STOP.
  │
  ├─ Step 2: REWRITE the flagged spans (NOT the whole draft)
  │     - tic spans                 → rewrite the construction (no honest use)
  │     - diction:always_flag       → swap for the listed plain replacement
  │     - diction:cluster           → fix enough of the cluster to drop below 2/para
  │     - style:em_dash             → recast as semicolon / period / comma — but NOT all (see Preserve)
  │     - style:false_precision     → round to a high-level fraction ("1.3771 percent" → "about one
  │                                   and a half percent"); KEEP the exact value if the sentence sits
  │                                   next to the exhibit that reports it
  │     - advisories (burstiness)   → vary sentence length where it reads flat; do NOT chop for chop's sake
  │     PRESERVE already-human passages (no spans) untouched.
  │     PRESERVE quoted material, block quotes, code, footnote citations.
  │
  ├─ Step 3: ONE corrective 2nd pass
  │     Re-run de_ai_audit.py. Fix spans the first pass introduced or missed.
  │     STOP at 2 passes — a 3rd rarely finds more and costs a full regeneration.
  │
  └─ Step 4: REPORT (edits-made + verification), NOT the whole file
        - what changed and why (span → before → after, grouped by scorer)
        - before/after composite + tic-density (must improve or hold; if it dropped, you over-edited)
        - spans deliberately LEFT (author's voice / quoted / domain term) and why
```

If text and flowchart disagree, the flowchart wins.

## Preserve-Human (the other half of Goodhart)

The composite penalizes em-dashes hard, and real legal scholarship — including this
user's own published prose — uses them deliberately. Do NOT zero them out.

- **Em-dashes:** thin clusters and the clearest default-connector uses; KEEP em-dashes
  that set off a genuine appositive or a deliberate aside. Target *fewer*, not zero.
- **`dropped`-tier diction** (significant, robust, leverage, comprehensive, …): NEVER
  flag or swap — these are legal/finance-normal; the audit already excludes them.
- **Quoted text, block quotes, statutory language, party names, code, citations:** flag
  at most; never rewrite someone else's words or a term of art.
- **Footnotes are auto-excluded:** the audit MASKS pandoc inline `^[...]` and markdown `[^id]:`
  footnotes before scoring, so findings never land inside them (citation/legal-normal text). You
  will not see footnote spans to triage; if you ever do, do not edit them. (`--keep-footnotes`
  disables masking for debugging the raw signal only.)
- **British spelling in a genuinely UK-register document:** the check assumes US
  register. For a UK journal or an English court filing, ignore `spelling:british`
  entirely — do not "correct" an author writing in their own dialect.
- **A flagged span the author clearly chose** (a fragment for emphasis, a repeated key
  term over elegant variation): leave it; note it in the report.

## Fact rows

- The synthetic-AI baseline scores composite ~27 and tic-density 100; a real human
  legal draft scores ~55-65 with em-dashes as nearly the whole signal. So a composite
  in the 50s is NOT "AI" — it is a human who likes em-dashes. Treating the composite as
  a pass/fail bar instead of a span guide produces voice-destroying edits and is the
  exact failure the corpus tiering was built to prevent.
- `diction.yaml` `dropped` tier exists because "significant/robust/leverage" fire on
  every real law-review article; a linter that flags them is worse than none. The audit
  omits them — if you hand-flag one anyway, you reintroduced the false positive.
- The British-spelling map deliberately EXCLUDES words correct in both dialects —
  `analysis`, `characteristic`, `basis`, `emphasis`, `thesis`, `hypothesis`, and
  `practice`/`licence` as nouns. The -sis nouns are not the -ise verbs. Adding any
  of them turns the check into a false-positive generator, which is the exact
  failure the corpus tiering elsewhere in this skill exists to prevent.
- It matches STRICTLY (`\bword\b`), not via `_word_rx`, because every inflected
  form is enumerated. Using `_word_rx` made "recognise" also match inside
  "recognised" — two spans for one word, one carrying the wrong replacement.
- A 3rd rewrite pass regenerates the whole span set for ~0 new fixes (CAP AT 2). The
  built-in corrective pass IS pass 2; "iterate to convergence" does not stack on it.
- Em-dash count near zero after a de-AI pass is over-editing, not success: you optimized
  the metric and flattened the author's rhythm. Fewer, not none.

## Red Flags — STOP

- About to swap every flagged diction word → STOP. Cluster/density tiers are advisory;
  fix enough to clear the threshold, keep the ones that read right.
- About to delete every em-dash → STOP. Target fewer; keep deliberate appositives.
- About to rewrite a paragraph with zero spans because it "feels AI" → STOP. The audit
  found it human; trust the corpus over the vibe.
- About to run a 3rd rewrite pass → STOP. Cap is 2.
- About to return the whole rewritten file by default → STOP. Return the edits-made
  report unless the user asked for the full text.
- About to rewrite quoted/statutory text → STOP. Flag it; never alter someone else's words.

## When invoked inside the writing workflow

- **/writing-verify** runs `${CLAUDE_PLUGIN_ROOT}/scripts/prose-audit.py` on every draft before dispatching its prose
  reviewers and INJECTS the resulting spans into their prompts as evidence — the reviewer is not
  asked to run a scorer, and a reviewer that cites none of the hard spans it was handed is
  recorded as unreliable. Those spans become AI-ism findings (advisory minors unless they cluster
  into a major).
- **/writing-revise** applies this skill (rewrite mode) as a non-optional pass on every
  edited draft after fixing REVIEW.md issues, then re-audits. The substrate gate is
  unchanged: AI-prose spans are advisory polish, not blocking criticals.

Attribution

edwinhuedwinhu
View sourceMore from edwinhu →
SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Related Skills

Competitor Analysis

This skill provides comprehensive analysis of competitor SEO and GEO strategies, revealing what's working in your market and identifying opportunities to outperform the competition.

1823 votes

Deep Research

Universal deep research agent team. 13-agent pipeline for rigorous academic research on any topic. 7 modes: full research, quick brief, paper review, lit-review, fact-check, Socratic guided research dialogue, and systematic review with optional meta-analysis. Covers research question formulation, Socratic mentoring, methodology design, systematic literature search, source verification, cross-source synthesis, risk of bias assessment, meta-analysis, APA 7.0 report compilation, editorial review...

452202 votes

Paperclip Distill

Use when an operation issue is a Paperclip cursor-window, distill, or backfill — `operationType: "distill"` or `"backfill"` and the body references a Paperclip source bundle for a project or root issue. Turn raw Paperclip activity into a wiki-insightful project page, decisions log, and history note. This skill exists specifically to replace the stiff, datestamp-heavy templated output that the deterministic distiller produces.

798221 votes

Academic Pipeline

Orchestrator for the full academic research pipeline: research -> write -> integrity check -> review -> revise -> re-review -> re-revise -> final integrity check -> finalize. Coordinates deep-research, academic-paper, and academic-paper-reviewer into a seamless 10-stage workflow with mandatory integrity verification, two-stage peer review, and reproducible quality gates. Triggers on: academic pipeline, research to paper, full paper workflow, paper pipeline, end-to-end paper, research-to-publi...

452201 votes

Exa Search

Semantic search, similar content discovery, and structured research using Exa API

304951 votes
View all in research →