Overview
Margin began with a small problem in my own work: useful thoughts arrive while I am already doing something else. I built a native Mac capture panel, a library for notes and recordings, and an iPhone companion that opens to a blank writing canvas. The Mac transcribes locally. Agents can retrieve the original words through a read-only interface. The screenshots show the current Mac candidate in a separate fictional library.
The Challenge
Saving a thought should be immediate. Understanding what happened to it should be equally clear. The difficult work was joining capture, original audio, local processing and device transfer without making the person manage a pipeline.
Constraints
- •A thought can be saved before choosing a project or connecting a service.
- •Original notes and audio remain available when processing or transfer fails.
- •Agent access exposes source evidence; consequential changes remain explicit actions.
How it works
Problem
Organisation gets in the way of capture.
Decision
Inbox is a complete destination. The Mac panel stays one shortcut away; iPhone starts with a writing canvas and a Record action. Typing gives Save priority, and drafts survive relaunch.
Tradeoff
Sorting happens later, so finding and moving a capture must stay easy.
Problem
A cloud upload can finish before the Mac has received a note.
Decision
The phone retains its original and sends a sealed package. The Mac verifies and imports it, then returns an identity-checked receipt. Receipts and returned transcripts explicitly request iCloud downloads before being read.
Tradeoff
Both devices need the same selected folder, and the Mac must be awake with Margin open. Waiting has to remain visible.
Problem
Transcription should not turn setup or a failed job into lost audio.
Decision
The Mac package includes its processing tools and speech models. Import preserves original bytes; recoverable state separates saved audio from a completed transcript.
Tradeoff
The download is substantial, and packaging, model paths and hardware behaviour need their own verification.
Problem
An agent answer needs evidence that can be checked.
Decision
A read-only MCP server and CLI expose original text, source identities, hashes and coverage limits. Notes written during a meeting retain a link to the moment they refer to.
Tradeoff
Retrieval coverage and answer quality remain separate claims. Experimental search work is evaluated separately from the released app.
Approach
1. Catch the thought
Quick Capture saves without a folder or title decision. Explicit project tags provide a home when one is already known.

2. Keep the original
Notes and recordings remain accessible during processing and transfer. Trash and restore are explicit, and a valid Mac receipt confirms receipt rather than assuming it from cloud availability.
3. Read beside the moment
The meeting reader keeps the transcript, speaker labels and timestamped notes together. Speaker separation is optional and experimental; names are chosen by the person.

4. Hand over evidence
The agent interface returns source-linked context through read-only operations. The separate demo library keeps public examples away from personal notes and recordings.
Outcome
Margin is a signed, notarized Mac app with a public download. A clean install on a second Mac passed capture, transcription and the agent tools. The iPhone companion, whose notes already reach the Mac, is in beta preparation; first-run setup for new users and real-voice testing are the work still ahead.
At a glance
Public Mac download · iPhone beta pending
Delivery
Bundled local tools and speech models
Processing
Read-only MCP server and CLI
Agent access
Separate fictional library
Screenshot data
Learnings
- →A transfer is complete when the receiver acknowledges it.
- →Installation and model availability are part of the product experience.
- →A rebuildable index and recoverable processing state protect the original evidence.
Anti-patterns avoided
- ×Setup decisions before the first save
- ×Treating cloud upload as Mac receipt
- ×Replacing original evidence with generated prose
- ×Silent agent writes
Next iterations
- →Complete physical voice, transfer and interruption acceptance on current builds
- →Observe two people completing first-use tasks without coaching
Next project
Second Brain