Done is scattered everywhere
Seven tabs open, four agents working in the background. Finding which tab just finished should not be a scavenger hunt.
Tiremusu lives under the notch and watches your Claude Code and Codex sessions. See what each agent is doing, answer Allow or Deny, send a one-line reply — without leaving your editor.
‹ ⌘ All sessions
1 needs you
Auth refactor
tiremusu ⎇ auth-refactor · Reviewing
Billing page
shop ⎇ main · Done
GP-114 migrationCodex
api ⎇ db-migrate · Writing
Landing copyCodex · App
site ⎇ copy · Reasoning
Deps cleanup
shop ⎇ chore · Ended
Show 1 more
Seven tabs open, four agents working in the background. Finding which tab just finished should not be a scavenger hunt.
Going back to the terminal, finding the right tab, pressing the right key — every answer costs you your train of thought.
Tiremusu only watches and asks. It injects nothing into the agent, so the agent runs exactly as if Tiremusu were not there.
2 agents · 4 phases · 8 moods · 9 colors × 6 shapes · 3 Island states · 1 shortcut.
Newest on top, never reshuffled while open. Each row shows project ⎇ branch, status — Idle · Needs you · Done · Error · Ended — and a ⌘1–⌘9 badge. Ended sessions stay visible, dimmed.
Researching, Reasoning, Writing, Reviewing — derived from the active tool by rule, held steady for 1.2 s so fast tool chains never flicker. Each phase tab shows its share of real time this turn.
“Needs your go-ahead” with the tool name, a command summary and a live timer. ⌥A / ⌥D answers instantly. One request is answered at most once — ambiguity always fails open, never auto-allows. Claude Code only.
“Reply to continue…” sends a real user message and the agent starts a new turn. Suggestion chips (Continue, Run the tests…) fill the field, never send. Undeliverable text is kept, with Copy & Jump. Claude Code only.
↗ Jump brings the session's terminal forward — Terminal, iTerm2, Ghostty, tmux — or opens the Codex chat via deep link. The only action that ever takes focus. The Island closes behind you.
One character in the Island's ear tells the collective state at a glance — 8 moods, tinted with the session's own color (9 colors × 6 shapes). Soft morphs, gentle breathing when idle; respects Reduce Motion.
Collapsed, Peek, Expanded — it only ever opens downward
Every session in one list, newest first — the order never shifts while you watch
Shows each session's project and branch, kept up to date as you commit
Researching — reading files, searching, running safe commands
Reasoning — thinking it through, no tool running yet
Writing — editing files, applying patches, changing code
Reviewing — running tests, builds, lint and git diff
Asks: “Needs your go-ahead” — with the tool, the command and a timer
⌥A allows, ⌥D denies — one answer per request, never guessed
Left unanswered for 10 minutes? It offers to open the terminal for you
Type a reply in the notch — the agent reads it and starts a new turn
Chips like “Run the tests” fill the box for you — you still press send
↗ Jump brings the session's terminal forward, or opens the Codex chat
A small Face shows the mood of the room — alert, worried, pleased, idle…
The side rail keeps the sessions you touched in the last 15 minutes one click away
Open any session to see its tool history, last message, tokens and model
Needs you → Glass (on) · Done → Hero (off) · Error → Basso (off)
Shows every change before writing it, keeps a backup, removes only its own lines
No network, no keystrokes, at most 5 ms added to each agent step
…and one shortcut to rule it all: ⌃⌥Space
Tiremusu reads Claude Code hooks and Codex session files on your Mac. Nothing is sent anywhere — there is no network connection at all.
Each session shows its phase — Researching, Reasoning, Writing, Reviewing — derived from the active tool. A small Face mirrors the mood of the room: alert, worried, pleased, thinking, fine, curious, idle, asleep.
When an agent needs you, the Island taps your shoulder. Allow or Deny with ⌥A / ⌥D, send a one-line reply, or Jump to the terminal. Nothing else ever steals focus.
A thin strip the width of the notch. A Face on the left, the priority session's mark on the right, colored dots for the rest. Always visible, never takes keyboard focus.
Slides down on hover (~150 ms) or by itself for 4 s when something needs you. Session name + status line. No focus taken — clicks pass through to the app below.
The full panel: rail strip, session list or single-session detail. Opens on click or ⌃⌥Space. On notch-less screens the same surface lives as a draggable Pill, centered on top.
Sound, per event: Needs you plays Glass (on by default). Done plays Hero and Error plays Basso (both off by default). Each can be toggled and previewed, volume defaults to 70%. Same event never repeats within 10 s; when the panel already shows the session, it stays silent.
Privacy & reliability
No connections except its own 127.0.0.1 socket. No account, no telemetry, no cloud sync.
It never edits your code, runs commands, or injects keystrokes into your terminal.
Every hook except Allow/Reply adds at most p99 5 ms. If Tiremusu is gone, crashed or frozen, agents behave exactly as before — the hook exits silently.
Late or repeated events never roll state back. Each permission is answered at most once; an answer from the terminal wins with “Already answered”.
Only identity colors, settings, seen-state and ended-session summaries (title, project/branch, model, tokens, tool counts, phase times — max 50). Message contents, code and commands are never written to disk.
No Dock icon, no space-hogging window. ≤ 0.05% average CPU idle, ≤ 60 MB memory. Face animations run on the render server, not your CPU.
Shortcuts
Remapping shortcuts is not available yet — the Shortcuts tab in Settings says Coming soon.
Pricing
Tiremusu
One-time purchase · Free updates for 1.x
$9.99
FAQ
Only to show them. Message contents, code and commands are kept in memory for display and never written to disk. The disk holds only identity colors, settings, seen-state and ended-session summaries (title, project/branch, model, tokens, tool counts, phase times — max 50 sessions).
No. The app makes no network connections; local communication is only its own 127.0.0.1 socket. No account, no telemetry, no cloud sync.
Every hook except Allow/Reply adds at most p99 5 ms. If Tiremusu is not running, crashed or removed, the hook exits silently and the agent behaves exactly as before.
No. Before writing anything it shows which file gets which lines and asks for approval. Setup is idempotent, never touches your other hooks, takes a backup, and uninstall removes only the lines Tiremusu added.
Yes for tracking, status, phases and Jump. Permission decisions and quick replies from the notch are Claude Code only for now — in Codex the card shows “Answer in Codex” + Jump. Codex hook setup is labeled experimental.
macOS only — built as a macOS menu-bar app (LSUIElement, no Dock icon). There are no Windows, Linux or iOS versions.
No. Tiremusu is a one-time purchase with free updates for the current major version. No account needed.