Skip to content

v1.0.0 — the complete agent browser

Choose a tag to compare

@acunningham-ship-it acunningham-ship-it released this 23 Jul 01:44

Veil 1.0.0. Real Chrome over raw CDP — no Playwright, no Puppeteer, zero runtime dependencies — now with a complete, stable page API for driving real agent workflows. Passes bot.sannysoft 57/57 and clears Cloudflare's JS challenge.

New since 0.4.0 (10 capabilities)

  • getCookies() — read cookies (symmetry with setCookies)
  • waitForSelector(sel, {timeout, visible}) — wait for an element, optionally laid-out & visible
  • select(ref, value) — drive a native <select> by accessibility ref
  • text(ref) / attribute(ref, name) — read one element without a full snapshot
  • element & clip screenshotsscreenshot({ref}) / {clip} on top of {fullPage}
  • blockResources(types, {urls}) / unblockResources() — kill images/fonts/media or URL patterns for speed & stealth (unified with the private-network guard's Fetch handler)
  • pdf(opts) — render the page to a PDF Buffer (headless)
  • setViewport() / setUserAgent() — runtime emulation setters
  • reload() / back() / forward() + goto(url, {waitUntil: "networkidle"})
  • robustness: evaluate()/waitFor() now time out instead of hanging; goto() returns {status, ok} so callers can detect 4xx/5xx

33 MCP tools total — every capability is agent-drivable out of the box.

Still the core

Stealth automation layer (webdriver scrubbed, no Runtime.enable tell, human input), accessibility-tree refs (no brittle selectors), native "Sign in with Google" (FedCM) over CDP, and an on-by-default guard that blocks visited sites from port-scanning your localhost/LAN.

111 tests pass · MIT · npm install @achamm/veilbrowser