olo-dot-io/uni-cli/unicli-browser

Claude Code and agent skill by olo-dot-io/uni-cli

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

Control broker-owned hidden, existing-Chrome, or remote browser targets with explicit Agent identity, visibility, profile partitions, and lifecycle.

Install

npx vskill@latest install olo-dot-io/uni-cli/unicli-browser

SKILL.md

When to Use

Use unicli browser for browser lifecycle, page interaction, session sharing, target handoff, and diagnostics. unicli operate is a compatibility alias for the page-action subset.

Provider Decision

RequirementProvider and visibility
No window; default automationmanaged + hidden (default)
Existing signed-in Chrome tab, no activationchrome + background
Explicit user-visible Chrome interactionchrome + foreground
Explicit cloud/browser serviceremote + hidden

No provider falls back to another. Managed and remote providers cannot become foreground. Existing Chrome cannot promise hidden operation.

Quick Start

bash
unicli browser doctor --json # Probe only; starts nothing
unicli browser broker start # Start windowless control plane only
unicli browser start # Lazily start default managed hidden target
unicli browser open https://example.com
unicli browser state
unicli browser click <ref>
unicli browser screenshot ./page.png
unicli browser sessions --json

Agent Sessions and Reuse

A stable Agent session owns targets across turns. Different Agent sessions use different targets, while a shared profile partition can reuse login/storage.

bash
unicli browser --session thread-42 --turn turn-1 open https://example.com
unicli browser --session thread-42 --turn turn-2 state
unicli browser --session thread-42 --turn turn-3 click 7
unicli browser sessions --json
unicli browser session-end thread-42

Use --profile-partition team-login to share storage deliberately. Use --isolated for a disposable browser context inside that partition. --workspace is a compatibility spelling for the same partition concept.

Existing Chrome Without Foreground Activation

Install the native host and extension once, keep an existing normal Chrome window open, list tabs, then claim a specific tab:

bash
unicli browser native-host install
unicli browser --provider chrome --visibility background tabs
unicli browser --session thread-42 --provider chrome --visibility background bind 123
unicli browser --session thread-42 --turn turn-2 --provider chrome --visibility background state

Background allocation must preserve focused window and active-tab state. If Chrome cannot satisfy that postcondition, the command fails instead of opening or focusing a window. Use --focus only for an explicit foreground request.

Broker Lifecycle

bash
unicli browser broker status
unicli browser broker start
unicli browser broker restart
unicli browser broker stop

The broker is one authenticated, owner-only local control plane. Starting it does not start Chrome. Browser processes are provider-owned and lazy. Session TTL and target leases are visible through browser status and browser sessions.

Authentication and Profiles

bash
unicli browser profiles --json
unicli browser cookies <domain> --profile-id <id> # Explicit persistence
unicli auth import <site> --domain <domain> # Explicit persistence

Managed runtimes use Uni-CLI-owned profiles under ~/.unicli/; they never run CDP against Chrome's default user-data-dir. A selected local profile seeds the automation profile. --ephemeral explicitly selects an empty profile.

Chrome 136+ ignores remote-debugging switches on its default data directory. RemoteDebuggingAllowed=false blocks even Uni-CLI automation profiles until an administrator removes the policy or sets it true. The policy does not make the default-profile CDP path supported.

Remote Browser

bash
export UNICLI_CDP_ENDPOINT='wss://browser.example/devtools/browser/...'
export UNICLI_CDP_HEADERS='{"Authorization":"Bearer ..."}'
unicli browser remote
unicli browser --provider remote --visibility hidden start

Status redacts credentials, paths, query tokens, and headers. Malformed remote configuration is a hard error and never falls back locally.

Page Workflow

  1. open the URL.
  2. state to obtain current refs.
  3. Use click, type, select, or keys with those refs.
  4. Run state again after navigation or DOM replacement.
  5. Prefer captured JSON APIs when network reveals a stable endpoint.

Useful commands:

bash
unicli browser find --css 'button'
unicli browser query 7 --kind attributes
unicli browser frames
unicli browser console
unicli browser network
unicli browser extract --chunk-size 8000
unicli browser evidence --render-aware

Diagnostics

unicli browser doctor --json is the routing truth:

  • default_path: managed/hidden availability and profile source.
  • broker: stopped, running, or exact endpoint error.
  • providers: managed runtimes, Chrome native-host state, redacted remote state.
  • sessions: live Agent turns, target leases, and tombstones.
  • checks[*].next_step: exact repairs.

unicli browser doctor --repair starts only the broker. It never starts a browser provider and never creates an about:blank placeholder target.

ProblemExact next action
Broker unavailableunicli browser broker restart
Managed browser unavailableInstall Chrome or use explicit --ephemeral
Chrome provider unavailableInstall native host/extension and keep a normal Chrome window open
Remote config invalidCorrect or unset UNICLI_CDP_ENDPOINT / UNICLI_CDP_HEADERS, restart broker
Exit 77Restore auth with explicit profile/cookie flow

Security

  • Security scanPassed, 93 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
269
Repository forks
3
7-day trend score
28

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/olo-dot-io/uni-cli/unicli-browser/badge)](https://verified-skill.com/skills/olo-dot-io/uni-cli/unicli-browser)

Something wrong with this skill or its page? Tell us.