AI Compare
​
​
ToolsArticlesServices
Best for
    All tools

    Sales

    AI tools for finding leads, qualifying them, preparing quotes, following up and keeping the CRM up to date.

    Marketing

    AI tools for content, social media, images, video, SEO and campaigns.

    Customer service

    AI tools for answering customer emails, chats and calls, handling requests and escalating the hard cases.

    Operations

    AI tools for running the daily work: workflows, scheduling, projects, purchasing and delivery.

    Finance

    AI tools for invoices, bookkeeping, reconciliation, spreadsheets and financial reporting.

    Management & Admin

    AI tools for owners, managers and office staff: planning, reports, documents, meetings, scheduling and everyday admin.

    HR

    AI tools for hiring, screening candidates, onboarding, training and answering employee questions.

    Legal & Compliance

    AI tools for reviewing contracts, tracking deadlines and preparing compliance work for a qualified person to check.

    IT & Development

    AI tools for developers and IT teams: coding, AI models, agents, infrastructure and integrations.

Find AI tools for your team
AllAssistantsWriting & DocsImagesVideoAudioAI AgentsAutomationCode
← Back to tools

•

2019-04-11

openbrowser logo

openbrowser

Not rated yet

9.5K GitHub stars

Type:

Tool

Platforms:

Github

Task:

Run AI agentsConnect AI to appsChat with AI

Best for:

IT & Development
View on GitHub

Pricing


Starting price

$0

Type

Freemium

Overview

openbrowser is let AI agents browse the web. An autonomous toolkit for browser-based AI agents. AI-powered autonomous web browsing framework for TypeScript. Give an AI agent a browser. It clicks, types, navigates, and extracts data — autonomously completing tasks on any website. Built on Playwright with first-class support for OpenAI, Anthropic, and Google models.

Open Browser is a monorepo with three packages.

README

Open Browser

AI-powered autonomous web browsing framework for TypeScript.

License GitHub stars

Header


Give an AI agent a browser. It clicks, types, navigates, and extracts data — autonomously completing tasks on any website. Built on Playwright with first-class support for OpenAI, Anthropic, and Google models.

Production-ready since v1.0. Contributions welcome.

Why Open Browser?

  • Autonomous agents: Describe a task in natural language, and an AI agent navigates the web to complete it — clicking, typing, scrolling, and extracting data without manual scripting
  • Multi-model support: Works with OpenAI, Anthropic, and Google out of the box via the Vercel AI SDK — swap models with a single flag
  • Interactive REPL: Drop into a live browser session and issue commands interactively — great for debugging, prototyping, and exploration
  • Sandboxed execution: Run agents in resource-limited environments with CPU/memory monitoring, timeouts, and domain restrictions
  • Production-ready: Stall detection, cost tracking, session management, replay recording, and comprehensive error handling
  • Open source: MIT licensed, fully extensible, bring your own API keys

Quick Start

# Install dependencies
bun install

# Set up your API keys
cp .env.example .env
# Edit .env with your API keys

# Run an agent
bun run open-browser run "Find the top story on Hacker News and summarize it"

# Or open a browser interactively
bun run open-browser interactive

Architecture

Open Browser is a monorepo with three packages:

PackageDescription
open-browserCore library — agent logic, browser control, DOM analysis, LLM integration
@open-browser/cliCommand-line interface for running agents and browser commands
@open-browser/sandboxSandboxed execution with resource limits and monitoring

CLI Commands

Run an AI Agent

open-browser run <task> [options]

Describe what you want done. The agent figures out the rest.

# Search and extract information
open-browser run "Find the price of the MacBook Pro on apple.com"

# Fill out forms
open-browser run "Sign up for the newsletter on example.com with test@email.com"

# Multi-step workflows
open-browser run "Go to GitHub, find the open-browser repo, and star it"
OptionDescription
-m, --model <model>Model to use (default: gpt-4o)
-p, --provider <provider>Provider: openai, anthropic, google
--headless / --no-headlessShow or hide the browser window
--max-steps <n>Max agent steps (default: 25)
-v, --verboseShow detailed step info
--no-costHide cost tracking

Browser Commands

open-browser open <url>              # Open a URL
open-browser click <selector>        # Click an element
open-browser type <selector> <text>  # Type into an input
open-browser screenshot [output]     # Capture a screenshot
open-browser eval <expression>       # Run JavaScript on the page
open-browser extract <goal>          # Extract content as markdown
open-browser state                   # Show current URL, title, and tabs
open-browser sessions                # List active browser sessions

Interactive REPL

open-browser interactive

Drop into a live browser> prompt with full control:

browser> open https://news.ycombinator.com
browser> extract "top 5 stories with titles and points"
browser> click .morelink
browser> screenshot front-page.png
browser> help

Using as a Library

import { Agent, createViewport, createModel } from 'open-browser'

const viewport = await createViewport({ headless: true })
const model = createModel('openai', 'gpt-4o')

const agent = new Agent({
  viewport,
  model,
  task: 'Go to example.com and extract the main heading',
  settings: {
    stepLimit: 50,
    enableScreenshots: true,
  },
})

const result = await agent.run()
console.log(result)

Sandboxed Execution

Run agents with resource limits and monitoring:

import { Sandbox } from '@open-browser/sandbox'

