Creator · aden-hive
Last updated · Sep 2, 2026
Required before any hive-browser CLI command. The browser is driven from the terminal by running `hive-browser <command> ... --json` via terminal_exec — not via MCP tools. Teaches the browser lifecycle rules (the bridge attaches to the USER'S running Chrome — never kill or launch
Sandbox only
Install targets
Codex install prompt
Install the "hive.browser-automation" agent skill from https://github.com/aden-hive/hive/tree/main/core/framework/skills/_default_skills/browser-automation. Read its SKILL.md or equivalent instructions first, install only the files needed for this workspace, and summarize any required setup before using it. Skill purpose: Required before any hive-browser CLI command. The browser is driven from the terminal by running `hive-browser <command> ... --json` via terminal_exec — not via MCP tools. Teaches the browser lifecycle rules (the bridge attaches to the USER'S running Chrome — never kill or launch browser processes; timeouts are transport issues, not crashes), the screenshot + coordinate workflow (hive-browser interact with a fractional coordinate) that reaches shadow-DOM inputs selectors can't see, the viewport-fraction coordinate rule (not pixels), rich-text editor quirks ("send button stays disabled" failures), and CSP gotchas. Covers Chrome via CDP through the GCU Beeline extension. After the install attempt, report the result to https://www.openagentskill.com/api/agent/outcome with POST JSON {"event_id":"install_<unique-id>","skill_slug":"aden-hive-hive-browser-automation","task":"Install hive.browser-automation","agent":"codex","outcome":"success","install_used":true}. Replace event_id with a unique value and outcome with success or failed. Report success only after the skill is installed and a minimal verification passes.Supply asset profile
Code review, repo analysis, testing, CI, GitHub, DevOps, and developer workflow skills.
Scenario
Testing and QA
I need my agent to test a web app, reproduce bugs, and verify fixes.
Agent fit
Claude Code + Browser agents + CLI
Codex, Claude Code, Cursor, CLI, or custom agents.
Install
Ready
npx skills add aden-hive/hive --skill hive.browser-automation
Maintenance
fresh
18d since push
Risk
Needs review
Dependency or permission surface needs review
GitHub quality
11K
87/100 Quality · 75/100 Trust
Coverage tags
Review notes
Dependency or permission surface needs review · Permission surface may require sandboxing
Agent adoption scorecard
These scores combine public repository metadata, OpenAgentSkill review signals, maintenance freshness, and install readiness. They are a shortlist signal, not a replacement for human review.
Quality
ExcellentHigh-confidence pick with strong adoption and healthy maintenance signals.
Trust
Sandbox onlyUseful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.
Audit
Needs reviewA machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
OpenAgentSkill Trust Score v5
Run only in a sandbox and compare close alternatives before using it for real work.
Stars
11K GitHub stars
Repo activity
11K stars, 5.7K forks
Maintenance
18d since push
License
Apache-2.0
Install
npx skills add aden-hive/hive --skill hive.browser-automation
Install safety
Agent-readable metadata
Use this block or the embedded JSON to decide whether an agent should install this skill, choose an alternative, or ask for human review first.
Suited tasks
Suited agents
Install decision
Trust and risk
Outcome loop
Install command
npx skills add aden-hive/hive --skill hive.browser-automationDo not use when
Alternative
175.1K Stars
npx skills add anthropics/skills --skill frontend-design
Alternative
85.2K Stars
npx skills add Leonxlnx/taste-skill --skill design-taste-frontend
Alternative
1.8K Stars
npx skills add Alisa0808/vox-director --skill vox-director
Alternative
175.1K Stars
npx skills add anthropics/skills --skill canvas-design
Agent safety v2
Sparse or mixed signals. Useful for discovery, but not for autonomous installation.
Test manually in an isolated workspace and compare against safer alternatives.
high
Skill metadata references terminal, CLI, shell, subprocess, or command execution workflows.
medium
Skill may drive a browser or interact with web pages.
medium
Skill likely fetches remote pages, APIs, repositories, or external services.
medium
Skill may read or write project files, documents, generated artifacts, or local workspace state.
Agent resolve plan
The Resolve API returns the selected skill, alternatives, safety policy, audit notes, install target, and copy-paste prompt an agent can follow without scraping this page.
Open JSON
/api/agent/resolve?task=Use%20hive.browser-automation%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Resolve text
/api/agent/resolve?task=Use%20hive.browser-automation%20for%20an%20agent%20workflow&agent=codex&max_risk=medium&format=text
Install handoff
/api/skills/aden-hive-hive-browser-automation/install
Agent should check
Copy prompt
Task: Use hive.browser-automation in this workspace.
Resolve first: https://www.openagentskill.com/api/agent/resolve?task=Use%20hive.browser-automation%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Review install handoff: https://www.openagentskill.com/api/skills/aden-hive-hive-browser-automation/install
Install command: npx skills add aden-hive/hive --skill hive.browser-automation
Before running it, summarize audit warnings, required permissions, and the fallback skill if install is risky.Agent handoff
Use the public install endpoint to fetch the command, safety checklist, target prompts, and canonical links for this skill.
Install handoff
/api/skills/aden-hive-hive-browser-automation/install
LLM text format
/api/skills/aden-hive-hive-browser-automation/install?format=text
Find alternatives
/api/skills/search?q=hive.browser-automation&limit=3
Agent prompt
Use hive.browser-automation for this task. Review https://www.openagentskill.com/api/skills/aden-hive-hive-browser-automation/install, then install with: npx skills add aden-hive/hive --skill hive.browser-automationRegistry metadata
This page exposes the same decision, trust, audit, use-case, and install signals through the Registry API, so agents can rank this skill without scraping the UI.
Manifest
/api/registry/manifest/aden-hive-hive-browser-automation
LLM text
/api/registry/manifest/aden-hive-hive-browser-automation?format=text
Install alias
/api/registry/install/aden-hive-hive-browser-automation
Recommend
/api/registry/recommend?task=Use%20hive.browser-automation%20in%20an%20agent%20workflow&limit=3
Agent fit
Local desktop
Use-case tags
Platforms
Claude Code, Browser agents
Audit report
A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
Agent decision cockpit
Use this as a leading candidate, then validate the README and install path in your own agent stack.
Role in stack
Primary pick
Primary fit
Local desktop
Trust label
Production-ready
Install path
Command ready
Use when
Evidence
review first
Implementation path
Trust profile
Useful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.
GitHub adoption
PASS11K GitHub stars
Stars/forks activity
PASS11K stars, 5.7K forks; issue activity unavailable in current metadata
Recent maintenance
PASS18d since push
License clarity
PASSApache-2.0
Good signals
Review before install
Recommended action
Run only in a sandbox and compare close alternatives before using it for real work.
Quality profile
High-confidence pick with strong adoption and healthy maintenance signals.
Workflow fit
Operate local tools
I need my agent to operate local files and desktop apps in a repeatable workflow.
Operate web apps
I need my agent to control a browser, fill forms, and verify web app workflows.
Verify behavior
I need my agent to test a web app, reproduce bugs, and verify fixes.
Workflow fit
Operate and verify web apps
A workflow for agents that navigate products, fill forms, take screenshots, and verify real user flows across web applications.
Turn skills into distribution
A workflow for turning newly indexed skills into SEO briefs, social drafts, comparison pages, and reusable publishing workflows.
Design, build, test, and ship interfaces
A practical workflow for agents that turn product briefs or Figma designs into polished frontend code, review the result, test it in a browser, and prepare a safe deployment.
Alternative shortlist
Similar skills that may fit this task.
Guidance for distinctive, intentional UI design, typography, visual direction, and non-template-like product interfaces.
Design and implementation guidance for distinctive landing pages, portfolios, product demos, and purposeful redesigns.
Turn one topic into a narrated Vox-style paper-collage explainer or ad video, from script through captions.
Create original visual art, posters, PNG assets, and PDF documents through a clear design philosophy.
--- name: hive.browser-automation description: Required before any hive-browser CLI command. The browser is driven from the terminal by running `hive-browser <command> ... --json` via terminal_exec — not via MCP tools. Teaches the browser lifecycle rules (the bridge attaches to the USER'S running Chrome — never kill or launch browser processes; timeouts are transport issues, not crashes), the screenshot + coordinate workflow (hive-browser interact with a fractional coordinate) that reaches shadow-DOM inputs selectors can't see, the viewport-fraction coordinate rule (not pixels), rich-text editor quirks ("send button stays disabled" failures), and CSP gotchas. Covers Chrome via CDP through the GCU Beeline extension. metadata: author: hive type: default-skill version: "2.2" ---
# GCU Browser Automation
All GCU browser automation drives a real Chrome instance through the Beeline extension and Chrome DevTools Protocol (CDP). You drive it **from the terminal**: every command is `hive-browser <command> ... --json`, run through `terminal_exec`. Always pass `--json` so the result is machine-readable. That means clicks, keystrokes, and screenshots are processed by the actual browser's native hit testing, focus, and layout engines — **not** a synthetic event layer. Understanding this unlocks strategies that make hard sites easy.
## Browser lifecycle & recovery — read this before "fixing" anything
The bridge attaches to the **user's already-running Chrome** via the extension. The browser is not yours: it holds the user's logged-in sessions and other agents' work, and the runtime — not you — owns the connection to it. Consequences:
- **There is nothing to "start."** If no browser is connected, `hive-browser setup --json` tells you and gives the user install steps. Launching Chrome yourself (any `google-chrome`/`chromium` command, `--remote-debugging-port`, `--user-data-dir`, headless flags) is forbidden and blocked — it opens a browser the bridge can't see, often under the wrong profile. - **There is no situation where killing the browser helps.** Never use terminal tools to `kill`/`pkill`/`killall` Chrome, the bridge, or gcu processes. These commands are blocked, and attempting them breaks every agent sharing the connection. The same applies to the Hive desktop app and `bridge_host`. - **A timeout is NOT a stuck browser.** All `hive-browser` commands share one transport across all agents; one slow call (a heavy `hive-browser evaluate` on a big page) can make YOUR calls time out while the browser is perfectly healthy. The timeout message tells you whether the server passed its liveness check and whether recovery is already running — believe it. - **Allowed recovery, in order:** (1) wait ~30s and retry ONCE, with a smaller/simpler request — e.g. split a page-wide `hive-browser evaluate` sweep into chunked queries; (2) close YOUR OWN tabs with `hive-browser tab close <T> --json` and reopen; (3) report the failure (`report_to_parent` or your reporting channel) and move on to work that doesn't need the browser. Escalate to the user; never to the process table. - Keep heavy `hive-browser evaluate` scripts cheap: avoid `innerText` over thousands of nodes (each read forces layout). Prefer `textContent`, scope the selector, and paginate the sweep.
## Targeting a specific Chrome profile / account
If your machine has more than one Chrome profile connected (different logged-in accounts), **say which one to act in** — if you omit it, the bridge falls back to the first-connected profile, which may be the wrong account. Pass `--browser-profile <label>` to `hive-browser open` (and `hive-browser navigate` / `hive-browser script`):
- **See every connected profile** in `hive-browser status --json` / `hive-browser setup --json` — both return a `connected_profiles` list of `{label, is_default, starred}` for ALL connected Chrome profiles (not just the one you're using). That's how you discover the labels. (`hive-browser status` reflects ALL connections; don't conclude "only one profile" from the single profile label of your own context.) - The label is a **connected profile label** — the name shown in that profile's Hive extension side panel (or its auto 3-word id). If your task assigns you a profile (e.g. *"your profile is `acct-jpn`"*), pass exactly that. - Every command's JSON echoes the profile it **actually** used. Check it: if it doesn't match what you intended, you opened the wrong account. Stop and fix the label (don't proceed). - A label that isn't connected fails fast with the list of connected labels — bind to one of those. - With one profile connected (or one starred default), you can omit it. With several connected and no star, omitting it uses the **first-connected** profile — fine for single-account work, risky for multi-account, so pass the label when the account matters.
## Working on LinkedIn?
For ANY LinkedIn flow, load `hive.linkedin-core` first — it owns the auth check, rate limits, stop protocol, reply-text policy, and DOM gotchas every LinkedIn script depends on. Then load the capability skill for the task: `hive.linkedin-discovery` (scans / People search), `hive.linkedin-messaging` (`lk_send_to_message_url`, `reply`, inbox), `hive.linkedin-connect` (`lk_send_invite`, post comments), or `hive.linkedin-sales-navigator` (premium search + InMail).
## Coordinates
Every `hive-browser interact` action that takes a `--coordinate` — and every command that returns one — operates in **fractions of the viewport (0..1 for both axes)**. Read a target's proportional position off `hive-browser screenshot` — "this button is about 35% from the left and 20% from the top" → pass `--coordinate 0.35,0.20`. Rect-returning commands (`hive-browser page shadow-query` and the `rect` inside `focused_element`) also return fractions. The CLI converts to CSS pixels internally before dispatching to Chrome.
``` hive-browser screenshot --json → image + cssWidth/cssHeight in meta hive-browser interact --action left_click --coordinate x,y --json → x, y are fractions 0..1 hive-browser interact --action hover --coordinate x,y --json → fractions hive-browser interact --action key --coordinate x,y --text k --json → fractions hive-browser page shadow-query "<selector>" --json → rect → rect.cx / rect.cy are fractions ```
**Exception for zoomed elements:** pages that use `zoom` or `transform: scale()` on a container (LinkedIn's `#interop-outlet`, some embedded iframes) render in a scaled local coordinate space. `getBoundingClientRect` there may not match CDP's hit space. Prefer `hive-browser page shadow-query` (which handles the math and returns fractions) or visually pick coordinates from a screenshot. Avoid raw `hive-browser evaluate` + `getBoundingClientRect()` for coord lookup — that returns CSS px and will be wrong when fed to a `--coordinate`.
## Screenshot + coordinates is shadow-agnostic — prefer it on shadow-heavy sites
Start with `hive-browser page snapshot` when you need to inspect the page structure or find ordinary controls. If the snapshot does not show the thing you need, shows stale or misleading refs, or cannot prove where a visible target is, take `hive-browser screenshot` and use the screenshot + coordinate path. This is especially useful on sites that use Shadow DOM heavily.
Why:
- **CDP hit testing walks shadow roots natively.** `hive-browser interact --action left_click --coordinate x,y --json` routes through Chrome's native hit tester, which traverses open shadow roots automatically. You don't need to know the shadow structure. - **Keyboard dispatch follows focus** into shadow roots. After a click focuses an input (even one three shadow levels deep), `hive-browser interact --action key ... --json` with no `--selector` dispatches keys to `document.activeElement`'s computed focus target. - **Screenshots render the real layout** regardless of DOM implementation.
Whereas `wait_for_selector` and a `selector`-targeted `left_click` / `type` all use `document.querySelector` under the hood, which **stops at shadow boundaries**. They cannot see elements inside shadow roots. For shadow-DOM inputs, use a `type` action with no selector after focusing via a `coordinate` click.
### Recommended workflow on shadow-heavy sites
1. `hive-browser screenshot --json` → JPEG. **The image is attached to your context automatically on your next turn — do NOT `attach_file` / read the `saved_to` path; that is redundant and wasteful.** The result JSON carries a `saved_to` path (read it ONLY if, in a later turn, no image actually appeared); meta includes `cssWidth`/`cssHeight` for reference. 2. Identify the target visually → estimate its proportional position `[fx, fy]` where each is in `0..1`. 3. `hive-browser interact --action left_click --coordinate fx,fy --json` → the CLI converts to CSS px and dispatches; CDP native hit testing focuses the element. **The result includes `focused_element: {tag, id, role, contenteditable, rect, inFrame?, ...}`** — use it to verify you actually focused what you intended. `rect` is in fractions (same space as your input). When focus is inside a same-origin iframe, the descriptor reports the inner element and adds `inFrame: [...]` breadcrumbs. 4. `hive-browser interact --action type --text "..." --json` with no `--selector` → inserts text into `document.activeElement` (traverses into same-origin iframes automatically). Shadow roots, iframes, Lexical, Draft.js, ProseMirror all just work. Pass `--selector` instead when you have a reliable CSS selector for a light-DOM element. 5. Verify via `hive-browser screenshot` OR `hive-browser evaluate` reading a known-reachable marker (e.g. check that the Send button's `aria-disabled` flipped to `false`).
### The click→type loop (canonical pattern)
1. Run `hive-browser interact --action left_click --coordinate x,y --json` to click the target element. 2. Check the `focused_element` field in the result — it tells you what actually received focus (tag, id, role, contenteditable, rect). 3. If the focused element is editable, run `hive-browser interact --action type --text "..." --json` to insert text. Verify the text took effect — prefer checking the underlying `.value` / `innerText` via `hive-browser evaluate` or confirming the submit button enabled. A screenshot alone can mislead: narrow input boxes visually clip long text, so only a portion may appear on screen even though the full string was accepted. 4. If it is NOT editable, your click landed on the wrong thing — refine coordinates and retry. Do NOT reach for `hive-browser evaluate` + `execCommand('insertText')` or shadow-root traversals. The problem is the click target, not the typing method.
A `--selector`-based `left_click` also returns `focused_element`, so the same check works whether you clicked by selector or coordinate.
### Empirically verified (2026-04-11)
Tested against `https://www.reddit.com/r/programming/` whose search input lives at:
``` document > reddit-search-large [shadow] > faceplate-search-input#search-input [shadow] > input[name="q"] ```
### Shadow-piercing selectors
When you DO want a selector-based approach and know the shadow structure, `hive-browser page shadow-query` supports `>>>` shadow-piercing syntax:
``` hive-browser page shadow-query "reddit-search-large >>> #search-input" --json hive-browser page shadow-query "#interop-outlet >>> #ember37 >>> p" --json ```
Returns the element's rect as **fractions of the viewport** (feed `rect.cx` / `rect.cy` straight into a `--coordinate`). Remember: a `type` action's `--selector` and `--wait-for-selector` do **not** support `>>>` — only `page shadow-query` does.
## Navigation and waiting
### The basics
``` hive-browser navigate <url> --wait-until load --json # load | domcontentloaded | networkidle hive-browser interact --action wait --wait-for-selector "h1" --timeout-ms 2000 --json hive-browser interact --action wait --wait
Source provenance
Decision snapshot
11,003 GitHub stars
Audit
Install and adoption review
Agent-proven evidence
Outcome reports after resolve, review, install, and one narrow run.
No agent outcome data yet. The first agent run can report success, setup needs, risk blocks, failure, or not-relevant through /api/agent/outcome.
Install
Free and open source. Review the report before installing into production agents.
Growth loop
Scenario-led draft for hive.browser-automation, ready for a manual X post.
hive.browser-automation: Required before any hive-browser CLI command. The browser is driven from the terminal by runn... 11.0K stars https://www.openagentskill.com/skills/aden-hive-hive-browser-automation?ref=x
Listing + install path for hive.browser-automation: https://www.openagentskill.com/skills/aden-hive-hive-browser-automation?ref=x Install: npx skills add aden-hive/hive --skill hive.browser-automation
Listing source
This listing was indexed from public sources and is not marked official until a maintainer claim is approved.
Attribution links to the public repository or creator profile. Creators can claim the listing to update ownership signals.
Claim this skillOwner claim
This Registry indexed listing is attributed to aden-hive but is not marked official yet. Claim it to add a verified owner signal and make future launch, install, and audit updates easier to trust.
Creator backlink kit
Show the canonical listing, current trust and audit signals, and real Agent-Proven evidence where developers evaluate the repository.
[](https://www.openagentskill.com/skills/aden-hive-hive-browser-automation?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/aden-hive-hive-browser-automation?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/aden-hive-hive-browser-automation/audit)
[](https://www.openagentskill.com/skills/aden-hive-hive-browser-automation?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)aden-hive
@aden-hive
Share whether this skill looks useful for your agent workflow. Aggregated feedback improves rankings over time.
Sandbox only
Frontend Design
Guidance for distinctive, intentional UI design, typography, visual direction, and non-template-like product interfaces.
175.1K StarsTaste Skill: Anti-Slop Frontend
Design and implementation guidance for distinctive landing pages, portfolios, product demos, and purposeful redesigns.
85.2K StarsVox Director
Turn one topic into a narrated Vox-style paper-collage explainer or ad video, from script through captions.
1.8K StarsCanvas Design
Create original visual art, posters, PNG assets, and PDF documents through a clear design philosophy.
175.1K StarsPermission surface
shell or command execution, filesystem or document access
Agent outcomes
No agent outcome data yet
Docs
Strong README/SKILL.md context
Risk summary
Install readiness