Dev Browser Automation
MemTensor/MemOS
Automates a real browser through short TypeScript scripts that keep page state between runs, for navigating, filling forms, taking screenshots and extracting data.
“Browser automation with persistent named pages via the dev-browser CLI. Use when users ask to navigate websites, fill forms, take screenshots, extract web data, test web apps…”
$ npx skills add SawyerHood/dev-browser --skill dev-browser -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install SawyerHood/dev-browser dev-browser --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/SawyerHood/dev-browser.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/dev-browser .claude/skills/dev-browser && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "dev-browser" agent skill from https://github.com/SawyerHood/dev-browser/tree/main/skills/dev-browser into .claude/skills/dev-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dev-browser", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/SawyerHood/dev-browser/tree/main/skills/dev-browserType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add SawyerHood/dev-browser --skill dev-browser -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install SawyerHood/dev-browser dev-browser --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/SawyerHood/dev-browser.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/dev-browser .agents/skills/dev-browser && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "dev-browser" agent skill from https://github.com/SawyerHood/dev-browser/tree/main/skills/dev-browser into .agents/skills/dev-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dev-browser", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add SawyerHood/dev-browser --skill dev-browser -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install SawyerHood/dev-browser dev-browser --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/SawyerHood/dev-browser.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/dev-browser .cursor/skills/dev-browser && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "dev-browser" agent skill from https://github.com/SawyerHood/dev-browser/tree/main/skills/dev-browser into .cursor/skills/dev-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dev-browser", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/SawyerHood/dev-browser.git --path skills/dev-browser--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add SawyerHood/dev-browser --skill dev-browser -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install SawyerHood/dev-browser dev-browser --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/SawyerHood/dev-browser.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/dev-browser .gemini/skills/dev-browser && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "dev-browser" agent skill from https://github.com/SawyerHood/dev-browser/tree/main/skills/dev-browser into .gemini/skills/dev-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dev-browser", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install SawyerHood/dev-browser dev-browserInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add SawyerHood/dev-browser --skill dev-browser -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/SawyerHood/dev-browser.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/dev-browser .github/skills/dev-browser && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "dev-browser" agent skill from https://github.com/SawyerHood/dev-browser/tree/main/skills/dev-browser into .github/skills/dev-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dev-browser", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add SawyerHood/dev-browser --skill dev-browser -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install SawyerHood/dev-browser dev-browser --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/SawyerHood/dev-browser.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/dev-browser .opencode/skills/dev-browser && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "dev-browser" agent skill from https://github.com/SawyerHood/dev-browser/tree/main/skills/dev-browser into .opencode/skills/dev-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dev-browser", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
dev-browser“Browser automation with persistent named pages via the dev-browser CLI. Use when users ask to navigate websites, fill forms, take screenshots, extract web data, test web apps, log into sites, or automate browser workflows. Trigger phrases include "go to [url]", "click on", "fill out the form", "take a screenshot", "scrape", "automate", "test the website", "log into", "open the browser", or any browser interaction request.”
Dev-Browser CLI Automation is a skill in SawyerHood/dev-browser (6.7k stars). Its SKILL.md is about 455 tokens, and copies of it appear in 1 other owners' repositories. Licence: MIT.
Read from SKILL.md and the folder at commit a25e767. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Dev-Browser CLI Automation loads about 455 tokens when it runs. Until then it costs about 109 tokens; SKILL.md has 98 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from SawyerHood/dev-browser at commit a25e767, republished under its MIT licence (© SawyerHood). 98 words, ~455 tokens.
.claude/skills/dev-browser/SKILL.md (or your agent's skills folder).CLI for controlling a real Chrome with short Puppeteer scripts. One warm daemon; named pages persist between runs.
npm install -g dev-browser # bun add -g dev-browser works too; the first run downloads the binary if the install script was blocked
dev-browser install # only if the first run says "No Chrome found"Run dev-browser --help (full guide; dev-browser help <topic> for one section) before non-trivial work. Quick start:
dev-browser <<'EOF'
const page = await browser.getPage("main"); // named page persists across runs
await page.goto("https://example.com"); // default waitUntil: domcontentloaded
await page.snapshot({ interactive: true }) // ARIA tree with refs; last expression is printed
EOF
dev-browser -e 'const p = await browser.getPage("main"); await p.click("ref/e6"); await p.waitForLoad(); p.url()'Gotchas: end lines with semicolons (a line starting with ( continues the previous one); return an object as
({ a, b }); page.click never waits (use waitForSelector first); page names are per browser (--headless and
headed are separate Chromes and profiles); refs reset on navigation — re-snapshot; file paths resolve against your cwd
(uploadFile, screenshot/pdf path); do not run parallel dev-browser calls against the same named page.
© SawyerHood, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/dev-browser of SawyerHood/dev-browser.
Open the folder on GitHubat commit a25e767
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in SawyerHood/dev-browser, which our catalogue first saw on October 7, 2026.
Dev-Browser CLI Automation next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Dev-Browser CLI Automation this skillSawyerHood/dev-browser | 6.7k | 1 repos | ~455 | Automated safety check: Pass | MIT | |
| Dev Browser AutomationMemTensor/MemOS | 12k | 3 repos | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| Browser Control with Omowrightcode-yeongyu/oh-my-openagent | 70k | 1 repos | ~2.2k | Automated safety check: Pass | Custom licence | |
| Core Guide for agent-browservercel-labs/agent-browser | 44k | 4 repos | ~9.5k | Automated safety check: Pass | Apache-2.0 | |
| Agent Browsernanocoai/nanoclaw | 31k | 3 repos | ~1.6k | Automated safety check: Pass | MIT | |
| Gsd Browsergsd-build/gsd-browser | 268 | — | ~1.3k | Automated safety check: Pass | Apache-2.0 |
MemTensor/MemOS
Automates a real browser through short TypeScript scripts that keep page state between runs, for navigating, filling forms, taking screenshots and extracting data.
code-yeongyu/oh-my-openagent
Drives a real browser through the omowright library, either the user's own signed-in browser or a separate browser the code launches, for forms, QA, screenshots and scraping.
vercel-labs/agent-browser
Core usage guide for the agent-browser CLI: the snapshot-and-ref workflow for navigating, clicking, filling forms, extracting data and running parallel sessions.
nanocoai/nanoclaw
Drives a web browser from the shell with the agent-browser CLI: open pages, read an element snapshot, click and fill by reference, grab text and screenshots.
gsd-build/gsd-browser
Native Rust browser automation CLI for AI agents. An agent skill from gsd-build/gsd-browser.
smallnest/goclaw
Looks up action manuals with verified selectors for multi-step website tasks, then drives the browser with the actionbook CLI in a dedicated or an existing Chrome session.
Categories
Run `npx skills add SawyerHood/dev-browser --skill dev-browser -a claude-code`. Or copy the skill folder (skills/dev-browser in SawyerHood/dev-browser) into .claude/skills/dev-browser in your project. Claude Code loads it when a task matches its description.
Run `npx skills add SawyerHood/dev-browser --skill dev-browser -a codex`. Or copy the skill folder (skills/dev-browser in SawyerHood/dev-browser) into .agents/skills/dev-browser in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add SawyerHood/dev-browser --skill dev-browser -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dev-browser, .gemini/skills/dev-browser, .github/skills/dev-browser and .opencode/skills/dev-browser in your project.
Going by SKILL.md and its folder, Dev-Browser CLI Automation needs the command-line tools its instructions call (npm).
SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Dev-Browser CLI Automation is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 455 tokens (SKILL.md is roughly 1.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Dev-Browser CLI Automation: Dev Browser Automation (MemTensor/MemOS, 12k stars), Browser Control with Omowright (code-yeongyu/oh-my-openagent, 70k stars), Core Guide for agent-browser (vercel-labs/agent-browser, 44k stars) and Agent Browser (nanocoai/nanoclaw, 31k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
SawyerHood (a GitHub user) maintains it in SawyerHood/dev-browser, which has 6,654 GitHub stars. The repository was last updated on September 5, 2026.
Source: SawyerHood/dev-browser on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.