Model or dataset
BrowserOperator/browser-operator-core avatar
BrowserOperator/browser-operator-core

Browser Operator Core: a Chromium-based AI browser with a local multi-agent layer

Browser Operator - The AI browser with built in Multi-Agent platform! Open source alternative to ChatGPT Atlas, Perplexity Comet, Dia and Microsoft CoPilot Edge Browser

508 stars84 forksTypeScriptBSD-3-Clause

At a glance

What is it?
Browser Operator is an open source AI browser built on the Chromium/DevTools codebase, distributed as signed macOS and Windows builds. It routes agent work through OpenRouter, OpenAI, Groq or a local LiteLLM proxy, and the README documents no Linux build and no source install path.
Who is it for?
Adopt Browser Operator Core if you want an agent-driven browser on macOS 10.15+ or Windows 10 64-bit and you are willing to run a second browser alongside your main one. Do not adopt it if you need Linux, an Android build, or a reproducible source build, because the README offers only release downloads and points build instructions at docs.browseroperator.io.
Can I use it commercially?
Yes. BSD-3-Clause is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Activity is slowing. The repository last received commits 6 months ago.
What is it written in?
Mainly TypeScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 29, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What Browser Operator Core actually is, and who it is for

Browser Operator Core is an open source AI browser. The README describes it as a "privacy-focused AI browser" that runs processing locally in the browser, and positions it as an open source alternative to ChatGPT Atlas, Perplexity Comet, Dia and Microsoft Copilot Edge. The repository topics name the same territory from the other direction: agent-browser, agentic-browser, computer-use, mcp-client, langgraph, ollama.

The intended user is someone who wants an agent to drive a real browser session rather than a headless scraping library. The README's use cases are research and analysis (literature reviews, competitive intelligence, market research), shopping and price tracking, and business automation such as talent sourcing and lead generation. Those are tasks where a human would otherwise click through pages and copy text out, and where the value comes from the agent seeing the rendered page.

It is not a library you import into an existing browser. It is a browser. That distinction matters more than any feature list, because it determines your deployment story: you install a second browser, you do not add a dependency to your app.

The Chromium fork underneath the agent layer

The repository layout is the clearest signal of how this is built. The top level contains front_end/, inspector_overlay/, third_party/, v8/, BUILD.gn, DEPS, PRESUBMIT.py and OWNERS. The package.json in the tree is named chrome-devtools-frontend, authored by "The Chromium Authors", with the description "Chrome DevTools UI". That is the DevTools frontend package, vendored into a Chromium checkout.

So the architecture is a Chromium fork with an agent layer bolted on, not a browser extension and not an Electron shell. The agent-server/ directory at the top level is where the server-side agent runtime lives, and extension-api/ and extensions/ sit alongside it. MODEL-CONFIGS.md at the root suggests model configuration is a first-class, documented concern rather than something buried in settings.

The practical consequence is that the browser engine is Chromium's, and the AI surface is a separate process the browser talks to. That is a heavier design than a script that drives an existing Chrome over the DevTools protocol, and it is the reason the distribution is a signed application rather than an npm package. The README does not describe the IPC between front_end/ and agent-server/, so treat that boundary as undocumented.

Installing Browser Operator Core and running a first task

The README does not give a source build. It gives download links to the GitHub releases page for macOS and Windows, so installation starts there. System requirements per the README are macOS 10.15+ or Windows 10 (64-bit)+, 8GB RAM with 16GB recommended, and 2GB free disk space.

After installing, open the app and go to Settings to pick a provider. The README lists four: OpenRouter (400+ models, sign in through the browser), OpenAI (API key), Groq (API key), and LiteLLM (proxy plus Ollama for local models). The README summarises the flow as: Settings, select provider, enter credentials, choose model, save.

The repository's .env.example is for the eval runner rather than the browser, and it names the keys the agent LLM providers expect:

bash
# API Keys for Eval Runner
# Copy this file to .env and fill in your keys

CEREBRAS_API_KEY=your-cerebras-api-key
OPENAI_API_KEY=your-openai-api-key
ANTHROPIC_API_KEY=your-anthropic-api-key

# Optional: Braintrust for experiment tracking
BRAINTRUST_API_KEY=your-braintrust-api-key

The README points build instructions at docs.browseroperator.io, and CONTRIBUTING.md is referenced for contributions. If you want a local-model path, the README pairs LiteLLM with Ollama, which means the browser talks to a proxy and the proxy talks to your local runtime. Note that the README does not document a port, a LiteLLM config file, or an Ollama model name, so the specifics come from those projects' own docs.

Where Browser Operator Core falls short

