Guide · Agent skill
How to use the Ego Browser Automation agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The Ego Browser Automation skill (skill name: skill-body) teaches an AI agent to control a real web browser through the ego-browser command-line tool. This guide explains what the skill does, how to install it, how to ask for browser work in plain language, and how to run its scripts safely in your shell. By the end you will know how to set the skill up and what to check before letting an agent drive a live site.
Quick start
- 1Download and unzip. Download the skill ZIP from this page and unzip it so that SKILL.md sits inside a skill folder.
- 2Place the skill. Move the folder into ~/.claude/skills/ for all projects, or into .claude/skills/ inside one project. Alternatively, upload it in the Claude apps under Settings, then Capabilities, then Skills.
- 3Confirm the CLI is connected. Make sure the ego-browser CLI and Node.js are installed. Use references/install.md for setup guidance if the CLI is not connected.
- 4Ask for a browser task. Describe the page and the result you want in plain language, naming the site you are authorised to use.
- 5Review the script. Check that the agent is working on the right site and that no logged-in or personal profile is being used unless you asked for it.
- 6Resume in later rounds. Ask the agent to keep the same task space for follow-up steps so the browser state carries on.
What the skill makes the agent do
Once the skill is installed, the agent writes short JavaScript scripts that open pages, read their contents and interact with them, such as clicking buttons or filling in forms. The scripts are run with the ego-browser command-line tool, which drives a real browser rather than only fetching page source.
The skill also explains how to organise work into task spaces. A task space is a persistent browser workspace that survives between steps, so the agent can carry a goal across several rounds without starting over.
- Open pages and navigate them with goto()
- Read page contents, for example with page.snapshot()
- Click, double-click, hover, drag and fill fields, using the documented API
- Keep one goal in one persistent task space across rounds
How to install the skill from the ZIP
Download the skill ZIP from this page and unzip it. The package contains SKILL.md. Place the unzipped skill folder in one of two locations: your user skills folder at ~/.claude/skills/, or a project-specific .claude/skills/ folder inside the project you are working in.
If you use the Claude apps instead of Claude Code, you can upload the skill under Settings, then Capabilities, then Skills.
The skill requires the ego-browser CLI to be installed and connected. Installation details are in references/install.md, which is not included in the files provided with this skill, so you will need to obtain that guidance separately if you have setup problems.
- User-wide: ~/.claude/skills/
- Per project: .claude/skills/ inside the project folder
- Claude apps: Settings, then Capabilities, then Skills, then upload
How to trigger the skill with natural requests
You do not need special syntax. Ask the agent in plain language for a browser task, and it can use the skill when the task needs a real browser. If you explicitly name ego-browser in your request, the agent starts with a real browser command and only diagnoses the installation if that command fails.
Good requests say what page to visit and what information or action you want. Name the site and the outcome, and say whether it is a site you are authorised to automate.
- Check whether the pricing page on a site you own still lists the plan I expect
- Open the login-free demo form, fill in the test data and tell me what the confirmation message says
- Use ego-browser to read the release notes page and summarise the changes
Run browser scripts in Bash, PowerShell or cmd
Scripts are passed to ego-browser nodejs. The form depends on your shell. In Bash, Zsh or Git Bash you can use a heredoc. Heredoc syntax does not exist in PowerShell or cmd. If a sandbox blocks heredoc input, use -e with single quotes around the code and double quotes for JavaScript strings.
In PowerShell, Windows PowerShell 5.1 can split a script that contains double quotes or several lines when passed with -e. Write the full task to a UTF-8 .mjs file and evaluate a short one-line entry point that imports it. In cmd, you can redirect the file directly into the command.
- Bash, Zsh, Git Bash: heredoc or -e with single quotes
- PowerShell: write a UTF-8 .mjs file and import it with -e
- cmd: redirect the .mjs file with <
- Create script files with your file tool, not Set-Content, Out-File or > in PowerShell, which can write ANSI or UTF-16 on 5.1
ego-browser nodejs <<'EOF'
const task = await taskSpace("inspect example page");
const page = task.page("p1");
await page.goto("https://example.com");
console.log({ taskSpaceId: task.spaceId, page: page.label });
console.log(await page.snapshot());
EOFManage task spaces, rounds and pages
Use exactly one task space for the entire goal. Create it once, print its spaceId, and resume that same space in later rounds. Every invocation starts a new Node.js process, so task spaces, tabs and page labels persist but JavaScript variables do not. Write a new, complete script file for each round rather than editing the previous one, which would replay old steps.
A new task space starts with page p1. Reuse it with goto() instead of opening a new page for every URL. Use the help() function with a name such as page.click to print the signature and uncommon options for an API. Do not use Playwright methods such as locator() or getByRole(), because the API is a smaller custom one.
- One task space per user goal; resume it by spaceId
- Pages keep labels such as p1, p2 and p3
- All time values are in milliseconds
- Use help("page.click") to check an API instead of guessing
const resumed = await taskSpace(7);
const source = resumed.page("p1");
await source.goto("https://example.com/releases");Safety notes: scripts and network access
This skill runs scripts and uses the network. It drives a real browser, which may hold logged-in sessions or personal profiles, so only ask the agent to work on sites you are authorised to use. The skill says not to inspect or select profiles unless you explicitly request a particular Ego Lite profile.
Scripts run in Node.js, not in the web page, and do not inherit your shell's environment variables, so any input must be written directly into the script. Do not import Playwright or launch another browser from a script. If a task space name belongs to a user-owned space, the skill asks you whether to use it rather than creating a new one, and it does not use a new space to recover from a stuck page.
- Use only on sites you are authorised to automate
- Be careful with logged-in browser sessions and personal profiles
- Scripts run in Node.js with network access
- Read scripts before running them if they will touch sensitive pages
Tips for better results
Be specific about the page and the result you want. If a page is stuck or blocked, the skill says to recover within the existing task space and stop to ask you if it cannot continue, so you will not get silent restarts.
For simple static fetches that need no browser, a plain request is usually lighter. The browser route adds setup and process overhead, so use it when the page needs real interaction.
- Name the exact page or URL
- Ask for the output format you want, such as a short list
- Use the Windows-specific file method when working from PowerShell or cmd
What people use it for
- Inspect a live website you own to confirm content or layout after a release
- Test a form on your own staging site by filling fields and reading the confirmation message
- Gather information from pages that need real browser interaction, such as clicking through to a details view
- Run a multi-step check across several rounds while keeping the same browser workspace
Frequently asked questions
How do I install the Ego Browser Automation agent skill?
Download the skill ZIP from this page and unzip it. Put the folder in ~/.claude/skills/ for all projects, or in .claude/skills/ inside a specific project. You can also upload it in the Claude apps under Settings, then Capabilities, then Skills.
What does the ego-browser skill require?
It requires the ego-browser CLI installed and connected, plus a Node.js runtime, which ego-browser nodejs uses. Installation details are in references/install.md, which is not included in the provided files.
Is the Ego Browser Automation skill free?
The item is listed under the MIT licence. Check the licence file that comes with your copy for the exact terms of use, since this page does not list prices.
Why does my PowerShell script fail with a syntax error?
The error often appears because Windows PowerShell 5.1 splits or damages a script passed with -e. Write the task to a UTF-8 .mjs file and evaluate a one-line import of it instead of using heredoc, which PowerShell does not support.
Can I use Playwright commands with this skill?
No. The ego-browser API is a deliberately smaller custom API, and the skill warns against guessing Playwright methods such as locator() or getByRole(). Use only the documented methods and the page.evaluate() or page.cdp() escape hatches.
Is this skill safe to use on my logged-in accounts?
Be careful. The skill drives a real browser that may hold logged-in sessions or personal profiles, so only use it on sites you are authorised to automate and avoid profile selection unless you explicitly ask for it.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
This skill suits developers and testers who need an agent to inspect or test a live website, and Windows users who need the shell-specific quoting rules. Skip it for simple fetches that need no browser, for sites you have not authorised, or if you expect standard Playwright commands.
Download the skill