What is PinchTab?
PinchTab is a standalone HTTP server, written in Go, that gives AI agents control of Chrome. It installs as a background daemon on localhost:9867, manages browser profiles and instances, and exposes navigation, accessibility-tree snapshots with stable element refs, clicks, form fills and text extraction through a CLI, an HTTP API with a bearer token, and an MCP server. The npm package also drops a pinchtab skill into Claude Code, Cursor, Windsurf, Codex and OpenClaw.
It runs headless or headed, keeps logged-in profiles across restarts, can run several isolated Chrome instances in parallel, and adds site audits and visual diffs for CI. An optional CloakBrowser provider targets sites that fingerprint stock Chromium.
The repo is MIT-licensed with about 10,500 GitHub stars; the latest release is v0.15.2 (26 August 2026). Seven security advisories were published between 5 and 22 March 2026, including a high-severity SSRF.
Is PinchTab worth it?
PinchTab's case is economy. Instead of feeding the model screenshots or raw HTML, it returns an accessibility snapshot with short element refs such as e5 that survive filtering and only expire on navigation, and a text mode the project puts at about 800 tokens a page against roughly 10,000 for the raw page. Its own benchmark against agent-browser, run on the Anthropic API, reports 9.5% to 20.3% lower cost, with the gap widening on longer 24-step tasks. Those are the maintainers' numbers, but the method and raw logs are published in the repo.
The architecture suits a developer's machine. One roughly 30 MB binary runs as a daemon, so every agent tool on the laptop shares one browser control plane, and named profiles keep cookies and logins so an agent can use your work account without a fresh sign-in each run. Headed mode, multiple parallel instances and attaching to a remote Chrome cover QA and testing jobs, and pinchtab audit adds screenshots, console errors, Core Web Vitals and a compare command that can fail a CI build on visual diffs.
The security defaults are cautious, and the record explains why they matter. It binds to 127.0.0.1, turns off sensitive endpoint families and attach mode, and restricts browsing to locally hosted sites until you widen the allowlist. Seven advisories were published in March 2026: SSRF through the download handler (rated high), token leakage in query strings, a rate limiter that was never applied, and a Windows command injection via profile names. Six list fixed versions; the Windows one lists none. The README is plain that the dashboard, API and MCP server are privileged surfaces not built for untrusted users or the public internet.
Against libraries such as Stagehand or browser-use, PinchTab is a service rather than a library, so it fits agents that already call tools over HTTP or MCP and do not want a Node or Python runtime embedded. Windows support is best-effort, and the release pace slowed after August, so it reads as a sharp local tool more than a shared automation platform.
Where it earns its place
A solo developer running Claude Code and Codex side by side
Let both agents browse docs and dashboards without each launching its own browser
Run pinchtab daemon install once; npm install -g pinchtab copies the skill into each agent's home, and both drive the same Chrome on localhost:9867. Free, and text snapshots keep page reads near 800 tokens.
A QA lead at a 15-person web agency
Catch visual regressions before a client release
Add pinchtab compare between production and staging with --fail-on-diff to CI, and pinchtab audit on the sitemap for console errors and Core Web Vitals. Runs in the Docker image bound to 127.0.0.1.
An operations analyst
Have an agent download a weekly report from a logged-in portal
Create a named headed profile, log in once by hand, and let the agent reuse that profile each week. The session cookies live on the machine, so treat the profile as a credential.
Before you commit
- Setup
- curl -fsSL https://pinchtab.com/install.sh | bash, brew install pinchtab/tap/pinchtab or npm install -g pinchtab, then pinchtab daemon install; pinchtab nav <url> --snap is the first command. Needs a local Chrome or Chromium; Docker image available.
- Integrations
- CLI, HTTP API with bearer token, MCP server, agent skills for Claude Code, Cursor, Windsurf, Codex and OpenClaw, plugins for Grok Build and OpenClaw; optional CloakBrowser provider.
- Data and privacy
- No telemetry or analytics, per the README; binds to 127.0.0.1 and profiles store browser sessions locally. MIT licence. Seven GitHub advisories (one high, six medium) published in March 2026; six have fixed versions.
- Cost at scale
- No paid edition. Cost is the machine running Chrome instances (the Docker example sets 2 GB of shared memory) plus model tokens, which the snapshot format is designed to reduce.
- Limits
- Primary testing is macOS and Linux; Windows is best-effort. Remote, container and distributed setups are operator-managed and must be secured by hand. Last release v0.15.2 in August 2026.
What’s good
- Accessibility snapshots and text mode cut tokens per page
- Single ~30 MB Go binary; daemon shared by every local agent
- Persistent named profiles, headed or headless, parallel instances
- Built-in site audit and visual compare for CI
What’s not
- Seven security advisories in March 2026, one without a listed fix
- Privileged API not designed for remote or multi-user exposure
- Windows support is best-effort
- Benchmarks are the maintainers' own; no release since August 2026
Best for
Developers who want one local, token-efficient Chrome service that all their coding agents and scripts can share.