Reference
CLI Commands
The OpenSteer CLI is positional, workspace-centric, and organized around sessions, local view, DOM actions, network inspection, browser state, and runtime helpers.
CLI Commands
The OpenSteer CLI is positional. DOM actions take element numbers as positional arguments, extraction takes a positional JSON schema, and most stateful commands require --workspace <id> or OPENSTEER_WORKSPACE.
Session and navigation
opensteer open <url> --workspace <id> [--headless] [--provider local|cloud]
opensteer close --workspace <id>
opensteer status [--workspace <id>] [--json]
opensteer view [--workspace <id>] [--json]
opensteer view stop [--json]
opensteer view --auto [--json]
opensteer view --no-auto [--json]
opensteer goto <url> --workspace <id> [--capture-network <label>]
Notes:
statusandviewcan run without a workspace.view --autoandview --no-autoset the local view open preference.- Use
opensteer view serveto run the local view service in the foreground. - Everything else in this group is workspace-backed.
DOM
opensteer snapshot [action|extraction] --workspace <id>
opensteer click <element> --workspace <id> [--button left|middle|right] [--persist <key>] [--capture-network <label>]
opensteer hover <element> --workspace <id> [--persist <key>] [--capture-network <label>]
opensteer input <element> <text> --workspace <id> [--press-enter] [--persist <key>] [--capture-network <label>]
opensteer scroll <direction> <amount> --workspace <id> [--element <n>] [--persist <key>] [--capture-network <label>]
opensteer extract <schema> --workspace <id> [--persist <key>]
opensteer evaluate <script> --workspace <id>
opensteer init-script <script> --workspace <id>
Notes:
click,hover, andinputare positional by element number.scrollis page-level unless you pass--element <n>.extracttakes a positional JSON object. There is no--schema-jsonflag.- There is no
--selectoror--descriptionflag on the DOM CLI surface.
Tabs
opensteer tab list --workspace <id>
opensteer tab new [url] --workspace <id>
opensteer tab <n> --workspace <id>
opensteer tab close [n] --workspace <id>
Network
opensteer network query --workspace <id> [--capture <label>] [--url <pattern>] [--hostname <host>] [--path <path>] [--method <m>] [--status <code>] [--type <resourceType>] [--json] [--before <id>] [--after <id>] [--limit <n>]
opensteer network detail <recordId> --workspace <id> [--probe]
opensteer fetch <url> --workspace <id> [--method <m>] [--header key=value ...] [--query key=value ...] [--body <json>] [--body-text <text>] [--transport auto|direct|matched-tls|context|page] [--cookies] [--follow-redirects]
--json on network query filters the output to JSON and GraphQL responses only.
Browser state
opensteer state [domain] --workspace <id>
If you need cookie or storage helpers, use the SDK methods cookies() and storage().
Exec
opensteer exec <expression> --workspace <id>
exec evaluates JavaScript with the Opensteer SDK bound as this. It supports await and disconnects when the expression finishes.
Computer
opensteer computer click <x> <y> --workspace <id> [--button left|right|middle] [--count <n>] [--modifiers Shift,Control,Alt,Meta] [--capture-network <label>]
opensteer computer type <text> --workspace <id> [--capture-network <label>]
opensteer computer key <key> --workspace <id> [--modifiers Shift,Control,Alt,Meta] [--capture-network <label>]
opensteer computer scroll <x> <y> --workspace <id> --dx <n> --dy <n> [--capture-network <label>]
opensteer computer move <x> <y> --workspace <id> [--capture-network <label>]
opensteer computer drag <x1> <y1> <x2> <y2> --workspace <id> [--steps <n>] [--capture-network <label>]
opensteer computer screenshot --workspace <id> [--format png|jpeg|webp]
opensteer computer wait <ms> --workspace <id>
Advanced commands
opensteer captcha solve --workspace <id> --provider 2captcha|capsolver --api-key <key> [--type recaptcha-v2|hcaptcha|turnstile] [--site-key <key>] [--page-url <url>] [--timeout <ms>]
opensteer scripts capture --workspace <id> [--url-filter <pattern>] [--persist] [--inline] [--external] [--dynamic] [--workers]
opensteer scripts beautify <artifactId> --workspace <id> [--persist]
opensteer scripts deobfuscate <artifactId> --workspace <id> [--persist]
opensteer scripts sandbox <artifactId> --workspace <id> [--fidelity minimal|standard|full] [--timeout <ms>] [--clock real|manual] [--cookies <json>] [--globals <json>] [--ajax-routes <json>]
opensteer interaction capture --workspace <id> [--key <name>] [--duration <ms>] [--script <js>] [--include-storage] [--include-session-storage] [--include-indexed-db] [--global-names <list>] [--case-id <id>] [--notes <text>] [--tags <list>]
opensteer interaction get <traceId> --workspace <id>
opensteer interaction replay <traceId> --workspace <id>
opensteer interaction diff <leftTraceId> <rightTraceId> --workspace <id>
opensteer artifact read <artifactId> --workspace <id>
Browser admin
These commands are supported even though they are not part of the primary --help text for most users.
opensteer browser discover
opensteer browser inspect --attach-endpoint <url>
opensteer browser status --workspace <id>
opensteer browser clone --workspace <id> --source-user-data-dir <path> [--source-profile-directory <name>]
opensteer browser reset --workspace <id>
opensteer browser delete --workspace <id>
browser clone, browser reset, and browser delete require a persistent workspace browser.
Recording and skills
opensteer record <url> --workspace <id> [--provider local|cloud] [--output <path>]
opensteer skills install [--skill <name>] [--agent <name>] [--all] [--list] [--global] [--yes] [--copy]
Important migration note
The CLI does not expose:
opensteer run ...--input-json--schema-json--selector--descriptionopensteer replay ...opensteer cookies ...opensteer storage ...
If you were using those older patterns, update to the positional commands above.
