Agent Browser Clawdbot.Bak 2026 01 28T18:01:09+10:30
Headless browser automation CLI optimized for AI agents with accessibility tree snapshots and ref-based element selection
MIT-0 · Free to use, modify, and redistribute. No attribution required.
⭐ 1 · 1.6k · 0 current installs · 1 all-time installs
MIT-0
Security Scan
OpenClaw
Benign
medium confidencePurpose & Capability
Name and description match the SKILL.md content: it documents an agent-focused headless browser CLI (navigation, snapshots, ref-based interactions, sessions, state save/load, network control). There are no unrelated environment variables, binaries, or config paths requested.
Instruction Scope
Instructions tell the agent to run a CLI that snapshots pages, reads interactive elements, and can save/load auth state (auth.json) and cookies/storage. Those behaviors are expected for a browser automation tool, but snapshot and state operations can capture or restore credentials and page content — the agent running these commands could read or write local files containing secrets if given file paths.
Install Mechanism
The registry entry is instruction-only and provides no install spec, but the README instructs users to install via npm (npm install -g agent-browser) and to run an 'agent-browser install' step that downloads Chromium. Installing a global npm package and downloading a browser binary are normal for such a tool but carry risk if the npm package or downloaded Chromium binary are untrusted or malicious; the skill metadata does not include a pinned, verifiable release URL or checksum.
Credentials
The skill declares no required environment variables or credentials. The SKILL.md mentions an optional AGENT_BROWSER_SESSION env var and using state save/load — these are proportionate to session and state features. Be aware that saved state files may contain cookies/session tokens and loading them gives the CLI access to those credentials.
Persistence & Privilege
always:false and no special platform privileges are requested. The CLI can persist state (cookies/storage) within files you create; that is normal for browser automation but means the tool can store and later restore authentication state if you let it.
Assessment
This skill appears internally consistent for a headless browser CLI, but take these precautions before installing or running it: 1) Verify the npm package and its maintainer (check the package name, homepage/repo, maintainers, and recent versions) before running npm install -g. 2) Be cautious with the 'agent-browser install' step that downloads Chromium — prefer verified release sources and checksums. 3) Avoid loading state files (state load) from untrusted sources; saved state files can contain cookies and auth tokens. 4) Run the CLI in an isolated environment (container or VM) if possible, and don't give it elevated system permissions. 5) If an agent will invoke these commands autonomously, restrict the agent's access to only the files and networks you intend it to use. If you want a higher-assurance review, provide the actual npm package URL or source repo/tarball and the Chromium download source so those artifacts can be inspected.Like a lobster shell, security has layers — review code before you run it.
Current versionv1.0.0
Download ziplatest
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
Runtime requirements
🌐 Clawdis
SKILL.md
Agent Browser Skill
Fast browser automation using accessibility tree snapshots with refs for deterministic element selection.
Why Use This Over Built-in Browser Tool
Use agent-browser when:
- Automating multi-step workflows
- Need deterministic element selection
- Performance is critical
- Working with complex SPAs
- Need session isolation
Use built-in browser tool when:
- Need screenshots/PDFs for analysis
- Visual inspection required
- Browser extension integration needed
Core Workflow
# 1. Navigate and snapshot
agent-browser open https://example.com
agent-browser snapshot -i --json
# 2. Parse refs from JSON, then interact
agent-browser click @e2
agent-browser fill @e3 "text"
# 3. Re-snapshot after page changes
agent-browser snapshot -i --json
Key Commands
Navigation
agent-browser open <url>
agent-browser back | forward | reload | close
Snapshot (Always use -i --json)
agent-browser snapshot -i --json # Interactive elements, JSON output
agent-browser snapshot -i -c -d 5 --json # + compact, depth limit
agent-browser snapshot -s "#main" -i # Scope to selector
Interactions (Ref-based)
agent-browser click @e2
agent-browser fill @e3 "text"
agent-browser type @e3 "text"
agent-browser hover @e4
agent-browser check @e5 | uncheck @e5
agent-browser select @e6 "value"
agent-browser press "Enter"
agent-browser scroll down 500
agent-browser drag @e7 @e8
Get Information
agent-browser get text @e1 --json
agent-browser get html @e2 --json
agent-browser get value @e3 --json
agent-browser get attr @e4 "href" --json
agent-browser get title --json
agent-browser get url --json
agent-browser get count ".item" --json
Check State
agent-browser is visible @e2 --json
agent-browser is enabled @e3 --json
agent-browser is checked @e4 --json
Wait
agent-browser wait @e2 # Wait for element
agent-browser wait 1000 # Wait ms
agent-browser wait --text "Welcome" # Wait for text
agent-browser wait --url "**/dashboard" # Wait for URL
agent-browser wait --load networkidle # Wait for network
agent-browser wait --fn "window.ready === true"
Sessions (Isolated Browsers)
agent-browser --session admin open site.com
agent-browser --session user open site.com
agent-browser session list
# Or via env: AGENT_BROWSER_SESSION=admin agent-browser ...
State Persistence
agent-browser state save auth.json # Save cookies/storage
agent-browser state load auth.json # Load (skip login)
Screenshots & PDFs
agent-browser screenshot page.png
agent-browser screenshot --full page.png
agent-browser pdf page.pdf
Network Control
agent-browser network route "**/ads/*" --abort # Block
agent-browser network route "**/api/*" --body '{"x":1}' # Mock
agent-browser network requests --filter api # View
Cookies & Storage
agent-browser cookies # Get all
agent-browser cookies set name value
agent-browser storage local key # Get localStorage
agent-browser storage local set key val
Tabs & Frames
agent-browser tab new https://example.com
agent-browser tab 2 # Switch to tab
agent-browser frame @e5 # Switch to iframe
agent-browser frame main # Back to main
Snapshot Output Format
{
"success": true,
"data": {
"snapshot": "...",
"refs": {
"e1": {"role": "heading", "name": "Example Domain"},
"e2": {"role": "button", "name": "Submit"},
"e3": {"role": "textbox", "name": "Email"}
}
}
}
Best Practices
- Always use
-iflag - Focus on interactive elements - Always use
--json- Easier to parse - Wait for stability -
agent-browser wait --load networkidle - Save auth state - Skip login flows with
state save/load - Use sessions - Isolate different browser contexts
- Use
--headedfor debugging - See what's happening
Example: Search and Extract
agent-browser open https://www.google.com
agent-browser snapshot -i --json
# AI identifies search box @e1
agent-browser fill @e1 "AI agents"
agent-browser press Enter
agent-browser wait --load networkidle
agent-browser snapshot -i --json
# AI identifies result refs
agent-browser get text @e3 --json
agent-browser get attr @e4 "href" --json
Example: Multi-Session Testing
# Admin session
agent-browser --session admin open app.com
agent-browser --session admin state load admin-auth.json
agent-browser --session admin snapshot -i --json
# User session (simultaneous)
agent-browser --session user open app.com
agent-browser --session user state load user-auth.json
agent-browser --session user snapshot -i --json
Installation
npm install -g agent-browser
agent-browser install # Download Chromium
agent-browser install --with-deps # Linux: + system deps
Credits
Skill created by Yossi Elkrief (@MaTriXy)
agent-browser CLI by Vercel Labs
Files
2 totalSelect a file
Select a file to preview.
Comments
Loading comments…
