Job ticket 603977 · consumer · marginalia · no subscription
Readwise charges for bringing highlights back. The pile is just text — work it.
This page is a workbench in the margin. Paste a highlight export from anywhere — Kindle notes, a Medium dump, your own markdown — and a free-tier model forges it into zettel cards (claim, verbatim evidence, the next thought) and mills it into an article outline with a citation ledger that cannot invent sources. Nothing syncs to anything; the return path on your marginalia is two prompts and a local renderer.
Readwise is a trademark of Readwise, Inc. This is an independent, unaffiliated comparison built on Readwise's own published pricing page, linked below and re-read every thirty days.
Margin sheet — rendered in this browser
Sample data is illustrative, not a claim about Readwise. Every Readwise figure on this page comes from the linked pricing page, read 2026-09-27.
The prompt pack
Two prompts, each mapped one-to-one onto a Readwise feature you are currently rationed on. Run them from this page with a free key, or copy them into any free chat model — the text is identical either way, and it is printed in full at the bottom of this section so it survives this site.
Loading the pack from tools.json… If this fails, the full prompt text is still readable below.
One-time unlocks only, never a subscription. If a price ever appears here it was read from Stripe in that request, not typed by hand. An unlock is client-side gating, not secure payment verification: it is stored in this browser and cannot prove payment to anyone else.
What Readwise's own pricing page says
Read from readwise.io/pricing on 2026-09-27. Fields we could not read are marked unconfirmed rather than filled in with a plausible number.
| The job | The first 30 days | Full (US$9.99/mo) | This page + a free-tier model |
|---|---|---|---|
| Price | US$0 for 30 days — then the page lists no free plan | US$9.99 / month billed annually (Lite US$5.59) | US$0 forever. A free-tier key costs nothing; the prompts are yours. |
| Highlights → structured notes | The trial's review + export, on their app's terms | Organizing, tags, exports to Notion/Obsidian | Prompt 1 forges cards from pasted text — claim, verbatim evidence, next thought — in a doc you own |
| Highlights → actual writing | Not a Readwise feature at any tier we read | Not either — exports move highlights, they do not shape prose | Prompt 2 mills the pile into an outline whose citations are only ever your own lines, H-numbered |
| Your data between runs | Their cloud (that is the product) | Their cloud | Nowhere. Text in, files out; the workbench holds nothing and can be audited from view-source |
What this replaces, and what it does not
A displacement claim you cannot substantiate is a lie with good typography. This is the whole scope, including the parts where Readwise wins.
Replaced: the organize step
The card forge does what the paid app's organizing gesture does to a pile of highlights — decide what each one means and attach a next thought — at US$0, on text you already exported.
Replaced: highlights becoming writing
The outline mill is the answer to 'export to Notion' with no Notion: your pile, structured into a publishable spine with a citation contract.
Replaced: reviewing with a purpose
Cards are numbered, quotable and downloadable; the review question ('what does this earn me?') is baked into each card's next thought instead of a flashcard queue.
NOT the library
No book imports, no Kindle/Read-More sync, no highlights collector, no cloud. If your highlights never exist as text, this page has nothing to mill — that is the honest boundary.
NOT Reader or the spaced queue
The reading app and the algorithmic review queue are the subscription's center of gravity; the planned review-CSV is a file-based echo, not their replacement, and it is not even on sale yet.
NOT an invented citation
The prompts refuse sources the pile doesn't contain and write the gaps into missing_info — a honesty property Readwise doesn't need to offer, because it never writes for you.
The prompts, in full, as text
Copy these into any model. They are the product; the page around them is convenience. Each block is the exact system prompt the interactive runner sends, plus the user-message template.
Prompt 01 — 1. Zettel forge · readwise-zettel-forge v1.0.0 · best ally: Google Gemini API — Free usage tier · gemini-2.5-flash-lite
Replaces: Readwise's paid organize step — tagging, promoting, and turning highlight piles into durable notes: each highlight hammered into one card with a claim, its evidence, and the next thought it earns.
Why this model: Card forging is extract-and-reframe over a long pasted block; Flash-lite reads the whole pile once and writes JSON cards inside its free headroom, where a heavier model would truncate the export or cost a key. Fallback ally: Groq Cloud — free tier.
System prompt (1342 chars):
You forge zettel cards from pasted highlights. A card is not a summary: it is the one claim the highlight supports, in the reader's usable voice, with the highlight as its evidence.
Return ONLY one JSON object. No markdown fences, no commentary.
{
"title": string (max 8 words),
"blocks": [
{ "type": "h2", "text": string (the card id: 'C01'..'C40' + a name) },
{ "type": "p", "text": string (the claim — one sentence, <= 25 words, no citation) },
{ "type": "callout", "text": string (verbatim highlight text, trimmed to <= 35 words, quoted) },
{ "type": "p", "text": string (the next thought — one question or connection, <= 25 words, ending in ? or named against another card id) }
]
}
Hard rules:
1. Four blocks per card, in the listed order; 3 to 10 cards. A pile under 3 distinct ideas gets one card for the strongest and the response must say so in that card's next-thought block — do not pad to three.
2. The claim may be sharper than the highlight but must be TRUE of it; if a highlight cannot carry a claim, it becomes a callout inside the nearest card's evidence, not a card.
3. The next thought is never 'reflect on this' — it names a tension, a case, or another card id to compare with.
4. Never invent a source, author, page, or book the input did not contain.
5. Write in the language of the highlights.
User message template:
Variables:
{{highlights}}— Pasted highlights (max 5000 chars) sample data shipped with the tool{{project}}— What the cards are for (max 160 chars) sample data shipped with the tool
Output schema (the answer must match this exactly):
Decoding: temperature 0.5 · max 1500 output tokens · responseMimeType application/json · budget ~1,000 in / ~800 out per 10-highlight pile · cost per run: 1 request against Gemini's free tier; with the relay floor, nothing — and no monthly 'credits' meter anywhere.
Prompt 02 — 2. Outline mill · readwise-outline-mill v1.0.0 · best ally: Groq Cloud — free tier · llama-3.3-70b-versatile
Replaces: Readwise's export-to-writing-apps flow (the Full-tier promise of highlights becoming something): the same pile milled into a structured article outline with a citation ledger that keeps every borrowed sentence attached to its section.
Why this model: Outlining is placement, not prose: sections, what each proves, which highlights it uses. A fast instruct model does the routing cleanly at low temperature and the answer lands inside the free-tier request ceiling even mid-day. Fallback ally: Copy-Paste Relay.
System prompt (1698 chars):
You mill article outlines from a pile of highlights. The outline's spine is argument, not topic: each section advances a claim, and the citation ledger is the contract that keeps it honest.
Return ONLY one JSON object. No markdown fences, no commentary.
{
"title": string (max 10 words, working title),
"blocks": [
{ "type": "h2", "text": string (section name, no numbering) },
{ "type": "p", "text": string (what this section PROVES, one sentence <= 25 words) },
{ "type": "ul", "items": [string (a citation line: verbatim highlight fragment <= 15 words + its id like (H3))] },
{ "type": "h3", "text": string (optional sub-beat) },
{ "type": "p", "text": string (the transition question this section must survive, <= 20 words) }
],
"estimated_words": number (300..3000),
"missing_info": [ string (things the pile cannot support that the article will need — max 4) ]
}
Hard rules:
1. Four to seven h2 sections. Every h2 is followed by exactly one PROVES sentence and at least one citation line; a section with no citation does not exist.
2. Only highlights from the input, referenced as (H1),(H2)... in input order. Never cite a source the pile does not contain; if the piece needs outside evidence, it goes in missing_info, not into a citation.
3. A highlight may anchor at most two sections; if it could anchor three, the pile is one-section thin — say so in missing_info.
4. estimated_words must be consistent with section count (roughly 400-600 words per section).
5. No conclusion section that merely restates; the last section must answer the first section's transition question or missing_info must carry that gap.
6. Write in the language of the highlights.
User message template:
Variables:
{{highlights}}— The highlight pile (max 5000 chars) sample data shipped with the tool{{audience}}— Audience + venue (max 200 chars) sample data shipped with the tool
Output schema (the answer must match this exactly):
Decoding: temperature 0.45 · max 1400 output tokens · responseMimeType application/json · budget ~1,100 in / ~900 out per run · cost per run: 1 request. Groq's published base is 1,000 requests/day; a full month of writing sittings still fits the free ceiling.
Questions worth asking before you cancel
Readwise says Lite is for 'the basics' — why quote only Full?
The two numbers we read in the fetched view are Lite US$5.59/month and Full US$9.99/month, both labeled billed annually, with a 50% student discount printed alongside. Feature-by-feature tier boundaries beyond what the page states are marked unconfirmed rather than paraphrased.
Is the 30-day free window a free tier?
No, and the page says so in its own framing: after the first 30 days every plan is paid. This matters because the usual cancellation math ('I'll live in the free plan') has no free plan to live in — which is exactly the gap a paste-and-mill workbench can hold open.
Where do my highlights come from, mechanically?
From whatever export your source offers — Kindle's notes file, a Medium archive, a Readwise CSV if you are already paying, or text you pasted into a doc years ago. The prompts number them H1, H2... as they arrive; nothing has to be in a format the page controls.
Why won't the outline cite the books?
Because your pile, not a database, is the whole evidence base. A section that needs outside support gets a missing_info line — 'add the study' instead of 'invents the study' — which is the opposite of how a summary tool behaves.
Send this to someone still paying for it
Nothing is loaded from X or LinkedIn until you click, and no share is counted, logged or reported back to us — the buttons are plain links to each network's own share page.