briffy
poke it

A notebook you don’t have to write or tidy.

No writing

Saves, screenshots and copies are recorded on their own — and you can drop any file on it.

No tidying

Everything becomes text, then groups itself into topics with the summaries written for you.

Every record keeps its context

Which app, which window, which page — kept alongside the record, and handed to your AI through MCP.

Download for macOS Other platforms

macOS · Windows · recognition runs locally · source-available, noncommercial

Saving never stops. Reading never starts.

Digital hoarding, collector’s itch, the bookmark graveyard, read-it-later, tab hoarding — many names, one symptom: you have never gone back to any of it.

It isn’t laziness. What you saved was a link — and links rot, ask for a login, get rewritten. And it was never filed anywhere.

briffy keeps the whole article, groups it by topic, writes the summary, and answers questions out of it. The graveyard turns back into a notebook.

Throw anything in

No folders, no names, no tags — and no “new entry” button.

Any site’s bookmarks, body and all

X’s Bookmark, Reddit’s Save, and the rest. The whole article is archived, not a link — and it’s extracted inside the page, so what only shows up once you’re logged in comes too.

Meetings record themselves

It doesn’t listen to the room, it follows the microphone: it records only when another app opens it (Zoom, Teams, Meet, Tencent Meeting…). Then it’s transcribed and split into speaker 1 / 2 / 3. Off by default.

It lives on your clipboard

Every CtrlC lands: text, images, files. One copy is one record — several clipboard flavours of the same thing don’t become several.

Drop anything on it

Images, PDFs, audio, video, code, a selected paragraph. Anything over 200 MB isn’t copied — it just remembers where it lives.

Anything becomes text

The words inside a screenshot, the words inside a recording, a PDF, a page’s body — all of it becomes searchable text, recognised on your own machine.

You can also act on purpose: click it to capture, double-click for a region, hold to speak — or CtrlAlt + A / S / V (CmdShift on macOS).

Then it piles itself up

Drafts about the same thing gather together, so a thread runs down the notebook instead of one stream sorted by day.

Postgres migration

6 drafts · Sep 2 – 4

Picking a monitor

4 drafts · Aug 28 – Sep 1

Q3 budget

9 drafts · Sep 1 – 6

The grouping is entirely local and never touches a model — the vectors are already in the index, and it is a couple of hundred dot products. Only naming a pile costs one AI call.

What a draft looks like

Five kinds of draft, five kinds of paper — told apart by outline, not icons. The title and the one-line summary are written for you too.

09:12

Milk. Fix the brake cable.

08:40
10:03 Thought of on the way in: split reading from summarising. 0′22″
11:25

Why SQLite doesn't need a server

example.com
12:15

“Back-end integration is Thursday. Front-end runs on mocks.”

from Slack

10am with product tomorrow — Q3 budget and roadmap.

15:02
13:33
18:37

“Dell ultrawide monitor p3425we”

from Chrome
18:45 Send the budget to Zhang; meeting at three. 1′04″

A notebook needs a way out

A notebook you only put things into is just another bookmarks folder. Ask in a sentence — a research write-up, an itinerary, a parts list — and every claim carries the draft it came from.

What was that Postgres error last week?

On 2 September you captured duplicate key value violates unique constraint①, and that evening said you'd roll the migration back②. The next day ON CONFLICT DO NOTHING came through your clipboard③.

Retrieval is local. No network, no model.

Cited

①
09/02 14:20
②
09/02 22:100′48″
③
09/03 12:41

“ON CONFLICT DO NOTHING”

Your AI can read it

A read-only MCP server: Claude, Cursor, VS Code and Codex can query your day. It reads the workspace files directly, so it answers whether or not briffy is running.

Yesterday is written by morning

At the hour you set (08:00 by default) yesterday’s summary has written itself, and says so. You never asked for it.

Why it can be always on

Because it records by what you do, not by the clock. When you are not doing anything, neither is it — that is not a promise, it is what the mechanism allows.

It doesn't watch you browse

The extension does nothing until a save gesture has actually happened; only then does it read the page.

Recognition is local

Text and speech recognition are local engines; unplug the network and they still run. About 0.8 s for a 2560×1440 screenshot.

It lives on your own disk

One index file per day, with the original images, audio and files beside it. No cloud, no account.

What does leave

Only the words written for you: titles, summaries, answers — sent to the AI service you pick. Configure nothing and it still runs.

Claude · OpenRouter · Ollama locally · any OpenAI-compatible endpoint

Install

Download it, drag it to Applications, open it. No account, no sign-up, nothing to configure — on first launch it checks this machine and gets local text and speech recognition ready by itself.

Download for macOS 1.0.2

The first launch walks through six steps: two language packs → permissions → who reads these records → getting the local engines ready → the gestures. It never appears again.

The Windows build is on the releases page; it is not code-signed yet, so SmartScreen will stop it once. You can also run it from source.

Download
241 MB
Installed
517 MB
Requires
macOS 13+
Chip
Apple silicon

English speech and Chinese/English text recognition are bundled, so it works offline. Models for other languages are fetched the first time they are needed. macOS asks for Screen Recording and Microphone; you can refuse either one — that feature stays off and the rest works.