Skip to content

Persistent terminals

Treeport runs each terminal in a dedicated tmux server that Treeport owns. The process belongs to the tree, not to a client.

When you close a client or terminal view, only that client disconnects.

Coding agents, shells, development servers, editors, and test watchers continue to run. Open the terminal again to connect to the same process.

Treeport reports whether the terminal process runs or has exited. It also reports the exit code when that code is available.

If a command returns to an interactive shell, the terminal continues to run because the shell is active.

Open the same terminal from the browser or desktop client.

You can also connect from a phone through the supported Tailscale Serve endpoint.

Treeport uses tmux history. Earlier output or a selection can stay visible while new output continues.

See Shortcuts for scroll, selection, copy, and paste operations.

A terminal has one size for all connected clients. The client that has control sets the row-and-column grid.

Other clients fit that grid into the available area. A change of control between different devices can change the layout for all clients.

See Shared terminal size.

Read the security guidance before you enable remote access.

Treeport transfers terminal input and output. It does not replace the terminal user interface.

Mouse input, keyboard shortcuts, alternate screens, and interactive prompts continue to work as the terminal application expects.

A tree can have multiple named terminals:

investigate-cache
├── agent Pi
├── dev pnpm dev
├── tests pnpm test --watch
└── shell login shell

Applications can add information with standard signals:

  • Title: Short context, such as PR #123 or Development server.
  • BEL: An important change that requires attention.
  • OSC 9;4 progress: Active work, a percentage, or a cleared state.
  • Process exit: Completion and the exit code, when available.

These signals are not necessary for persistence or control. See the terminal signals reference.

Treeport uses tmux only as a persistent terminal runtime. It shows repositories, trees, and terminal tabs in the Treeport interface.

Your personal tmux server and configuration stay separate.