opencli-usage
Installation
Summary
Unified CLI surface for discovering and driving website, desktop app, and external CLI commands through a single opencli entrypoint.
- Four command categories: adapter commands (100+ sites via
opencli <site> <command>), browser driving for ad-hoc automation, current-tab binding for user-opened sessions, and external CLI passthrough (gh, docker, vercel, etc.) - Four execution strategies determine prerequisites:
PUBLIC(pure HTTP, no browser),COOKIE(logged-in Chrome + extension),INTERCEPT(signed request capture),UI(full DOM interaction), andLOCAL(dev endpoints only) - Universal flags (
-f json,-v) and output formats (json, yaml, table, plain, md, csv) work across all commands; always queryopencli list -f jsonfor current adapter inventory instead of hard-coding - Built-in self-repair via
--trace retain-on-failurewhen adapters break; plugin system for third-party extensions; scaffolding and validation tools for writing custom adapters
SKILL.md
opencli-usage
OpenCLI turns any website, Electron desktop app, or external CLI into a uniform opencli <site> <command> surface that agents can drive without screen-scraping. This skill is the orientation layer — once you know what you want to do, load one of the specialized skills below.
The three pillars
- Adapter commands —
opencli <site> <command> [...]. Built-in adapters live inclis/, user adapters in~/.opencli/clis/. Each is backed by a strategy (PUBLIC | COOKIE | INTERCEPT | UI | LOCAL) that tells you whether a Chrome session is needed. - Browser driving —
opencli browser *subcommands (open,state,click,type,select,find,extract,network, …) for ad-hoc interaction and scraping when no adapter covers the task. Seeopencli-browser. - Current-tab binding —
opencli browser <session> bindattaches the Chrome tab the user already opened/logged into to that browser session. Follow-up commands useopencli browser <session> .... Seeopencli-browserbefore using it; bound sessions still block tab mutation. - External CLI passthrough —
opencli gh,opencli docker,opencli vercel, etc. Managed viaopencli external install <name>(auto-install fromexternal-clis.yaml) oropencli external register <name>(bring your own).
Install
# npm global
npm install -g @jackwener/opencli # binary: opencli, requires Node >= 21
opencli doctor # run before browser-dependent work (see below)