Free beta · macOS · Claude Code · Codex · Gemini CLI

Your agent said something. Highlight it. Get it explained — by the same session.

Select a line in the terminal. Press ⌥ Space. A note explains it using that session's context. esc — you're back.

Download for Mac — free No account. No API key. macOS 13+.
Why

Agents write faster than you can understand. Gloss explains — in place, from the same session.

Session context, not a fresh chat

Gloss carries bounded context from the matching session into a separate ask. When the CLI supports a safe fork, Gloss uses it. Nothing is written back.

your session — the agent keeps working here
  └─ read-only context — Gloss asks separately. Your transcript is not changed.

Your agent keeps going

The note never takes the keyboard. You were typing in the terminal — you still are.

Beside the line, not in another tab

It lands at the edge of the screen, on the line you highlighted. One key and it's gone.

Retry.swift
Claude · session · Terminal

exponential backoff

Each retry waits twice as long as the last — 200, 400, 800 ms…

Ask a follow-up…

Honest about what it read

The tab's colour is a fact, never a guess.

Retry.swift
Claude · session · Terminal
yellow — read the session
Terminal
Claude · no session
pink — no session fit; read the screen only, and says so
Ask about this session
Claude · nothing selected
white — nothing highlighted; ask about the whole session
The page

Ask something big, and the note grows a page.

Nothing highlighted — just a question about the session. A page unrolls beside the note and writes itself: one part at a time, each with its own diagram, naming the files as it goes. Your questions run down the spine; each one links to the part it made.

You never pick a mode and you're never asked. If the answer is a sentence, you get a sentence. If the idea has parts, you get a page — and it's kept, like any note with more than one turn.

How it works

Three keys. Nothing is sent until you press the last one.

1

Highlight a line

Anything in the terminal — a phrase in the agent's answer, an error, a flag it used, a file it touched.

● The loop retries with exponential backoff — sleep(200 << attempt)…
2

⌥ Space, then ↩

A small yellow strip appears on your line. It shows where you are and what you highlighted. Press ↩ for the default question — what does this mean here? — or type your own first. esc before ↩ sends nothing.

RETRY.SWIFT · TERMINAL · CLAUDE · “exponential backoff”
Ask anything…
3

Read. Ask again. esc.

The strip unfolds into a note. First words in about a second and a half. Follow-ups go in the same note; it remembers. esc closes it, ⌘S keeps it.

✓ Read the session · 0.4 s
Each retry waits twice as long as the last…
Inside an answer

Answers that point at things.

A note is plain text first. But it can name the file, draw the shape, and show the code — and every one of those is real, not decoration.

File names are links

When the answer names a file, the name is a link. Click it and the file opens in your editor, at the line if there is one.

Retry.swift
Claude · session · Terminal

The wait comes from Sources/Net/Retry.swift:14 — sleep(200 << attempt). The call it should bound is run() on the line above.

A picture, when words aren't enough

If the shape of the thing is the answer, the model describes the boxes and arrows and Gloss draws them in its own pen. No generated images — and if it can't draw it, you see the text, never a broken picture.

Retry.swift
Claude · session · Terminal

Here's the loop:

attemptrun()sleepnothing bounds run()

The dashed line is the retry. The box with no limit is the bug.

Code, tables, callouts — as themselves

A fix is shown as code you can copy. A comparison is a table. A warning is a warning. The note reads like a good pull-request comment, not a chat bubble.

Retry.swift
Claude · session · Terminal

Bound the attempt, not the sleep:

try await withDeadline(.seconds(30)) {
  for attempt in 0..<3 { … }
}
Note — the backoff stays. Only the call gets a limit.
Works with

The agent you already have, in the terminal you already use.

Gloss doesn't bring a model. It runs your own CLI, signed in as you, the same way it runs when you type in the terminal.

Agents

  • Claude Codereads the session
  • Codexreads the session
  • Gemini CLIreads the session

Whichever is running in the terminal you highlighted in. Choose the answering CLI in Settings; Gloss offers only versions it has verified as compatible.

Terminals

  • Terminal, iTerm2, cmuxbest — the session is matched
  • Any other terminalworks — from the screen
  • Editor terminalsVS Code, Cursor — from the screen

No plug-ins, no shell hooks. Gloss reads what you highlighted through macOS, then finds the session it came from.

Outside the terminal

  • Browser, editor, PDF, Notesfrom the screen
  • Anything you can't select⌥H — draw a box round it

The same key everywhere. Without a session it reads what's on the screen around your highlight — and the tab says so.

Later

Notes you kept are one click away.

A note with more than one turn is kept automatically when you move on; a single glance is let go. ⌘S keeps any note on purpose. Click the menu-bar icon to find them, ⌘K to search — and every kept note reopens with its saved session context, so you can keep asking tomorrow.

Kept notes are encrypted on this Mac, always.

Pricing

Free while it's in beta. One price later — and we're telling you now.

Freebeta · no limits · no card
  • The note — highlight, ⌥ Space, answered from the session
  • Follow-ups in the same note — it remembers
  • Claude Code, Codex, Gemini CLI — your own login, your own subscription
  • Any app — from the screen when there's no session
  • Kept notes — searchable, encrypted, on your Mac
  • The page — when an answer needs more than a note
Download for Mac — free
Before you ask

Plain answers.

What do I need?

A Mac on macOS 13 or later, and at least one of Claude Code, Codex or Gemini CLI installed and signed in. Gloss runs that CLI for you. There's no API key and no separate bill.

Does my agent see my questions? Does it slow down?

No. Gloss asks separately using bounded session context, or a safe fork when the CLI supports one. It does not write to the running session, so your agent keeps working while you read.

What if it can't tell which session I'm in?

The tab turns pink, the note says it only read the screen, and you get an answer from that — never a guess dressed up as the session. Click the source line on any note to see exactly what was read.

Does it work outside the terminal?

Yes — the same key in a browser, an editor, a PDF, Notes. Without a session it reads what's on the screen around your highlight, and says so. For anything you can't select, ⌥H lets you draw a box round it.

Is Gloss watching my screen all the time?

No. It reads screen content only when you press the key, and only around what you highlighted. If session access is on, its local transcript index can update as your CLI writes; turn that setting off and Gloss does not open the session folders.

Is it really free?

Free with no limits for the whole beta. After that the app gets one price — never a usage charge, because the model is already yours. Anyone who used Gloss during the beta keeps their access.

What is "the page"?

When an answer needs more than a note, the model keeps going and a page unrolls beside the note — one idea at a time, a diagram where it helps, your questions down its spine. You don't switch it on; it happens when the idea has parts. Close it with ⌘W; it's kept with the note.

What happens after I click download?

You get a signed, notarised Gloss.dmg. Drag it to Applications and open it once. It lives in the menu bar — no window, no Dock icon. The first time you highlight in another app it asks for Accessibility and walks you to the switch. That's the setup.

Get Gloss

The next thing your agent says that you don't quite get — highlight it.

1 Download2 Drag to Applications3 Allow Accessibility when asked
Download for Mac — free beta

No account · No API key · macOS 13+ · Claude Code, Codex or Gemini CLI

Reading this on your phone? Gloss is a Mac app — open this page on your Mac to install it.