agentleFS
shanmukhadityashanmukhaditya/agent-skills/skills/browser-agent/SKILL.md

browser-agent

Skill3 starsChanged 3 months agoMITView on GitHub

Autonomous stealth browser automation agent powered by Playwright with ref-based accessibility targeting, persistent daemon architecture, and human-motor kinematics (Bézier curves, natural typing rhythms). Replaces heavy DOM-streaming tools with token-efficient ref snapshots and full anti-bot protection.

7 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

6 rules. 0 are common, 1 is distinctive, and 5 are very specific to this project.

  • 0

    Common

    Most of the 5 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Token-Efficient Ref Snapshots: After each navigation or interaction, an accessibility snapshot is generated and saved to …

    line 15
  2. Very specific:

    All commands are executed via the agent-browser binary located at: ~/.gemini/config/skills/browser-agent/bin/agent-browser

    line 26
  3. Distinctive:

    When given a browser browsing, research, or form submission task:

    line 66
  4. Very specific:

    Read /tmp/browser_snapshot.yaml (or view the returned JSON) to find the ref IDs for the elements you need.

    line 73
  5. Very specific:

    Use agent-browser eval for direct DOM data or re-run agent-browser snapshot after page transitions.

    line 77
  6. Very specific:

    Run agent-browser close to free memory and shut down the daemon.

    line 79

“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Stealth Browser Agent (agent-browser)

browser-agent is an autonomous browser driver built for AI agents. It combines high token efficiency with full anti-bot stealth protection (bypassing Cloudflare, DataDome, Akamai) using a persistent background daemon.


⚡ Core Architecture

  1. Persistent Daemon: Maintains a long-lived browser session via a Unix domain socket (/tmp/agent_browser.sock) to eliminate cold-start startup overhead.
  2. Token-Efficient Ref Snapshots: After each navigation or interaction, an accessibility snapshot is generated and saved to /tmp/browser_snapshot.yaml. Interactive elements are assigned concise ref IDs (e1, e2, e3...).
  3. Human Motor Kinematics:
    • Mouse: Moves along cubic Bézier curves with natural acceleration, deceleration, and micro-overshoots.
    • Keyboard: Types with randomized keystroke cadences (50ms–160ms) and word pauses.
    • Scroll: Inertial wheel scrolling with reading pauses.
  4. Native Chrome Execution: Auto-detects and binds to /Applications/Google Chrome.app to provide genuine audio/video codecs, TLS JA3/JA4 fingerprints, and WebGL ANGLE hardware contexts.

🛠️ CLI Commands Overview

All commands are executed via the agent-browser binary located at: ~/.gemini/config/skills/browser-agent/bin/agent-browser

# 1. Open a URL (starts daemon automatically)
agent-browser open "https://example.com"
agent-browser open "https://example.com" --headless

# 2. Inspect current interactive elements
agent-browser snapshot

# 3. Click an element using its ref ID
agent-browser click e3

# 4. Fill or type into form fields
agent-browser fill e1 "username@domain.com"
agent-browser type e2 "securePassword123"

# 5. Press special keys
agent-browser press Enter
agent-browser press Tab

# 6. Smooth human scrolling
agent-browser scroll --down 500
agent-browser scroll --up 300

# 7. Capture visual proof
agent-browser screenshot --output "/tmp/screenshot.png"

# 8. Run custom JavaScript evaluation
agent-browser eval "document.title"

# 9. Clean shutdown
agent-browser close

📋 Recommended Agent Workflow

When given a browser browsing, research, or form submission task:

  1. Navigate to the target:
    agent-browser open "https://target-website.com"
  2. Inspect the Snapshot: Read /tmp/browser_snapshot.yaml (or view the returned JSON) to find the ref IDs for the elements you need.
  3. Interact with Ref IDs: Execute agent-browser click <ref>, agent-browser fill <ref> <text>, or agent-browser press Enter.
  4. Extract Information: Use agent-browser eval for direct DOM data or re-run agent-browser snapshot after page transitions.
  5. Close when Finished: Run agent-browser close to free memory and shut down the daemon.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.