Skip to content

zk1tty/rebrowse-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rebrowse Title


n0rizkitty

About Rebrowse

Rebrowse is a powerful tool that converts screen recordings into automated workflow agents.

Key features of Rebrowse:

  • Record your screen once and automate the workflow forever
  • Transform recordings into shareable workflow agents
  • Support for cross-application workflows
  • Easy sharing and collaboration

Explore our Showcases at rebrowse.me

Watch Demo

Click and watch Youtube videos.

▶ Lead Gen demo

Luma to LinkedIn DM

▶ Remove background from Rick Rubin image

Replay: remove bg from img

▶ Tweet post Replay: tweet posting

Follow me on Twitter for the latest updates!


Two Agent Modes

✍🏻 Text prompt
  • 👍 Robust.
  • 👎 needs long descriptive prompt. slow.
Rebrowse Agent Tab

▶️ Recording

  • 👍 Determinictic. 10x fast. 3x Accurate.
  • ⚠️ AI-powered fall-back is WIP.
Rebrowse Replay Tab

Installation Guide

Prerequisites

  • Python 3.8 or higher
  • Git
  • Chrome browser (for browser automation)
  • Gradio (for the web interface)

Step 1: Clone the Repository

git clone https://github.com/zk1tty/rebrowse-app.git
cd rebrowse-app

Step 2: Set Up Python Environment

  1. case: MacOS

    # Install uv:
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    # Create and activate a virtual environment
    uv venv --python 3.11
    
    # activate venv:
    source .venv/bin/activate
    
    # Install python dependencies
    uv pip install -r requirements.txt
  2. case: Windows

    # Install uv:
      powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
    
    # Create and activate a virtual environment
    uv venv --python 3.11
    
    # activate venv:
    .venv\Scripts\activate
    
    # Install python dependencies
    uv pip install -r requirements.txt

Step 3: Configure Environment Variables

  1. Create a new Chrome profile to be used by rebrowse

    mkdir -p custom_chrome_profile
    
  2. Copy the .env.example file to a new file named .env in the project root.

    cp .env.example .env
    
  3. Open .env file

    vim .env
    
  4. add API key and chrome paths

    # LLM API Keys
    OPENAI_API_KEY=your_openai_api_key
    # - Windows: `C:\Program Files\Google\Chrome\Application\chrome.exe`
    # - Linux: `/usr/bin/google-chrome`
    CHROME_PATH="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
    
    # ⚠️ Replace {username}
    CHROME_USER_DATA="/Users/{username}/Projects/rebrowse-app/custom_chrome_profile"
    CHROME_CDP_URL="http://localhost:9222"

Step 4: Close all open Chrome tabs. IMPORTANT!!

Quit Chrome

Or, run this command.

pkill -9 "Google Chrome"

Step 5: Launch the Web Application

# Start with Gradio
gradio webui.py

# Or run directly with Python
python webui.py

The application will be available at http://127.0.0.1:7860

Step 6: Use FireFox or Safari to open 127.0.0.1:7860

Step 7: Run a clean Chrome with CDP session

⚠️ I am temporarily making the test profile on the same project file, and name it /custom_chrome_profile for debugging purposes.

  1. Run this Chrome using the new profile. Configuration details to connect to your own Chrome are here.

    sh run_custom_chrome.sh
  2. Make sure that the DevTools WebSocket session is available

    DevTools listening on ws://127.0.0.1:9222/devtools/browser/1bbd94a9-aed9-4462-bc25-fddec9d9663c
    
  3. Log in to web apps on the new Chrome profile In this process, you will create a new Chrome profile to be used by browser-agents.

    • log in to your web accounts: X, LinkedIn, Youtube, etc.
    • If the browser agent can skip this process, it will be easier to handle executions.

Step 8: Ready to play ^^

  • Go to "Choose Agent" tab
  • Pick up a Preset Task
  • Try "Run Agent"
  • Enjoy your browsing agent.

Are you a dev?

Let me navigate you through the technical concept and objectives of Rebrowse.

Background

This project builds upon the foundation of browser-use, which is designed to make websites accessible for AI agents.

The original creator is WarmShao, who made the WebUI.

Key difference from Browser-use?

I needed to make the workflow of agent behaibier by faster and accurate.
One approach to do this is recoeding and make it repeatable.
I introduced our technical architecture in Architecure.

Let me share our technical milestones.

  • Make a workflow traceable
  • Implement Replay mode with Replayer
  • Add an eval process to trigger Drift or not. <- enough flexible
  • Take a demo video and add here.
  • Measure the accuracy and speed of replay mode in comparison with agent mode
  • Add Analyzer: a reasoning process to make the process modifiable by test prompt
  • Add Remixer
  • Design Replayer memory to handle edge cases
  • Add multi-thread execution of a single workflow on Replayer

Update on 19th May

I found that @browser-use team released workflow-use. I'm still researching their approach and objectives.
Let's talk more on X or Telegram.

Product Roadmap

We are going to build a marketplace, where users can share cross-app workflows by recording, instead of node editors like Zapier or n8n.
Check out our Roadmap.

Rebrowse Flywheel

Gradio Development Mode

For development with auto-reload:

gradio webui.py --watch src

This will automatically reload the browser when you make changes to files in the src directory.

About

Rebrowse app inspired by browser-use

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 39