Skip to content

Open source and self-hostable browser automation library for AI agents

License

Notifications You must be signed in to change notification settings

mindkhichdi/browserable

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Website | Documentation | Discord | Twitter

Browserable Logo Browserable Logo

Open source browser automation library for AI agents

Browserable allows you to build browser agents that can navigate sites, fill out forms, clicking buttons and extract information. It is currently at 90.4% on the Web Voyager benchmarks.

Quick start

The fastest way to get started is to run the npx command. This will guide you through the setup process and ensure you have all required dependencies.

npx browserable

Visit http://localhost:2001 to set your LLM and Remote Browser API Keys to start using.

Manual setup

Clone the repository:

git clone https://github.com/browserable/browserable.git
cd browserable

Pre-requisites:

Start the development environment:

cd deployment
docker-compose -f docker-compose.dev.yml up

Set your API keys:

Services

Once running, you'll have access to the following services:

Service URL/Port Description
UI Server http://localhost:2001 Main user interface
Documentation http://localhost:2002 Local documentation
Tasks Server http://localhost:2003 Task management API
MongoDB 27017 Database
MongoDB Express UI http://localhost:3300 Database management
Redis 6379 Caching and queues
MinIO API http://localhost:9000 Object storage API
MinIO Console http://localhost:9001 Object storage UI
DB Studio http://localhost:8000 Database management

JavaScript SDK

Install the SDK using npm:

npm install browserable-js

Or using yarn:

yarn add browserable-js

Here’s a simple example to get you started:

import { Browserable } from 'browserable-js';

// Initialize the SDK
const browserable = new Browserable({
  apiKey: 'your-api-key'
});

// Create and run a task
async function runTask() {
  const createResult = await browserable.createTask({
    task: 'Find the top trending GitHub repos of the day.',
    agents: ['BROWSER_AGENT']
  });

  // Wait for task completion
  const result = await browserable.waitForRun(taskId);
  console.log('Results:', result.data);
}

Demos

Task: On amazon.com search for a yoga mat at least 6mm thick, non-slip, eco-friendly, and under $50.

amazon-demo



Task: On arxiv.org locate the latest paper within the 'Nonlinear Sciences - Chaotic Dynamics' category, summarize the abstract, and note the submission date.

arxiv-demo



Task: On coursera.com find a beginner-level online course about '3d printing' which lasts 1-3 months, and is provided by a renowned university.

coursera-demo

Configuration options

Browserable offers configuration options for:

  • LLM Providers
  • Storage Solutions
  • Database Systems
  • Remote Browsers
  • Custom Functions

For a complete list of environment variables and their configurations, see Environment Variables Documentation.

Documentation

See browserable.ai/docs for full documentation, or you can check the REST API reference/ JS SDK guide.

Contributing

Browserable is an open-source and self-hostable project. We welcome contributions! 💛

Here's how you can help:

  1. Fork the repository.
  2. Create your feature branch (git checkout -b feature/AmazingFeature).
  3. Commit your changes (git commit -m 'Added AmazingFeature').
  4. Push to the branch (git push origin feature/AmazingFeature).
  5. Open a pull request.

Support

Questions/ feedback? Join Discord.

Acknowledgments

Some amazing open source projects Browserable wouldn't have been possible without: bull, mongo-express, Stagehand, Supabase.

About

Open source and self-hostable browser automation library for AI agents

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 87.9%
  • CSS 5.7%
  • TypeScript 4.0%
  • HTML 1.1%
  • PLpgSQL 0.9%
  • Dockerfile 0.2%
  • Other 0.2%