QuillBot's rewriting is a prompt: a mode decides the instructions, a slider decides how far the wording may drift, and any current language model does the work. A competent agent can wire that into a local page with a word-level diff, grammar fixes with reasons, a summarizer and a history in one session, and it costs a few cents of tokens, or nothing on a local model. Two things stay behind: the plagiarism checker needs a web-scale index and the AI detector is its own model. If you only paraphrase now and then, the free tier or the writing tools built into your phone and laptop may already be enough.
Before you buildIf you paraphrase a paragraph at a time, QuillBot Free (125 words per go) or your system's built-in writing tools may already do the job.
Build me a personal rewriting tool to replace QuillBot. Requirements: - Node.js 22 + TypeScript: a Fastify server and a single-page UI built with Vite and vanilla TS. `npm start` serves http://localhost:4710. - One `complete(system, user)` function in src/llm.ts, with the provider picked in .env: PROVIDER=anthropic (`@anthropic-ai/sdk`, ANTHROPIC_API_KEY, MODEL) or PROVIDER=ollama (OLLAMA_URL, MODEL). Stream tokens to the browser over SSE. - Paraphrase tab: input and output panes. Modes are prompt templates in ./modes/*.md (Standard, Fluent, Formal, Academic, Simple, Creative, Shorten, Expand). A synonym slider from 1 to 5 sets how far the wording may drift. A "freeze words" box lists terms that must stay exactly as written. - Show the result as a word-level diff against the input (`diff` package) with a toggle. Split long input by paragraph, rewrite up to 3 at a time, and keep paragraph order and blank lines. - Grammar tab: returns the corrected text plus a list of changes, each with the original span, the fix and a one-line reason; accept or reject every change separately. - Summarize tab: paragraph or bullet output with a target length in words. - History in better-sqlite3 at ./data/rewrites.db (input, output, mode, model, timestamp) with a list to reopen or delete entries and a clear-all button. - Refuse inputs over 20,000 characters. Send nothing but the text and the mode prompt to the model. Keep the key in .env only. - Single user. No accounts, no telemetry, local-first. Outbound calls: your chosen model provider and nothing else. - Out of scope: plagiarism checking, AI-detection scores, a browser extension, a Word add-in. - README: how to switch between a cloud key and a local Ollama model, and a note that small local models rewrite noticeably worse than hosted ones.
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own QuillBot.
Add a Chrome extension (Manifest V3) to the rewriting tool in this folder. Requirements: - Right-click selected text > Rewrite with > one of the modes from ./modes. - The extension calls http://localhost:4710 only; add the port to host_permissions and a shared token from .env that the server checks. - In editable fields, replace the selection with the result; elsewhere show it in a small popup with a Copy button. - Keep everything in extension/ with a build script and load-unpacked instructions in the README. - Out of scope: Firefox and Safari builds.
Add custom modes to the rewriting tool in this folder. Requirements: - A page where I paste 3 to 10 samples of my own writing and name a mode. - Send the samples to the model once to produce a style guide (sentence length, vocabulary, punctuation habits, things to avoid), show it for editing, and save it as ./modes/<name>.md. - The new mode appears in the Paraphrase tab next to the built-in ones. - Add a test that a saved mode file loads and is passed to the model as the system prompt. - Update the README.
Add file rewriting to the tool in this folder. Requirements: - Accept .md and .docx uploads (`mammoth` to read .docx, `docx` to write it). - Rewrite paragraph text only; leave headings, lists, code blocks, tables and links untouched. - Return a downloadable file in the same format plus a changes report listing the paragraphs that were rewritten. - Cap uploads at 2 MB and refuse files with tracked changes, explaining why. - Update the README.
Students and non-native writers want one add-in or keyboard that works inside Word, the browser and their phone, plus the plagiarism and AI-detector checks their school may run. At $8.33 a month on the yearly plan, building the tool and paying for tokens yourself only wins if you rewrite text every day.
Estimate · Nothing to pay on a local model. On a hosted model, rewriting a few thousand words a day costs a few dollars a month in tokens. The build is token usage on your agent plan.
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Free | $0 | $0 | Paraphrases up to 125 words at a time in two modes, no paraphrase history, summaries and the AI detector up to 1,200 words, no plagiarism check, 10 MB of saved documents. |
| Premium | $19.95 | $8.33 | Unlimited paraphrase input in 9 modes plus custom modes, paraphrase history, summaries up to 6,000 words, 25,000 words a month of plagiarism checks, unlimited AI detector and translator, 100 MB of saved documents. |
Free covers the Standard and Fluency paraphrase modes, 125 words at a time, and summaries up to 1,200 words.
Yes. An AI coding agent such as Claude Code, Codex or Cursor can build a usable personal version in one session with the prompt on this page, running on your own machine.
About $19.95 a month on the Premium plan, $239.40 a year (checked 2026-10-14).
The plagiarism checker, which compares text against a web-scale index; The AI detector and the humanizer that sits next to it; Chrome and Edge extensions, the Word add-in, the macOS app and the phone keyboards; Translator, citation generator and image generation under one login; Rewrites as consistent as a tool tuned for one job; small local models are noticeably weaker. If any of those matter to you, keep paying.
Yes: Writing Tools (open source), Harper (open source), LanguageTool (open source).