Skip to main content

pyagentbrowser

Native browser automation with typed Python APIs and before-and-after evidence.

Documentation · Get started · Examples · PyPI · Issues

PyPI version Python 3.11 through 3.14 Release Check Apache-2.0 license

Control browsers from Python with the native agent-browser engine. Inspect a page, act on an element, and get the before-and-after snapshots with a diff of what changed.

Alpha: The public API and native integration can change between minor releases. Pin a version for production automation.

Get started

python -m pip install pyagentbrowser

Requires Python 3.11 through 3.14. Local browsers run headlessly by default. The first launch finds Chrome or Chromium, or downloads Chrome for Testing when needed.

from agentbrowser import Browser

with Browser.launch() as browser:
    browser.page.set_content(
        "<button onclick=\"this.textContent='Done'\">Run</button>"
    )
    snapshot = browser.observe()
    result = snapshot.one(role="button", name="Run").click()

    print(result.after.one(role="button").name)
    print(result.diff.changed)
Done
True

observe() captures a Snapshot of the page's accessible elements. Selecting a button returns a Ref. Clicking it returns an ActionResult with before, after, and diff. Use browser.find for live element queries.

Browser workflows

  • Inspect and act. Navigate pages, fill forms, read documents, and capture screenshots and PDFs through typed namespaces.
  • Manage sessions. Launch a browser or attach to an existing one. Work with tabs, cookies, saved state, and explicit cleanup.
  • Control actions. Configure domain restrictions and confirmation policy for operations through the native engine.
  • Compose in Python. Use synchronous or asynchronous controllers, agent skills, and the complete engine protocol through browser.native.

Documentation

Get started · Concepts · Action evidence · Safety · API reference · Troubleshooting

The documentation site covers browser workflows, optional packages, supported platforms, and integrations. See examples for Python scripts and Contributing for development setup and checks.

License

pyagentbrowser is licensed under the Apache License 2.0. See NOTICE for bundled software attribution.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyagentbrowser-0.37.0.tar.gz (1.2 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pyagentbrowser-0.37.0-cp311-abi3-win_amd64.whl (9.2 MB view details)

Uploaded CPython 3.11+Windows x86-64

pyagentbrowser-0.37.0-cp311-abi3-manylinux_2_28_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ x86-64

pyagentbrowser-0.37.0-cp311-abi3-manylinux_2_28_aarch64.whl (9.5 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

pyagentbrowser-0.37.0-cp311-abi3-macosx_11_0_arm64.whl (8.8 MB view details)

Uploaded CPython 3.11+macOS 11.0+ ARM64

pyagentbrowser-0.37.0-cp311-abi3-macosx_10_12_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.11+macOS 10.12+ x86-64

File details

Details for the file pyagentbrowser-0.37.0.tar.gz.

File metadata

  • Download URL: pyagentbrowser-0.37.0.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyagentbrowser-0.37.0.tar.gz
Algorithm Hash digest
SHA256 537cc37227d1572ff58d46cb3421c8910d5ff7cfcc7a7e45a1ba0a9e9ae4af96
MD5 a434aa2f4f2c62cba080a026d7034b5b
BLAKE2b-256 6855b0164abb608f1404178771e64575e57e5d34ae90b1cdd27713fc34005f1b

See more details on using hashes here.

File details

Details for the file pyagentbrowser-0.37.0-cp311-abi3-win_amd64.whl.

File metadata

  • Download URL: pyagentbrowser-0.37.0-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 9.2 MB
  • Tags: CPython 3.11+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyagentbrowser-0.37.0-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 fb4685c51f56718bed1843459d86bd77e86e4d25c9439444b87fd8ca072f8c32
MD5 4b63f06b724ec0fdc9544f1accb38c56
BLAKE2b-256 7e6358b95e42e80dee4c03bbde02ce8297604b5537206d74c9f070a55f942080

See more details on using hashes here.

File details

Details for the file pyagentbrowser-0.37.0-cp311-abi3-manylinux_2_28_x86_64.whl.

File metadata

  • Download URL: pyagentbrowser-0.37.0-cp311-abi3-manylinux_2_28_x86_64.whl
  • Upload date:
  • Size: 9.8 MB
  • Tags: CPython 3.11+, manylinux: glibc 2.28+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyagentbrowser-0.37.0-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5055bd5b8859830ec6ab2b73f872e732cadb1271e95956223fcc255ecd88b3ba
MD5 4b18f252483f4340525a2ec1f89944e2
BLAKE2b-256 0d7ab97aa10ea89a76fa9d62e04a2eeefbd8c07208172cbfd02e81835ccb72d9

See more details on using hashes here.

File details

Details for the file pyagentbrowser-0.37.0-cp311-abi3-manylinux_2_28_aarch64.whl.

File metadata

  • Download URL: pyagentbrowser-0.37.0-cp311-abi3-manylinux_2_28_aarch64.whl
  • Upload date:
  • Size: 9.5 MB
  • Tags: CPython 3.11+, manylinux: glibc 2.28+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyagentbrowser-0.37.0-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 21ec9ca5b4603eb8cbd19f59437d199dd3b31d9393ce9aae62f43a50c68a5476
MD5 299acf4a8c2f9e390020fc4cac851e3a
BLAKE2b-256 a1f7409512c38fac7f0f442e7eecf71b8c8df20e26ce9f49b7abe33c21c7a449

See more details on using hashes here.

File details

Details for the file pyagentbrowser-0.37.0-cp311-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: pyagentbrowser-0.37.0-cp311-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 8.8 MB
  • Tags: CPython 3.11+, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyagentbrowser-0.37.0-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9faed29568d69b026d0cede4cafe698312d12fc9db0e053089d973783bb18b65
MD5 b454cac9624676b368236e4df55af9a8
BLAKE2b-256 8f718781d6e9f615dd1cba003c3cfdabf871df90019d5cd12260a35c49527c5c

See more details on using hashes here.

File details

Details for the file pyagentbrowser-0.37.0-cp311-abi3-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: pyagentbrowser-0.37.0-cp311-abi3-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 9.4 MB
  • Tags: CPython 3.11+, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyagentbrowser-0.37.0-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b25f1f7be682d6a0340b9ad460cf61eda48d06e42231226e22ccc4acf71054bf
MD5 a8b0f3036ae676189ad12930877ba32f
BLAKE2b-256 ff9299f24a92c06e7877c32079f38e36192a2b3c678b1224f8fc921c7c9c52d8

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.37.0 This release

6 files

0.36.0.2

6 files

0.36.0.1

6 files

0.36.0

6 files

0.35.1

6 files

0.35.0

6 files

0.34.0

6 files

0.33.1

6 files

0.33.0

6 files

0.32.3

6 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