Skip to main content

x5browser — hidden Chrome + VNC live link + agent tools

pip install x5browser            # core only (CDP + live view)
pip install "x5browser[annotate]" # + Pillow for screenshot(annotate=true)
from x5browser import LiveBrowser

live = LiveBrowser()          # hidden Chrome (WSL on Windows) + VNC link
await live.start()
print(live.live_url)          # minimal noVNC page, open / embed in <iframe>
await live.navigate("https://example.com")  # tools return result + screenshot
await live.take_control()     # user drives the same browser
await live.agent_control()    # agent resumes with fresh observe
await live.stop()
  • Live: the remote Chrome in any browser tab or <iframe> (x5-live.html — no toolbar, no scrollbars, no fixed size: the screen fills its host, scales to it and re-scales when the host changes size, showing a spinner with the word "Loading" until the stream is drawn). Any VNC player can attach to the same machine at vnc://<host>:5900. Embed: <iframe src="...live_url..."></iframe>.
  • Tools: an acting tool answers with its output plus one image taken after the event (ActionResult(ok, message, screenshot)); a read-only tool answers with data only (text/JSON, never an image). The page map is never attached: ask for it with page_snapshot / find_elements.
  • Profile: created on first start, reused afterwards. close_profile() on X5Browser closes Chrome quietly, data is kept.

Setup (once)

python scripts/setup_local.py

Starts Xvfb + headed Chrome + x11vnc + noVNC + CDP relay inside WSL (Ubuntu) and publishes them on Windows localhost (6080/5900/9334).

Demo page (optional)

scripts/agent_popup_demo.html is a tiny page with three real popups (alert, prompt, in-page dialog) for trying the tools by hand.

Tool console + live gate (one command)

python scripts/run_ui.py          # stack + UI on http://127.0.0.1:8790/
  • http://127.0.0.1:8790/ — the tool console: one section per tool, each with its own inputs, a Test button, the organized JSON log and the returned image. A Test runs the real library tool, never a copy of it.
  • http://127.0.0.1:8790/view?token=... — the live link. Every browser start mints a new token; the old link answers Not Connect, and closing the browser revokes the link automatically.
  • Tools: open_browser / close_browser (quiet, data kept) drive the browser, and any other tool opens it by itself when it is closed.
  • human_control answers the control link (the user drives), live_preview answers a watch-only link.

Metadata

Release files for X5Browser 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for X5Browser 1.0.0
File Size Uploaded
x5browser-1.0.0.tar.gz 130.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for X5Browser 1.0.0
File Interpreter ABI Platform
x5browser-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 248.2 kB

Release files / x5browser-1.0.0.tar.gz

Download URL x5browser-1.0.0.tar.gz
Size 130.5 kB
Tags Source
SHA-256 checksum
How to use checksums
da6f76d1b7d01565af71a6cb832358c0f5fcf50710338c0d683f7de6eed74df3
BLAKE2b-256 checksum
How to use checksums
b68cc6e5160d402446bebeb0b968ddbbd9f8f8b8b26a84e9e15e7f648878abfb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / x5browser-1.0.0-py3-none-any.whl

Download URL x5browser-1.0.0-py3-none-any.whl
Size 117.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0bda480bc26cc98f7dc6526760d4a81d1ed878d54698ef515209230326a505b6
BLAKE2b-256 checksum
How to use checksums
cd261046d9da0b1c9e6d98dbe2c05dbc6b8756f80c527017b1f37b88b4b2611e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page