@everbrowser/cli
v0.2.4
Published
Programmatic browser control from the terminal
Maintainers
Readme
@everbrowser/cli
Programmatic browser control from the terminal. Drive a real Chrome browser with simple commands, script it with JavaScript, or let an autonomous agent complete tasks for you.
Install
npm install -g @everbrowser/cliRequires the Ever Chrome extension (loaded and signed in). See namuh-eng/everbrowser for setup.
Quick Start
ever start --url https://example.com # Open a browser session
ever snapshot # Capture DOM with element [id] annotations
ever click 3 # Click element [3]
ever input 5 "hello world" # Type into element [5]
ever screenshot # Save a viewport screenshot
ever run "find the best flight to NYC" # Run an autonomous agent taskScripting with ever exec
ever exec runs JavaScript against the active session and injects two globals — page (a Playwright-style facade) and browser (Ever-native API):
ever exec "await page.goto('https://example.com'); await browser.snapshot()"
ever exec --file ./scrape.js
ever exec -e "await page.click(12); await page.fill(13, 'hello')"page.click/page.fill take a numeric snapshot id (from browser.snapshot()), not a CSS selector.
Use with AI coding agents (MCP / plugin)
ever mcp # start an MCP stdio server exposing browser_* toolsInstall as a one-step plugin (skill + MCP) for Claude Code and Codex:
# Claude Code
/plugin marketplace add namuh-eng/everbrowser
/plugin install ever-browser@everbrowser
# Codex
codex plugin marketplace add namuh-eng/everbrowserCommands
Sessions & targeting
| Command | Description |
|---------|-------------|
| ever start [--url <url>] [--new] [--purpose <key>] | Create a new browser session |
| ever sessions | List active sessions |
| ever use <index> | Switch active session |
| ever stop [--session] [--keep-tabs] | Stop the running task or end the session |
| ever tabs | List tabs in the active session's group |
| ever groups | List browser tab groups (including untracked ones) |
| ever browsers / ever devices | List connected browsers / devices for routing |
| ever browser <id> / ever device <id> | Select a routing target |
Scripting & agent
| Command | Description |
|---------|-------------|
| ever exec [code] [--file <p>] [--eval <code>] | Execute JavaScript with page/browser globals |
| ever run <task> | Run an autonomous agent task |
| ever status | Show running agent tasks |
| ever logs [--follow] | Stream agent logs |
Browser actions
Run ever snapshot first to get element [id] annotations, then reference them in actions.
| Command | Description |
|---------|-------------|
| ever snapshot [--mode full\|incremental] | Capture DOM with [id] annotations |
| ever click <id> | Click an element by snapshot index |
| ever click-xy <x> <y> | Click at viewport screenshot coordinates |
| ever input <id> <text> [--clear] | Type text into an input element |
| ever navigate <url> [--new-tab] | Navigate to a URL |
| ever go-back | Navigate back in history |
| ever scroll <up\|down> [--id <id>] | Scroll the page or an element |
| ever send-keys <keys> | Send keys/shortcuts (e.g. Control+c, Shift+Tab) |
| ever switch-tab <tabId> / ever close-tab <tabId> | Switch/close a tab in the group |
| ever search <query> [--engine ...] | Search the web |
| ever screenshot | Capture a viewport screenshot |
| ever wait <seconds> | Wait for a duration |
Forms
| Command | Description |
|---------|-------------|
| ever select-dropdown <id> <text> | Select an option in a native <select> |
| ever get-dropdown-options <id> | List options in a native <select> |
| ever upload-file <id> <files...> | Upload files to a file input |
Tab hygiene
| Command | Description |
|---------|-------------|
| ever tab-health | Show tab health for the active session's group |
| ever cleanup [--apply] | List (or close) stale Ever-owned tab groups |
| ever prune [--session\|--group <id>] [--apply] | List (or close) excess tabs in a group |
Video recording
| Command | Description |
|---------|-------------|
| ever video-start [output.webm] | Record the active session to a local WebM |
| ever video-stop [--json] | Stop and finalize the recording |
| ever video-status | Show recording status |
Domain-specific
| Command | Description |
|---------|-------------|
| ever sheets select-cell <cell> | Navigate to a cell in Google Sheets |
| ever fs read\|write\|replace ... | Agent file system actions |
Utilities
| Command | Description |
|---------|-------------|
| ever doctor | Check connectivity (daemon, API, extension) |
| ever version | Show version info for all components |
| ever login / ever logout | Store / remove API key |
| ever mcp | Start MCP stdio server for coding agents |
| ever debug-bundle | Collect diagnostics for debugging |
| ever daemon stop\|status | Manage the background daemon |
Architecture
The CLI talks to a local daemon (everd) that manages browser sessions via the Chrome extension. The daemon auto-starts on first use.
ever CLI → everd (local daemon) → Chrome Extension (CDP) → Browser