agent-browser: CLI Browser Automation

Browser automation using Vercel's agent-browser CLI.

You say
Install this skill Read the source first Free Written by EveryInc · unverified publisher
Context cost
1.6k tokensestimated from the bundle, loaded when it triggers
Bundle
1 file · 6.4 kBtext throughout, nothing executable
Licence
MITfree to use
Last change
no release on file
Servers it uses
Noneruns standalone

What it does

Browser automation using Vercel's agent-browser CLI. Use when you need to interact with web pages, fill forms, take screenshots, or scrape data. Alternative to Playwright MCP - uses Bash commands with ref-based element selection. Triggers on "browse website", "fill form", "click button", "take screenshot", "scrape page", "web automation".

Installed, it changes the agent in these ways.

What this skill changes about the agent is not written down here yet. The listing was collected from its source, and the description is in its own SKILL.md.

Workflow

Runs a procedure end to end.

browserautomationvercelagent

The skill itself

This is the whole product. A skill is instructions the model reads, so there is nothing behind the listing you cannot see first — the front matter loads with every session, and the body below it loads when the skill triggers.

SKILL.md6.4 kB · 224 lines
--- name: agent-browser description: Browser automation using Vercel's agent-browser CLI. Use when you need to interact with web pages, fill forms, take screenshots, or scrape data. Alternative to Playwright MCP - uses Bash commands with ref-based element selection. Triggers on "browse website", "fill form", "click button", "take screenshot", "scrape page", "web automation". ---
6# agent-browser: CLI Browser Automation
7
8Vercel's headless browser automation CLI designed for AI agents. Uses ref-based selection (@e1, @e2) from accessibility snapshots.
9
10## Setup Check
11
12```bash
13# Check installation
14command -v agent-browser >/dev/null 2>&1 && echo "Installed" || echo "NOT INSTALLED - run: npm install -g agent-browser && agent-browser install"
15```
16
17### Install if needed
18
19```bash
20npm install -g agent-browser
21agent-browser install # Downloads Chromium
22```
23
24## Core Workflow
25
26**The snapshot + ref pattern is optimal for LLMs:**
27
281. **Navigate** to URL
292. **Snapshot** to get interactive elements with refs
303. **Interact** using refs (@e1, @e2, etc.)
314. **Re-snapshot** after navigation or DOM changes
32
33```bash
34# Step 1: Open URL
35agent-browser open https://example.com
36
37# Step 2: Get interactive elements with refs
38agent-browser snapshot -i --json
39
40# Step 3: Interact using refs
41agent-browser click @e1
42agent-browser fill @e2 "search query"
43
44# Step 4: Re-snapshot after changes
45agent-browser snapshot -i
46```
47
48## Key Commands
49
50### Navigation
51
52```bash
53agent-browser open <url> # Navigate to URL
54agent-browser back # Go back
55agent-browser forward # Go forward
56agent-browser reload # Reload page
57agent-browser close # Close browser
58```
59
60### Snapshots (Essential for AI)
61
62```bash
63agent-browser snapshot # Full accessibility tree
64agent-browser snapshot -i # Interactive elements only (recommended)
65agent-browser snapshot -i --json # JSON output for parsing
66agent-browser snapshot -c # Compact (remove empty elements)
67agent-browser snapshot -d 3 # Limit depth
68```
69
70### Interactions
71
72```bash
73agent-browser click @e1 # Click element
74agent-browser dblclick @e1 # Double-click
75agent-browser fill @e1 "text" # Clear and fill input
76agent-browser type @e1 "text" # Type without clearing
77agent-browser press Enter # Press key
78agent-browser hover @e1 # Hover element
79agent-browser check @e1 # Check checkbox
80agent-browser uncheck @e1 # Uncheck checkbox
81agent-browser select @e1 "option" # Select dropdown option
82agent-browser scroll down 500 # Scroll (up/down/left/right)
83agent-browser scrollintoview @e1 # Scroll element into view
84```
85
86### Get Information
87
88```bash
89agent-browser get text @e1 # Get element text
90agent-browser get html @e1 # Get element HTML
91agent-browser get value @e1 # Get input value
92agent-browser get attr href @e1 # Get attribute
93agent-browser get title # Get page title
94agent-browser get url # Get current URL
95agent-browser get count "button" # Count matching elements
96```
97
98### Screenshots & PDFs
99
100```bash
101agent-browser screenshot # Viewport screenshot
102agent-browser screenshot --full # Full page
103agent-browser screenshot output.png # Save to file
104agent-browser screenshot --full output.png # Full page to file
105agent-browser pdf output.pdf # Save as PDF
106```
107
108### Wait
109
110```bash
111agent-browser wait @e1 # Wait for element
112agent-browser wait 2000 # Wait milliseconds
113agent-browser wait "text" # Wait for text to appear
114```
115
116## Semantic Locators (Alternative to Refs)
117
118```bash
119agent-browser find role button click --name "Submit"
120agent-browser find text "Sign up" click
121agent-browser find label "Email" fill "user@example.com"
122agent-browser find placeholder "Search..." fill "query"
123```
124
125## Sessions (Parallel Browsers)
126
127```bash
128# Run multiple independent browser sessions
129agent-browser --session browser1 open https://site1.com
130agent-browser --session browser2 open https://site2.com
131
132# List active sessions
133agent-browser session list
134```
135
136## Examples
137
138### Login Flow
139
140```bash
141agent-browser open https://app.example.com/login
142agent-browser snapshot -i
143# Output shows: textbox "Email" [ref=e1], textbox "Password" [ref=e2], button "Sign in" [ref=e3]
144agent-browser fill @e1 "user@example.com"
145agent-browser fill @e2 "password123"
146agent-browser click @e3
147agent-browser wait 2000
148agent-browser snapshot -i # Verify logged in
149```
150
151### Search and Extract
152
153```bash
154agent-browser open https://news.ycombinator.com
155agent-browser snapshot -i --json
156# Parse JSON to find story links
157agent-browser get text @e12 # Get headline text
158agent-browser click @e12 # Click to open story
159```
160
161### Form Filling
162
163```bash
164agent-browser open https://forms.example.com
165agent-browser snapshot -i
166agent-browser fill @e1 "John Doe"
167agent-browser fill @e2 "john@example.com"
168agent-browser select @e3 "United States"
169agent-browser check @e4 # Agree to terms
170agent-browser click @e5 # Submit button
171agent-browser screenshot confirmation.png
172```
173
174### Debug Mode
175
176```bash
177# Run with visible browser window
178agent-browser --headed open https://example.com
179agent-browser --headed snapshot -i
180agent-browser --headed click @e1
181```
182
183## JSON Output
184
185Add --json for structured output:
186
187```bash
188agent-browser snapshot -i --json
189```
190
191Returns:
192```json
193{
194 "success": true,
195 "data": {
196 "refs": {
197 "e1": {"name": "Submit", "role": "button"},
198 "e2": {"name": "Email", "role": "textbox"}
199 },
200 "snapshot": "- button \"Submit\" [ref=e1]\n- textbox \"Email\" [ref=e2]"
201 }
202}
203```
204
205## vs Playwright MCP
206
207| Feature | agent-browser (CLI) | Playwright MCP |
208|---------|---------------------|----------------|
209| Interface | Bash commands | MCP tools |
210| Selection | Refs (@e1) | Refs (e1) |
211| Output | Text/JSON | Tool responses |
212| Parallel | Sessions | Tabs |
213| Best for | Quick automation | Tool integration |
214
215Use agent-browser when:
216- You prefer Bash-based workflows
217- You want simpler CLI commands
218- You need quick one-off automation
219
220Use Playwright MCP when:
221- You need deep MCP tool integration
222- You want tool-based responses
223- You're building complex automation
224
In the file
SKILL.md837 words
Files1
LicenceMIT
Why you can read it

