macOS menu bar · Claude Code
Every Claude Code session, at a glance.
Perch sits in your menu bar and watches every Claude Code session on your Mac — CLI, Claude Desktop, and the terminal inside your editor. When one stops for a permission prompt, it taps you on the shoulder, and you approve it from the menu bar, your iPhone, or your wrist.

How it works
Three ways in, none of them a config file you edit
Claude Code exposes more about a running session than any other agent Perch supports, and Perch reads all of it.
Hooks
perch-report, installed for you
Perch writes its hooks into your Claude Code settings itself — no config to edit, and chain-safe, so hooks you already have keep firing. State changes land the instant they happen: starting, running, waiting on you, done. Remove them from Settings and nothing of Perch is left behind.
Status line
Your context and cost, read at the source
Perch can install a Claude Code status line, and chains to an existing one rather than replacing it. That's where per-session context and exact spend come from — the same numbers Claude Code itself reports, not an estimate reconstructed from token counts.
Transcript scan
Sessions that started before Perch did
A scan of ~/.claude/projects picks up work already in flight the moment you launch Perch, so the first thing you see is your actual fleet rather than an empty panel waiting for the next hook to fire.
Approvals
The prompt finds you, wherever you are
Allow or deny, from anywhere
A permission prompt reaches the menu bar, your iPhone and your Apple Watch at once. Answer on whichever is nearest and the session moves on — no hunting for which terminal it was.
Type an answer back
When Claude asks a question rather than for permission, reply straight from the notification. Perch puts the keystrokes into the session that asked.
Subagents count as working
Perch tracks nested subagents, so a session that has handed off to background work stays running instead of going falsely idle — and the “finished” ping lands when the work is really done.
The checklist, tracked
Perch reads Claude’s own to-do list, so a long run reads as “task 4 of 5” with the current step named — on the Mac, and on your lock screen as a Live Activity.
Stale prompts stand down
If you answered in the terminal yourself, Perch notices and drops the “needs you” state rather than nagging about a decision you already made.
Straight to the session
One click on a CLI session lands in the exact pane it’s running in — Warp, iTerm2, Ghostty or Terminal.app. Claude Desktop sessions raise the app.
Usage, limits and spend
Know how much runway is left, before you hit the wall
5-hour and weekly windows
Both limit windows as progress bars, with the reset time beside each — as a countdown or a clock, whichever you prefer. They read from the provider, so they keep moving while a session sits idle.
Per-model weekly bars
Opt in with a read-only OAuth grant and each model gets its own bar, so you can see which one is eating the week. Off by default, and everything else works without it.
Exact cost, not an estimate
Per-session spend and today’s total come from Claude Code’s own reporting rather than a token-count reconstruction — the figure Perch shows is the figure you pay.
A warning before you run out
Perch tells you when a window drops under ten percent, and surfaces a rate limit the moment you hit one — on the Mac and as a push to your phone.
Stats
A year of Claude Code, in one panel
Total tokens, sessions and active days; a contribution heatmap; current and longest streak; your longest session and busiest day; your favourite model and a full per-model breakdown. Filter to Claude alone, or set it against the other agents you run.
The Mac computes a digest and sends it on, so the same numbers are on your iPhone and your Apple Watch.

Pricing
Pay once, keep it
Solo
- Lifetime license — pay once, keep it
- One Mac at a time; deactivate in-app to move
- iOS companion, push alerts & Live Activities included
- Notarized app with signed automatic updates
Team
- A license key for every teammate — not one shared key
- Assign and revoke seats by email from your customer portal
- Your seat is claimed on purchase; invite the rest by email
- Same lifetime license and updates on every seat
FAQ
Questions Claude Code users ask
Do I have to edit my Claude Code settings by hand?
Will it clobber my status line?
Does it work with Claude Desktop, or only the CLI?
Can it slow Claude Code down?
Where do the weekly per-model bars come from?
Does my code leave my Mac?
Running Codex or Cursor too? Perch watches all three from one menu bar.