Skip to content

Repository files navigation

Super Agent Logo

Browser Pilot

🧠 Next-Gen Browser-Level AI Copilot β€” Understands Web Semantics, Executes Complex Tasks, Auto-Decides & Acts

Demo Videos β€’ Core Features β€’ Quick Start β€’ Architecture β€’ δΈ­ζ–‡

Python openJiuwen License


πŸ’‘ Project Overview

Browser Pilot is an intelligent browser assistant plugin built on the openJiuwen Agent Framework. It not only deeply understands web content but also reasons, plans, and executes based on user intent β€” acting as a true AI copilot that automatically completes multi-step, cross-page complex tasks.

🎯 Tell it what you want to do, and it will think, execute, and even learn from failures.

What Can It Do?

πŸ” Smart Q&A πŸ’Ό Office Assistance πŸ›’ Complex Tasks πŸ”„ Self-Evolution
Direct Q&A on web content Auto-reply to emails Watch recipe video β†’ Auto-add ingredients to cart Auto-reflect on failures
Precise screenshot region recognition Excel data processing Cross-app multi-step workflows Context-based learning optimization
Deep Search Form filling & submission Price comparison, booking, ordering Gets smarter with use

✨ Core Features

1️⃣ Visual Question Answering (VQA)

Let AI see everything you see

  • Web Q&A: Open any webpage, directly ask AI about page content
  • Screenshot Recognition: Select any screen region, AI answers based on image content
  • Deep Search: Complex questions auto-decomposed, multi-round search, deep summarization

2️⃣ Smart Office

Let AI handle repetitive work

  • Email Processing: Read email content, understand context, auto-compose professional replies
  • Excel Processing: Data cleaning, formula calculation, chart generation, report export
  • Form Filling: Smart field recognition, auto-fill and submit

3️⃣ Long-Duration Complex Tasks

Cross-app, multi-step, seamless execution

  • Example Scenario: Watch recipe video/article β†’ Extract ingredient list β†’ Open shopping app β†’ Auto-add to cart
  • Workflow Orchestration: Auto-plan task steps, sequential execution, exception handling
  • Cross-Platform Coordination: Seamless connection between browser and local apps

4️⃣ Self-Evolution

AI that gets smarter with use

  • Failure Reflection: Auto-analyze reasons when tasks fail
  • Context Learning: Optimize execution strategies based on interaction history
  • Self-Correction: Adjust approach and retry until success

πŸš€ Quick Start

Browser Pilot consists of a Browser Plugin (Frontend) and an Agent Service (Backend).

Requirements

  • Python 3.11+
  • uv package manager
  • Node.js 18+
  • Chrome browser

Backend Installation

1. Clone Repository

git clone https://github.com/xxxx/browser-pilot.git
cd browser-pilot

2. Install Dependencies

# Install uv (if not already installed)
# Windows: powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
# macOS/Linux: curl -LsSf https://astral.sh/uv/install.sh | sh
uv sync
# Activate virtual environment
.\.venv\Scripts\Activate.ps1
## Install openjiuwen and browser-use
uv pip install openjiuwen==0.1.2
uv pip install browser-use==0.11.2

3. Configure Environment Variables

Create .env file at src/super_agent:

# === LLM Provider Configuration (at least one required) ===

# Option 1: OpenRouter (Recommended, supports multiple models)
OPENROUTER_API_KEY=your_openrouter_api_key
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1  # Optional, has default

# Option 2: Anthropic Direct
# ANTHROPIC_API_KEY=your_anthropic_api_key
# ANTHROPIC_BASE_URL=https://api.anthropic.com  # Optional, has default

# Option 3: OpenAI Direct
# OPENAI_API_KEY=your_openai_api_key
# OPENAI_BASE_URL=https://api.openai.com/v1  # Optional, has default

# === Model Configuration ===
MODEL_NAME = "anthropic/claude-sonnet-4.5"  # Optional, default: anthropic/claude-sonnet-4.5
MODEL_PROVIDER = "openrouter"  # Optional, default: openrouter

# === Search Features (configure as needed) ===
# SERPER_API_KEY=your_serper_api_key
# GOOGLE_API_KEY=your_google_api_key
# PERPLEXITY_API_KEY=your_perplexity_api_key
# GEMINI_API_KEY=your_gemini_api_key

# === Browser Configuration ===
# BROWSER_USE_CDP_URL=http://127.0.0.1:9222  # Set when connecting to remote Chrome
# BROWSER_USE_LLM_MODEL=google/gemini-2.5-pro  # Optional, has default

4. Start Services

⚠️ Before the first run, please edit browser_start_client.ps1 or browser_start_client.sh and update the Chrome executable path to match the Chrome installation on your local machine.

Windows:

# Start
.\start_agent.ps1

macOS:

./start_agent.sh

Frontend Installation

Start Chrome Browser

Windows:

# Start
.\browser_start_client.ps1

macOS:

./browser_start_client.sh

Load Plugin into Browser

  1. Visit chrome://extensions/
  2. Enable "Developer mode" in top right
  3. Click "Load unpacked"
  4. Select frontend/dist directory
  5. Open the plugin, click settings and enter http://localhost:8000 in Backend_URL

Verify Installation

  1. Ensure backend services (port 8930 + port 8000) are running
  2. Launch Chrome browser with agent control support via the browser_start_client script
  3. Open any webpage or 1-2 blank tabs
  4. Click Browser Pilot icon in browser toolbar
  5. Enter a question to test if AI responds normally

πŸ—οΈ Architecture

Overall Architecture

Architecture

Technical Highlights

Feature Description
SuperReAct Enhanced ReAct loop: Think β†’ Act β†’ Observe, supports multi-round iterative reasoning
Browser Use Browser automation, cross-page, multi-step task execution
Reflective Evolution Auto-reflect on failures, adjust strategy and retry, gets smarter with use
Multimodal Visual Understanding Supports visual understanding and Q&A for web content and screenshot regions

Supported Models

Recommended to use OpenRouter for unified access (supports 100+ models), while also compatible with direct API connections to various providers:

Provider Models
Anthropic Claude Sonnet 4 (Recommended), Claude Opus 4
OpenAI GPT-4o, O3, O3-mini
Google Gemini 2.0 Pro/Flash
Others Qwen, DeepSeek, Llama, etc.

🀝 Contributing

Contributions are welcome!

  1. Fork this repository
  2. Create feature branch (git checkout -b feature/new-feature)
  3. Commit changes (git commit -m 'Add new feature')
  4. Push branch (git push origin feature/new-feature)
  5. Submit Pull Request

πŸ“„ License

Apache License 2.0

πŸ”— Related Links


⭐ If you find this helpful, please give us a Star!

About

Browser Pilot built on an openJiuwen framework.

Resources

Stars

192 stars

Watchers

7 watching

Forks

Releases

Packages

Contributors

Languages