saiken106 downloadsLive readability and style marks in the editor: passive voice, adverbs, hedges, long sentences, and a Flesch reading grade. Works fully offline.
Tighten bloated drafts into cleaner copy without leaving Obsidian.

Works offline · Pay once · Unlimited updates · No account
Prose Lens gives Obsidian a real editorial pass. It surfaces filler, repetition, hedges, weak claims, and long sentences while you revise — so the draft gets sharper before it leaves the note.

Prose Lens never writes to your notes. It only highlights. Disable it and every character stays exactly where you left it.
Most writing tools for Obsidian fail in one of two ways:
Prose Lens fixes both.
You keep drafting in Obsidian, and the plugin only analyses actual prose. Code fences, inline code, math, frontmatter, URLs, wikilinks, headings and table rows are masked before any rule runs.
That means:
const was_deleted = obviously(x) is not flagged as passive voice with an adverb.If a tool flags your code block, your URL and your wikilink title as bad writing, it is not being strict — it is linting Markdown instead of prose. That is the problem the masking layer exists to solve, and it is the reason the highlights are worth reading at all.
Each rule has its own colour and its own underline shape, so the marks stay distinguishable without colour and in high-contrast mode. The panel shows the same key, with a live count for the note you are in.
| Mark | Looks like | What it catches |
|---|---|---|
| Adverbs | solid | -ly words. A stronger verb usually beats one. |
| Passive voice | double | Be-verb plus past participle. Conservative by design. |
| Hedges | dotted | maybe, somewhat, I think — the qualifiers that weaken a claim. |
| Weasel words | dashed | many, clearly, significantly — claims with nobody behind them. |
| Clichés | thick dashed | Phrases the reader's eye slides over. |
| Doubled words | wavy | the the. |
| Long sentences | tinted, with a left bar | Sentences past your threshold, with a second tier for the real wall-of-text monsters. |
Free is meant to stand on its own, not act like a crippled demo. Every mark in the table above is free, and so is the grade. There are no caps, no note limit, no session limit and no nag screen — and a switch that hides the Pro sections completely if you never want to see them.
| Feature | Free | Pro |
|---|---|---|
| All seven style marks | ✓ | ✓ |
| Mark legend with live counts, click to walk them | ✓ | ✓ |
| Reading grade in the status bar | ✓ | ✓ |
| Sentence-length heat | ✓ | ✓ |
| Rhythm map | ✓ | ✓ |
| Go to next / previous mark | ✓ | ✓ |
| De-slop marks | ✓ | |
| Echo detector | ✓ | |
| Revision delta | ✓ | |
| Focus mode | ✓ |
Pro adds the higher-leverage editorial tools:
De-slop is a highlighter, not an AI detector. It does not pretend to know who wrote a passage, and it will never produce a confidence percentage.
Prose Lens makes no network calls. Not for analysis, not for licensing, not for updates, not ever. Your draft is analysed inside the editor process and never leaves the machine — there is no server to send it to.
Pro license keys are verified offline with an Ed25519 signature bundled in the plugin. No account, no sign-in, no telemetry, no analytics.
The plugin also never writes to your notes. It only draws highlights. Ignored words and muted notes are stored in the plugin's own settings, never in your Markdown.
Listed as Optional payments in the Obsidian community directory: a free core plus a paid Pro unlock.
Is the free version actually useful on its own? Yes. Every mark in the table above is free, and so is the reading grade, the legend, the counts and the rhythm map. Pro adds editorial tools for people revising seriously, not the basics.
Does Prose Lens send my writing anywhere? No. There is no network code in the plugin at all — including the license check.
Is this a grammar or spell checker? No. It does not correct anything and never edits your note. It marks patterns that usually mean a sentence can be tightened, and leaves the decision to you. For grammar and spelling, LanguageTool and Harper are the right tools, and they sit happily alongside this.
The source is MIT — why pay? You are paying for the Pro features, an offline key, and for the plugin to keep improving. One purchase unlocks the paid tier and includes unlimited future updates.
Does de-slop detect AI writing? No, and it never claims to. It highlights specific phrasing — "it's worth noting," "a testament to," "delve," em-dash pile-ups. It produces no score and no percentage.
Will it work in my language? English only. Flesch and the syllable model are fitted to English; running them over another language produces confident nonsense, so the plugin does not pretend.
If Prose Lens marks something you would keep, right-click the word and ignore it, or turn the rule off in settings.
People who actually draft inside Obsidian: essay writers, bloggers, newsletter writers, students, fiction writers, and anyone writing client memos, proposals or documentation. It is especially useful if you care about privacy and hate pasting drafts into web tools.
Search for Prose Lens in Settings → Community plugins. One click, and it auto-updates.
Download main.js, manifest.json and styles.css, then copy them into
.obsidian/plugins/prose-lens/ and enable the plugin.
No default hotkeys. Bind whatever you like.
Bugs and feature requests: github.com/israerusan/prose-lens/issues.
Not the right fit for your workflow? Email within 14 days of purchase for a refund, no argument.
npm install
npm run dev
npm test
npm run build
The linguistic core in src/core/*.mjs is pure JavaScript with no obsidian import and no
runtime dependency on the app, so the rule engine can be tested under plain Node without
mocking the entire editor.
MIT. See LICENSE.