Browser automation orchestrator
Skill Sheshiyer/skill-clusters/skills/browser-automation-orchestrator
Hub-and-spoke agent-skill clusters, one per stack (Astro·GSAP·Remotion, Tauri, …). Installable via skills.sh.
npx -y skills add Sheshiyer/skill-clusters --skill browser-automation-orchestratorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Route a browser / UI automation task to the right driver among the cluster's specialists — debug-first headless Chromium, local-webapp Playwright testing, native macOS UI capture and control, and the interactive-TTY harness that supervises them. USE WHEN a user wants to drive, screenshot, scrape, test, or verify a web page or desktop UI but hasn't named which engine or session model to use.
SKILL.md
4.9 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
Browser Automation Orchestrator
The single entry skill for browser and UI automation work. It places the task on the
surface × session-model map — what are you driving (the web/DOM layer vs the native OS UI
layer) and how long does the driver live (one-shot vs persistent) — and delegates to one of
the specialist spokes. The cross-cutting model every spoke shares — the two automation surfaces,
the session lifecycle, the selector/targeting strategy, and the debug-first evidence rule — lives
in browser-automation-core; read it before choosing an engine or claiming a UI "works".
Cluster map (spoke → role)
browser— debug-first headless Chromium driver. Console logs, network requests, and page errors are captured by default; primary command navigates + screenshots + reports diagnostics in one shot. The go-to for "load this URL and tell me what's broken."webapp-testing— Playwright toolkit for local web apps. Manages dev-server lifecycle (scripts/with_server.py), then runs native Python Playwright scripts using a reconnaissance-then-action pattern (wait fornetworkidle, inspect DOM, act on discovered selectors).peekaboo— native macOS UI automation CLI (off the DOM, on the OS): capture/inspect screens, target accessibility elements, drive click/type/drag/scroll, manage apps/windows/menus. Thesee → click → typeflow is the reliable path. (Requires Screen Recording + Accessibility.)tmux— interactive-TTY harness. Drives REPLs and TUI coding agents by sending keystrokes and scraping pane output over an isolated socket; the supervisor that runs the above drivers in parallel sessions and waits on prompts.
Routing rules (intent → spoke)
Web / DOM surface (Chromium)
- "Open this URL, why is it broken?" / verify a deployment / capture console + network →
browser - Test or dogfood a local dev app, manage the dev server, write a Playwright flow →
webapp-testing - Quick screenshot or one-shot diagnostic of any reachable URL →
browser - Multi-step form / login / upload flow against a running app →
webapp-testing(orbrowserfor ad-hoc)
Native OS / desktop surface (macOS)
- Screenshot or read a desktop app (not a web page) →
peekaboo - Click/type/drag inside a native app, drive menus, windows, the Dock →
peekaboo - "What's on screen?" / annotate UI elements before acting →
peekaboo see --annotate
Harness / supervision
- Drive an interactive REPL or a TUI agent (Claude Code, Codex) →
tmux - Run several automation sessions in parallel and poll for completion →
tmux
Standard flow
- Pick the surface first. Web page / DOM →
browserorwebapp-testing. Native desktop UI →peekaboo. Interactive TTY →tmux. This is the dividing line of the whole cluster. - Pick the session model. One-shot diagnostic →
browser. Server-backed local test loop →webapp-testing. Long-lived interactive supervision →tmux. - Recon before you act. Snapshot/inspect (
browserdiagnostics,peekaboo see --annotate, Playwrightnetworkidle+ DOM read) to discover real selectors/refs — never guess. - Delegate to the spoke(s). Compound asks fan out by surface (e.g. "test the web app and the
menu-bar helper" →
webapp-testing+peekaboo). - Return: chosen spoke(s), the surface + session model, the selectors/refs used, and the evidence captured (screenshot path, console/network state).
Guardrails
See browser-automation-core. In short: headless by default — only open a visible browser when
the user says "show me." Evidence before claims — never assert a page or UI "works" without
having looked at the rendered screenshot AND its console/network diagnostics. Recon before action —
discover selectors/refs from a live snapshot, don't hardcode guesses. Least surface — drive the
narrowest target (one tab, one window, one element); close sessions / kill sockets when done.
Native control (peekaboo) needs explicit macOS permissions — confirm them before driving input.
Loading spokes on demand
To keep CLI startup context lean, this cluster's spokes are not separately registered as skills —
only this orchestrator and its *-core are enumerated. When you route to a spoke named above,
load it on demand by reading its file:
~/.agents/skill-clusters/skills/<spoke-name>/SKILL.md (or skills/<spoke-name>/SKILL.md inside the skill-clusters repo).
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.