freshcrate
Skin:/
Home > AI Agents > webbrain

webbrain

Open-source AI browser agent for Chrome and Firefox

Why this rank:Recent releaseHealthy release cadenceStrong adoption

Description

Open-source AI browser agent for Chrome and Firefox

README

WebBrain

Open-source AI browser agent for Chrome and Firefox. Chat with any web page, automate browser tasks, and run multi-step agent workflows — powered by your choice of LLM.

Features

  • Page Reading — Extracts text, links, forms, tables, and interactive elements from any page
  • Browser Actions — Click, type, scroll, navigate, and interact with page elements
  • Ask / Act Modes — Read-only mode by default, full agent mode with confirmation
  • Multi-Step Agent — Autonomous task execution with tool-use loops (configurable, default 25 steps)
  • Continue from Limit — When the agent hits the step limit, click Continue to keep going
  • Multi-Provider LLM — Supports local and cloud models:
    • llama.cpp (local, default) — No API key needed
    • OpenAI (GPT-4o, etc.)
    • OpenRouter (access 100+ models)
    • Anthropic Claude (native API)
  • Side Panel UI — Clean chat interface that lives alongside your browsing
  • Per-Tab Conversations — Each tab has its own chat history
  • Streaming — Real-time token streaming from all providers
  • Smart Context — Automatic context trimming, tool result limits, and emergency overflow recovery
  • Copy Support — Copy buttons on code blocks and full messages
  • Page Inspection Banner — Visual indicator when the agent is interacting with the page
  • Stop Button — Abort the agent mid-execution at any time

Quick Start

Chrome

git clone https://github.com/esokullu/webbrain.git
  1. Open Chrome → chrome://extensions/
  2. Enable Developer mode (top right)
  3. Click Load unpacked → select the webbrain folder

Firefox

git clone https://github.com/esokullu/webbrain.git
  1. Open Firefox → about:debugging#/runtime/this-firefox
  2. Click Load Temporary Add-on
  3. Navigate to the webbrain-firefox folder and select manifest.json

Note: Temporary add-ons are removed when Firefox restarts. For permanent installation, the extension needs to be signed via addons.mozilla.org.

Start a local LLM (default)

# Using llama.cpp
llama-server -m your-model.gguf --port 8080

# Or using Ollama (OpenAI-compatible)
ollama serve
# Then set base URL to http://localhost:11434/v1 in settings

Use it

Click the WebBrain icon → the side panel opens. Type a message like:

  • "Summarize this page"
  • "Find all links about pricing"
  • "Fill in the search box with 'AI agents' and click Search"
  • "Navigate to github.com and find trending repositories"

Configuration

Click the gear icon or go to the extension's Options page to configure:

Display Settings:

  • Verbose Mode — Show full tool call JSON (off by default)
  • Screenshot Fallback — Use screenshots when DOM reading fails
  • Max Agent Steps — Configurable step limit (5-50, default 25)

Providers:

Provider Base URL API Key
llama.cpp http://localhost:8080 Not needed
OpenAI https://api.openai.com/v1 Required
OpenRouter https://openrouter.ai/api/v1 Required
Anthropic https://api.anthropic.com Required

Architecture

webbrain/                          webbrain-firefox/
├── manifest.json (MV3)            ├── manifest.json (MV2)
├── src/                           ├── src/
│   ├── background.js              │   ├── background.js (+ background.html)
│   ├── agent/                     │   ├── agent/
│   │   ├── agent.js               │   │   ├── agent.js
│   │   └── tools.js               │   │   └── tools.js
│   ├── content/                   │   ├── content/
│   │   └── content.js             │   │   └── content.js
│   ├── providers/                 │   ├── providers/
│   │   ├── base.js                │   │   ├── base.js
│   │   ├── llamacpp.js            │   │   ├── llamacpp.js
│   │   ├── openai.js              │   │   ├── openai.js
│   │   ├── anthropic.js           │   │   ├── anthropic.js
│   │   └── manager.js             │   │   └── manager.js
│   └── ui/                        │   └── ui/
│       ├── sidepanel.html         │       ├── sidepanel.html
│       ├── sidepanel.js           │       ├── sidepanel.js
│       ├── settings.html          │       ├── settings.html
│       └── settings.js            │       └── settings.js
├── styles/                        ├── styles/
│   └── sidepanel.css              │   └── sidepanel.css
├── web/                           └── icons/
│   ├── index.html
│   └── vercel.json
└── icons/

