Skip to content
cccskills
FreePublished on GitHub

browser-automation

Automate web page tasks such as clicking, filling forms, uploading and downloading files, and taking screenshots. Work across tabs using a browser on the connected host machine or inside a Docker container.

OriginalShow the original description

Control web pages: tabs, clicks, forms, downloads, screenshots; host or Docker browser.

Works withDocker
See how to install

Good for

  • Filling web forms and selecting options
  • Uploading or downloading files through websites
  • Capturing screenshots to inspect page appearance
  • Working across existing browser tabs

Files included (1)

  • SKILL.md6.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Browser Tool

Use this skill after the compact browser tool prompt points you here. It is the progressive-disclosure workflow guide for rendered pages, multi-step browser work, logins, downloads, JavaScript-heavy sites, screenshots, host/container browser mode, and visual inspection. Prefer search_engine or document_query for plain text research.

For fragile forms, load browser-form-workflows with skills_tool:load before acting when selects, checkboxes, radios, file uploads, contenteditable fields, validation, or final submission state are central to the task.

Core Workflow

  1. open creates a browser tab and returns a browser_id.
  2. content returns readable markdown plus typed refs like [link 3], [button 6], [input text 8].
  3. Interact with refs using click, type, submit, scroll, etc.; iframe/shadow targets may return frame-chain metadata in action results.
  4. Use navigate on an existing browser_id for serial browsing.
  5. Keep only a small working tab set; close pages when finished.
  6. If the user asks for an existing tab, page title, or already-open URL, call list first, match by title or currentUrl, then use set_active or navigate on that browser_id instead of opening a new tab.

Modes

When the user asks for "my browser", "host browser", "local browser", a local Chromium browser, or opening a URL in their host browser, use this browser tool. Do not substitute computer_use_remote, code_execution_remote, xdg-open, sensible-browser, or Python webbrowser.open. If setup fails and mentions remote debugging, tell the user to open the browser inspect page, such as chrome://inspect/#remote-debugging or opera://inspect/#remote-debugging, enable "Allow remote debugging for this browser instance", run /browser host on, and retry.

The same tool may run in Docker container mode or A0 CLI host-browser mode, depending on project/plugin settings.

  • Container mode: browser and upload paths resolve inside the Agent Zero container.
  • Host mode: browser and upload paths resolve on the connected A0 CLI host machine.

In host mode, page content and screenshots may be blocked by host-content policy when remote models are active.

Screenshots And Vision

Screenshots are explicit only; the browser does not automatically load images into model context.

  1. Call browser with action: "screenshot".
  2. Call vision_load with the returned vision_load.tool_args.paths value.
  3. Reason from the latest loaded screenshot.

Screenshot args include quality, full_page, and optional path. Without path, the screenshot is saved as a chat-scoped artifact and returned through vision_load.tool_args.paths; with path, PNG is used when path ends with .png, otherwise JPEG is used.

Forms And Files

  • select_option works for native selects and detectable ARIA listbox/combobox controls; pass one choice via value or several via values.
  • set_checked works for checkbox, radio, switch, and toggle-like refs; pass the desired state via checked.
  • upload_file works for file input path or multiple paths, file input refs or associated labels; verify files exist in the active browser environment.
  • For fragile forms, call skills_tool with action: "load" and skill_name: "browser-form-workflows", then follow that form-specific workflow before filling or submitting.

