Beacon

Five sessions running.One is waiting on you.

Beacon is the attention layer for Claude Code and Codex. One stable light per session tells you what is working, finished, or blocked — and one click returns to the exact session.

Download for macOS Free · Apple silicon and Intel macOS 14 or later
brew install --cask cpektas/beacon/beacon

Beacon in 22 seconds

Know what every session is up to. Be alerted when one needs you. Navigate back without hunting for it.

Claude Code + Codex · local · free

The colours

Four states, ordered by how much they want you. Each is the same graphite pilot light, so colour and motion carry the meaning without tiny symbols to decode.

Needs you Blocked on a person — a question, or a permission it can't grant itself. Nothing moves until you answer.
Your move The turn finished. It's not stuck, it's done talking and waiting to hear what's next.
Working Busy, and the only light that moves. Nothing is being asked of you.
Idle Open, quiet, nothing pending. Present so you can see it exists, not so you'll do anything about it.

Works where you work

Claude Code and Codex can live in desktop apps, editors, or terminals. Beacon uses the safest return route each host can prove, and refuses to guess when it cannot identify an exact tab.

Where the session livesWhat Beacon does
Claude app Status, project grouping, background-task context, and exact return to the session.
Codex app Status, project grouping, background-task context, and exact return to the thread. No status hook required.
Cursor Return to the exact integrated terminal through Beacon's bundled extension.Installed from Beacon's settings; field-tested with multiple Cursor windows.
VS Code The same bundled extension and exact-terminal route are included.Packaged and covered by tests; still awaiting an independent field check in VS Code itself.
Terminal.app & iTerm2 Return to the owning app and, when macOS Automation access can prove it, the exact tab.
Other terminals Status and return to the owning terminal window.Exact panes depend on what that terminal exposes; Beacon raises nothing rather than choosing a stranger's tab.

Local by design

Beacon needs local access because the product is a bridge back to local work. The boundary is explicit, inspectable, and switchable.

What it reads

Session records your agents already write, plus process and window facts needed to identify the right host.

What it changes

Only Beacon-owned settings, its Claude Code status hook, and its optional Cursor/VS Code extension. Agent session files are never modified.

What can be shared

Anonymous counts, durations, status changes, clicks, and outcomes tied to a random install id. Settings lists every field and turns sharing off in one switch.

What never leaves the Mac

Prompts, responses, session names, folder names, file paths, window titles, code, and anything else about what you are building.

What it does

You started five things and can only look at one. Beacon keeps the board stable, brings the right work back, and keeps parallel work legible.

The whole board, at a glance

Every session you have running, in one row of lights — across both agents, grouped by the project each one belongs to.

Lights only ever change colour; they never move. The third light is the same piece of work every time you look, so after a day you stop reading the pill and start recognising it. Point at one to see which session it is.

A nudge when you're the one holding it up — and a way back in

When something blocks on you, the screen gives a pulse showing the same lights. A blocked session keeps asking until it is resolved; a completed turn announces itself once. After the first pulse, Beacon quiets repetition while you are actively working in an agent host, and a flash can be snoozed for three to ten minutes.

Then click the light. Beacon raises that terminal window or opens that tab — you land in the session, not in a list of them.

Parallel work without a wall of lights

Delegated agents stay under the session that started them instead of pretending to be unrelated work. A small neutral number shows how many background tasks are live.

Point at the light or open the session list for the agent and command breakdown. The number is context only: the light's colour still tells you what the main session needs.