Download ZIP Propose a change
Name Last commit message Last updated
bin Publish 0.1.0 19d ago
docs Publish 0.1.0 19d ago
install.sh Publish 0.1.1 19d ago
package.json Publish 0.1.3 19d ago
page.json Publish 0.1.3 19d ago
README.md Publish 0.1.3 19d ago
SKILL.md Publish 0.1.0 19d ago
uninstall.sh Publish 0.1.1 19d ago

Prose Lint

The deterministic house-style linter for Adom copy. It flags em-dashes and the tics that make AI-written text read as AI-written, so anything we ship (READMEs, wiki pages, release notes, chat announcements, UI strings) sounds like a person wrote it.

prose-lint is the mechanical half of the house style. The judgment half lives in the prose-style skill; read that for how to rewrite what this flags.

Install

adom-wiki install adom/prose-lint

Ships as part of adom/core, so a normal Adom workstation already has it. Needs Node 16+ (already present on Adom containers).

Usage

prose-lint README.md                  # lint one or more files
prose-lint docs/*.md                   # globs
cat page.md | prose-lint               # or stdin
prose-lint --fix README.md             # apply safe 1:1 word swaps in place
prose-lint --strict page.md            # fail on ANY finding, not just em-dashes
prose-lint --json page.md              # { status, data, hints[] } for machines

Exit codes: 0 clean or soft-only, 1 hard findings (em-dashes / spaced --), 2 usage error. --strict makes any finding fail (useful in CI / publish gates).

What it flags

Severity Rule Example
hard em-dash, en-dash-in-prose, spaced -- a game-changer — really
warn tell-words delve, seamless, robust, leverage, utilize, showcase, in-depth, myriad
warn boilerplate cadence "it's not just X, it's Y", "in today's world", "when it comes to", "plays a pivotal role"
info filler "in order to", "a variety of", empty intensifiers

It is markdown- and code-aware. It will not flag a --flag in a code span, a number range like 2-5 V, a URL, or YAML front matter, so it is safe over mixed prose + code files.

Wiring it into a publish flow

Run it non-blocking before publishing and show the findings:

prose-lint page.md || true   # advisory: print findings, never abort the publish

Or gate hard in CI with --strict when you want zero tolerance.