Agents in tmux, answerable from your phone.
Run your agents in tmux or herdr, and your iPhone can type into the agent’s own pane and stop a turn while your Mac stays locked. A click selects the right window and pane.
tmux with Perch
- Lands on
- The agent's window and pane
- Phone replies
- tmux and herdr
- Stop
- Claude Code, Codex, Antigravity, Droid
- Zellij
- The jump only
- Permission
- None
How the jump works
The multiplexer first, then the terminal
tmux selects the pane
A click tells the tmux server to select the agent's window and pane, then raises the terminal showing that tmux client — even though tmux hides which terminal that is from everything inside it.
Checked against the live process
The pane is found fresh on each click, from the agent's process and the moment it started. A process id the system has handed to something new can never focus a stranger's pane.
herdr and Zellij too
In herdr, Perch switches to the agent's pane over herdr's socket. In Zellij, one command switches to the agent's tab and pane. Either way the terminal around it comes forward next.
Answering
Typing into the agent's own pane
Reply from your iPhone
With Perch Pro, type a full message, line breaks and all, and it goes into the agent's own pane through tmux or herdr. Nothing touches the keyboard or the screen, so the Mac can stay locked on the desk.
Stop a turn that's going wrong
For Claude Code, Codex, Antigravity and Droid, each measured before it was offered. OpenCode's Stop goes through its own server, wherever it runs. Devin's and Amp's interrupt keys do something else, so they get none.
Reply from the Mac notification
An answer typed into a Mac notification goes to the session's own pane through the multiplexer, not to whichever pane happens to be active — and needs no Accessibility access, since nothing is typed on screen.
How approving from your iPhone works, and every alert Perch can send you.
Worth knowing
The conditions, named
Zellij gets the jump, not replies
Perch can switch Zellij to the agent's pane, but can't deliver text to that pane alone: a reply would land in whichever pane is focused. So under Zellij, Perch refuses replies rather than guess.
No reply or Stop while a prompt is up
At an approval prompt Enter means Yes and Escape means No, so while an agent waits on a permission or a question, Perch offers neither. Answer the prompt with Allow or Deny first.
Droid needs tmux specifically
Droid's Allow and Deny were measured in tmux, so that's the only place Perch presses them; its replies and Stop work in tmux or Rex. A Droid session in herdr is watched, and answered at the terminal.
Never into a shell
Print modes such as claude -p or codex e have no prompt: text sent to them would wait and then run in the shell. Perch refuses those sessions, and re-checks the agent is still in the pane before every send.
Pay once for the fleet. Subscribe for the conversation.
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
- Perch Pro is separate — each teammate who wants it subscribes in the iPhone app
Pro
Most popularor $29 a year
Launch price until 15 November, then $49 a year
- A Mac app licence included, for as long as you subscribe — nothing separate to buy
- Read your agents’ conversations from your iPhone, and reply straight back into the session
- Works with your Mac locked, from anywhere your phone can reach it*
Free to download. Pro is an in-app purchase.
* What Pro can reach depends on the agent and on where its session is running. Replying needs the session inside tmux, herdr or Rex (Droid, tmux or Rex) — Codex in its default mode and OpenCode use their own local servers instead — and it has to be switched on in Settings, because paying for Pro is not the same as consenting to remote input. Reading a conversation works wherever the session runs. Each agent’s own page says exactly what it supports, and what it doesn’t.
Questions
tmux and Perch, specifically
Can I reply to Claude Code running in tmux from my iPhone?
Why do replies from the phone need tmux or herdr?
Does clicking a session switch my tmux window?
Do approvals from my phone need tmux?
Perch lands precisely in Warp, iTerm2, Rex, Ghostty, Terminal.app and Codex Desktop. Every terminal Perch supports.