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.
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
observecommand 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
| Command | Description | Example |
|---|---|---|
<id> | Initialize a new browser instance | buse b1 |
list | Display all active browser instances | buse list |
stop | Terminate a browser instance | buse b1 stop |
save-state | Export cookies/storage | buse b1 save-state cookies.json |
Analysis & Extraction
| Command | Description | Example |
|---|---|---|
observe | Get minified DOM; use --screenshot for images | buse b1 observe --screenshot |
extract | Use a language model to extract data | buse b1 extract "get product info" |
Navigation & Interaction
| Command | Description | Example |
|---|---|---|
navigate | Load a URL (supports --new-tab) | buse b1 navigate "https://google.com" |
new-tab | Open a URL in a new tab | buse b1 new-tab "https://example.com" |
search | Conduct a web search (engines: google, bing) | buse b1 search "query" --engine google |
click | Click by index, coordinates, or resolve by --id | buse b1 click --x 500 --y 300 |
input | Type text into a field | buse b1 input 12 "Hello" |
scroll | Scroll a page or specific element | buse 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.
No comments yet.
Sign in to be the first to comment.