← SkillSafe / Text Rewriter

Rewrite it for whoever has to read it. Then check nothing went missing.

Plain English out of officialese. A cold email warmed up. The technical paragraph explained without the jargon. Four hundred words down to two hundred with the argument intact. What makes this different from any other rewriter is the second half: a diff and a fact check that run in your browser for nothing, so you can see what changed rather than take it on trust.

Each example ships with a saved run, so you can read a whole rewrite and its fact check without signing in or spending anything.

What this moves, and what it will not

Text Rewriter works along axes a style guide would recognise: formality, technicality, length, warmth, active or passive voice, reading age, and British versus American convention.

It does not rewrite text as an ethnic or racial dialect, a national accent, or a non-native speaker's English. That is a deliberate limit rather than a missing feature. Those requests produce a performance of a group of people assembled from stereotype, which is caricature rather than a change of register — and unlike shortening a sentence, there is no version of it that is merely useful. British and American English are in scope: they are spelling, punctuation and vocabulary conventions, not accents. A dialect discussed or quoted inside your source text is ordinary material, and quotations are never altered.

The text

You can also drop a .txt or .md file here.

The dials

Each dial says which way to move, not how far in absolute terms. Keep is a real choice — it tells the rewrite to leave that axis alone.

Presets:

What the source sounds like now free, in your browser

Check any two versions free, no sign-in

The fact check is not tied to a rewrite this app produced. Paste an original and any rewrite — from a colleague, another tool, or your own edit — and it will diff them and tell you which figures, dates, names, conditions, obligations and negations did not survive. Nothing is sent anywhere.

Your rewrites

How the fact check works

A rewriter that returns only new text cannot be audited. You would have to read both versions line by line to know whether it tightened your argument or quietly dropped a qualifier. So the check runs on facts, which survive paraphrase, rather than on meaning, which does not.

Negation is checked as polarity, not as the word "not"

This is the part that matters. A rewrite that turns was not approved into was rejected has kept the meaning exactly; a checker that greps for not would report it as a lost negation and would be wrong. So every clause is scored by parity: each negation cue and each inherently negative word counts as one flip, and an odd number of flips means the clause is negative.

That single rule handles three things at once. Is not permitted and is banned both come out negative, so the swap passes. Not unreasonable has two flips and comes out positive, so resolving it to reasonable passes too. And must not exceed becoming must exceed goes from one flip to none — caught, and reported as changing the meaning rather than as a style note.

Alignment, then polarity

Sentences are aligned between the two versions first, in order, allowing merges and splits, because restructuring is a normal register move rather than an edge case. Alignment answers is this content still here; parity answers is it still negative. Keeping those two questions apart is what lets a total reword pass while an inversion is caught.

What it does not claim

It is a set of heuristics over English prose, so it can be wrong in both directions. Every finding shows the exact span on both sides so you can dismiss a bad call in a glance, and a finding raised over a heavily reworded passage is marked uncertain rather than presented with the same confidence as a clean match. Register drift is deliberately never a finding: if it fired every time a formula became plain speech, you would learn to ignore it, and the one real dropped negation would go past unread.

Measured against a held-out set of 80 rewrites built by someone who had not seen this code — 60 planted defects, 45 correct-but-difficult rewrites — it catches 73% of planted defects overall and 58% of planted negation defects, and raises a false critical finding on 36% of correct rewrites. Figures, dates, times and named parties are the dependable part: every planted number change, unit change and date change in that set was caught.

The specific thing it misses is an inversion that paraphrased the verb along with the negation. It only calls something a reversal when the word the negation governed is still sitting in the now-positive sentence, so must not exceed 500 becoming must exceed 500 is caught, while must not have received a payment becoming if you have had a payment is not. The looser rule fired on 87% of correct rewrites, which is worse than useless. Read the diff for anything that matters.