Lightpanda is a headless browser built from scratch in Zig rather than forked from Chromium or WebKit. It targets developers running web automation, scraping, or AI agents at scale who need lower memory and CPU overhead than headless Chrome provides. It speaks CDP and WebDriver Bidi, so it works with Puppeteer and Playwright with minimal changes, and it ships a native agent mode and MCP server for LLM-driven browsing.
browserWSEndpoint at Lightpanda's server.lightpanda agent, supporting Anthropic, OpenAI, Gemini, Vertex AI, Mistral, Hugging Face, Vercel AI Gateway, and local models via Ollama or llama.cpp.Lightpanda fits web scraping and crawling pipelines that need JavaScript execution but can't afford the memory footprint of running many Chrome instances. It's a good fit for AI agent backends that need a fast, scriptable browsing tool, especially when you want to record an agent session once and replay it deterministically without paying for LLM calls again. Teams running high-concurrency crawlers on cloud instances benefit most, since the memory savings compound across hundreds of parallel pages.
It is not the right choice if you need pixel-perfect visual rendering, screenshot fidelity matching real browser painting, or full parity with every Chromium DevTools feature. Because it's a new browser engine rather than a Chromium fork, some web platform features may behave differently than in Chrome; check the published Web Platform Tests results if standards compliance for a specific API matters to your use case. Projects tied tightly to Chromium-specific extensions or Puppeteer/Playwright features beyond CDP basics may hit gaps.
Install a prebuilt binary via Homebrew:
brew install lightpanda-io/browser/lightpanda
Or on Arch Linux:
yay -S lightpanda-nightly-bin
Or download a nightly binary directly (Linux x86_64 example):
curl -L -o lightpanda https://github.com/lightpanda-io/browser/releases/download/nightly/lightpanda-x86_64-linux && \
chmod a+x ./lightpanda
./lightpanda version
Linux binaries link against glibc; on musl-based distros (like Alpine) use a glibc base image or build from source. Windows users run it inside WSL2, which forwards localhost:9222 automatically.
Or run it via Docker:
docker run -d --name lightpanda -p 127.0.0.1:9222:9222 lightpanda/browser:nightly
Dump a page from the CLI:
./lightpanda fetch --obey-robots --dump html --log-format pretty --log-level info https://demo-browser.lightpanda.io/campfire-commerce/
Start a CDP server for Puppeteer or Playwright:
./lightpanda serve --obey-robots --log-format pretty --log-level info --host 127.0.0.1 --port 9222
Then connect with Puppeteer using puppeteer.connect({ browserWSEndpoint: "ws://127.0.0.1:9222" }).
To build from source, install Zig 0.15.2, plus Rust, and the Debian/Ubuntu build deps (xz-utils ca-certificates pkg-config libglib2.0-dev clang make curl git), or use nix develop. Then run make build or zig build run.