radar

Early, for Rex on macOS

Every coding agent in one pane, ordered by who needs you.

radar watches your Rex sessions and lists every agent by urgency. The one waiting on a permission sits at the top, finished work stays marked until you look, and Enter takes you there.

go install github.com/rynf1t/agent-radar/cmd/radar@latest

Needs Rex Beta 0.1 on macOS and Go 1.26 or later.

Read the quick start

radar ~/work

1 needs you 1 done 1 working 2 idle

Polish the welcome flow 4m Has a question Use the new illustration set? Claude Code~/work/ios-app
Rewrite the install guide 12m Done Ready for review, 3 files changed Codex~/work/docs
Migrate invoices to the v2 schema 6m Working Rewriting 14 queries Claude Code~/work/billing-api
Review the refunds PR 31m Idle Codex~/work/billing-api
Rotate staging certificates 48m Idle Claude Code~/work/infra

↑↓ moveenter jump

What it shows

Blocked first, then everything else.

Agents report their own state through Rex's program status protocol, so radar never has to guess. It sorts by urgency, then by how long each agent has waited.

States in detail
  • blockedWaiting on you: a permission, a question or a login
  • errorFailed and stopped
  • doneFinished, and you haven't looked yet. Once you have, it drops to the bottom.
  • workingBusy. The ring fills if the agent reports progress.
  • idleWaiting for its next instruction

Jump

Enter takes you there.

radar focuses the agent's pane, then asks Rex to show its session. Keep it open beside you with radar show, or add the Rex plugin and float it over any session with Cmd+Shift+U. Jumping needs Remote Control, which you turn on in Rex Settings under Rex Server.

Quick start
  • ↑ ↓Move, or j and k
  • enterJump to that agent's pane
  • /Filter by session, title, message, state or folder
  • ⌘ ⇧ UFloat the radar over any session, with the Rex plugin
  • qQuit

Toasts

A nudge from the sessions you’re not in.

Rex only sends notifications while it’s in the background. radar watch covers the rest: when an agent in another session gets blocked, fails or finishes, a small card shows in the corner of the tab you’re on. Click it to jump there.

Set up toasts
# toasts while you work in Rex
radar watch

# only for agents that are stuck
radar watch --states blocked,error

Scripts and agents

The same list, as JSON.

Every command exits with a code a script can branch on: 0 ok, 1 failed, 2 usage, 3 not found, 4 Rex unreachable. The agent skill ships inside the binary, so it always matches the version you run.

Read this, agents
# anything waiting on me?
radar ls --state blocked --json | jq -r '.agents[] | "\(.session): \(.msg)"'

# jump to whatever needs me
radar focus

# teach Claude Code to use it
radar skill install

Built on craftkit

Four small packages every tool needs.

radar's colours, exit codes, skill installer and status reports live in craftkit, so the next tool starts from the same place.

About craftkit
  • termcolorAsks the terminal for its colours and mixes greys from them
  • clioutOne exit code table, and JSON that suits whoever reads it
  • skillkitInstalls the embedded agent skill and never touches a file it didn't write
  • statusWrites OSC 7501 reports so Rex knows what your tool is doing

Questions

What does it need?
Rex Beta 0.1 on macOS, Go 1.26 to install it, and Remote Control turned on if you want Enter to jump.
How early is it?
In daily use by one person. The CLI and the JSON shape may still change.
Does it see agents on other machines?
Not yet. radar reads the local Rex server, so it shows agents on this Mac.
Can my agent read these docs?
Yes. Add .md to any docs URL, or start at llms.txt.