Working
Claude is calling tools or writing.
you: nothing — let it work
Evlat · for macOS
Evlat docks a thin black strip to the edge of your screen. One ring per Claude Code or Codex session, one face for all of them — and an amber pulse the moment one stops and needs your answer.
try it — drag a file onto the mascot, or click it
Why it exists
An agent that finished and an agent that stopped to ask you something look the same in a terminal tab. They are not the same: one can sit there all afternoon, the other is holding your work hostage until you answer. Evlat keeps those two apart — the whole product lives in that distinction.
Claude is calling tools or writing.
you: nothing — let it work
It asked for a permission or a question. Nothing happens until you answer.
you: go and answer
Done, sitting at the prompt. Nobody is waiting on anybody.
you: whenever you like
"you've been idle a while" is not "I need you" — so it never lights amber.
State comes from Claude Code's and Codex's own hooks, which Evlat installs for you from the mascot's menu. Sessions you opened before installing still show up right away: Evlat also reads Claude Code's session files, so a session killed with kill -9 disappears instead of spinning forever.
Out of the way until you want it
The face answers “should I look?”. The rings answer “at what?”. Everything else waits for your cursor.
one click → that terminal comes to the front
The mascot
A cube with two eyes and no mouth. Everything it says, it says with its eyes and posture — and it follows your cursor while it does. It always shows the most urgent state across all your sessions.
who wins: failed › waiting › working › done › idle
Click the mascot
Click the mascot or press ⇧⌘Space and a balloon opens right out of the bar. It takes your keyboard without pulling Evlat to the front, and it runs on your own Claude Code install.
Each ring carries its tool's mark in the state's colour, so two sessions in the same folder stay apart — even on the closed bar.
CLAUDE
5h25%↻ 1h 12m
7d52%↻ 3d 4h
CODEX
5h84%↻ 38m
The 5-hour and 7-day windows for Claude and Codex. Turns amber past 80%.
apiDEVBOX
workerGPU-01
no connection · 5 minAdd a server and its Claude sessions arrive over an ssh -R tunnel, labelled with the machine's name. A lost link dims the row and says why.
Right by default, left from the mascot's menu. It sits above the Dock and on every Space, and never steals focus.
127.0.0.1:48151 that turns browsers away. No account, no server of ours.Two minutes
Move Evlat.app into Applications.
This early build isn't notarised yet, so macOS asks first: right-click Evlat.app → Open → Open. Only needed once.
Right-click the mascot → install hooks for Claude Code and Codex. New sessions start reporting straight away; the ones already open show up too.