Nothing in a skill executes. The client loads the text and the model follows it, so a skill can be audited the way a runbook is — by reading it.

What it costs in context

Skills are not billed by the call. They are paid for in context: every token the instructions occupy is a token your code, your diff and your conversation cannot use. Here is what this one takes and when it takes it.

≈100
always loaded
The name and description, so the model knows the skill exists and when to reach for it.
1,500
on trigger
The instruction body, read only when the skill fires.
0.80%
of a 200k window
Ten skills this size would take about 8% of the window before you open a file.
050k100k150k200k context window

1.6k tokens, estimated from the bundle at four bytes to the token, held for the rest of the session once it triggers. Middling. Fine to keep on in a project where you use it weekly, worth unloading in one where you never do.

Servers bill, skills cost

A server charges by the month. A skill charges once per session, in context, and then keeps charging it for as long as the session lives.

Before and after

The same question, put to the same model twice: once as it comes, and once with these instructions loaded.

No worked example has been published for this skill yet.

Adoption
Installsnone yet
Ratingno reviews yet

The procedure it runs

The procedure has not been published here. It is in the skill’s own SKILL.md, which its author has not sent to the marketplace yet.

Prose, not code

These steps are written for a model to follow, not executed by a runtime. It can still be told to skip one, and it will say so when it does.

