Skip to content
Back to skills

Ai Writing Detector

ASecurity

Use when the user asks to detect, scan, audit, score, or flag AI-writing patterns without rewriting the text, including requests for a deterministic local detector result when the host can execute Node.

  • 4,853 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 5, 2026
ai-agentsgoshellbashnode

Works with

  • terminal

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned October 5, 2026

npx -y skills add conorbronsdon/avoid-ai-writing --skill ai-writing-detector --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ai Writing Detector?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Ai Writing Detector
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/conorbronsdon-ai-writing-detector/badge)](https://www.skillsdirectory.com/skills/conorbronsdon-ai-writing-detector)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: ai-writing-detector
version: 3.37.0
license: MIT
description: Use when the user asks to detect, scan, audit, score, or flag AI-writing patterns without rewriting the text, including requests for a deterministic local detector result when the host can execute Node.
---

# AI Writing Detector

Run a detect-only review using the original Avoid AI Writing rules. Never rewrite unless the user changes the request.

## Authority

The canonical rulebook is `../avoid-ai-writing/SKILL.md`. Its cautions about false positives, context, protected material, and authorship claims apply here.

For cross-Skill work, follow `../avoid-ai-writing-router/references/handoff-contract.md` and the typed edges in `../avoid-ai-writing-router/references/skill-graph.json`.

## Connection contract

### Incoming

Accept detector work from:

- `avoid-ai-writing-router` via `ROUTE` for detect-only requests, the audit stage of a multi-stage request, or fresh signal collection after another terminal stage returns control to the router.
- `preservation-verifier` via bounded `RECHECK` only when convergence or residual auditing was part of the request.

Do not accept a direct handoff from `false-positive-reviewer`. That Skill is terminal in the graph and must return control to `avoid-ai-writing-router` when fresh signal collection is needed. This prevents a reviewer-detector cycle.

Carry forward the canonical `context_profile` separately from the detector's `context_mode`, along with protected constraints, pass state, and risk flags. Do not collapse or reset them.

### Produce

Update the handoff envelope with:

- `execution_evidence.detector`: `executed` only if the bundled detector actually ran, otherwise `model_only`.
- `detector_summary.score` and `label` only when produced by executed detector code.
- `detector_summary.issue_types` from actual findings.
- any `consequential_authorship_claim` risk flag observed in the user's request.

### Outgoing

- `FEED` findings to `voice-preserving-rewriter` only when the user also requested returned-text rewriting.
- `FEED` findings to `file-edit-in-place` only when the user explicitly requested mutation of a named file.
- `ESCALATE` to `false-positive-reviewer` when the user asks what the findings can establish about authorship or another consequential conclusion.
- Otherwise stop after the detect-only result.

Deterministic hits are candidate matches. Keep the engine's public issue types
and scores intact, then apply the canonical context exceptions and pass
conditions when deciding which hits are justified editorial findings. Neither
kind of result is a mandatory edit instruction or authorizes a mutation.

## AI-engineering evidence lens

Apply the `agency-ai-engineer` lens encoded in `../avoid-ai-writing-router/references/agency-role-lenses.md`:

- keep deterministic output separate from model-only observations,
- preserve the selected context profile and detector mode through downstream handoffs,
- treat score and label as signals rather than ground truth,
- consider false positives and genre/register effects,
- never convert pattern detection into an authorship classifier claim.

## Preferred path

When the current host can execute Node safely:

1. Pass the supplied text to `scripts/detect.js`.
2. Use `--context technical` for code-adjacent or technical prose when appropriate. Otherwise use `general`.
3. Use `--source-mode rendered-markdown` for Markdown that carries YAML frontmatter or HTML comments, so unedited metadata is not scored as the author's prose. Otherwise leave the default `plain`.
4. Report the detector's score, label, issue types, severity, matched text, and suggestions.
5. Separate deterministic candidate matches from justified editorial findings and observations that only exist in the full rulebook.
6. Never claim execution unless the command actually ran.

Example:

```bash
printf '%s' "$TEXT" | node scripts/detect.js --context general
```

For a file:

```bash
node scripts/detect.js --file path/to/draft.md --context general
```

For Markdown with frontmatter or HTML comments:

```bash
node scripts/detect.js --file path/to/draft.md --source-mode rendered-markdown
```

If Node or shell execution is unavailable, perform the detect-only workflow from the canonical `avoid-ai-writing` Skill and explicitly say the deterministic detector was not run.

## Stop conditions

Stop here when the request is detect-only. Do not continue into rewrite, file mutation, or interpretation merely because those Skills are available.

A residual `RECHECK` may run once when requested. It is read-only and does not consume an editing pass; any change it prompts must fit within the requested editing-pass limit, capped at two, and the graph's loop policy.

## Output

Return the overall label and score when executed, detected candidate matches grouped by severity, a short contextual assessment that distinguishes justified findings from plausible false positives, execution status, and no rewritten version unless control has explicitly passed to a rewrite owner.

Files in this skill

  • SKILL.md4.1 KB
  • agents/openai.yaml285 B
  • scripts/detect.js950 B

Attribution

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

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.