Key difference: Chrome uses Manifest V3 (service worker, chrome.scripting, sidePanel API), Firefox uses Manifest V2 (background page, browser.tabs.executeScript, sidebar_action).

Agent Tools

Tool Ask Mode Act Mode Description
read_page Yes Yes Extract page text, links, forms
screenshot Yes Yes Capture visible tab
get_interactive_elements Yes Yes List all clickable/interactive elements
scroll Yes Yes Scroll the page
extract_data Yes Yes Extract tables, headings, images
get_selection Yes Yes Get highlighted text
click No Yes Click elements by selector, index, or coordinates
type_text No Yes Type into input fields
navigate No Yes Go to a URL
wait_for_element No Yes Wait for a selector to appear
execute_js No Yes Run custom JavaScript
new_tab No Yes Open a new tab
fetch_url Yes Yes Fetch a URL from the background with the user's cookies. Best for JSON APIs, READMEs, plain HTML.
research_url Yes Yes Open a URL in a hidden tab, wait for JS rendering, return main content. Best for SPAs.
list_downloads Yes Yes List recent downloads with status and source URLs.
read_downloaded_file No Yes Re-fetch a downloaded file's content (text or base64).
download_file No Yes Download a single file from a URL.
download_files No Yes Download multiple files in parallel (max 3 concurrent).
download_resource_from_page No Yes Download an <img>/<video>/blob URL from the current page.
iframe_read / iframe_click / iframe_type No Yes Read/click/type inside cross-origin iframes (Stripe, embedded forms).
done Yes Yes Signal task completion

Slash Commands

WebBrain accepts a small set of slash commands as the first thing on a line in the input box:

Command What it does
/allow-api Per-conversation API mutation override. By default WebBrain refuses to use API endpoints (POST/PUT/PATCH/DELETE via fetch_url or execute_js) for any action that creates, modifies, deletes, or sends — it always goes through the visible UI of the current page so you can see what's happening. Type /allow-api (optionally followed by a task description) to lift that restriction for the current conversation only. The agent will still prefer UI when UI works, but may fall back to API mutations when UI is genuinely failing or unworkable. A sticky badge appears above the input area while the override is active. The flag clears when you reset the conversation.

The default UI-first rule exists because API actions are invisible (you don't see what's being sent), often require separate auth tokens you may not have configured, and can have a much larger blast radius than a visible mis-click. Only use /allow-api when you've decided you want that tradeoff for a specific job.

