Orch term
Search features…Ctrl K

Flagship features · CDP browser mirror WebView2 CDP

CDP browser mirror

When the AI you're chatting with browses the web, every action (navigation·clicks·input) is reflected live in the in-app browser panel beside the terminal. The app's own screen is invisible to the agent, so it's never operated by mistake.

What it does

When you hand an agent a web task, you usually can't see what it opened or where it got stuck. The mirror turns the agent's browser into a real panel on your screen, letting you watch it work in real time as if over its shoulder. The agent drives by looking only at that panel, while the app's own UI is neither visible nor reachable.

AI agent
Browses the web
Mirror
Built-in app mirror
Hides app UI
New page → in-app tab
In-app browser panel
Shown live on your screen
Agent browser — mirrored to the panel · take overVisible
The app's own UI — hidden from the agentHidden

Enable

In dev, launching the app with npm run dev:app always turns the mirror on and connects agents automatically (proxy 9522+base). In a release, turn on Settings → Agent browser mirror and restart the app, and agent sessions connect automatically (default port 9422, changeable in settings). While it's on, the status bar shows Mirror :port.

orchterm — devmirror live
PowerShell
$ npm run dev:app [dev] base=0 vite=1420 bridge=9323 cdp=9222 proxy=9522 [mirror] proxy 127.0.0.1:9522 → 127.0.0.1:9222 [mirror] .mcp.json patched → orchterm-mirror @ :9522 $
Mirror :9522 UTF-8 · CRLF
The launcher brings up the mirror alongside and auto-configures the agent connection · the status bar shows Mirror :port.

An agent session reads the mirror connection at startup. A session that's already running must be restarted once to attach to the mirror.

Usage

Just say "open ○○ in the browser and check it," and the page the agent opens isn't a floating temporary window but a proper in-app browser tab, with every subsequent navigation·click·input shown live in that panel. When the agent changes pages, your view follows along, and when the work is done you take over that tab as-is.

orchterm — agent ↔ mirror panelMirror :9422
claude
open example.com and check the page title ▸ new_page https://example.com → creates an in-app browser tab + auto-selects it ▸ take_snapshot → h1 "Example Domain" The title is "Example Domain". It's still open in the right panel.
Example Domain
https://example.com

Example Domain

This domain is for use in illustrative examples in documents. The page the agent opened renders right here in this panel.

More information →
The page the agent opened = a proper browser tab. Subsequent actions are mirrored live into this panel — when it's done, the tab is yours.

Limits · caveats

Multi-agent setups are separated per Space. An agent launched from an app terminal drives by looking only at its own Space's panel, and new pages also open in its own Space. That said, agents within the same Space can see each other's panels, and even if you move a terminal tab to another Space it keeps pointing at the old Space until the shell is restarted. New pages open one at a time (opening two at once rejects the second, which can be retried).

Mirror mode uses a separate browser profile — when the mirror is on, the in-app browser uses a separate profile, so logins and cookies from normal mode don't carry over to mirror mode. You'll need to log in again to sites you need in mirror mode.

Reference

ItemValue
Proxy portdev 9522+base · release default 9422 (changeable in settings)
Enable / disableSettings → Agent browser mirror → restart the app
Multi-agentSeparated per Space
Mirror profileWhen the mirror is ON, logins and cookies are kept separately
Status indicatorStatus bar Mirror :port