Servers it uses

None. This skill calls no MCP servers at all.

Everything it needs is in the instructions, so it works in a project with nothing connected — the model reads the file and changes how it works with what it can already reach.

It writes no files and reaches no network. All it changes is how the model reasons and writes.

What it asks for
Writes filesno
Network accessno

Read from the allowed-tools line of this skill’s own SKILL.md. A skill grants no permissions of its own — it can only ask for tools your client already has.

What it will not do

Every skill is narrow, and the useful ones say where they stop. These are the jobs this one is the wrong tool for.

What this skill is not for has not been published here. Nothing is implied by that: it is a section the author has not filled in.

What is in the bundle

1 file, 6.4 kB on disk. A bundle is text throughout: the instructions the model reads, plus the templates it fills in.

  • SKILL.md6.4 kB
What is not in it

No dependencies and nothing executable: a skill is text the agent reads, so the bundle is 1 file you can review in full before installing. The MIT licence covers the templates and examples as well as the instructions.

Install

Installing copies the bundle into your project. Nothing runs at install time — the files sit on disk until the model reads them.

# agent-browser: CLI Browser Automation · 1.6k tokens when loaded npx mcprush@latest skill add everyinc/agent-browser-cli-browser-automation

Writes to .claude/skills/agent-browser-cli-browser-automation/ in the current project. Add --global to put it in your home directory instead, for every project.

Which clients pick it up on their own

A skill is a folder of text. A client with a skills folder reads it without being told; everywhere else the same text works, it is just handed to the model rather than found.

Claude Code.claude/skills/
Claude Desktop
ChatGPT
Cursor.cursor/skills/
VS Code.github/skills/
Codex CLI.agents/skills/
Gemini CLI.gemini/skills/
Grok.grok/skills/
Zed.agents/skills/
Windsurf.windsurf/skills/
Agent SDK.claude/skills/
HTTP / API
This release
Versionnot versioned
Publishedno release date on file
PriceFree
Referenceeveryinc/agent-browser-cli-browser-automation

Versions

Its author publishes no version number, so there is nothing here to pin to: what you install is the folder as it stands today. Instructions change more often than APIs do — a skill can be rewritten entirely without anything it depends on moving.

v
  • No earlier releases have been published to the marketplace.
Pinning

Nothing to pin to: this skill carries no version number of its own. What you install is what the folder holds on the day you install it.

Reviews

no reviews yet · no installs yet

Nobody has reviewed this skill yet. The rating is the mean of the reviews written here, so there is none until somebody writes the first.

Who can post

Only accounts that have had the skill installed for fourteen days, so a review is written after living with it rather than after reading it. Publishers may reply once.

Publisher
Servers0
Claim this skill