Browser Controller — Tool Router
Routes browser automation tasks to the right tool based on task requirements.
Decision Tree
Task requires debugging / packet capture / performance profiling?
→ chrome-devtools
Task needs to connect to an already-running Chrome (user is logged in)?
→ browser-use
Task needs semantic element targeting (find by role/label/text)?
→ agent-browser
Everything else (default)
→ playwright-cli
Priority Order
| Priority | Tool | Best For |
|---|---|---|
| P1 (default) | playwright-cli |
General automation, network mocking, tracing, storage |
| P2 | agent-browser |
AI-optimized, semantic locators, accessibility-first |
| P3 | browser-use |
CDP direct connect, running Chrome, speed-critical |
| P4 | chrome-devtools |
Debugging, packet capture, performance profiling ONLY |
Routing Examples
| Task | Tool |
|---|---|
| "Open example.com and click the login button" | playwright-cli |
| "Fill the form with label 'Email'" | agent-browser |
| "Connect to my running Chrome and scrape" | browser-use |
| "Capture all API calls from this website" | chrome-devtools |
| "Take a screenshot of the page" | playwright-cli |
| "Debug why this JS is failing" | chrome-devtools |
| "Find the submit button by its ARIA role" | agent-browser |
| "Automate login on a site I'm already logged into" | browser-use |
Fallback Chain
If the selected tool is unavailable, fall back in priority order:
agent-browser → playwright-cli
browser-use → playwright-cli
chrome-devtools → playwright-cli (for basic capture via tracing)
Check Tool Availability
# playwright-cli (always available)
playwright-cli --version
# agent-browser
bash ~/.claude/skills/agent-browser/scripts/check_install.sh
# browser-use
bash ~/.claude/skills/browser-use/scripts/check_install.sh
# chrome-devtools (needs Chrome with remote debugging)
curl -s http://localhost:9222/json/version 2>/dev/null || echo "Chrome not in debug mode"
Integration with api-harvester
For API capture tasks, route to chrome-devtools (Mode B) or instruct user to export HAR (Mode A, zero-dependency). See api-harvester skill for the full capture → analyze → generate workflow.