PinchTab is a standalone HTTP server, written in Go and shipped as a single binary of about 15 MB, that gives AI agents direct control over Chrome. Agents navigate pages, extract structured content and interact with the DOM through a CLI or the HTTP API, and page state comes back as extracted text rather than raw HTML or screenshots — around 800 tokens for a page.
The process model is server-first. A control-plane server manages profiles, instances, routing and a dashboard; each managed browser runs behind a lightweight bridge runtime; and an advanced attach mode registers externally managed Chrome instances running in remote debug mode. A profile carries browser state — cookies, history, local storage — so a login persists across restarts, and an agent request can select the profile it needs. Instances run headless or headed, several in parallel with isolated user data directories, locally or inside Docker.
Element references are addressed by DOM node rather than by row position, so the same reference survives a change of filter, selector or depth in a filtered view and expires only when the document navigates. Beyond agent control, the CLI can audit a whole site at browser level — screenshots, console errors, broken assets, an accessibility score, Core Web Vitals and security findings — and compare two versions of a site visually, with a flag that fails the command on a difference for use as a CI gate.
The default posture is local and single-user: the server binds to loopback, sensitive endpoint families and attach are disabled, and an inspection layer restricts browsing to locally hosted sites until you widen it. The documentation states plainly that the dashboard, HTTP API, MCP server and remote CLI integrations are operator control surfaces, not built for untrusted users, multi-tenant exposure or the public internet, and that widening browsing to untrusted sites increases the browser's attack surface. Agent plugins are published for Grok Build and OpenClaw.
End-to-end agent-loop token cost was measured against agent-browser on the Anthropic API, reading as how much cheaper PinchTab was on each metric:
| Scope | Cost cheaper | Fewer requests | Fewer tokens |
|---|---|---|---|
| Basic Haiku (10 steps) | 9.5% | 23.0% | 17.9% |
| Extended Haiku (24 steps) | 19.6% | 31.1% | 26.2% |
| Extended Sonnet (24 steps) | 20.3% | 29.4% | 25.3% |
Features
- CLI or HTTP: the same browser control plane is driven from the command line or with plain HTTP requests
- Token-efficient snapshots: text extraction returns roughly 800 tokens per page instead of full HTML or images
- Headless or headed: run without a window, or with visible Chrome and a configured profile
- Profiles: cookies, extensions and authenticated state persist per profile and are selected per request
- Multi-instance: parallel Chrome processes with isolated user data directories, locally, in Docker or across machines
- Stable element refs: references denote a DOM node and survive filter, selector and depth changes until navigation
- Site audits: whole-site screenshots, console errors, broken assets, accessibility score, Core Web Vitals and security findings
- Visual comparison: two site versions diffed visually, with a fail-on-difference flag for CI
- Local-first defaults: loopback binding, sensitive endpoints and attach off, and browsing restricted to local sites until widened
- Agent plugins: installable into Grok Build and OpenClaw, with the binary installed separately
- ARM64 support: Raspberry Pi builds with automatic Chromium detection
- Diagnostics: a doctor command checks the binary, browser config, fingerprint flags and CDP reachability, in human or JSON form
