Launching today

Rewisp
See it once. Ask forever.
148 followers
See it once. Ask forever.
148 followers
Rewisp gives your Mac a memory. It reads your screen text on-device and remembers it for you. Catches promises like "I'll send it Friday" and reminds you until it's done. Ask "what changed since Tuesday?" and see exactly what's new. Search by meaning, not just words. Tracks numbers like weight or grades over time. Fills forms from your saved details — never passwords. One quiet 9 PM summary each day. Fully private: screenshots never saved, only text stays on your Mac.






















Rewisp
Rewisp
@tihomiropacic Great question, thanks for asking!
Rewisp stores everything locally on your Mac. Your screen data never leaves your device by default. Only you can see it.
A few privacy controls built in:
You can pause capture any time with a shortcut.
There's a "nuke" option that deletes the last 10 minutes instantly.
Sensitive apps (messaging apps, banking apps, and other personal sites) are hard-coded to never be tracked. You can check this yourself in the code.
You can also manually add any app or website you want excluded.
For the AI reasoning layer, by default it runs locally using Apple's on-device model, so nothing leaves your Mac. If a question needs more power, it can use an engine you pick (Claude, ChatGPT, or Gemini) — but even then, it only sends your question and a few text snippets, never screenshots or your full history.
I built it this way because privacy matters to me too. Happy to answer more questions!
the promise-catching and "what changed since Tuesday" bits are the sell for me over a plain screenshot recorder. one solo-dev question: months of full screen text in one SQLite file, does that stay fast to search, or do you end up needing to prune/summarize older entries once it's been running a while?
Rewisp
@galdayan Great question, glad the hook landed :)
Short answer: it stays fast, and it's bounded by design so you're not babysitting it.
Why it stays small: text-only + deduped (near-identical frames get dropped before insert), so growth is a few MB/day. Months of use = tens to low-hundreds of MB, not gigabytes.
Keyword search uses FTS5 + bm25 (inverted index) — sub-millisecond no matter how big the DB gets. Never the bottleneck.
Semantic search is brute-force cosine over embeddings right now, but at the retention cap that's ~20-35k rows, so it's still just a few ms. If I ever let history grow unbounded, that's the one piece that'd need a real ANN index (sqlite-vec/HNSW) — but I haven't needed it yet.
And there's built-in pruning: 6-month retention (importance-based, not just clock-based) plus nightly consolidation that folds old sessions into compact summaries. So the DB actually gets leaner and higher-signal over time, not bigger.
Storage math for the curious: text only, ~0.3 MB of screen text a day (a novel every few days). With the search index and semantic vectors it's under 1 MB/day — roughly 150 MB after six months, where it levels off. Old raw captures auto-expire at six months and fold into compact nightly summaries, so it never balloons. No screenshots, ever.
The promise-catching feature is probably the most useful detail here. small commitments like "I'll send it Friday" are exactly the kind of thing that disappears between chats, tabs, and notes, even though they often matter more than the tasks we formally write down.
I also like the privacy model: extracting text, immediately discarding screenshots, and keeping everything in one local SQLite file feels much easier to trust. Curious how Rewisp distinguishes a real commitment from casual language or quoted text without creating too many false reminders :)
Rewisp
@andrasczeizel Thank you for the kind words! Rewisp only listens on surfaces where you're actually writing (Notes, Mail, Slack, never AI chats or ads or random web pages), rejects questions, negations, hedges and marketing-speak, and nothing ever reminds you until you tap to confirm it, so a false positive costs one dismissal rather than a bad reminder.
Screenshots-never-saved plus everything staying local answers the privacy objection most people would raise first. Curious about the SQLite file itself though: is FileVault the only thing standing between it and a plaintext read, or is there another layer on top?
Rewisp
@vollos
Straight answer: FileVault is the encryption at rest. Rewisp doesn't encrypt the SQLite file itself yet, so a process running as you could read it. On top of that the data folder is chmod 0700 and the local API is token gated, so other accounts and other processes can't get at it.
The layer I lean on most is reduction rather than encryption. Messages, password managers, banking sites and incognito windows fully pause capture, credential shaped text is refused, screenshots are never written at all, and the text expires after about six months. App level encryption is the obvious next step.
What does the always-on screen reading do to battery and CPU on a laptop? I like the idea of asking "what changed since Tuesday" but I'd want to know the cost of having it watch everything all day.
Rewisp
@talhakhalidmtk Great question!
It isn't recording, which is the main thing. There's a cheap check twice a second for which window is frontmost, and it only actually captures on a trigger: you switch apps, a URL changes, you stop scrolling, or a 60 second heartbeat. Unchanged screens get dropped by a thumbnail diff before OCR even runs, so most heartbeats cost nothing.
When it does capture, OCR is Apple's Vision framework running on device and hardware accelerated, about a second, and only on the display holding the frontmost window. There's no video encoding anywhere, which is the expensive part of screen recorders. It's text only.
It also fully stops after five minutes of no input, and when the screen is locked or the display sleeps, so it isn't doing anything while you're away.
Measured on mine right now it sits at basically 0% CPU between captures with a short spike during one.
The semantic search feels surprisingly accurate for just text matching, and catching commitments like "I'll send it Friday" actually held up across a few days. The nightly summary at 9 PM is a nice touch without being noisy.
Rewisp
@yorgan47831 Thank you for the kind words :)
Would love a way to mark something as "do not track" when I'm working on sensitive stuff like medical forms or legal docs. A quick keyboard shortcut to pause Rewisp for 15 or 30 minutes would feel really natural and keep the privacy promise even stronger.
Rewisp
@yasinerhalg3oh Thank you for the kind words!