explaingit

energypantry/agent-browser-runtime

Analysis updated 2026-06-24

86JavaScriptAudience · developerComplexity · 4/5LicenseSetup · hard

TLDR

System for running AI agents inside a real Chrome browser, sharing one visible window via tab groups with persistent profiles and noVNC handoff for logins or Captchas.

Mindmap

mindmap
  root((agent-browser-runtime))
    Inputs
      Agent jobs
      Chrome profiles
      Site URLs
    Outputs
      Screenshots
      HTML captures
      Action results
    Use Cases
      Multi-agent web tasks
      Human takeover for login
      Continuous browsing sessions
    Tech Stack
      Node.js
      Fastify
      Chromium
      Docker
      noVNC
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run multiple browser agents that share one visible Chrome window with isolated tab groups.

USE CASE 2

Build a scraping or automation flow that hands off to a human over noVNC when a Captcha or MFA prompt appears.

USE CASE 3

Keep agent sessions logged into platforms like LinkedIn or Reddit using persistent Chrome profiles.

USE CASE 4

Drive long multi-step browsing through one lease that captures HTML and full-page screenshots.

What is it built with?

Node.jsFastifyChromiumDockerWebSocket

How does it compare?

energypantry/agent-browser-runtimezhouyoukang1234-spec/windsurf-assistantjoeseesun/qiaomu-userscripts
Stars868577
LanguageJavaScriptJavaScriptJavaScript
Setup difficultyhardhardeasy
Complexity4/54/52/5
Audiencedeveloperdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires Docker Compose with a Chromium container, virtual display, x11vnc, and a Chrome extension, multi-piece stack with a noncommercial license.

PolyForm Noncommercial 1.0.0, free for learning and research but commercial use needs a separate license.

In plain English

Agent Browser Runtime is a system for running AI agents inside a real Chrome browser instead of the lightweight headless sessions that many automation libraries use. The idea is that several agents share one visible browser, where each one gets its own Chrome Tab Group, a persistent profile that keeps cookies and login state between runs, and a path for a human to take over when the agent hits a login screen, a Captcha, or a multi-factor prompt. The project ships several pieces that run together through Docker Compose. A Node.js broker built on Fastify exposes an HTTP and WebSocket control plane for leases, jobs, and artifacts. The browser side is Chromium running in a Docker container together with a virtual display, x11vnc, and noVNC so a person can connect to the browser through a webpage at port 16080. A Chrome extension installed inside that browser owns the real tabs, takes screenshots, captures HTML, and exposes UI action primitives like move, click, type, press, scroll, and waitFor. A local TLS gateway proxy is optional. There is also a command-line tool at cli/brs.js for status checks, fetches, session probes, extractor jobs, artifacts, and leases. A continuous browsing mode lets one agent open a lease, navigate through a site over many steps, and capture HTML or full-page screenshots without spawning a new tab each time. The runtime offers different browser identity modes. The default, called trusted-real-browser, leaves the User-Agent, WebGL, canvas, audio, timezone, and other surfaces untouched so login-sensitive sites see a normal Chrome. Optional modes can either inject JavaScript overrides for things like webdriver detection or load a separately built fingerprint Chromium binary. Probe commands check whether a saved profile is still logged in on platforms such as LinkedIn or Reddit. The README is explicit about responsible use. The project is published for learning and research under the PolyForm Noncommercial License 1.0.0, commercial use needs a separate written license, and the README tells operators to comply with platform terms, rate limits, and account-safety rules, and to fall back to manual handoff over noVNC whenever a site asks for login, payment, Captcha, or MFA.

Copy-paste prompts

Prompt 1
Run agent-browser-runtime with Docker Compose, open it on port 16080, and walk me through launching one agent that opens example.com and captures a screenshot.
Prompt 2
Use the brs.js CLI to lease a tab, navigate to a login page, and demonstrate handing off control to a human over noVNC.
Prompt 3
Write a Node.js client that calls the Fastify broker WebSocket, opens a continuous browsing session, and saves HTML snapshots after each click.
Prompt 4
Configure agent-browser-runtime in trusted-real-browser mode and add a probe command that checks whether a saved Reddit profile is still logged in.
Prompt 5
Add a new extension UI action to agent-browser-runtime that scrolls to a CSS selector and waits for an element to appear.

Frequently asked questions

What is agent-browser-runtime?

System for running AI agents inside a real Chrome browser, sharing one visible window via tab groups with persistent profiles and noVNC handoff for logins or Captchas.

What language is agent-browser-runtime written in?

Mainly JavaScript. The stack also includes Node.js, Fastify, Chromium.

What license does agent-browser-runtime use?

PolyForm Noncommercial 1.0.0, free for learning and research but commercial use needs a separate license.

How hard is agent-browser-runtime to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is agent-browser-runtime for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.