Pointer And Keyboard

  • Prefer refs/selectors and DOM/CDP actions over viewport coordinates.
  • Interaction targets use ref from the latest content output; hover, double_click, right_click, and drag also accept viewport coordinates when no reliable ref exists.
  • Coordinates are Chromium viewport CSS pixels and match screenshots; treat them as visual fallback, not the default interaction path.
  • Coordinate args: x/y position the pointer; drag adds destination to_x/to_y or destination target_ref; element-relative offsets use offset_x/offset_y and drag target_offset_x/target_offset_y.
  • mouse sends raw pointer input with event_type (default click) plus x/y and button.
  • click with modifiers (e.g. "Control") alters the click; focus_popup: true targets an auto-registered popup window.
  • key_chord presses keys in order and releases in reverse; keyboard types text or presses a single key.
  • content narrows extraction via selector or a list of selectors.
  • evaluate runs JavaScript in the page via script and returns the evaluated result.
  • Browser settings set the evaluate deadline (default 30 seconds, range 0.1–60 seconds); there is no tool-call timeout override. A timeout interrupts JavaScript in place and preserves the page when execution stops. If async execution remains pending, recovery may reload the affected tab, losing unsaved DOM edits; cookies and tab storage normally survive. The error explicitly reports a reload or fallback closure; use list before retrying a closed tab. Host evaluation requires an updated connector; Safari rejects it because its backend cannot forcibly interrupt JavaScript.
  • wheel scrolls by pixel deltas delta_x/delta_y at x/y.
  • clipboard actions are copy, cut, or paste, chosen via clipboard_action; paste inserts text.
  • set_viewport resizes the page viewport via width and height.
  • navigate takes the destination url on an existing browser_id.

Tabs And Popups

  • Popups and target-blank tabs are auto-registered.
  • list shows open tabs; pass include_content: true sparingly.
  • set_active deliberately changes focus.
  • Operations on a non-active tab do not steal focus unless browser rules require it.

Browser Action Multi

multi is only a browser action, never a top-level tool. Use:

{
  "tool_name": "browser",
  "tool_args": {
    "action": "multi",
    "calls": [
      {"action": "content", "browser_id": 1},
      {"action": "screenshot", "browser_id": 2}
    ]
  }
}

Use browser action multi for parallel reads across tabs. Avoid mutating the same tab twice in one batch unless serial order is intended.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

a0-create-agent

FreeSummary

Create specialized Agent Zero profiles by defining their roles, working methods, and delegation criteria. The skill prepares configuration files and instructions, with optional custom tools, extensions, and model preset selection when needed.

  • Create a specialist agent for data analysis
  • Define when to delegate work to an agent
  • Customize an agent's workflow and response format
agent0ai/agent-zero19.5KUpdated Oct 15, 2026

a0-create-plugin

FreeSummary

Build, improve, review, or troubleshoot Agent Zero plugins for local use or community distribution. Follow plugin structure and installation rules, verify behavior in the target runtime, and prepare repository and Plugin Index contributions when requested.

  • Building an Agent Zero plugin for local use
  • Reviewing an existing plugin's structure and behavior
  • Investigating plugins that fail to load or run
agent0ai/agent-zero19.5KUpdated Oct 15, 2026

a0-development

FreeSummary

Operate Agent Zero projects, chats, and tasks, or develop new tools, extensions, and API features. The skill guides work through existing APIs, relevant documentation, current source code, and checks appropriate to the change.

  • Manage Agent Zero projects and chats
  • Develop custom tools and extensions
  • Add API endpoints or WebUI features
agent0ai/agent-zero19.5KUpdated Oct 15, 2026

a0-manage-plugin

FreeSummary

Find Agent Zero plugins that match a task, compare candidates and their requirements, and manage installation, updates, settings, activation, and removal. It also supports security scans and checks the resulting plugin state through framework management APIs.

  • Find and compare plugins for a specific task
  • Review service, credential, and cost requirements before installation
  • Scan, install, or update a plugin
agent0ai/agent-zero19.5KUpdated Oct 15, 2026

Create, edit, and install extensions for Agent Zero Browser, including extensions from Chrome Web Store. It guides permission reviews and checks for suspicious behavior, with new extensions built as readable files that users can inspect.

  • Create a browser extension for a specific website
  • Modify an existing extension
  • Install an extension from Chrome Web Store
agent0ai/agent-zero19.5KUpdated Oct 15, 2026

Fill and submit web forms with dropdowns, checkboxes, radio buttons, file uploads, and directly editable fields. Check unclear fields before acting, inspect visual states when needed, and verify the result after submission.

  • Filling forms with dropdowns and checkboxes
  • Uploading files through web forms
  • Entering text in directly editable page fields
agent0ai/agent-zero19.5KUpdated Oct 15, 2026

See all skills by agent0ai

Report a problem with this skill