Browser QA
affaan-m/ECC
Run automated post-deploy UI verification with a browser automation MCP (claude-in-chrome, Playwright, or Puppeteer): console-error and Core Web Vitals smoke checks, form and auth-flow interaction…
Browser automation CLI using DOMShell MCP server. An agent skill from HKUDS/CLI-Anything.
The automated check flagged lines worth reading first. See the safety section below.
$ npx skills add HKUDS/CLI-Anything --skill cli-anything-browser -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install HKUDS/CLI-Anything cli-anything-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/HKUDS/CLI-Anything.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/cli-anything-browser .claude/skills/cli-anything-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 "cli-anything-browser" agent skill from https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-browser into .claude/skills/cli-anything-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cli-anything-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/HKUDS/CLI-Anything/tree/main/skills/cli-anything-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 HKUDS/CLI-Anything --skill cli-anything-browser -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install HKUDS/CLI-Anything cli-anything-browser --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/HKUDS/CLI-Anything.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/cli-anything-browser .agents/skills/cli-anything-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 "cli-anything-browser" agent skill from https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-browser into .agents/skills/cli-anything-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cli-anything-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 HKUDS/CLI-Anything --skill cli-anything-browser -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install HKUDS/CLI-Anything cli-anything-browser --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/HKUDS/CLI-Anything.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/cli-anything-browser .cursor/skills/cli-anything-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 "cli-anything-browser" agent skill from https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-browser into .cursor/skills/cli-anything-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cli-anything-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/HKUDS/CLI-Anything.git --path skills/cli-anything-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 HKUDS/CLI-Anything --skill cli-anything-browser -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install HKUDS/CLI-Anything cli-anything-browser --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/HKUDS/CLI-Anything.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/cli-anything-browser .gemini/skills/cli-anything-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 "cli-anything-browser" agent skill from https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-browser into .gemini/skills/cli-anything-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cli-anything-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 HKUDS/CLI-Anything cli-anything-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 HKUDS/CLI-Anything --skill cli-anything-browser -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/HKUDS/CLI-Anything.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/cli-anything-browser .github/skills/cli-anything-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 "cli-anything-browser" agent skill from https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-browser into .github/skills/cli-anything-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cli-anything-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 HKUDS/CLI-Anything --skill cli-anything-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 HKUDS/CLI-Anything cli-anything-browser --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/HKUDS/CLI-Anything.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/cli-anything-browser .opencode/skills/cli-anything-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 "cli-anything-browser" agent skill from https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-browser into .opencode/skills/cli-anything-browser/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cli-anything-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.
cli-anything-browserBrowser automation CLI using DOMShell MCP server. An agent skill from HKUDS/CLI-Anything.
CLI Anything Browser is an agent skill from HKUDS/CLI-Anything. Browser automation CLI using DOMShell MCP server. Maps Chrome's Accessibility Tree to a virtual filesystem for agent-native navigation.
Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Productivity & Automation, covering Browser automation and Accessibility. It works with Model Context Protocol. The repository describes itself as: "CLI-Anything: Making ALL Software Agent-Native" -- CLI-Hub: https://clianything.cc/. The licence is Apache-2.0.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 34f5195. 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:
npxpipFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
nodejs.orgAlso links to:
github.comchromewebstore.google.comFrom 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.
CLI Anything Browser loads about 1.5k tokens when it runs. Until then it costs about 39 tokens; SKILL.md has 526 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 patterns that need a careful read before installing.
A labels with manipulative text (e.g., "Ignore previous instructions")ultiple browser sessions share the same Chrome instance. Cookies and authentication state may persist across sessions. FAutomated 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 HKUDS/CLI-Anything at commit 34f5195, republished under its Apache-2.0 licence (© HKUDS). 526 words, ~1,521 tokens.
.claude/skills/cli-anything-browser/SKILL.md (or your agent's skills folder).A command-line interface for browser automation using DOMShell's MCP server. Navigate web pages using filesystem commands: ls, cd, cat, grep, click.
Node.js and npx (for DOMShell MCP server):
# Install Node.js from https://nodejs.org/
npx --versionChrome/Chromium with DOMShell extension:
Python 3.10+
cd browser/agent-harness
pip install -e .page — Page Navigationpage open <url> — Navigate to URLpage reload — Reload current pagepage back — Navigate back in historypage forward — Navigate forward in historypage info — Show current page infofs — Filesystem Commands (Accessibility Tree)fs ls [path] — List elements at pathfs cd <path> — Change directoryfs cat [path] — Read element contentfs grep <pattern> [path] — Search for text patternfs pwd — Print working directoryact — Action Commandsact click <path> — Click an elementact type <path> <text> — Type text into inputsession — Session Managementsession status — Show session statesession daemon-start — Start persistent daemon modesession daemon-stop — Stop daemon mode# Open a page
cli-anything-browser page open https://example.com
# Explore structure
cli-anything-browser fs ls /
cli-anything-browser fs cd /main
cli-anything-browser fs ls
# Go back to root
cli-anything-browser fs cd /cli-anything-browser fs grep "Login"
cli-anything-browser act click /main/button[0]cli-anything-browser act type /main/input[0] "user@example.com"
cli-anything-browser act click /main/button[0]cli-anything-browser --json fs ls /# Start persistent connection
cli-anything-browser session daemon-start
# Run commands (uses persistent connection)
cli-anything-browser fs ls /
cli-anything-browser fs cd /main
# Stop daemon when done
cli-anything-browser session daemon-stopcli-anything-browserDOMShell uses a filesystem-like path for the Accessibility Tree:
/ — Root (document)
/main — Main landmark
/main/div[0] — First div in main
/main/div[0]/button[2] — Third button in first divbutton[0] is the first button.. to go up one level/ for rootAll commands support --json flag for machine-readable output:
cli-anything-browser --json fs ls /Returns:
{
"path": "/",
"entries": [
{"name": "main", "role": "landmark", "path": "/main"}
]
}The CLI provides clear error messages for common issues:
npx @apireno/domshell --versionCheck is_available() return value before running commands.
For agent workflows with multiple commands, use daemon mode:
cli-anything-browser session daemon-startcli-anything-browser session daemon-stopThis avoids the 1-3 second cold start overhead for each command.
IMPORTANT: When using this CLI with AI agents, be aware of the following security considerations:
The browser harness validates all URLs before navigation:
http:// or https:// scheme (scheme-less URLs like example.com are rejected)file://, javascript://, data://, vbscript://, about://, chrome://, and browser-internal schemeshttp:// and https:// only (configurable via CLI_ANYTHING_BROWSER_ALLOWED_SCHEMES)CLI_ANYTHING_BROWSER_BLOCK_PRIVATE=true (disabled by default)The Accessibility Tree includes all visible and hidden elements on a page. Malicious websites could:
Mitigation: When interacting with untrusted websites, consider:
--json flag for structured output that's easier to parse safelyBy default, the browser can access localhost and private networks (192.168.x.x, 10.x.x.x, etc.). To block:
export CLI_ANYTHING_BROWSER_BLOCK_PRIVATE=true
cli-anything-browser page open http://localhost:8080 # Will be blockedMultiple browser sessions share the same Chrome instance. Cookies and authentication state may persist across sessions. For sensitive operations, consider:
© HKUDS, Apache-2.0. 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/cli-anything-browser of HKUDS/CLI-Anything.
Open the folder on GitHubat commit 34f5195
CLI Anything Browser 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 |
|---|---|---|---|---|---|---|
| CLI Anything Browser this skillHKUDS/CLI-Anything | 52k | — | ~1.5k | Automated safety check: Warn | Apache-2.0 | |
| Browser QAaffaan-m/ECC | 274k | 2 repos | ~1k | Automated safety check: Pass | MIT | |
| DocsPrefectHQ/fastmcp | 28k | — | ~1k | Automated safety check: Pass | Apache-2.0 | |
| Jarvis Setupethanplusai/jarvis | 838 | — | ~2.5k | Automated safety check: Notes | Custom licence | |
| Gauntletanomalyco/browser-control | 438 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Preview Rostradpc/rostra | 110 | — | ~2.3k | Automated safety check: Pass | None |
affaan-m/ECC
Run automated post-deploy UI verification with a browser automation MCP (claude-in-chrome, Playwright, or Puppeteer): console-error and Core Web Vitals smoke checks, form and auth-flow interaction…
PrefectHQ/fastmcp
Write or revise a page under docs/ for gofastmcp.com. An agent skill from PrefectHQ/fastmcp.
ethanplusai/jarvis
A skill your agent uses when helping someone install, configure, or debug a fresh clone of JARVIS (this repo) — especially "the mic doesn't work", "JARVIS says his language systems are down", any…
anomalyco/browser-control
Run a real-world navigation and capability gauntlet on Browser Control across live websites, fix general DOM/ARIA/CDP root causes, benchmark speed and token efficiency, and finish with a mandatory…
dpc/rostra
Use agent-browser to interact with Rostra's live development UI through accessibility snapshots, semantic controls, text entry, and screenshots.
justrach/kuri
Use kuri-server to automate Chrome via HTTP API — navigate pages, get a11y snapshots, interact with elements, capture network traffic (HAR), extract cookies, and bypass bot protection.
HKUDS/CLI-Anything
Lets Codex build, refine, test, validate and list CLI-Anything harnesses for GUI applications or source repositories, following the project's full methodology.
HKUDS/CLI-Anything
Adapts the CLI-Anything methodology so Reasonix can build, refine, test and validate a command-line harness for an existing GUI application or source repository.
HKUDS/CLI-Anything
Guides Hermes Agent through building, refining and testing a CLI-Anything harness that wraps a GUI application or source repository in a scriptable command line.
HKUDS/CLI-Anything
Builds, refines, tests or validates a CLI-Anything harness that wraps a GUI application or source repository as a stateful Click CLI with JSON output and a REPL mode.
HKUDS/CLI-Anything
Drives Krita from the command line to create projects, add layers, apply filters, resize the canvas and export images, with JSON output for agents.
HKUDS/CLI-Anything
Defines, lists, inspects and runs parameterized GUI macros from the command line, with the runtime choosing the execution backend.
Works with
Browser automation CLI using DOMShell MCP server. An agent skill from HKUDS/CLI-Anything. CLI Anything Browser is an agent skill from HKUDS/CLI-Anything. Browser automation CLI using DOMShell MCP server.
CLI Anything Browser fits situations like: tasks that involve Browser automation; tasks that involve Accessibility.
Run `npx skills add HKUDS/CLI-Anything --skill cli-anything-browser -a claude-code`. Or copy the skill folder (skills/cli-anything-browser in HKUDS/CLI-Anything) into .claude/skills/cli-anything-browser in your project. Claude Code loads it when a task matches its description.
Run `npx skills add HKUDS/CLI-Anything --skill cli-anything-browser -a codex`. Or copy the skill folder (skills/cli-anything-browser in HKUDS/CLI-Anything) into .agents/skills/cli-anything-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 HKUDS/CLI-Anything --skill cli-anything-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/cli-anything-browser, .gemini/skills/cli-anything-browser, .github/skills/cli-anything-browser and .opencode/skills/cli-anything-browser in your project.
Going by SKILL.md and its folder, CLI Anything Browser needs the command-line tools its instructions call (npx and pip). Our summary lists: Python 3; Node.js.
SKILL.md names 3 domains. In commands or code: nodejs.org; the agent is likely to contact it when it follows the instructions. As links in the text: github.com and chromewebstore.google.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md flagged 2 warning(s): contains instruction-override wording (e.g. “without asking the user”); mentions a credentials file (ssh keys, cloud or package-manager tokens). Read the flagged lines before installing; the check is not a guarantee either way.
CLI Anything Browser is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.5k tokens (SKILL.md is roughly 6.1k 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 CLI Anything Browser: Browser QA (affaan-m/ECC, 274k stars), Docs (PrefectHQ/fastmcp, 28k stars), Jarvis Setup (ethanplusai/jarvis, 838 stars) and Gauntlet (anomalyco/browser-control, 438 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
HKUDS (a GitHub organization) maintains it in HKUDS/CLI-Anything, which has 51,644 GitHub stars. The repository holds 78 skills in this directory. The repository was last updated on September 22, 2026.
Source: HKUDS/CLI-Anything on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.