Skip to content

coding agents

Long agent runs, checked from wherever you are.

Agentic runs are long, chatty and easy to abandon. Run them in tmux — as most people already do — and mtmux gives you the same pane on a phone, so walking away stops meaning losing the thread.

mtmux does not notify you. There is no push, no watcher and no agent detection. It is the session, on your phone, in about two seconds.

What the loop actually looks like

Nothing here is mtmux-specific except step three. The agent runs in a normal tmux session the whole time.

01

Start the run in tmux

tmux new -s work, then start Claude Code, Codex, aider or whatever you use. It is an ordinary tmux session — mtmux never wraps or supervises the process.

02

Leave the desk

The tmux server keeps the pty alive exactly as it always has. Closing the laptop lid does not touch it.

03

Open the session on your phone

Scan the code once, and after that the browser is trusted. Reopening the tab reattaches to the live pane.

04

Read, answer, or start the next one

The modifier row gives you a real esc, ctrl and prefix key, so a y/n approval is one tap and a new task is a normal command.

What mtmux does

  • Serves the tmux session your agent is already running in, unmodified.
  • Shows the pane's real output, byte for byte, with scrollback and search.
  • Sends your keystrokes to that pane, including approval answers and interrupts.
  • Keeps working over cellular, and reattaches on its own after a dropout.
  • Encrypts everything end to end, so the relay carries ciphertext it cannot read.

What it does not do

  • It does not notify you. No push, no email, no Slack, no webhook.
  • It does not detect agents, parse panes or match on output signatures.
  • It does not know the difference between finished, blocked and stalled.
  • It does not wrap your command or watch an exit code.
  • It will not wake you at 3am, because it cannot wake you at all.

If being paged is what you need, that is a real requirement and mtmux is not it — a tmux hook piping into ntfy, or your agent's own hook support, will serve you better. mtmux solves the other half: once you know you want to look, looking is trivial.

A morning with three agents running

  1. 08:41

    Kicked off a refactor in work:1 and walked to the train.

  2. 08:52

    Opened the tab on the platform. Codex was sitting on Apply patch? in api:0 — tapped y.

  3. 09:06

    Looked again at web:2: no new output for a while. Scrolled up, found a hung installer, killed it and restarted.

  4. 09:18

    Refactor finished, 27 tests green. Read the diff on the phone and queued the follow-up task.

  5. 09:34

    Sat down at the desk. Same three sessions, exactly where the phone left them.

Every check in that morning was something you chose to do. Nothing buzzed.

faq

Questions about running agents this way

Your agent is still running. Go look at it.

One command on the machine, one scan on the phone. No account, and nothing to configure per agent.