TermBridge logo TermBridge Docs

Supported terminals

TermBridge works with every terminal app, because it doesn’t hook the terminal — it hooks the shell.

Why “every terminal” is literally true

Most remote tools integrate with a specific terminal emulator. TermBridge sits one layer down: a guarded snippet in your ~/.zshrc re-execs your interactive shell inside an agent-owned PTY. Whatever app is displaying that shell is irrelevant — the agent sees the shell either way.

That means all of these show up the same way, with no per-app setup:

TerminalNotes
iTerm2Windows, tabs, and splits all appear as separate shells.
Terminal.appThe macOS built-in. Works out of the box.
VS CodeIntegrated terminals appear — watch a build inside the editor from your phone.
ZedSame — the editor’s embedded terminal is visible.
CursorIntegrated terminal supported.
tmuxtmux panes show up; combine with TermBridge for the full picture.

SSH clients and session-spawning apps can’t reach an editor’s embedded terminal at all — that’s the gap TermBridge fills.

A note on editor terminals

Editors like Zed and VS Code capture your shell environment by running zsh -lic '<command>' at startup. The shell hook specifically detects this run-and-exit invocation and skips wrapping it, so environment capture still works and the editor never breaks. Only genuine interactive sessions get wrapped. (This is one of the hook’s safety guards — it always fails toward a normal shell.)

Shells

The hook targets zsh, the default interactive shell on modern macOS. If you’ve switched your login shell to something else, TermBridge’s wrapping won’t apply to it.

Next

Read about the Security model that protects all of this.