Skip to content

Browser Pane & multiprompt-browser

multiprompt docks a native Microsoft Edge window beside the shell. Edge remains Edge: profile, tabs, extensions, cookies, password managers, and page behavior stay native.

multiprompt owns:

  • pane visibility
  • pane geometry
  • border masks
  • focus routing
  • multiprompt-browser binding files
  • URL state persistence

multiprompt does not own Edge internals.

Edge draws non-client frame areas that can appear as grey borders. multiprompt covers those areas with narrow mask windows that match the active multiprompt theme.

Rules:

  • Masks must stay inside multiprompt’s window.
  • Masks must hide when overlays are open.
  • Masks must not cover changelog, inbox, Ctrl+K, or URL picker overlays.
  • AMOLED theme should use black masks.
  • The active browser focus border must not expose grey Edge frame strips.

Use Ctrl+Shift+O to open or reconnect the active shell’s browser pane.

Use Ctrl+K actions when available:

  • Open browser URL
  • Insert multiprompt-browser instructions
  • Force-refresh the multiprompt-browser pane binding

Alt+E hides a session and its docked browser window but does not close the pane or remove its browser binding. The normal browser auto-suspend policy may close an inactive pane after 20 minutes. Any later multiprompt-browser command, including status or doctor, relaunches and rebinds a configured missing pane and waits for Edge adoption before reporting the result.

multiprompt-browser is the browser-control CLI available inside multiprompt-spawned shells. The former zsb command remains as a compatibility alias.

Common commands:

  • multiprompt-browser navigate <url> reuses the session’s driven tab; add --new-tab only when another tab is intended.
  • multiprompt-browser tabs lists the bound pane’s tabs, and multiprompt-browser activate <tabId> brings one of those same-pane tabs forward.
  • Background driven tabs automatically receive CDP focus emulation so SPAs continue rendering while another tab is visible.
Terminal window
multiprompt-browser navigate "https://example.com"
multiprompt-browser text
multiprompt-browser snapshot
multiprompt-browser click "button"
multiprompt-browser type "input[name=q]" "query"
multiprompt-browser screenshot -o out.png
multiprompt-browser status
multiprompt-browser doctor
multiprompt-browser sidebar

multiprompt-browser must target the browser pane owned by the current shell’s exact session.

It must never steal a pane from another active agent just because a browser exists elsewhere. If no matching pane is bound, multiprompt-browser should return a useful status/error or trigger a rebind flow.

multiprompt publishes local binding files under the compatibility path %APPDATA%\ZigShell, including:

  • panewin-<tmux-session>.txt
  • panewin-zss-<shell-id>.txt
  • browserwin-<shell-id>.txt

The remote VPS shim uses these identities to route browser commands back to the owning multiprompt tab.

End tmux session removes the owning tab’s browser binding files as part of teardown. A plain tab close does not kill the remote tmux session; use End tmux session when the remote session and its browser routing should both be destroyed.

When a remote multiprompt-browser command fails because the tunnel is down, the error should say so directly. Agents should not keep retrying blind browser commands for minutes.