firefox-cli gives AI agents terminal-driven control over a user's Firefox browser.
It is inspired by agent-browser, but for Firefox users. It talks to a Firefox extension so an agent can inspect pages, navigate, operate tabs and windows, interact with elements, read browser state, wait for page conditions, capture screenshots, observe logs/network activity, and run serial browser workflows from a CLI using the real, authenticated user's session.
Install the CLI package:
npm install -g firefox-cliRegister the native host and print the matching extension download URL and connection-approval instructions:
firefox-cli setupInstall the extension from the URL shown by firefox-cli setup. Open it in Firefox and accept the install prompt. Use firefox-cli setup --dry-run --json for a write-free preview.
Run firefox-cli connect and approve the request in Firefox, or approve the first connection in the extension popup.
Verify the installation:
firefox-cli doctordoctor reports the native-host manifest, Windows registry registration, extension connection state, and the next action when setup is incomplete. doctor --fix repairs missing or stale registration.
Install the agent skill so coding agents know when firefox-cli is available and how to use it.
Install with the skills CLI:
npx skills@latest add respawn-llc/firefox-cliAdd the Respawn marketplace, then install the plugin:
/plugin marketplace add respawn-llc/claude-plugin-marketplace
/plugin install firefox-cli@respawn-tools
Install the skill from the public GitHub path:
$skill-installer install https://github.com/respawn-llc/firefox-cli/tree/main/skills/firefox-cli
Approving the firefox-cli extension grants the paired firefox-cli user full control over the Firefox browser session, including using & manipulating the signed-in sites, authentication, cookies, sensitive data & monitoring all activity. Do not approve the pairing unless you accept responsibility for every actor that can run firefox-cli on the machine.
Not everything that Chrome/CDP / agent-browser tools support is supported by Firefox:
- Private windows are readable, but mutating commands are rejected.
- Page snapshots and element references target the main frame. Cross-origin iframes provide diagnostics only.
- Screenshots select the requested tab. Use
--focusto request foregrounding its window. - Browser-internal and privileged Firefox pages can block extension scripting.
See docs/setup.md for platform paths and troubleshooting, and docs/commands.md for command syntax.
AGPL-3.0-only. See LICENSE.
Copyright (c) 2026 Respawn LLC