2026-06-03
FocusLens v0.1.1 Is Live
building · product · buildinpublic
I've been tracking my own focus for months with an internal tool. Screenshots every five minutes, Apple Vision OCR, an LLM scoring each capture against what I said I was working on. It worked well enough that I kept running it every day.
So I cleaned it up, packaged it, and shipped it.

FocusLens v0.1.1 is live at focuslens.me.
What it actually does
Most time trackers count hours. That's not the problem. The problem is that two hours of "working" can contain forty minutes of actual focus and eighty minutes of browser drift, and most tools can't tell the difference.
FocusLens can.
Every five minutes it takes a screenshot, runs Apple Vision OCR on it locally, and sends the result to an LLM with one question: does this match what the user said they're working on?

You define focus. The AI scores it. You see the actual number.
The local-first part matters
The whole pipeline runs on your machine. Screenshots are processed on-device. Logs write to a JSON file in your ~/Library. Nothing touches a FocusLens server because there isn't one.
That's not just a privacy talking point. It's the architecture that makes the pricing work.
You bring your own API key — OpenAI, Anthropic, xAI — and pay your provider directly. Typical usage runs around $0.06 a day with Grok 4.1 Fast. If you'd rather skip the provider setup entirely, there's a FocusLens AI option: 100k tokens free, then $3.90/mo.

No per-seat pricing. No subscription for the app itself. No cloud backend you're paying to keep warm.
Why Grok 4.1 Fast as the default
This is a continuous capture workflow. The model runs every five minutes, all day.
That means the cost per call has to be extremely low, and the latency has to be invisible. Grok 4.1 Fast is $0.20/$0.50 per million tokens. It's fast enough that classification doesn't lag the capture loop. And it's accurate enough for the job — this isn't a reasoning task, it's a relevance check.

Higher-tier models cost more and don't improve the output in any meaningful way for this specific use case. The cost math just doesn't hold.
What's in v0.1.1
- Menu bar app — start, pause, quit without breaking focus
- Dashboard — daily goal, performance trends, focus percentage, app breakdown
- Logs — every capture, its score, its reason, its estimated cost
- AI Engine panel — swap providers or models in one place
- Apple Silicon native, 10MB, no background agents
What's not in yet
The Windows build is coming. I'm on Apple Silicon and the native capture pipeline is macOS-specific right now. The core loop is the same, the plumbing is different.
The thing this is really about
I built this because I kept finishing days unsure whether I'd actually worked. Not tired — just uncertain. The focus tracker gave me a number to argue with, and the number was usually more honest than my memory of the day.
If you're building solo and you recognize that feeling, this is for you.
focuslens.me · v0.1.1 · Apple Silicon