Skip to main content

Make websites accessible for AI agents

Project description

Shows a black Browser Use Logo in light color mode and a white one in dark color mode.

Enable AI to control your browser 🤖

GitHub stars Discord Documentation Cloud Twitter Follow Twitter Follow Weave Badge

🌐 Browser-use is the easiest way to connect your AI agents with the browser.

💡 See what others are building and share your projects in our Discord - we'd love to see what you create!

🌩️ Skip the setup - try our hosted version for instant browser automation! Try it now.

Quick start

With pip (Python>=3.11):

pip install browser-use

install playwright:

playwright install

Spin up your agent:

from langchain_openai import ChatOpenAI
from browser_use import Agent
import asyncio
from dotenv import load_dotenv
load_dotenv()

async def main():
    agent = Agent(
        task="Go to Reddit, search for 'browser-use', click on the first post and return the first comment.",
        llm=ChatOpenAI(model="gpt-4o"),
    )
    result = await agent.run()
    print(result)

asyncio.run(main())

Add your API keys for the provider you want to use to your .env file.

OPENAI_API_KEY=

For other settings, models, and more, check out the documentation 📕.

Test with UI

You can test browser-use with a UI repository

Or simply run the gradio example:

uv pip install gradio
python examples/ui/gradio_demo.py

Demos



Task: Add grocery items to cart, and checkout.

AI Did My Groceries



Prompt: Add my latest LinkedIn follower to my leads in Salesforce.

LinkedIn to Salesforce



Prompt: Read my CV & find ML jobs, save them to a file, and then start applying for them in new tabs, if you need help, ask me.'

https://github.com/user-attachments/assets/171fb4d6-0355-46f2-863e-edb04a828d04



Prompt: Write a letter in Google Docs to my Papa, thanking him for everything, and save the document as a PDF.

Letter to Papa



Prompt: Look up models with a license of cc-by-sa-4.0 and sort by most likes on Hugging face, save top 5 to file.

https://github.com/user-attachments/assets/de73ee39-432c-4b97-b4e8-939fd7f323b3



More examples

For more examples see the examples folder or join the Discord and show off your project.

Vision

Tell your computer what to do, and it gets it done.

Roadmap

Agent

  • Improve agent memory (summarize, compress, RAG, etc.)
  • Enhance planning capabilities (load website specific context)
  • Reduce token consumption (system prompt, DOM state)

DOM Extraction

  • Improve extraction for datepickers, dropdowns, special elements
  • Improve state representation for UI elements

Rerunning tasks

  • LLM as fallback
  • Make it easy to define workfows templates where LLM fills in the details
  • Return playwright script from the agent

Datasets

  • Create datasets for complex tasks
  • Benchmark various models against each other
  • Fine-tuning models for specific tasks

User Experience

  • Human-in-the-loop execution
  • Improve the generated GIF quality
  • Create various demos for tutorial execution, job application, QA testing, social media, etc.

Contributing

We love contributions! Feel free to open issues for bugs or feature requests. To contribute to the docs, check out the /docs folder.

Local Setup

To learn more about the library, check out the local setup 📕.

Cooperations

We are forming a commission to define best practices for UI/UX design for browser agents. Together, we're exploring how software redesign improves the performance of AI agents and gives these companies a competitive advantage by designing their existing software to be at the forefront of the agent age.

Email Toby to apply for a seat on the committee.

Citation

If you use Browser Use in your research or project, please cite:

@software{browser_use2024,
  author = {Müller, Magnus and Žunič, Gregor},
  title = {Browser Use: Enable AI to control your browser},
  year = {2024},
  publisher = {GitHub},
  url = {https://github.com/browser-use/browser-use}
}

Twitter Follow Twitter Follow

Made with ❤️ in Zurich and San Francisco

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

browser_use_py310-0.1.46.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

browser_use_py310-0.1.46-py3-none-any.whl (86.2 kB view details)

Uploaded Python 3

File details

Details for the file browser_use_py310-0.1.46.tar.gz.

File metadata

  • Download URL: browser_use_py310-0.1.46.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for browser_use_py310-0.1.46.tar.gz
Algorithm Hash digest
SHA256 4acb99de1036ffb376582f5a38cd87be647d70899d9129c77ebc420733d329d4
MD5 e9ea544cc9b794d2382d0f15a300a5ab
BLAKE2b-256 8cadafbbf3bb6e54f8b2bc4cfbcbc66f1822684d5bac72480ce620d6f8608205

See more details on using hashes here.

Provenance

The following attestation bundles were made for browser_use_py310-0.1.46.tar.gz:

Publisher: publish.yml on changsi/browser-use

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file browser_use_py310-0.1.46-py3-none-any.whl.

File metadata

File hashes

Hashes for browser_use_py310-0.1.46-py3-none-any.whl
Algorithm Hash digest
SHA256 5e8bb0eecdb2c26a2fdd104bff1eba3cc259c51d7eacac06e479b5b7f6b21537
MD5 2cefc9739002253779ed519b0332ab02
BLAKE2b-256 91f9addd2c419d63006b1d31b3eed308c95d0c4e0d9dad3b5c5fa7783c662d5a

See more details on using hashes here.

Provenance

The following attestation bundles were made for browser_use_py310-0.1.46-py3-none-any.whl:

Publisher: publish.yml on changsi/browser-use

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page