Platform coverage is the first real limitation. The README badges and the system requirements section name macOS and Windows only. There is no Linux build in the README, and the related searches for an Android version have nothing in the README to answer them. If your team is on Linux, this is not a tool you can evaluate on your own machines.

The second limitation is verification. The repository is a Chromium fork, and the README tells contributors to see the docs for build instructions rather than carrying them in the tree. That means the published artifacts are the practical path, and anyone who needs to audit a build from source, or who needs a reproducible build for a regulated environment, has an extra step the README does not cover.

The third is the model dependency. The README's own framing is "privacy-first" with local processing, but the fastest setup paths (OpenRouter, OpenAI, Groq) send page content to a remote provider. Local execution is available through LiteLLM and Ollama, and that is the configuration where the privacy claim holds without qualification. Reading the tagline as a default rather than an option would be a mistake.

Finally, maintenance. The last push to the default branch was on 2026-03-19, and the most recent release listed is v0.6.0 from 2025-12-11. The repository is not archived, but the gap between the last push and the current date is substantial, so plan for the possibility that issues sit unanswered for a while.

Browser Operator Core compared with Steel, Browser-Use and driving Chrome yourself

The nearest comparison in the search data is Steel, and the difference is architectural. Steel-style projects give you a browser you control programmatically from your own code, typically headless or in a container, with an API you call. Browser Operator Core inverts that: the browser is the product, the agent runs inside the application, and the human sits in front of it watching the session. If your task is batch automation on a server, a programmatic browser is the better fit. If your task is a research session where you want to see and correct what the agent is doing, the browser-as-product model is the point.

Against Browser-Use with a local LLM, the trade-off is the same shape. Browser-Use is a Python library you wire into your own agent loop, which means you control the model, the retries and the logging. Browser Operator Core gives you less control over the loop and more out of the box: a multi-agent platform, a provider picker, and a Chromium engine that renders pages the way a user sees them.

Against just scripting Chrome over the DevTools protocol, the honest answer is that Browser Operator Core is doing more work for you and asking you to accept a fork you did not choose. That is a reasonable trade for a research analyst and a poor one for a team that already has a mature Playwright or Puppeteer suite.

Licence and upgrade considerations

Browser Operator Core is released under BSD-3-Clause, per the README and the repository licence badge. That is a permissive licence, and it is the same licence family as the Chromium and DevTools frontend code the repository vendors, which keeps the combined distribution straightforward. It is not legal advice, and anyone redistributing a modified build should read the LICENSE file and the third_party/ tree rather than relying on the badge.

Upgrade cost is driven by the release cadence. The listed releases are v0.4.0 on 2025-10-14, v0.5.0 on 2025-11-08 and v0.6.0 on 2025-12-11, roughly monthly. The last push to main was on 2026-03-19. If you install from a release asset, upgrading means downloading a new build from the releases page and re-entering provider credentials, unless the app persists them; the README does not say whether settings survive an upgrade, so verify that before you standardise on a specific provider configuration across a team.

Because the browser is a fork, you also inherit the fork's lag. Chromium security fixes arrive when the fork is rebased, and the README does not publish a rebase schedule. For a browser that handles authenticated sessions, that is the upgrade question worth asking before deployment, not after.

Editorial conclusion

Adopt Browser Operator Core if you want an agent-driven browser on macOS 10.15+ or Windows 10 64-bit and you are willing to run a second browser alongside your main one. Do not adopt it if you need Linux, an Android build, or a reproducible source build, because the README offers only release downloads and points build instructions at docs.browseroperator.io. Before committing, verify three things: that a release asset exists for your platform on the releases page, that your chosen provider is reachable from the settings flow described in the README, and that the agent-server directory contains the multi-agent runtime you actually intend to use.

Frequently asked questions

Can an AI agent control my browser with Browser Operator Core?

Yes. The README describes multi-agent automation where specialised AI agents work together to handle web tasks autonomously, and lists research, price tracking and business automation as the intended uses. The agent runs inside the Browser Operator application rather than in your existing browser.

Can I use Ollama in Browser Operator Core?

The README lists LiteLLM as the provider for local models and privacy, and pairs it with an Ollama setup behind a proxy. It gives no port, config file or model name, so those details come from the LiteLLM and Ollama documentation.

Can I use Browser-Use with a local LLM instead of Browser Operator Core?

Browser-Use is a separate project and the README does not describe how it connects to a local model. The relevant difference here is that Browser Operator Core is a full browser you install, while Browser-Use is a library you drive from your own code.

Official sources

  1. BrowserOperator/browser-operator-core on GitHub
  2. License: BSD-3-Clause
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/browseroperator-browser-operator-core.svg)](https://hysenlabs.com/projects/browseroperator-browser-operator-core)