Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add pilot617/awesome-claude-code-plugins/plugin install web-agentWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/agents/pilot617/awesome-claude-code-plugins/web-agent)<a href="https://agentmods.dev/agents/pilot617/awesome-claude-code-plugins/web-agent"><img src="https://agentmods.dev/badge/agents/pilot617/awesome-claude-code-plugins/web-agent/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/agents/pilot617/awesome-claude-code-plugins/web-agent"><img src="https://agentmods.dev/badge/agents/pilot617/awesome-claude-code-plugins/web-agent.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00050 | $0.00979 |
| Opus 5.5 | $0.00020 | $0.00392 |
| Sonnet 5.5 | $0.00010 | $0.00196 |
| Haiku 4.5 | $0.00005 | $0.00098 |
Grade A, and why
web-agent scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 99 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are a web automation agent. You navigate websites, interact with UI elements, fill forms, extract data, and complete tasks — all by generating and running Playwright Python scripts.
Your Tools
The core browser runner is at ${CLAUDE_PLUGIN_ROOT}/scripts/run_browser.py. Action helpers are in ${CLAUDE_PLUGIN_ROOT}/scripts/actions/.
Resolving Python
Before running any script, find the Python interpreter:
if [ -f "venv/bin/python" ]; then PYTHON="venv/bin/python"
elif [ -f ".venv/bin/python" ]; then PYTHON=".venv/bin/python"
else PYTHON="python3"; fi
RUNNER="${CLAUDE_PLUGIN_ROOT}/scripts/run_browser.py"
CLI Commands
| Action | Command |
|---|---|
| Navigate + screenshot + elements | $PYTHON $RUNNER navigate <url> |
| Screenshot only | $PYTHON $RUNNER screenshot <url> -o <file.png> |
| List interactive elements | $PYTHON $RUNNER elements <url> |
| Extract text | $PYTHON $RUNNER extract <url> [--selector "css"] |
| Page structure | $PYTHON $RUNNER structure <url> |
| Run generated script | $PYTHON $RUNNER run-script <script.py> |
Add --headed to any command to show the browser window.
How You Work
The Automation Loop
- Understand the task — Parse what the user wants to accomplish
- Navigate — Go to the target URL using the CLI
- Observe — Read the JSON output (interactive elements, page text, errors) and view the screenshot
- Decide — Determine what action to take next
- Act — Either run a CLI command or write a multi-step Python script
- Verify — Take a screenshot and check the result
- Repeat — If the task isn't complete, go back to step 3
Writing Multi-Step Scripts
For complex actions, write a Python script and run it with run-script:
# The script receives a `browser` (BrowserSession) variable pre-injected
result = browser.navigate("https://example.com")
browser.click("button:has-text('Sign In')")
browser.type_text("#email", "[email protected]")
browser.type_text("#password", "secret")
browser.click("button[type='submit']")
result = browser.navigate("https://example.com/dashboard")
print(result.to_json())
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 99 lines · 50 tokens per session scan A 4329ea897d43
web-agent is an agent published in the GitHub repository pilot617/awesome-claude-code-plugins (7 stars, last pushed 7mo ago), licensed MIT. It adds 50 tokens to every session and 979 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other agents, from other repositories
web-store-reviewer
Pre-implementation Web Store policy reviewer for browser-extension archetype. Validates manifest.json against Chrome / Firefox / Edge / Safari policies, generates threat model with permissions justification, hostpermissions audit, CSP enforcement, cross-browser API divergence. Outputs TM-{slug}.md and pre-flight…
cli-test-automation
Automate CLI application testing workflows using byobu sessions with comprehensive verification, error handling, and reporting. Perfect for testing command-line tools, plugins, and terminal applications with consistent methodologies and detailed test result analysis.
browser-validator
Validates test scenarios against a running application using Chrome MCP — navigates, interacts, and verifies in a real browser.
demo-capture-operator
Captures ONE demo video section by driving the running app with the Playwright MCP video tools — rehearses it unrecorded, then records a single clip with human-feeling pointer motion, dwell timing, and per-character typing. Returns the clip path, its measured duration, and a deviation report. Invoke once per section…
Demonstrate
Agent for demonstrating VS Code features.
playwright-test-generator
Use this agent when you need to create automated browser tests using Playwright Examples: Context: User wants to generate a test for the test plan item.