Skip to content
utilo

Tether · in development

You said you’d do this.

The same app is work, and it isn’t.

Blockers judge by application, so they block the documentation you need and wave through the wrong project. Tether judges the window against the sentence you typed.

The same window judged against different goals, measured against jev-1.13.0
You said What’s on screen A blocker Tether
edit the launch video Premiere Pro: colour grading — YouTube Blocked On task 0.53
edit the launch video Try not to laugh: cat compilation — YouTube Blocked Off task 0.03
research how rivals position themselves "shelf app" — Search / X Blocked On task 0.93
research how rivals position themselves Home / X Blocked Off task 0.34
finish the settings panel InvoiceRow.swift — Billing Allowed Off task 0.28

Nineteen labelled cases, three runs each, all within their acceptable verdicts. About $0.002 to check.

It asks three things.

Four short strings go out — your goal, the app name, the window title, and whatever background you gave it. No contents, no keystrokes, no screenshots.

Is this part of doing the work you described?

Serves the goal

A probability, not a yes. Two thresholds, and the band between them is unclear — no nudge, and the time is reported on its own rather than filed as either.

Building, research, talking, admin, or leisure.

Kind

So the account at the end is grouped by what you were doing, not by which app was frontmost.

How likely is this to swallow an afternoon?

Pull

A feed gets a shorter rope than a reference page. Forty-five seconds instead of ninety.

⌥Space, anywhere.

A line appears beside the pointer. Type the thing you sat down to do and it starts tracking — over another app, over a full-screen video, without taking your keystroke.

Then it stays out of the way. When you have genuinely drifted — ninety seconds of it, not one bad glance — a small panel shows your own sentence back to you next to what you are doing instead. One nudge, then five minutes of quiet.

Tether’s icon: a trace running from full slack down to none, landing on the dot where the line goes taut.

It reads two things.

The frontmost application, and the title of its focused window. That is the whole of it.

Never read

Password managers

A password manager’s window title is the name of an account. Those apps are recorded by name only — the title is never sent, never cached, and never written to disk. Add your own to the list.

Your choice

Titles can be switched off

Leave app names only. The judgments get coarser and the app says so rather than pretending otherwise.

On your Mac

Sessions stay local

Plain JSON in your Application Support folder. The key lives in your login keychain, not in a preferences file. Privacy policy

Specification

Capture shortcut ⌥Space
Window checked every 0.8 s
Judged only when it changes
Nudge after drifting 90 s, or 45 on a feed
Quiet between nudges 5 min
A 15-minute sitting 4 requests, $0.00014
Requires macOS 14+
Build Signed, no telemetry

Tell me when it ships