chrome-devtools-cli

A Rust binary with no MCP server: an agent drives your open Chrome or Edge, and tabs are pinned with target labels.

  • 256 ★ on the repository
  • Last commit
CLI

Broad access

Why this level

  • The agent works in your browser with your sessions and can submit forms and run JavaScript on pages.
All reasons and checks

aeroxy/chrome-devtools-cli

Install

Works in

Manual install

brew install aeroxy/tap/chrome-devtools

First command in the Installation section (recommended on macOS); the binary is named `chrome-devtools`.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The agent works in your browser with your sessions and can submit forms and run JavaScript on pages.

This is third-party code. Review the repository files before installing.

What it does

chrome-devtools is a Rust CLI that attaches to a running Chrome or Edge over the DevTools Protocol. An agent opens pages, clicks selectors, fills forms, takes screenshots, reads a page as Markdown and inspects network requests and the console. The first call starts a background daemon that keeps the connection for up to five idle minutes, so the browser asks for permission once. Tabs are pinned with a label through `--target`. One file, `skill/chrome-devtools/SKILL.md`, documents the commands for an agent, and no MCP server is needed.

Who it is for. Developers and testers who hand an agent work inside their everyday browser where they are already signed in.

Good fit when

  • An agent checks a layout at a mobile viewport and saves a screenshot.
  • A form on a site has to be filled and submitted without signing in again.
  • After a click you need to see which requests went out and what reached the console.
  • An article is read as clean Markdown for a short summary.
  • MCP replies fill the model context, so browser automation moves to a command line.

Not a fit when

  • You need an isolated browser with no personal data or open sessions.
  • Automation runs on a headless server with no Chrome launched.
  • Tests run on a schedule in CI with nobody present.

Example request

Open the pricing page, save a full-page screenshot and read the prices as Markdown. Pin the tab with `--target`.

Limitations

Remote debugging is switched on once in the browser at `chrome://inspect/#remote-debugging`. Edge has its own toggle at `edge://inspect/#remote-debugging`. The browser asks for approval on first connection. Building from source needs Rust 1.89 or newer, while the Homebrew package is prebuilt. On macOS the system may need permission to read the profile directory, otherwise the tool falls back to port 9222 with a warning. The agent acts in your browser with your sessions, so a wrong click submits a form in your name.

How to disable. Turn the remote debugging toggle off at `chrome://inspect/#remote-debugging`. The daemon exits by itself after five idle minutes. `brew uninstall chrome-devtools` removes the binary.

FAQ

Is a separate browser required?

No. The tool attaches to the running Chrome or Edge with its profile and sessions, and no separate Chromium is started.

What if the port file cannot be read?

Pass the port shown at `chrome://inspect/#remote-debugging`: `chrome-devtools --port 9222 list-pages`. The `CHROME_PORT` variable sets the same port.

How do multiple tabs work?

Every `navigate` prints a label such as `[target:red-snake]`. Pass it with `--target` and later commands stay on that tab.

Why a CLI when chrome-devtools-mcp exists?

The author cites context cost, since MCP replies are long. Here an agent needs one `SKILL.md` and shell commands.

Which commands exist?

Navigation (`navigate`, `new-page`, `list-pages`), inspection (`screenshot`, `read-page`, `snapshot`, `evaluate`), actions (`click`, `fill`, `type-text`, `press-key`, `hover`), plus `emulate`, `network` and `console`.

Discussion

No questions or reviews yet.

CLI tools

A CLI and skill for driving Chrome from an agent: page snapshots, clicks, console, network and audits in compact output

CLIExtended access454Repository stars

An agent drives your real logged-in Chrome: a CLI, MCP and an extension with a separate tab group per session

CLIBroad access257Repository stars

A skill for Amp, Claude Code and Cursor: the agent drives your live Chrome with its open tabs and signed-in accounts through a single debugging toggle

SkillBroad access3.3KRepository stars

faster-chrome-devtools-skill drives Chrome over the DevTools Protocol from a shell, with no MCP server, Puppeteer or Playwright.

SkillBroad access173Repository stars

A skill connects an agent to your Chrome through an extension and CLI for reading pages, managing tabs and verifying actions.

SkillBroad access649Repository stars
Official

The Chrome DevTools team's official MCP server: the agent drives a live Chrome, reads network and console, and records performance traces

MCP serverExtended access55.2KRepository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialRepository starsMain difference
chrome-devtools-cli (this card)no256
chrome-devtools-axino454offers compact output and performance audits; chrome-devtools-cli attaches to the everyday browser through its toggle and labels tabs with `--target`
browser-debugger-cli (bdg)no185keeps Chrome in the background and returns network, cookies and styles; chrome-devtools-cli works in an already open browser, Edge included

README in short

The tool reads the port from the profile `DevToolsActivePort` file or from `--ws-endpoint` and `--port`. Viewport, geolocation and URL blocks are set per tab with `emulate`.

README badge

Report a problem