PitchHut logo
Control your browser from the terminal with ease.
Pitch

buse transforms browser automation by allowing control through simple terminal commands. This stateless CLI facilitates seamless interactions with browsers, including persistent sessions and universal commands for common actions. It simplifies complex automation processes, making them accessible and efficient.

Description

buse is a powerful command-line interface (CLI) tool that allows seamless control of web browsers directly from the terminal. Specifically designed for AI agents and automation scripts, buse simplifies complex browser interactions into straightforward command-line commands.

Key Features

  • Stateless Control: Quickly point buse at a browser instance, taking immediate command without setup complexity.
  • Persistent Sessions: Run multiple browser instances concurrently, enhancing multitasking efficiency.
  • Universal Primitives: Execute a variety of commands—click, type, scroll, and run JavaScript—using simple, one-line instructions.
  • Vision-Ready: Use the observe command to capture the current state and screenshots in a single step.
  • Session Migration: Preserve user sessions by exporting cookies/storage with save-state, allowing for persistent logins across sessions.

Why Choose buse?

Controlling a browser typically involves lengthy scripts or costly cloud solutions. buse streamlines this process by allowing users to interact with a browser just as they would with files or folders on their computer, employing clear, single-word commands in the terminal.

Usage Example

To open a browser and navigate to a site:

uvx --python 3.12 buse browser-1
uvx --python 3.12 buse browser-1 navigate "https://example.com"

uvx --python 3.12 buse browser-2 # Open a second browser instance
uvx --python 3.12 buse browser-2 search "latest tech news"

Command Overview

Here are some essential commands:

Lifecycle & State

CommandDescriptionExample
<id>Initialize a new browser instancebuse b1
listDisplay all active browser instancesbuse list
stopTerminate a browser instancebuse b1 stop
save-stateExport cookies/storagebuse b1 save-state cookies.json

Analysis & Extraction

CommandDescriptionExample
observeGet minified DOM; use --screenshot for imagesbuse b1 observe --screenshot
extractUse a language model to extract databuse b1 extract "get product info"

Navigation & Interaction

CommandDescriptionExample
navigateLoad a URL (supports --new-tab)buse b1 navigate "https://google.com"
new-tabOpen a URL in a new tabbuse b1 new-tab "https://example.com"
searchConduct a web search (engines: google, bing)buse b1 search "query" --engine google
clickClick by index, coordinates, or resolve by --idbuse b1 click --x 500 --y 300
inputType text into a fieldbuse b1 input 12 "Hello"
scrollScroll a page or specific elementbuse b1 scroll --down --pages 2

Additional Features

  • Multiple output formats (JSON or plain text) for responses.
  • Environment variables for enhanced functionality, such as session management and external API integration.

Learn More

For detailed usage and examples, refer to the README documentation.

0 comments

No comments yet.

Sign in to be the first to comment.