Known Issues

  • Firefox is meaningfully weaker than Chrome. Firefox has no equivalent to Chrome DevTools Protocol via chrome.debugger, so several Chrome-only features are missing in the Firefox build:
    • Click/type goes through the content-script path (document.querySelector + el.click()) instead of CDP Input.dispatchMouseEvent. This means no shadow-DOM piercing, no real trusted mouse events (some React/Vue handlers won't fire), no closed-shadow-root traversal, and no resolveSelector retry budget.
    • No SPA-navigation-aware retry extension.
    • No conversation persistence across background restarts.
    • No CDP screenshots. Auto-screenshot uses tabs.captureVisibleTab instead, which works for active tabs only and at slightly lower quality.
    • No closed shadow root support for read/extract tools.
    • Site adapters, vision detection, loop detection, and the auto-screenshot loop are mirrored to Firefox.
  • SPA navigation detection in Firefox. Some single-page applications may not trigger content-script re-injection after client-side navigation.
  • Firefox temporary add-on — Firefox requires the extension to be loaded as a temporary add-on during development, which is removed on restart.

Roadmap

  • Conversation export/import — Save and load chat histories
  • Custom tool definitions — User-defined tools via settings
  • Keyboard shortcuts — Hotkeys for opening panel, sending messages, switching modes
  • Context menu integration — Right-click → "Ask WebBrain about this"
  • Screenshot/vision tool — Send screenshots to multimodal models for visual understanding
  • Chrome Web Store / Firefox AMO — Official store listings

Adding a New Provider

  1. Create a new class extending BaseLLMProvider in src/providers/
  2. Implement chat() and optionally chatStream()
  3. Register it in src/providers/manager.js

All providers normalize to a common response format:

{ content: string, toolCalls: Array|null, usage: Object|null }

License

MIT — built by Emre Sokullu

Release History

VersionChangesUrgencyDate
12.0.3Latest release: 12.0.3High6/2/2026
v8.8.0## What's Changed * web: add cream/coffee light theme with toggle by @esokullu in https://github.com/esokullu/webbrain/pull/84 **Full Changelog**: https://github.com/esokullu/webbrain/compare/v8.7.0...v8.8.0High5/28/2026
v7.3.1Latest release: v7.3.1High5/21/2026
v7.0.0Latest release: v7.0.0High5/12/2026
v6.0.1## What's Changed * web: provider constellation, GitHub stars pill, Windows dropdown fix by @esokullu in https://github.com/esokullu/webbrain/pull/38 * web: hide stargazers button on narrow mobile nav by @esokullu in https://github.com/esokullu/webbrain/pull/39 * Add blog post: Xiaomi MiMo V2.5 Pro vs “V2.5 Flash” and expose it on blog index by @esokullu in https://github.com/esokullu/webbrain/pull/40 * chrome: on-page agent visual indicator (border + Stop button) by @esokullu in https://gitHigh5/4/2026
v5.1.0## What's Changed * Add Spanish, French, Turkish, and Chinese localized landing pages by @esokullu in https://github.com/esokullu/webbrain/pull/34 * Add localized landing pages (ES/FR/TR/ZH) and language selector in navbar by @esokullu in https://github.com/esokullu/webbrain/pull/35 * agent: token-conscious screenshots (resize + iterative JPEG compress) by @esokullu in https://github.com/esokullu/webbrain/pull/32 * Add Press Releases link to website footer by @esokullu in https://github.com/High4/29/2026
v4.2.1Release v4.2.1High4/21/2026
3.6.8## What's Changed * v2.2.1: Strengthen agent guardrails against rushing, false success cl… by @esokullu in https://github.com/esokullu/webbrain/pull/11 * Add Important Safety Notice to homepage footer by @esokullu in https://github.com/esokullu/webbrain/pull/16 **Full Changelog**: https://github.com/esokullu/webbrain/compare/v2.2.0...3.6.8High4/15/2026
v2.2.0Latest release: v2.2.0High4/12/2026
v2.0.0**Full Changelog**: https://github.com/esokullu/webbrain/compare/v1.9.2...v2.0.0High4/11/2026
v1.9.2Release v1.9.2Medium4/11/2026
v1.9.1Release v1.9.1Medium4/11/2026
v1.5.9Changelog: - Release v1.5.9 - Minor fixes and improvements. Medium4/8/2026
v1.5.5**Full Changelog**: https://github.com/esokullu/webbrain/compare/v1.5.4...v1.5.5Medium4/8/2026
v0.9.3## WebBrain v0.9.3 ### Downloads - **webbrain-firefox-v0.9.3.zip** — Firefox extension (v0.9.3) - - **webbrain-chrome-v0.9.0.zip** — Chrome extension (v0.9.0)Medium4/6/2026
v0.9.0## Installation ### Chrome ```bash git clone https://github.com/esokullu/webbrain.git ``` 1. Open Chrome and navigate to `chrome://extensions/` 2. Enable **Developer mode** (top right) 3. Click **Load unpacked** → select the `webbrain` folder ### Firefox ```bash git clone https://github.com/esokullu/webbrain.git ``` 1. Open Firefox and navigate to `about:debugging#/runtime/this-firefox` 2. Click **Load Temporary Add-on** 3. Navigate to the `webbrain-firefox` folder and Medium4/6/2026
v0.7.0## WebBrain v0.7.0 Initial release of WebBrain — an open-source AI browser agent for Chrome and Firefox. ### Downloads - **webbrain-chrome-v0.7.0.zip** — Chrome extension - **webbrain-firefox-v0.7.0.zip** — Firefox extensionMedium4/6/2026

Dependencies & License Audit

Loading dependencies...

Similar Packages

ai-notes-apiNo descriptionmaster@2026-06-06
agent-browser-workspaceAutomate local Chrome browsing with isolated profiles, extract content, save pages to Markdown, and run searches using CLI tools and Node.js APIs.main@2026-06-04
gamanoteCreate and manage code and notes with a desktop IDE built on Electron, React, and Vite for a smooth and integrated development experience.main@2026-06-04
KREASYSBuild and manage projects with an autonomous browser-based IDE featuring integrated multi-modal AI tools for efficient development workflows.main@2026-06-04
learn-claude-codeBuild a minimal Claude-style AI agent from scratch that processes messages, interacts with tools, and generates dynamic responses.main@2026-06-04

More in AI Agents

hermes-agentThe agent that grows with you
awesome-copilotCommunity-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot.
CopilotKitThe Frontend Stack for Agents & Generative UI. React + Angular. Makers of the AG-UI Protocol
e2bE2B SDK that give agents cloud environments