const sandbox = new Sandbox({
  timeout: 300_000, // 5 minute timeout
  maxMemoryMB: 512, // Memory limit
  allowedDomains: ['example.com'],
  stepLimit: 100,
  captureOutput: true,
})

const result = await sandbox.run({
  task: 'Complete the checkout form',
  model: languageModel,
})

console.log(result.metrics) // steps, URLs visited, CPU time

Configuration

Environment Variables

# LLM Provider Keys (at least one required)
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
GOOGLE_GENERATIVE_AI_API_KEY=...

# Browser
BROWSER_HEADLESS=true
BROWSER_DISABLE_SECURITY=false

# Recording & Debugging
OPEN_BROWSER_TRACE_PATH=./traces
OPEN_BROWSER_SAVE_RECORDING_PATH=./recordings

Agent Configuration

SettingDefaultDescription
stepLimit100Maximum agent iterations
commandsPerStep10Actions per agent step
failureThreshold5Consecutive failures before stopping
enableScreenshotstrueInclude page screenshots in agent context
contextWindowSize128000Token budget for conversation
allowedUrls[]Restrict navigation to specific URLs
blockedUrls[]Block navigation to specific URLs

Viewport Configuration

SettingDefaultDescription
headlesstrueRun browser without visible window
width / height1280 / 1100Browser window dimensions
relaxedSecurityfalseDisable browser security features
proxy—Proxy server configuration
cookieFile—Path to cookie file for persistent sessions

How It Works

                    ┌─────────────┐
  "Book a flight"   │             │
  ───────────────►  │    Agent    │  ◄── LLM (OpenAI / Anthropic / Google)
                    │             │
                    └──────┬──────┘
                           │
                    ┌──────▼──────┐
                    │   Commands  │  click, type, scroll, extract, navigate...
                    └──────┬──────┘
                           │
                    ┌──────▼──────┐
                    │  Viewport   │  Playwright browser instance
                    └──────┬──────┘
                           │
                    ┌──────▼──────┐
                    │  DOM / Page │  Snapshot, interactive elements, content
                    └─────────────┘
  1. You describe a task in natural language
  2. The Agent sends the current page state + task to an LLM
  3. The LLM decides what commands to execute (click, type, navigate, extract...)
  4. Commands execute against the Viewport (Playwright browser)
  5. The agent observes the result, detects stalls, and loops until the task is complete

Model Support

ProviderExample ModelsFlag
OpenAIgpt-4o, gpt-4o-mini, o1-p openai
Anthropicclaude-sonnet-4-5-20250929, claude-opus-4-6-p anthropic
Googlegemini-2.0-flash, gemini-2.5-pro-p google

Project Structure

packages/
├── core/                    # Core library (open-browser)
│   └── src/
│       ├── agent/           # Agent logic, conversation, stall detection
│       ├── commands/        # Action schemas and executor (25+ commands)
│       ├── viewport/        # Browser control, events, guards
│       ├── page/            # DOM analysis, content extraction
│       ├── model/           # LLM adapter and message formatting
│       ├── metering/        # Cost tracking
│       ├── bridge/          # IPC server/client
│       └── config/          # Configuration types
├── cli/                     # CLI (@open-browser/cli)
│   └── src/
│       ├── commands/        # CLI command implementations
│       └── index.ts         # Entry point
└── sandbox/                 # Sandbox (@open-browser/sandbox)
    └── src/
        └── sandbox.ts       # Resource-limited execution

Development

# Install dependencies
bun install

# Type check
bun run build

# Run tests
bun run test

# Lint
bun run lint

# Format
bun run format

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

License

MIT

Releases

Release information has not been added yet.

Related articles

Guides and news that mention this tool.

Z
M
n8n logo

AI Agents in Zapier vs Make vs n8n: Which Is Best?

Comparison
n8n logo

What Is n8n? The Open-Source Workflow Automation Tool Explained

Get started
G
Z
M

AI Email Labeling in Gmail with OpenAI

Use cases
W
n8n logo

AI WhatsApp Customer Support Agent

Use cases
G
n8n logo
Gemini logo

Build a RAG Chatbot over Your Google Drive Documents

Use cases
T
n8n logo
ChatGPT logo

Build an AI Assistant on Telegram (Voice + Text) with n8n

Use cases
Complete your AI stack

Add a general assistant, research, coding, monitoring, and team productivity to your automations.

ChatGPT logo
ChatGPT
General assistant

General-purpose AI assistant for research, writing, coding, data analysis, image creation, and everyday productivity

View tool
Perplexity logo
Perplexity
Research

AI-powered search and research assistant

View tool
Cursor logo
Cursor
Build integrations

AI coding editor and autonomous software development platform

View tool
Best alternatives

Compare similar tools in the same category.

OpenClaw logo

OpenClaw

Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

Cursor logo

Cursor

AI coding editor and autonomous software development platform

Hermes Agent logo

Hermes Agent

The agent that grows with you

Firecrawl logo

Firecrawl

The API to search, scrape, and interact with the web at scale. 🔥

Copilot logo

Copilot

AI assistant for creating, searching, communicating, and automating work across Microsoft 365 apps.

View all in this category
Help
Pick an answer below
Hi! I can point you to the right tool or guide. What are you looking for?
Browse all articles